Wireshark 是网络包分析工具,主要作用是尝试捕获网络包, 并尝试显示数据包尽可能详细的情况
Wireshark不会处理网络事务,它仅仅是“测量”(监视)网络
Wireshark是开源软件项目,不用担心授权和付费问题
Wiresahrk简史
1997年以后,Gerald Combs 需要一个工具追踪网络问题并想学习网络知识,他开始开发Ethereal
Ethereal是第一版,经过数次开发,停顿,1998年,经过这么长的时间,补丁,Bug报告,以及许多的鼓励,0.2.0版诞生了。Ethereal就是以这种方式成功的
此后不久,Gilbert Ramirez发现它的潜力,并为其提供了底层分析
1998年10月,Guy Harris正寻找一种比TcpView更好的工具,他开始为Ethereal进行改进,并提供分析
1998年以后,正在进行TCP/IP教学的Richard Sharpe 关注了它在这些课程中的作用。并开始研究该软件是否他所需要的协议。如果不行,新协议支持应该很方便被添加,他开始从事Ethereal的分析及改进。
从那以后,帮助Ethereal的人越来越多,他们的开始几乎都是由于一些尚不被Ethereal支持的协议,所以他们拷贝了已有的解析器,并为团队提供了改进回馈
2006年项目Moved House(这句不知道怎么翻译)并重新命名为:Wireshark.
Wiresahrk结构
Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换,不会对网络封包产生内容的修改,它只会反映出目前流通的封包资讯。 Wireshark本身也不会送出封包至网络上
网络嗅探器工作原理
收集:从网卡上收集二进制信息(将网卡设置成混杂模式,,抓包工具默认设置)
转换:将捕获的二进制信息转换成可读形式
分析:对捕获和转换后的数据进行分析
混杂模式:能够允许网卡查看所有流经网络线路数据包的驱动模式
抓包原理:
1、抓包本地网卡进出网络流量,针对自己网卡不能针对整个局域网
2、集线器网络,集线器是网络层设备,不学习数据包,广播所有接口(已经很少有这种环境)
3、镜像端口,将数据拷贝一份到一个端口,交换机为二层设备,第一次广播,第二次学习地址转发
4、交换机有个弊端,第一次都需要广播地址学习MAC地址才能转发,这种方式易被人利用
5、ARP欺骗
端口镜像注意:在进行多个端口同时镜像到一个端口的时候注意单个端口的流量负载能力
抓包意义:
1、分析报文协议格式对OSI七层模式认识
2、排除网络故障非常有利
3、解决网络安全问题
sniffer
fiddler、httpwatch针对http协议