Wireshark(前称Ethereal)是一个
网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。
作用:
1.故障处理
2.流量分析
3.学习实验(报文格式…….)
等 ……..
类似软件:
1.科来网络分析系统
2.WinPcap
3.Ethereal
…….
下载地址:
https://www.wireshark.org/download.html 支持中文版,支持不同操作系统
端口镜像
思科
[cisco]monitor session 1 source interface gigabitEthernet 1/0/1 both /单个镜像源端口
[cisco]monitor session1 source interface gigabitEthernet 1/0/1 – 3 /同时选择多个镜像源端口
[cisco]monitor session1 destination interface gigabitEthernet 1/0/5 配置镜像目标端口
华为
[HUAWEI]observe-port 1 interface gigabitethernet 1/0/1 //镜像目标端口(观察端口)
[HUAWEI]interface gigabitethernet 2/0/1
[HUAWEI] GigabitEthernet2/0/1] port-mirroring to observe-port 1inbound both //镜像源端口
H3C
[H3C]mirroring-group 1 mirroring-port GigabitEthernet 1/0/1 GigabitEthernet 1/0/2 Both
[H3C]mirroring-group 1 monitor-port GigabitEthernet 1/0/3
数据包的过滤
数据包过滤是wireshark一个很实用的功能了,通常我们抓包会抓取到网卡通过的所有数据包。很多数据包对于我们来说是没用的,所以我们就需要对其进行过滤。数据包的过滤可以分为抓取时过滤 和 抓取后的过滤 。这两种过滤的语法不同!
抓取时过滤
捕获——>捕获过滤器,这是wireshark默认的一些捕获过滤器,我们可以参照他的语法,自己在左下角自己添加或者删除捕获过滤器
抓取后的过滤
我们一般都是抓取完数据包后进行过滤的,在上方输入我们的过滤语法
过滤地址
ip.addr==192.168.10.10 或 ip.addr eq 192.168.10.10 #过滤地址
ip.src==192.168.10.10 #过滤源地址
ip.dst==192.168.10.10 #过滤目的地址
过滤协议,直接输入协议名
icmp
http
过滤协议和端口
tcp.port==80
tcp.srcport==80
tcp.dstport==80
过滤http协议的请求方式
http.request.method=="GET"
http.request.method=="POST"
http.request.uricontains admin #url中包含admin的
http.request.code==404 #http请求状态码的
这里罗列了一部分过滤规则,更多不在赘述,百度一大堆。
菜单栏已解析的地址
功能:统计通信流量中已经解析了的地址
路径:统计——>已解析的地址
协议分级
功能:统计通信流量中不同协议占用的百分比
路径:统计->协议分级
统计摘要说明
功能:可以对抓取的数据包进行全局统计,统计出包的一些信息
路径:统计->捕获文件属性
大家多去看看菜单栏,有很多很有用的功能,简洁明了。
一 学习使用:
在我们学习网络基础的时候,是不是经常要学习各种协议,如IP、UDP、TCP、HTTP、ICMP、DHCP、OSPF 。。。。。。。
这些协议看理论有时候一脸懵逼,如果可以用wireshark ,那就非常明了了。
比如上图的TCP 协议
16位源端口号:16位的源端口中包含初始化通信的端口。源端口和源IP地址的作用是标识报文的返回地址。
16位目的端口号:16位的目的端口域定义传输的目的。这个端口指明报文接收计算机上的应用程序地址接口。
32位序号:32位的序列号由接收端计算机使用,重新分段的报文成最初形式。当SYN出现,序列码实际上是初始序列码(Initial Sequence Number,ISN),而第一个数据字节是ISN+1。这个序列号(序列码)可用来补偿传输中的不一致。
32位确认序号:32位的序列号由接收端计算机使用,重组分段的报文成最初形式。如果设置了ACK控制位,这个值表示一个准备接收的包的序列码。
4位首部长度:4位包括TCP头大小,指示何处数据开始。
保留(6位):6位值域,这些位必须是0。为了将来定义新的用途而保留。
标志:6位标志域。表示为:紧急标志、有意义的应答标志、推、重置连接标志、同步序列号标志、完成发送数据标志。按照顺序排列是:URG、ACK、PSH、RST、SYN、FIN。
16位窗口大小:用来表示想收到的每个TCP数据段的大小。TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端正期望接收的字节。窗口大小是一个16字节字段,因而窗口大小最大为65535字节。
所谓有图有真相,我以前通过wireshark来学习,很好的促进对协议的理解。
在比如ospf 协议
通过wireshark 分析抓包是不是更促进学习记忆?
二、故障处理1.没有审计到数据?
2.审计到数据不全?
3.ARP攻击网络缓慢?
4.网络故障无法上网?
5.网络不通
比如我们网络常见的ARP 攻击,有时候网络很慢,找不到原因,可以抓包分析
如果网络中有大量的ARP 请求(异常大量),查找到这个源MAC地址,干掉
比如我们发现HOST A 访问不到 SERVER1, 那么可以在SERVER1 与交换机连接端口做镜像分析HOSTA的流量是否到达,如果都没过来流量,就不用排查SERVER 的问题了。
附赠一份之前网上下载的抓包大全,可以好好看看,希望对大家有帮助