这个页面用浏览器自带的 WebRTC,向你以外的一组公共 STUN 服务器发探测,反推你的 NAT 如何分配端口。检测全程在你的浏览器本地完成,不会向本站回传任何数据,通常 2 到 4 秒出结果。
探测服务器
解析目标
测量映射
判定
—
—
—
实际影响
按映射行为推断技术细节:判定依据与 STUN 服务器状态
| 目标 | 目标 IP | 同 IP 目标数 | 响应 |
|---|
| 轮次 | 映射端口数 | 映射端口 | 目标数 | 目标 IP 组 | 本轮判定 |
|---|
映射端口必须在同一轮内比较——每轮是一个全新的本地端口,跨轮比端口没有意义。
STUN 服务器状态
| 服务器 | 地址 | 解析 IP | 首次响应 | 状态 |
|---|
原始 ICE 候选(SDP)
这个检测做了什么,没做什么
能做:判断你的 NAT 映射行为——同一个本地端口发给不同目标时,NAT 是否换用不同映射端口。这一项直接决定 P2P 打洞(WebRTC 直连、远程访问、游戏联机)有没有可能成功。
不能做:判断 过滤行为(RFC 3489 里 Full Cone / Restricted / Port Restricted 的细分)。它要求服务器从「你没联系过的地址」主动向你发包,而浏览器的 ICE 实现会丢弃来自非请求目标的响应;公共 STUN 也普遍不支持 CHANGE-REQUEST 属性。所以这里不会给那四种经典名字,避免给出没有依据的结论。
为什么不需要多 IP 的服务器:判定只用「映射端口有几个」这一件事。所有 STUN 探测都从同一个本地 UDP 端口发出,跨目标对比即可,服务器本身不需要是双 IP。
检测在你的浏览器本地完成,不向本站回传任何数据。浏览器需支持 WebRTC 且未被企业策略禁用;建议在 HTTPS 下访问。
如果你看到的是「无法判定」,多半是当前网络拦截了 UDP 出站,或者浏览器/安全软件禁用了 WebRTC。换一个网络环境再试一次通常就能出结果。

