0

我想通过屏幕上的 tshark 捕获 Diameter 协议(通过 SCTP)的消息,展开。

首先,在开关“-f”之后我找不到要写什么来仅过滤直径消息,但后来我找到了接受“直径”的开关“-R”。
所以,目前我的命令看起来像:

tshark -i el0 -R diameter -V

这一切都很好,至少,直到数据包足够小..

但是,对于更大的数据包,我得到了错误[Unreassembled Packet: DIAMETER] [Expert Info (Warn/Reassemble): Unreassembled Packet (Exception occurred)] [Message: Unreassembled Packet (Exception occurred)]
并且数据包确实没有在输出中重新组装。

我正在谷歌搜索解决方案,发现以下修改可能会进行碎片整理:

tshark -i el0 -R diameter -V -o ip.defragment:TRUE

但这无济于事。

这个问题有什么简单的解决方案吗?(之后以某种方式处理碎片整理也是可以的..)

4

1 回答 1

1

终于我找到了!

在wireshark中,有一个与协议相关的选项的复选框,特别是对于直径碎片整理,您需要标记该复选框

Reassemble fragmented SCTP user messages

以正确显示长直径消息。

这些协议选项中的每一个都有自己的tshark对应参数,在这里你必须使用
-o sctp.reassembly:TRUE.

(一般来说,寻找preferences属于wireshark的文件。)

那么,最终奏效的方法是

  1. 首先定期捕获所有(sctp)消息:

    tshark -i EL0 -f sctp -w raw_capture.pcap

  2. 然后,如果完成,则通过进一步的tshark命令处理文件:
    tshark -r raw_capture.pcap -R diameter -o sctp.reassembly:TRUE -V

于 2014-03-19T13:17:35.780 回答