私はLuaにWiresharkディセクタを書いています。現在のフレームが受信されたか、または解剖器内から送信されたネットワークインターフェイスを取得する方法はありますか?Wiresharkのネットワークインターフェイスを取得するLuaディセクタ
0
A
答えて
1
frame.interface_id
と呼ばれるフレームフィールドがあります。これはWireshark 1.8.0以降、Wireshark Display Filter Referenceページに記載されています。このページにはインターフェイスのIDが表示されます。列挙から1を引くと、IDはdumpcap -D
(またはtshark -D
)の結果に示された列挙と一致しているようです。言い換えれば、dumpcapとtsharkはそれぞれ-D
の出力で1から始まるインターフェイスをカウントしますが、Wiresharkは0から数えているようです。この不一致は私のバグだと思われ、Wireshark bug reportをこの矛盾した動作に対して提出することをお勧めします。
EDIT(コメントを使用して一貫した方法でこれをフォーマットすることは不可能と思われるので):
フィールドにアクセスするには、次のように表示、フィールド抽出を使用します。https://www.wireshark.org/docs/wsdg_html_chunked/lua_module_Field.html
例えば:
local fe_interface_id = Field.new("frame.interface_id")
function foo.dissector(buffer, pinfo, tree)
local f_interface_id = fe_interface_id()
pinfo.cols.info:append(", Interface ID=" .. tostring(f_interface_id))
end
関連する問題
- 1. 非イーサネットデータ用のWiresharkでのLuaディセクタの作成
- 2. Wireshark LuaディセクタのパケットのTLSバージョン/チェックサムへのアクセス方法は?
- 3. Luaの鎖交したディセクタ
- 4. Wireshark Lua Wiresharkで同じポート番号の複数のディセクタが動作しない理由
- 5. 私のプログラムの中にWireshark tcapディセクタ
- 6. Wireshark Luaディセクタのコードカバレッジテストを実行するにはどうすればよいですか?
- 7. Wireshark 802.15.4ルアのすべての宛先のディセクタ
- 8. pcapng形式のファイルを持つWiresharkディセクタ - アクセスセクション/インターフェイスの説明フィールド
- 9. C#のネットワークインターフェイス名を取得
- 10. TCPまたはUDPポートを使用しないWiresharkディセクタ
- 11. 別のディセクタからWiresharkディセクタへの呼び出しが正常に行われた場合の表示方法
- 12. ネットワークインターフェイスからフラグを取得する
- 13. tcpstreamを取得する - wiresharkとtshark
- 14. Wireshark LuaディシジョンスクリプトをMac OSXに移植する方法は?
- 15. Lua Wireshark Dissectorでパケットを再組み立てする
- 16. Javaからデフォルトのネットワークインターフェイスを取得する
- 17. Wiresharkディセクタ:解剖されたツリーの前のフィールドの値に依存するフィールドを表示
- 18. libpcap:アクティブなネットワークインターフェイスを取得する方法(Mac OSX)
- 19. ノードを持つすべてのネットワークインターフェイスを取得
- 20. ルビーの特定のネットワークインターフェイスのIPアドレスを取得
- 21. wiresharkから完全なURLを取得する
- 22. wiresharkトレースからLDAPペイロードサイズを取得する方法
- 23. lua sciptの降順でキーリストを取得
- 24. nginx luaでクライアントのIPアドレスを取得
- 25. luaのディレクトリにあるファイルのリストを取得するには?
- 26. luaスクリプトのすべての文字列を取得する
- 27. WoW Lua - URL(バニラ)からデータを取得
- 28. ネットワークインターフェイス名を取得し、DHCPバッチスクリプトにすべてを設定する
- 29. Luaスクリプトですべての関数を取得する
- 30. テーブル内の値の量を取得する方法[Lua]
はFYI:私はバグレポートを提出しました:https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=13496 –
バグのコメントが示すように、 'frame.interface_id'フィールドを表しの価値'{tshark、dumpcap} -D'には対応していないpcapngファイルに書き込まれるインタフェースです。指定された最初のインターフェイスには、インデックス0、次のインデックス1などが割り当てられます。 'frame.interface_id'変更のこの動作が見られるかどうかは分かりませんが、私はそれを疑います。したがって、その価値が何を表しているかを知る必要があります。 –
あなたの答えとバグレポートに感謝します。私が解剖学者の中のフレームフィールドにどのようにアクセスできるか教えていただけますか? (すなわち、 'Proto.dissector(buffer、pinfo、tree)'関数内で)。具体的には、この値を 'pinfo.cols.info'に表示されているものを変更するために使用したいと思います。 – zeeMonkeez