내 Linux 컴퓨터에는 수신 대기 중인 UDP 포트가 있지만 애플리케이션이 해당 포트에서 패킷을 수신하지 못하는 것 같습니다. 이 포트에서 수신된 패킷 수를 표시하는 데 사용할 수 있는 도구가 있습니까?
답변1
사용 tcpdump
. 예를 들어, 내 컴퓨터에서 트래픽을 찾으려는 인터페이스는 eth0입니다. 이 경우 포트 123을 확인하고 싶습니다.
jed@myhost:~$ sudo tcpdump -nei eth0 udp port 123
컴퓨터에 인터페이스가 무엇인지 모르는 경우 해당 인터페이스 ifconfig -a
를 사용하거나 가져올 수 있습니다 ip link
(권한에 따라 sudo가 필요할 수 있음).
답변2
iptables를 사용하여 기록할 수 있습니다.
iptables -A INPUT -p udp -j LOG --log-prefix "udp connection: "
답변3
특정 프로토콜에 대한 카운터만 필요한 경우 해당 패킷을 허용하는 iptables 규칙을 생성하면 해당 규칙과 일치하는 패킷 및 바이트 수를 추적할 수 있습니다.
UDP 포트 44에서 패킷을 일치시키려는 경우 iptables 명령은 다음과 같습니다.
iptables -A INPUT -i eth0 -p udp --dport 44 -j ACCEPT
이 패킷에 대한 자세한 내용을 알고 싶다면 Jed Daniels가 말했듯 tcpdump
이 이것이 최선의 선택이 될 것입니다.
tcpdump -nei eth0 udp port 44