リアルタイムでパケットスニッフィング

リアルタイムでパケットスニッフィング

私はtcpdumpを使用してきましたが、それは良いですが、問題がありますここ。 hexinject、tcpflow、Tracedumpなどの他のプログラムはすべてpcapを使用するため、パケットを表示する前に少し遅れます。

私も使った生ソケット遅延はありませんが、rawソケットを使用してポート番号を取得することはできません。

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())に減らすこともできます。

おすすめ記事