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