私は Lua で Wireshark ディセクターを作成しています。現在のフレームがディセクタ内で送受信されたネットワーク インターフェイスを取得する方法はありますか?
frame.interface_id
Wireshark Display Filter Referenceページによると、Wireshark 1.8.0 以降で使用できるというフレーム フィールドがあり、インターフェイスの ID が表示されます。列挙から 1 を引くと、ID はdumpcap -D
(またはtshark -D
) の結果で指定された列挙と一致するようです。つまり、両方がdumpcapとtsharkの数のインタフェースそれぞれで1から始まる-D
Wiresharkのは、この矛盾は、私にはバグのように思えるし、私が提出を示唆している0からカウントを開始しているようだが、出力Wiresharkのバグレポートこの矛盾した行動に対しては。
編集(コメントを使用して一貫した方法でこれをフォーマットすることは不可能に見えるため):
フィールドにアクセスするには、フィールド エクストラクターを使用します。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
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加