WiresharkGUIのWiresharkの[Filter]フィールドを使用して、マルチキャストパケットのみが表示されるようにキャプチャ結果をフィルタリングしたいと思います。
この投稿を見ましたが、GUIフィルターフィールドでは機能しません。このWiresharkページは、マルチキャストを除外する方法を示していますが、マルチキャスト以外のすべてを除外する方法は示していません。
誰かがこれを行う簡単なステートメントを知っていますか?
前もって感謝します!
WiresharkGUIのWiresharkの[Filter]フィールドを使用して、マルチキャストパケットのみが表示されるようにキャプチャ結果をフィルタリングしたいと思います。
この投稿を見ましたが、GUIフィルターフィールドでは機能しません。このWiresharkページは、マルチキャストを除外する方法を示していますが、マルチキャスト以外のすべてを除外する方法は示していません。
誰かがこれを行う簡単なステートメントを知っていますか?
前もって感謝します!
これを使用するだけ(eth.dst[0] & 1)
です。マルチキャストトラフィックは、MACアドレスの最上位バイトの最下位ビットによって認識されます。1の場合、マルチキャスト、0の場合、そうではありません。
(eth.dst[0]&1)
マルチキャストとブロードキャストの両方をフィルタリングします。したがって、これからブロードキャストを除外します。のようになります
(eth.dst[0]&1) && !eth.dst==ff:ff:ff:ff:ff:ff
Wireshark(Linux用の2.2.6バージョン)では、フィルター「eth.ig==1」 を選択できます。
イーサネットフレームに存在する「IGビット」を指します。
IGビットは、MACアドレスが個人アドレスかグループ(したがってIG)アドレスかを区別します。つまり、IGビット0は、これがユニキャストMACアドレスであることを示し、IGビット1は、マルチキャストアドレスまたはブロードキャストアドレスを示します。
私は試行錯誤の過程でこの解決策に出くわしました。
マルチキャストアドレスは「1110」(128 + 64 + 32 + 0 = 224)で始まるため、1110で始まるIPアドレスに送信されるパケットはマルチキャストアドレス宛てに送信されます。そのため、マスク224.0.0.0/4に一致するパケットはマルチキャストアドレス宛てに送信されます。
そのため、この表示フィルターは、パケットをマルチキャストアドレスのみにフィルターする必要があります。
ip.dst==224.0.0.0/4
multicast
フィルタとして使用してみましたか?not multicast
リンクしたページに記載されているように、すべてのマルチキャストパケットを除外し、他のすべてを通過させる場合、それは論理的です。