【抓包工具】实战:WireShark 捕获过滤器的超全使用教程
一、应用场景
二、「捕获选项」弹框界面
(1)选项卡:Input
① 接口
② 流量
③ 链路层
④ 混杂
⑤ 捕获长度(B)
⑥ 缓冲区(MB)
⑦ 监控模式
⑧ 捕获过滤器
(2)选项卡:输出
(3)选项卡:选项
三、捕获过滤表达式
(1)语法说明
(2)限定符
(3)运算符
(4)特殊原语关键字
(5)语法解析
(6)过滤类型
① 基于类型过滤
⒈主机 host
⒉网段 net
⒊端口 port
⒋端口范围
⒌特殊类型
② 基于传输方向的过滤
⒈源 src
⒉目标 dst
⒊源或者目标
⒋源和目标
⒌特殊方向
③ 基于协议过滤
⒈ether
⒉ip|ip6
⒊mpls
mpls 标签号;
④ 基于数据过滤
⒈长度过滤
⒉基于内容过滤
⑤ 使用多个捕获过滤器
⑥ 使用预置表达式
(7)常见的捕获过滤器表达式
① 只捕获某主机的HTTP流量
② 只捕获某主机的所有流量
③ 只捕获某主机的DNS流量
④ 只(不)捕获APR流量
⑤ 只捕获特定端口的流量
⑥ 捕获电子邮件的流量
⑦ 捕获 vlan 的流量
⑧ 捕获 PPPoE 流量
(8)过滤层次
① 二层过滤
⒈ehost
⒉broadcast|multicast
⒊vlan
⒋len
② 三层过滤
⒈host
⒉net
⒊broadcast|multicast
⒋gateway
③ 四层过滤
⒈port
(9)复合型过滤
① 与、或、非
(10)特殊过滤
① 语法
② ether
③ len
④ arp
arp[0]
arp[2]
arp[4]
arp[5]
arp[6]
arp[8]
arp[8+n]
arp[8+n+m]
arp[8+2n+m]
⑤ ip
ip[0]
ip[1]
ip[2]
ip[4]
ip[6]
ip[8]
ip[9]
ip[10]
ip[12]
ip[16]
ip[20]
⑥ icmp
icmp[0]
icmp[1]
icmp[2]
icmp[4]
icmp[6]
icmp[8]
⑦ icmptype (icmp 类型字段)
⑧ icmpcode (icmp 代码字段)
⑨ icmp6type (icmpv6 类型字段)
⑩ icmp6code (icmpv6 代码字段)
⑪ tcp
tcp[0]
tcp[2]
tcp[4]
tcp[8]
tcp[12]
tcp[13]
tcp[14]
tcp[16]
tcp[18]
tcp[20]
⑫ data
⑬ tcpflags(tcp 标记字段)
⑭ udp
udp[0]
udp[2]
udp[4]
udp[6]
udp[8]
四、数据包抓取实战
(1)抓取源 ip
(2)抓取本机 Mac 地址
(3)抓取指定端口的源 ip
(4)主机名和地址过滤器
(5)端口和协议过滤器
(6)协议过滤器
(7)协议域过滤器
(8)包含有 DATA 的 IPv4 数据包
(9)TCP 端口范围在 1501-1540 的数据包
(10)Welchia worm
(11)HTTP GET requests 数据包
(12)Heartbleed Exploit 数据包
(13)运算符实例
① To select all IPv4 HTTP packets to and from port 80, i.e. print only packets that contain data, not, for example, SYN and FIN packets and ACK-only packets.
② HTTP GET requests 数据包
一、应用场景
在开始捕捉前设置:用于提前过滤不同类型接口的流量数据,大流量网络环境故障检测,当进行数据包捕获时,只有满足给定的包含 or 排除表达式的数据包会被捕获,只会抓取匹配规则的数据包。
WireShark 菜单:「捕获(C)→ 选项(O)」
二、「捕获选项」弹框界面
(1)选项卡:Input