首页/网络/协议速查/UDP 连通性测试工具
TCP 与 UDP54 条

UDP 连通性测试工具

UDP 无握手,测试靠「发出去 + 对端是否有响应」:nc -u、dig、tcping、nmap -sU 各有适用面,结果要谨慎解读。

协议速查网络更新于 2026-10-13

为什么 UDP 难测

UDP 没有握手,也就没有「连接建立失败」这种明确信号。测试因此变成双向的事:既要发得出去,还要确认对端真的回了。所以工具只能提供线索,最终判据要靠业务协议本身或者两端同时抓包。

怎么挑工具

简单探测可以用 nc、tcping 这一类工具;更可信的是用业务协议自身探测,例如 DNS 用 dig、时间同步用对应客户端、语音用 SIP 的 OPTIONS 请求。端口扫描类工具只在获授权的环境里使用。

基本信息

常用工具nc -u、dig、tcping、nmap -sU,配合 tcpdump
判据强弱通用探测最弱,业务协议探测更强,两端抓包最可靠
关键前提无响应不等于不通:防火墙可能静默丢弃
授权要求扫描类工具只能在已获授权的环境中使用

典型使用场景

  • 验证防火墙是否真正放行了某个 UDP 服务:必须两端对照
  • 排查 DNS、NTP、日志接收等 UDP 服务的连通性
  • 验证有状态防火墙的回程方向是否也放行
  • 压测或上线前的连通性基线确认

常用命令

常用命令
nc -u -v -w 2 10.0.0.9 123          # 发探测(无响应不代表不通)
dig @10.0.0.9 example.com +time=2    # 用业务协议测 DNS
tcping 10.0.0.9 123                  # 缺少 UDP 专用工具时的替代做法
nmap -sU -p 123 --reason 10.0.0.9    # 仅在授权环境使用

结果怎么读

结果可能含义下一步
没有任何响应端口没开、防火墙静默丢弃、或对端本就不应答换业务协议探测并两端抓包
收到端口不可达差错目标可达但没有程序监听确认服务是否已启动
工具报告拒绝多为 ICMP 差错被解释成拒绝结合抓包确认真实语义
有正常响应链路与服务都正常进入业务层验证
nc -u 没有反应时,既可能是链路不通,也可能只是对端不回应。两端同时抓包才是可以下结论的证据。
UDP 防火墙规则放行只是一半:有状态设备还要允许回程流量,否则请求出得去、响应回不来。

易错点

  • 用 nc -u 无响应直接判定不通:忽略了「对端本就不应答」这一大类解释
  • 只在一端抓包:无法区分「没发出去」和「发出去了但对端没收到」
  • 用 TCP 工具去测 UDP 端口:测的是另一件事,结论无效
  • 在无授权环境运行端口扫描:既违规也有法律风险
  • 忘记回程规则:出方向已放行却仍不通,误判成服务端故障

数据来源与参考

  • man 8 nc
  • RFC 768

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌