文章目录
wireshark的两种过滤器(抓包过滤器,显示过滤器)
抓包过滤器:使用场景(大流量网络环境故障检查)
语法说明
A:类型:host,net,port
B:方向:src,dst
C:协议:ether,ip,tcp,udp…
D:逻辑符:&&,||,!
规则实例
!broadcast
!port 3306
host 192.168.1.1 || host 192.168.120
src host 192.168.1.1 && dst port 80
ether host **:**:**:** #过滤mac地址
host wsfnk.com && port 443
#tcp的表示字段在tcp头的第14字节存储。表示字段有如下几种:
1:URG:(置一有效)紧急指针,表明发送端向另一端使用紧急方式发送数据。
2:ACK:(置一有效)表示确认序号。
3:PSH:(置一有效)表示接收方应该尽快将这个报文交给应用层。
4:RST:(置一有效)表示重建连接。
5:SYN:(置一有效)用来发起一个连接。
6:FIN:(置一有效)表示发送方的表示完成任务,接收方的表示同意断开连接。
#捕获SYN包。二进制数为 00000010,相对应的十进制数为2.
tcp[13] = 2
#捕获针对SYN的ACK包。二进制数为 00010010,相对应的十进制数为18.
tcp[13] = 18
#捕获SYN包和SYN的ACK包。这里使用了掩码的方式,只要包含掩码的包都会显示出来。
tcp[13] & 2 = 2
#只抓取PSH-ACK数据的包。
tcp[13] = 24
#只抓取FIN-ACK数据包。
tcp[13] & 1 = 1
#只捕获RST数据包。
tcp[13] & 4 = 4
显示过滤器:使用场景(网络环境复杂)
#语法说明
A:逻辑符:and,or,not,xor(有且仅有一个条件被满足)
B:比较符:==, !=, >, <, >=, <=
C:ip地址:ip.addr,ip.src,ip.dst
D:端口过滤:tcp.port,tcp.srcport,tcp.dstport,
#规则实例
ip.addr == 192.168.1.1
tcp.dstport == 443
arp tcp not https
ip.addr ==192.168.1.1 and icmp
#找出tcp数据包中包含指定字符串(k_t_1)的数据包。
tcp contains k_t_1
contains关键字说明:
过滤条件中使用了contains关键字。它用于判断一个协议,字段或者分片包含一个值。
#表明已经在抓包中看到不连续的序列号。报文丢失会造成重复的ACK,这会导致重传。
tcp.analysis.lost_segment
#显示被确认过不止一次的报文。大凉的重复ACK是TCP端点之间高延时的迹象。
tcp.analysis.duplicate_ack
#显示抓包中的所有重传。如果重传次数不多的话还是正常的,过多重传可能有问题。这通常意味着应用性能缓慢和/或用户报文丢失。
tcp.analysis.retransmission
#将传输过程中的TCP window大小图形化。如果看到窗口大小下降为零,这意味着发送方已经退出了,并等待接收方确认所有已传送数据。这可能表明接收端已经不堪重负了。
tcp.analysis.window_update
#某一时间点网络上未确认字节数。未确认字节数不能超过你的TCP窗口大小(定义于最初3此TCP握手),为了最大化吞吐量你想要获得尽可能接近TCP窗口大小。如果看到连续低于TCP窗口大小,可能意味着报文丢失或路径上其他影响吞吐量的问题。
tcp.analysis.bytes_in_flight
#衡量抓取的TCP报文与相应的ACK。如果这一时间间隔比较长那可能表示某种类型的网络延时(报文丢失,拥塞,等等)。
tcp.analysis.ack_rtt
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论