linux tcpdump抓包,wireshark实时解析


由于CentOS7上yum安装的wireshark对CoAP的解析支持不太完善,而我windows上的wireshark可以完美支持,所以以往我先在CentOS上wireshark抓包,并保持,然后拷贝到Windows上来解析,但是这样没有实时性。后来发现wireshark支持PIPE接口,网上搜到方法:

ADVsock2pipe+Wireshark+nc+tcpdump

下面要介绍的方法的核心原理,就是开辟一条PC与虚拟机的socekt通道并将数据转投到pipe中,然后在PC上,wireshark从pipe的另一端拿数据,让wireshark基于管道(PIPE)抓包。

 
一、测试设备
PC(windows系统)

虚拟机(linux系统)

二、工具
(1)PC上
wireshark
 
(2)虚拟机
nc
tcpdump
 
(3)网络环境
PC与虚拟机处于同一局域网
PC ip 10.0.0.23

 

itouch ip 10.0.0. 24

 

 

 
三、抓包步骤

第一步:在PC上运行ADVsock2pipe,输入如下命令

 

ADVsock2pipe.exe -pipe=wireshark -port 2134 

 

第二步:在PC上运行wireshark,设置caption-Options

 

第三步:在linux上,打开终端输入以下命令

tcpdump -i eth0 -nn -w - -U -s 0 "not port 2134" | nc 10.0.0.23 2134
第四步:在linux上运行想要抓包分析的应用,即可在PC上实时的用wireshark观察数据包发送情况了
 

 

 

 

参考:

http://wiki.wireshark.org/CaptureSetup/Pipes


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM