tsharkでインターフェース名を表示する方法

tsharkでインターフェース名を表示する方法

私は非対称ルーティングの問題を診断するためにtsharkを使用しています。トラフィックをフィルタリングしているため、特定のIPのsrc / destのみをキャプチャしますが、トラフィックが入ってくるインターフェイスを示すフィールドを表示して、パスを使用したときの影響を確認できるようにしたいと思います。テーブル。

Wiresharkでは、次を使用してMACアドレスを表示してこれを行うことができます。ハードウェア宛先アドレスそしてハードウェアソースアドレスしかし、TSharkではそのフィルタが見つかりません。

誰でもTSharkを使用してNIC名またはMACアドレスを表示する方法を提案できますか?

私が試したtsharkコマンドは次のとおりです。

tshark -i eno1 -i enp5s0 -T fields -E header=y -e ip.src -e ip.dst -e _ws.col.Protocol -e _ws.col.Info -Y "ip.addr==10.10.10.30"

答え1

解決策が見つかりました。 Wiresharkに表示されているフィールドはtsharkに表示されているフィールドと直接相関があることがわかりました。だからあなたはフレームの下で検索します。Wireshark ドキュメントすべてが明確になりました。私の問題は、コマンドラインで何ができるかを理解するために、ドキュメントとWireshark UIの間の相関関係を確認できないことです。

私がすべきことは追加するだけでした。-eフレームワーク。インターフェース名または-eフレーム。インターフェース_id

答え2

フィールド名を知るために、またはを渡してjsonフォーマットを使用または出力することもできます。表示フィルタで使用可能な同じ名前または選択形式を使用して、キャプチャに解析されたすべてのフィールドが表示されます。pdml-T json-T pdmltshark-e-T fields

[
  {
    "_index": "データパッケージ-2021-10-09",
    "_type": "ドキュメント",
    "_score": 空、
    "_源泉": {
      "階":{
        「フレームワーク」:{
          "frame.interface_id": "0",
          "frame.interface_id_tree": {フレームワーク、インターフェース名":"wlp3s0"
          },
          "frame.encap_type": "1",
[...]
<?xml version="1.0" エンコード="utf-8"?>
<?xml-stylesheet type="text/xsl" href="pdml2html.xsl"?>
<!--/usr/share/wireshark または https://gitlab.com/wireshark/wireshark/-/raw/master/pdml2html.xsl で pdml2html.xsl を見つけることができます。 -->
<pdml version="0" Creator="wireshark/3.4.8" time="2021年10月9日土曜日 10:20:13" Capture_file="file.pcap">
<パケット>
  <proto name="geninfo" pos="0" showname="一般情報" size="52">
    <field name="num" pos="0" show="1" showname="number" value="1" size="52"/>
    <field name="len" pos="0" show="52" showname="フレーム長" value="34" size="52"/>
    <field name="caplen" pos="0" show="52" showname="キャプチャ長" value="34" size="52"/>
    <field name="timestamp" pos="0" show="2021年10月9日 10:19:24.034789189 BST" showname="キャプチャ時間" value="1633771164.034789189" size="52"/>
  </オリジナル>
  <proto name="frame" showname="フレーム 1: ラインで 52 バイト (416 ビット)、インターフェイス wlp3s0 でキャプチャされた 52 バイト (416 ビット)、id 0" size="52" pos="0 ">
    <field name="frame.interface_id" showname="インターフェイス ID: 0 (wlp3s0)" size="0" pos="0" show="0">
      <フィールド名=フレームワーク、インターフェース名" showname="インターフェイス名: wlp3s0" size="0" pos="0" show="wlp3s0"/>
    </field>
    <field name="frame.encap_type" showname="カプセル化タイプ: イーサネット(1)" size="0" pos="0" show="1"/>

wireshark目的のフィールドを選択して右クリックして、コピー - >フィールド名を選択できます。

フィールド名のコピーのスクリーンショット

関連情報