私の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