2016-04-27 79 views
0

我正在嘗試使用tshark和用戶DLT使用介紹的接口here進行一些非標準協議的解碼。Wireshark(tshark)有效載荷協議列表

我發現的有效載荷的協議在Wireshark的UI的列表(分析=>啓用的協議( + 控制 + È)),但無法找到所需的一個user_dlts所述匹配的一個單詞的名稱命令;有些人只會將-換成_,但其他人會完全添加/刪除單詞。

有沒有一種方法可以從UI中獲取實際名稱或者(最好是)所有可能的有效載荷協議列表?

回答

0

在Wireshark的< 2 * UI:

Internals => Supported Protocols => Protocols Tab 

,已以更正格式的所有協議列表

For Wireshark 2.* 
View => Internals => Supported Protocols => Protocols Tab 
+0

這實際上只是一個過濾器列表,它更接近開始,但不是很好。 – ShaBANG

+0

我不明白你最後的評論。最右邊的列是協議過濾器名稱,這是您需要用作* Payload協議*的名稱。 –

0

如果要深挖,下載源:

git clone https://code.wireshark.org/review/wireshark 

並檢查wireshark/epan/dissectors /特別是t中的c文件他register_dissector命令

fgrep -RIis "register_dissector(" wireshark/epan/dissectors/ 

這是優於:

array=("column-formats" "defaultprefs" "fields" "plugins" "currentprefs" "dissector-tables" "ftypes" "protocols" "decodes" "fieldcount" "heuristic-decodes" "values") 
for i in "${array[@]}"; do tshark -G $i | fgrep -i 'RRC.BCCH.FACH'; done 
1

你也可以列出使用tshark -G protocols的所有協議。有關-G選項的更多信息,請參閱tshark man page

如果你只在link layer types興趣的話,你會發現那些Wireshark的支持運行editcap -T,雖然你可能要交叉引用的tshark -G protocols輸出找到用戶的DLT使用正確的名稱協議表。