tcpdump -i 任意モードと混合モード

tcpdump -i 任意モードと混合モード

tcpdump 4.1.1のマニュアルページで(はい、古いことを知っています)

   -i     Listen  on interface.  If unspecified, tcpdump searches the 
          system interface list for the lowest numbered, configured up 
          interface (excluding loopback).  Ties are broken by choosing >               the earliest match.

          On Linux systems with 2.2 or later kernels, an interface 
          argument of ``any'' can be used to capture packets from all
          interfaces.
          Note  that captures on the ``any'' device will not be done in
          promiscuous mode.

最後の文の正確な意味を説明できる人はいますか?私は多くのインターフェイスを持つIDSサーバーを使用していますが、tcpdump -i anyを使用すると、IDSサーバーへの開始/目的地ではなくトラフィックが明確に表示されます。しかし、すべてのインターフェイスを無差別モードに切り替える別のサービスがあります。 -iを使用すると、tcpdumpがインターフェイスをPROMISCモードに切り替えないことを意味しますか?

ベストアンサー1

-iを使用すると、tcpdumpがインターフェイスをPROMISCモードに切り替えないことを意味しますか?

はい、それは私のことです。 「すべての」デバイスは、すべてのデバイスを独立して開いてキャプチャする方法では機能しません。特定のデバイスにバインドするのではなく、「パケットソケット」を開きます(Linuxでそのデバイスをキャプチャする方法で発生する現象)。すべてのソケットでリッスンするようにバインディングが解除されます。

無差別モードを設定する呼び出しはバインドされていないソケットで失敗するため(非常に新しいカーネルでテストしました)、libpcapは「すべての」デバイスに対して無差別モードを設定しません。

おすすめ記事