나는 tcpdump를 사용해 왔고 그것은 좋지만 문제가 있습니다여기. hexinject, tcpflow 및 Tracedump와 같은 다른 프로그램은 모두 pcap을 사용하므로 패킷을 표시하기 전에 약간 지연됩니다.
나는 또한 사용했다원시 소켓지연되지는 않지만 원시 소켓을 사용하여 포트 번호를 얻을 수 없습니다.
tcpdump 문서를 확인해 보니 다음과 같은 내용이 있는 것 같습니다.--immediate-mode
. tcpdump가 지연된 패킷 전송을 중지하도록 하려고 합니다.
내 현재 버전은 다음과 같습니다
tcpdump 버전 4.6.2
libpcap 버전 1.6.2
tcpdump용 패치가 있나요?이와 같이아니면 지연되지 않는 다른 CLI?
답변1
tcpdump용 패치가 있나요?이와 같이
응 거기 있어이것, 해당 패치와 마찬가지로 즉시 모드를 켜는 플래그를 추가했습니다...
...BPF에 국한되지 않는다는 점을 제외하면(따라서 *BSD, OS 최신 버전으로 제한 되지 --immediate-mode
않음-b
가지다패치를 적용합니다.
어떤 종류의 패치를 찾고 계시나요? 즉시 모드를 켜기 위해 최신 버전의 libpcap 및 API가 필요하지 않습니까? 그렇다면 패치가 일부 OS에서 작동하지 않거나 OS에 따라 다른 작업을 수행해야 합니다(불행히도 Linux에서는 간단한 ioctl을 수행할 수 없으므로 불가능할 수 있습니다).예운영 체제 버퍼링을 끄는 운영 체제별 방법입니다.
반면에 시간 초과를 1/10초( pcap_open_live()
또는 에서 1000 대신 100 사용 pcap_set_timeout()
) 또는 1/100초( pcap_open_live()
또는 1000 대신 10 사용 pcap_set_timeout()
)로 줄일 수도 있습니다.