首页/网络/抓包与流量分析速查/Wireshark 按 UDP 端口过滤
Wireshark 技巧75 条

Wireshark 按 UDP 端口过滤

udp.port / udp.srcport / udp.dstport 过滤 UDP 会话:DNS、DHCP、NTP、QUIC 等无连接协议定位全靠它。

udp.port 在做什么

udp.port 按 UDP 端口数字筛选报文,udp.srcport 与 udp.dstport 限定方向。DNS、DHCP、NTP、syslog、QUIC 这些无连接协议全靠它定位。因为 UDP 没有握手,抓包不能像 TCP 那样通过建连过程判断两端是否连通,只能看数据是否单向出现:只有请求没有响应,可能是丢包、被拦截,也可能对端本来就不响应,需要结合业务日志判断。它与 TCP 端口字段完全独立,同号端口不会互相命中。

基本信息

双向匹配udp.port == 53
方向限定udp.srcport == 53 / udp.dstport == 53
与 TCP 的关系两者完全独立,443 上的 QUIC 要用 udp.port 才能看到
集合写法udp.port in {53, 123, 443}
常见协议端口53 DNS、67 与 68 DHCP、123 NTP、443 QUIC、514 syslog

典型使用场景

  • 排查域名解析:只看 53 端口确认查询与响应是否成对
  • 确认是否走了新协议:检查 UDP 443 上的 QUIC 流量占比
  • 核对时间同步:看 123 端口的请求响应是否规律
  • 排查地址分配:DHCP 用广播完成交互,需要按 67 与 68 过滤
  • 检查日志投递是否正常:syslog 走 UDP 时丢包不会有重传提示

常用示例

常用示例
udp.port == 53                                    # 域名解析
tcp.port == 53                                    # 对照:大响应会走 TCP
udp.dstport == 123 && ip.addr == 203.0.113.123     # 发往时间服务器
udp.port == 443                                    # QUIC
tcp.port == 443 || udp.port == 443                 # Web 流量两个协议族一起看
udp.port in {53, 123} && ip.src == 10.0.0.9        # 某主机的基础服务流量

常见 UDP 端口

端口协议排查要点
53DNS同时存在 TCP 53,大响应或截断会回退到 TCP
67 与 68DHCP用广播交互,需在客户端所在广播域抓包
123NTP响应缺失通常与时间服务器可达性有关
443QUICWeb 流量只看 TCP 会漏掉这一半
514syslog无连接,丢包不会有重传提示,缺失只能靠对比
4789VXLAN 等隧道封装抓取时注意内外层头部,过滤条件要对应外层地址
DNS 同时使用 UDP 与 TCP 的 53 端口:普通查询走 UDP,响应过大或区域传送走 TCP。排查解析问题时只看一个协议族会得出不完整的结论。
UDP 没有重传机制。抓不到响应既可能是丢包,也可能是被安全设备丢弃或对端本就不响应,不能像 TCP 那样通过标志位与重传直接判断是网络问题。

配合分析

配合分析
ss -lunp | head -20                        # 查看本机 UDP 监听端口与进程
tshark -r a.pcap -Y 'udp.dstport == 53' | wc -l   # 统计查询条数
tshark -r a.pcap -Y 'dns' -T fields -e frame.time_relative -e dns.qry.name | head   # 提取查询名

判读要点

  • 只有请求没有响应:先确认请求是否到达服务端,再判断是丢包还是对方不回
  • 同一地址反复发同一请求,是无连接协议下的重试行为,与 TCP 重传含义不同
  • 响应时间波动大但都能收到,说明链路质量不稳定而非不可达
  • 大报文被分片后,过滤仍能命中首片,后续分片需要重组才能看全

易错点

  • 把 UDP 与 TCP 的端口条件混用,例如用 tcp.port 查 QUIC 会永远没有结果
  • UDP 丢包没有重传,看不到响应时直接归因网络可能掩盖服务端未响应的事实
  • DNS 大响应走 TCP,只过滤 UDP 会误判为解析失败
  • 抓包点不在同一广播域时看不到 DHCP 交互,属于抓包位置问题而非服务故障
  • 隧道封装场景下过滤用的是外层地址与端口,写错层级会匹配不到

数据来源与参考

  • Wireshark 显示过滤器参考(udp.port)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌