0

フィルタ文字列を使用して、 で動作している Wi-Fi ルーターからのプローブ要求フレームのみをキャッチしていますmonitor/Promisc mode

同じ文字列、つまり"type mgt subtype probe-req"、ラップトップでコードを実行しているときに機能していますが、linksys WRT54gではエラーが発生します

cannot pcap_compile() function is not working.

より説明すると、ルーターで OpenWRT White Russian 0.9 ファームウェアとそれに相当する SDK を使用してパッケージをビルドしています。このプログラムは、Libpcap ライブラリを使用して、ネットワークから生のパケットをキャプチャします。

そのため、ルーターなどの組み込みデバイスで作業しているときに、文字列形式に変更があるかどうかを知りたいです。はいの場合、そのドキュメントを見つけることができる場所を教えてください。そうでない場合、私がやっていることは間違っています。

4

1 に答える 1

0

許可されるフィルター文字列は、次のものによって異なります。

  • 使用中の libpcap/WinPcap のバージョン。
  • デバイスでキャプチャされるリンク層ヘッダー タイプ。

その特定のフィルターは、libpcap 1.0 以降が使用されていて、アダプターが 802.11 ヘッダーを含むパケットを提供している場合に許可されます。ほとんどの OS では、802.11 アダプターは、アダプターがモニター モードで実行されている場合にのみ、802.11 ヘッダーを含むパケットを提供することに注意してください。それ以外の場合は、イーサネット ヘッダーを含むパケットを提供し、データ フレームのみを提供し、管理フレームや制御フレームは提供しません。

このプログラムは、Libpcap ライブラリを使用して、ネットワークから生のパケットをキャプチャします。

プログラムが何であれ、 からのエラーをより適切に報告する必要がありますpcap_compile()。エラー メッセージには、pcap_geterr()whenpcap_geterr()に渡したときに返されたテキストが含まれてpcap_t *いる必要がpcap_compile()あります。そうすれば、エラーが発生した理由に関する詳細情報が得られるため、エラーを修正するために何をする必要があるかについてより多くの情報を知ることができます。

于 2014-03-07T19:56:36.060 に答える