tcpdump からの出力を、端末に印刷するのと同じ速さで読み取るにはどうすればよいですか?

tcpdump からの出力を、端末に印刷するのと同じ速さで読み取るにはどうすればよいですか?

tcpdump をコマンド ラインで実行すると、パケットは受信時にリアルタイムで表示されます。ただし、tcpdump がパイプで何かに渡されると、バッファ出力に頼ります。これを構成できるように、-lおよび-Uオプションが用意されています。ただし、どのオプションを設定しても、生の CLI から実行するほど高速な結果にはならないことがわかりました。Python で subprocess、tee、さらには Rust ラッパーを試してみました。パケットは常にバッチで出力されるようです。

何か案は?

答え1

tcpdump には現在 があり--immediate-mode、この問題は解決しました。これを動作させるために、 と組み合わせて使用​​しました-l

見るこの答え

関連情報