tcpdump は待ち時間の長いパケットを示します

tcpdump は待ち時間の長いパケットを示します

tcpdumpを使用してローカルのrsyslogサービスからsyslogサーバーにパケットをキャプチャしていますが、tcpdumpで別のコマンドを試行すると(dstオプションを含める/含まない)、表示される結果に遅延が発生します。

予想/必要な動作:

tcpdump -n -e -i any -A | grep hello               # without dst option
tcpdump -n -e -i any dst 10.8.8.3 -A | grep hello  # with dst option

上記の2つのコマンドは、同時にまたは非常に短い遅延でパケットを表示する必要があります。

実際の動作: dstオプションを付けたコマンドは、tcpdump -n -e -i any dst 10.8.8.3 -A | grep hello最大20秒のパケット遅延を示し、パケットが正常に送信されなかったと信じていました。

command1 は直ちにパケットをキャプチャします。

ここに画像の説明を入力してください。

command2はパケットを即座にキャプチャできません。約20秒後、ついにパケットが画面に表示されました。

追加情報:

  • Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 GNU/Linux
  • tcpdump バージョン 4.9.3
  • libpcap バージョン 1.8.1

ベストアンサー1

~からtcpdump(8)(OPバージョンより少し古いバージョンを選択しますが、最新バージョンであればよい):

-l

標準出力ラインをバッファリングします。これは、キャプチャされたデータを表示したい場合に便利です。例えば、

tcpdump -l | tee dat

または

tcpdump -l > dat & tail -f dat

[...]

-U同様に動作します-lが、「パケットバッファリング」出力が発生します。 [...]

したがって、-l「ライブ」ディスプレイが必要なときはいつでも追加してください。tcpdump

おすすめ記事