最近在开发一个PCRF系统,和PCEF之间使用的是Gx接口,是基于Diameter协议的,调试过程中出现了点问题,本来想把消息转换成xml格式看看的,不过太麻烦了,于是想到了Wireshark,查了一下居然能够支持Diameter协议.
首先在使用tcpdump在服务器上抓包:
sudo tcpdump -s 0 -vvv -i lo tcp and host 127.0.0.1 and /( port 6868 or port 5868 /) -w gx.cap
PCRF的Gx端口使用的5868,PCEF使用的6868,将抓包结果输入到gx.cap文件中.文件下到本地后用Wireshark打开,发现只能解析到传输层协议,看不到我要的Diameter格式.

估计是因为我用的端口都不是Diameter的标准端口,所以没有办法将我的报文识别为Diameter消息了.
首先选择一个Diameter报文,然后在wireshark菜单里选择Analyze,选择Decode As,出现下面的对话框:

在右边选择diameter协议,目的端口选择6868,这样WireShark就能成功识别Diameter消息了,能直接看到AVP的感觉真好.


在PCRF系统开发中,面对基于Diameter协议的Gx接口调试问题,通过Wireshark进行抓包分析。尽管初始无法直接解析Diameter消息,但通过设置Decode As功能,将目的端口指定为6868,成功识别并解析出AVP,简化了调试过程。
5053

被折叠的 条评论
为什么被折叠?



