wireshark常用过滤命令1
常用过滤语句
前面加!号代表去除该包。
例如:!http表示不选取http的包
src代表源端口,dst代表目的端口
ip.addr == 192.168.1.1 过滤ip地址为192.168.1.1的包
ip.dst == 192.168.1.1 过滤ip目的地址为192.168.1.1的包
ip.src == 192.168.1.1 过滤ip源ip地址为192.168.1.1的包
tcp 过滤tcp的包
tcp.port == 80 过滤端口为80的包
udp 过滤udp的包
arp 过滤arp的包
http http2 过滤http、http2的包
在wireshark主页中有捕获菜单栏,里面有选项,下面的过滤规则大部分是针对它的
ether host <Ethernet host>让wireshark只抓取源于或发往由标识符Ethernet host所指定的以太网主机的以太网帧
ether dst <Ethernet host> 目的mac地址
ether src <Ethernet host> 源MAC地址
ether broadcast 让wireshark只抓取所有以太网广播流量
ether multicast 让wireshark只抓取所有以太网多播流量
ether proto <protocol> 所抓以太网流量的以太网协议类型编号,与标识符<protocol>所定义的以太网协议类型编号相匹配
vlan <vlan_id> 让wireshark只抓取有标识符<vlan_id>所指定的vlan的流量
ip 只抓取ipv4地址的包
ip6 只抓取ipv6地址的包
host <host> 让wireshark只抓取源于或发往由标识符host所指定的主机名或IP地址的流量
dst host <host> 让wireshark只抓取发往由标识符host所指定的主机名或IP地址的流量
src host <host> 让wireshark只抓取源于由标识符host所指定的主机名或IP地址的流量
gateway <host> 让wireshark只抓取穿host而过的流量
net <net> 让wireshark只抓取源于或发往由标识符net所标识的IPv4/IPv6网络号的流量
dst net <net> 发往的
src net <net> 源于的
net <net> mask <netmask> 让wireshark只抓取源于或发往由标识符net和mask共同指明的IPv4网络号的流量(对ipv6流量无效)
dst <net> mask <netmask> 发往的
src <net> mask <netmask> 源于的
net <net>/<len> 让wireshark只抓取源于或发往由标识符
dst net <net>/<len> 发往的
src net <net>/<len> 源于的
broadcast 让wireshark只抓取IP广播包
multicast 让wireshark只抓取IP多播包
ip proto <protocol code> 让wireshark只抓取IP包头的协议类型字段值等于特定值(等于由标识符proto所指明的protocol code[协议代码]值)的数据包。
IP数据包种类繁多,随IP包头的协议类型字段值而异,比如,TCP数据包(协议类型字段值为6)、UDP数据包(协议类型字段值为17)和ICMP数据包(协议类型字段值等于1)等。
ip6 proto
<protocol> 让Wireshark只抓取IPv6(主)包头中下一个包头字段值等于特定值(等于由标识符proto所指明的protocol值)的IPv6数据包。请注意,无法使用该原词根据IPv6扩展包头链中的相关字段值来执行过滤
icmp[icmptype]==<identifier> 让wireshark只抓取特定类型[icmptype]的ICMP数据包,<identifier>表示的是ICMP头部中的类型字段值,比如,0(ICMP
echo reply数据包) 或8(ICMP echo request数据包)等
ip multicast 用来抓取IP多播数据包
ip broadcast 用来抓取IP广播数据包
ip[2:2] == <number> 用来抓取特定长度的IP数据包(number表示IP包头中的IP包总长度字段值)
ip[8] == <number> 用来住区具有特定TTl(生存时间)的IP数据包(number表示IP包头中的TTL字段值)
(ip[12:4] == 1 ip[16:4]) 表示数据包的源和目的IP地址相同
tcp [tcpflags] & (tcp-syn | tcp-fin) != 0 让wireshark只抓所有TCP连接中用来发起(SYN标记位置1)连接或终止连接(FIN标记位置1)的数据包(TCP连接属于全双工连接,客户端与服务器之间会建立双向连接。也就是说,建立TCP连接时,客户端想服务器发起连接之后,服务器也会想客户端发起连接,终止连接亦然),抓包过滤器应如此设置。
tcp [tcpflags] & (tcp-rst) != 0 让wireshark只抓所有RST标记位置1的TCP数据包。
tcp portrange 2000-5000 只抓源或目的端口范围在2000到5000之间的TCP数据包
Wireshark过滤器
过滤器会可以帮助我们只抓捕关注的信息或在在庞杂的抓捕结果中过滤出目标信息。
捕捉过滤器(CaptureFilters):捕捉过滤器在抓抱前进行设置,决定抓取怎样的数据;
显示过滤器(DisplayFilters):用于在捕捉结果中进行过滤,方便stream的追踪和排查。
按照过滤的语法可分为协议过滤和内容过滤。捕捉过滤器仅支持协议过滤,显示过滤器既支持协议过滤也支持内容过滤。两种过滤器支持的过滤语法并不一样。
如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,说明表达式有误。
过滤器支持比较运算符、逻辑运算符,内容过滤时还能使用位运算。
对标准协议,既支持粗粒度的过滤如HTTP,也支持细粒度的、依据协议属性值进行的过滤如tcp.port==53、http.request.method=="GET"。
对内容的过滤,既支持深度的字符串匹配过滤如http contains "Server",也支持特定偏移处值的匹配过滤如tcp[20:3] == 47:45:54。
转载自:https://blog.csdn.net/bt517840374/article/details/80030297