Wireshark 显示过滤器备忘单:网络工程师的必备工具
这份备忘单基于多年的实战经验,参考了 Wireshark 官方文档和社区最佳实践,整理了常见的显示过滤器(Display Filters)。
这些过滤器可以让你快速定位特定协议、地址、标志位等信息,避免在数万条数据包中盲目搜索。
为什么需要这份备忘单?
- 在实际项目中,比如排查 ARP 风暴、分析 BGP 路由抖动、调试 HTTP 应用延迟,或调查 TCP 重传问题,这些过滤器能将分析时间从小时级缩短到分钟级。
- Wireshark 的过滤语法灵活,支持逻辑运算符、比较运算符和子串匹配,但记住常用过滤器是关键。
建议大家在 Wireshark 中练习这些过滤器,并结合 Tshark 命令行工具自动化分析。
1. ARP 协议过滤器
ARP(Address Resolution Protocol)是局域网中 IP 地址与 MAC 地址解析的核心协议。在网络故障中,ARP 问题常导致广播风暴或地址冲突。作为入门级过滤器,ARP 系列能帮你快速隔离请求/响应包,分析 MAC/IP 映射。
1.1. 使用场景
- 排查"无法 ping 通"问题时,过滤特定 IP 的 ARP 请求;监控 DHCP 环境中的 ARP 欺骗攻击。
- 记住,ARP 是无连接的,opcode 1 为请求,2 为响应。
实用技巧:结合 eth.src 使用,查看谁在发起 ARP 广播。
示例:
arp.src.proto_ipv4 == 192.168.1.100 && arp.opcode == 1
- 显示从 192.168.1.100 发送的 ARP 请求。
2. BGP 协议过滤器
BGP(Border Gateway Protocol)是互联网核心路由协议,处理 AS 路径、社区属性等复杂信息。
在企业 WAN 或 ISP 环境中,BGP 过滤器是排查路由泄露、黑洞路由的利器。
2.1. 使用场景
监控 BGP 更新消息,过滤特定 AS 路径;诊断 MED 属性导致的路由选择问题。
BGP 消息类型包括 Open、Update、Notification、Keepalive,type 过滤器是起点。
实用技巧:用 bgp.type == 1 过滤 Open 消息,检查邻居建立;结合 bgp.as_path 搜索循环路径。
示例:
bgp.as_path contains "65001"
- 显示经过 AS 65001 的路由。
3. Ethernet 协议过滤器
Ethernet 是 LAN 基础,过滤器聚焦 MAC 地址、类型和标志位。适用于无线/有线混合环境下的广播控制和 QoS 调试。
3.1. 使用场景
隔离多播流量导致的拥塞;检查 VLAN 标签前的 Ethernet 类型。eth.type 是万金油过滤器。
实用技巧:eth.multicast && eth.dst[0:3] == 01:00:5e 过滤 IPv4 组播组。
示例:
eth.type == 0x0800
- 只显示 IPv4 流量。
4. 过滤运算符
过滤运算符是 Wireshark 语法的核心,支持数值、字符串比较。掌握这些,能构建复杂表达式。
4.1. 使用场景
数值范围过滤 TTL;字符串匹配 URI。eq 表示相等。
实用技巧:链式使用,如 ip.ttl gt 100 && ip.ttl lt 255。
示例:
http.request.uri contains "login"
- 过滤登录请求。
5. 过滤逻辑运算符
逻辑运算符允许 AND/OR/NOT 组合,构建多层过滤。括号分组是关键,避免歧义。
5.1. 使用场景
(ip.src == 10.0.0.1 or ip.dst == 10.0.0.1) and tcp.port == 80
- 过滤特定主机的 HTTP 流量。
实用技巧:用 not 排除噪声,如 not icmp——隐藏 ping 包。
示例:
(tcp.flags.syn == 1 and tcp.flags.ack == 0) or (tcp.flags.fin == 1)
- SYN/FIN 包。
6. Frame Relay 协议过滤器
Frame Relay 是旧式 WAN 协议,过滤器聚焦 DLCI、拥塞位。虽少用,但遗留系统常见。
6.1. 使用场景
迁移项目中,检查 FECN/BECN 拥塞通知;过滤特定 DLCI 通道。
实用技巧:fr.dlci == 100——隔离虚拟电路。
示例:
fr.fecn == 1
- 前向拥塞包。
7. HTTP 协议过滤器
HTTP 是 Web 流量主力,过滤器覆盖头字段、方法、状态码。适用于应用性能监控和安全扫描。
7.1. 使用场景
过滤 404 错误响应;追踪 Cookie 注入攻击。http.request.method 是高频使用字段。
实用技巧:http contains "POST" && http.request.uri contains "/api"——API 调用包。
示例:
http.response.code == 500
- 服务器错误。
8. ICMP 协议过滤器
ICMP(Internet Control Message Protocol)用于错误报告和诊断,如 ping。过滤器聚焦类型、代码、ID。
8.1. 使用场景
过滤 Echo Request/Reply 追踪延迟;隔离 Destination Unreachable。
实用技巧:icmp.type == 8——Ping 请求。
示例:
icmp.code == 3 && icmp.type == 3
- 端口不可达。
9. ICMPv6 协议过滤器
ICMPv6 扩展了 IPv6 的邻居发现、移动性支持。过滤器类似 ICMP,但增加选项和 RA 字段。
9.1. 使用场景
IPv6 迁移中,过滤 Router Advertisement;检查 CGA 安全选项。
实用技巧:icmpv6.type == 133——Router Solicitation。
示例:
icmpv6.ra.router_lifetime > 0
- 活跃路由器。
10. IEEE 802.1Q 协议过滤器
802.1Q 是 VLAN 标签标准,过滤器针对 VID、PCP 等。适用于交换机端口镜像分析。
10.1. 使用场景
过滤特定 VLAN 的广播;QoS 优先级检查。
实用技巧:vlan.id == 100——VLAN 100 流量。
示例:
vlan.priority == 7
- 最高优先级包。
11. IPv4 协议过滤器
IPv4 是主流,过滤器覆盖地址、标志、分片、QoS。ip.src/dst 是基础。
11.1. 使用场景
过滤特定子网流量;诊断 DF 位导致的分片失败。
实用技巧:ip.frag_offset != 0——分片包。
示例:
ip.dsfield.dscp == 46
- EF QoS 包。
12. IPv6 协议过滤器
IPv6 过滤类似 IPv4,但增加流标签、扩展头。ipv6.src/dst 是基础。
12.1. 使用场景
双栈环境中,过滤分片扩展头;检查路由头类型。
实用技巧:ipv6.fragment.more == 1——更多 IPv6 分片。
示例:
ipv6.flow == 0x12345
- 特定流标签。
13. MPLS 协议过滤器
MPLS(Multiprotocol Label Switching)用于 VPN 和流量工程,过滤器针对标签、EXP、TTL。
13.1. 使用场景
MPLS VPN 泄露排查;OAM 维护消息监控。
实用技巧:mpls.label == 100——特定标签流量。
示例:
mpls.exp == 5
- 中等 QoS。
14. PPP 协议过滤器
PPP(Point-to-Point Protocol)用于拨号和串行链路,过滤器简单,聚焦地址、协议。
14.1. 使用场景
DSL 连接调试;PPPoE 会话监控。
实用技巧:ppp.protocol == 0x0021——IPv4 over PPP。
示例:
ppp.direction == 1
- 入站帧。
15. RIP 协议过滤器
RIP(Routing Information Protocol)简单距离矢量协议,过滤器针对命令、度量。
15.1. 使用场景
小型网络路由收敛分析;版本兼容检查。
实用技巧:rip.command == 2——响应消息。
示例:
rip.metric < 16
- 有效路由。
16. TCP 协议过滤器
TCP 是传输层骨干,过滤器详尽,覆盖标志、选项、重传。
16.1. 使用场景
连接建立/终止分析;SACK 效率优化。
实用技巧:tcp.flags.syn == 1 && tcp.flags.ack == 0——SYN 包。
示例:
tcp.analysis.retransmission
- 重传包。
17. UDP 协议过滤器
UDP 轻量,过滤器简单,聚焦端口、长度、校验。
17.1. 使用场景
DNS/RTP 流量监控;UDP 洪泛攻击检测。
实用技巧:udp.port == 53——DNS 流量。
示例:
udp.length > 512
- 大 UDP 包。
18. VTP 协议过滤器
VTP(VLAN Trunking Protocol)用于 Cisco 交换机 VLAN 同步,过滤器针对版本、修订、摘要。
18.1. 使用场景
VLAN 传播故障排查;域隔离检查。
实用技巧:vtp.version == 2——VTP v2 消息。
示例:
vtp.conf_rev_num > 10
- 高修订配置。