使用wireshark分析网络报文
Published on 八月 14, 2010
经常在linux下工作的朋友一定经常需要用tcpdump抓包分析,不过有时候肉眼看起来实在是太累,不经意居然发现了这样一个好工具:
wireshark,下载页:http://www.wireshark.org/download.html
简单用他来演示一下tcp协议的整个过程:
先在开发机上开始抓包:
tcpdump -ieth1 host 172.27.193.234 -w tcpbao
调用一个发送tcp请求的小程序,可以抓到包---tcpbao.
用wireshark载入之后,会看到如下界面:
可见,整个过程完整的展现了TCP协议中,建立链接->发送数据->断掉链接的过程。
读者可以对照本博的:
TCP协议状态详解
或
http://bigwhite.blogbus.com/logs/11582229.html
来看。
简单说一下:
1~3个报文是tcp三次握手建立链接的过程
4~7个报文是客户端发送实体数据的过程
8~10个报文是客户端主动断掉链接的过程(这里和标准的关闭链接貌似有点出入,标准TCP协议貌似还要多返回一个ACK报文)
其实这个软件还支持直接抓包来查看报文的,详细可以看一下如下的在线文档,在此不再赘述。
http://man.lupaworld.com/content/network/wireshark/
OK,希望对大家有用~
原创文章,版权所有。转载请注明:转载自Vimer的程序世界 [ http://www.vimer.cn ]
本文链接地址: http://www.vimer.cn/?p=1450
wireshark(前身etheral)是个优秀的开源软件。win/linux都有~
以前都用 sniffer pro的。
[回复]
Dante 回复:
八月 15th, 2010 at 10:53 下午
说来奇怪sniffer在我电脑上总是不抓包。。。
我现在http请求是用:httpwatch或者fiddler
其他类型的请求使用:wireshark
[回复]
可可火山 回复:
八月 17th, 2010 at 8:29 上午
可能是驱动问题吧。
我的无线网卡也没法在混杂模式下嗅探。sniffer 盗版的不想用了,
[回复]
依云 回复:
八月 18th, 2010 at 4:43 下午
wireshark我用很久了。HTTP可以用火狐的httpfox插件(或者firebug)搞定。
[回复]