1. 适用条件
适用于难把tcpdump文件从linux设备中抓下来,可以通过远程获得十六进制报文,直接转为wireshark格式。
2. 简略过程
-
tcpdump -xx -tt
直接把报文用十六进制打印出来 - 将报文导入软件
TextToWiresharkFormat-v2.0.exe
,转为wireshark报文 - 对于看DOCSIS 层的包,减去报头。
editcap -C 44 capture.pcap capture_1.pcap
3. 具体操作
-
tcpdump -xx -tt
a. 如果是实时抓包,加端口抓,最后加-xx -tt
限定抓取方式。以下的操作会直接把十六进制报文打印出来。
Server#tcpdump -i any udp port 51920 -xx -tt
b. 如果是抓取文件,可以把文件dump出来。
Server# tcpdump -r zlm.out -xx -tt
reading from file zlm.out, link-type LINUX_SLL (Linux cooked)
1521155373.167889 IP module12.58610 > smm.51919: UDP, length 73
0x0000: 0000 0001 0006 0000 ca5a 1c0d 0000 0800
0x0010: 4500 0065 0000 4000 4011 3b72 7f01 000d
0x0020: 7f01 0107 e4f2 cacf 0051 babc 0000 0040
0x0030: 0000 0000 ffff ffff ffff 5085 699c 7d20
0x0040: 0806 0001 0800 0604 0001 5085 699c 7d20
0x0050: ac10 022c 0000 0000 0000 ac10 0001 0000
0x0060: 0000 0000 0000 0000 0000 0000 0000 0000
0x0070: 6eed 39aa 0e
1521155375.214598 IP module12.58610 > smm.51919: UDP, length 73
0x0000: 0000 0001 0006 0000 ca5a 1c0d 0000 0800
0x0010: 4500 0065 0000 4000 4011 3b72 7f01 000d
0x0020: 7f01 0107 e4f2 cacf 0051 bbbc 0000 0040
0x0030: 0000 0000 ffff ffff ffff 5085 699c 7d20
0x0040: 0806 0001 0800 0604 0001 5085 699c 7d20
0x0050: ac10 022c 0000 0000 0000 ac10 0001 0000
0x0060: 0000 0000 0000 0000 0000 0000 0000 0000
0x0070: 6eed 39aa 0d
- 把这些十六进制(hex)报文放到转换软件中,直接转为.pcap(适用wireshark)格式的新文件。
- 视情况,这里要看docsis链路层的报文,需要用wireshark自带的软件
editcap
去掉包头。
a. 如果你不知道它装在哪/有没装,可以用everything找出路径。
b. windows操作系统,以管理员模式打开cmd
,进入以上的路径。把之前转的文件放到editcap
相同路径,然后在cmd
敲以下代码,editcap -C 44 zlm.pcap zlm-c.pcap
- 打开wireshark,注意
treat all packets as docsis frame