0

OSXで統計モードでlibpcapを使用するCプログラムをコンパイルしようとしています。元のコードは、winpcapライブラリを使用してWindows用に作成されました。私のMacのlibpcapのバージョンは、それが使用するpcap_setmode関数について聞いたことがありません-私はそれがWindows固有であるかもしれないという不快な気持ちを持っています。

OSXで統計モードでキャプチャする方法はありますか?そうでない場合、これを妨げるOSのアーキテクチャ/機能について何かありますか、それともこれはメインライブラリの機能ではなかったWinPcapに追加された追加機能ですか?

4

2 に答える 2

1

pcap_setmode()Win32ポートにのみ定義があります(私には不明な理由があります)。

于 2011-02-20T13:54:45.693 に答える
1

pcap_setmode()Windows用のWinPcapドライバーは統計モードをサポートする唯一のパケットキャプチャメカニズムであるため、Win32ポートにのみ定義があります。Mac OSXおよび*BSDおよびAIXおよびSolaris11のBPFはサポートしていません。また、LinuxのPF_PACKETソケットはサポートしていません。また、SolarisおよびHP-UXのDLPIはサポートしていません。

UN * Xesには通常、パケットのキャプチャをサポートするメカニズムが付属しているため、libpcapは、独自のカーネルモードコードを追加せずに、それを使用できます。これは、それらのキャプチャメカニズムが持つ機能を制御できないことを意味します-キャプチャメカニズムがそれを持たない場合、libpcapはそれを追加できません。Windowsにはそのようなメカニズムはありません。そのようなメカニズムをサポートできるNDISが付属しているため、WinPcapには、NDISを使用してそのようなメカニズムを実装するカーネルモードドライバーが付属しており、提供する機能をさらに制御できます。

于 2011-10-19T09:04:37.467 に答える