故障排查
如何提高 P2P 打洞和远程连接成功率
客户端检测到对称型 NAT 时,请先开启路由器 UPnP;如果仍无法直连,再把运行 p2pRemote 的设备临时设为 DMZ 主机。下面按路由器后台中的实际操作顺序说明。
开始前:找到路由器后台和本机 IP
- 确保运行 p2pRemote 的设备连接到你能管理的家庭路由器;校园网、公司网、酒店 Wi‑Fi 通常无法进行下面的设置。
- 在 Windows 打开“设置 → 网络和 Internet → 当前网络 → 硬件属性”,记下 IPv4 地址和默认网关,例如 192.168.1.100 和 192.168.1.1。
- 在浏览器打开默认网关地址并登录路由器后台。常见地址是 192.168.1.1、192.168.0.1 或 192.168.31.1,账号信息通常在路由器底部标签或管理 App 中。
- 在路由器的 DHCP/局域网设置中,把这台设备的 IPv4 地址设为静态租约或固定分配,避免重启后地址变化导致 DMZ 指向错误设备。
第一步:开启 UPnP
- 在路由器后台查找“UPnP”“端口映射”“NAT 转发”或“高级设置 → UPnP”。不同品牌名称可能略有不同。
- 打开 UPnP 开关并保存;如果路由器要求重启,请完成重启。
- 退出并重新启动 p2pRemote,然后重新发起一次连接。
- 若路由器提供“UPnP 映射列表”,连接时应能看到这台设备创建的临时映射;连接成功后即可保留 UPnP,无需继续设置 DMZ。
提示:UPnP 是首选方案:客户端只在需要时申请映射,比把整台设备暴露为 DMZ 主机影响更小。请只在可信的家庭局域网开启。
第二步:UPnP 仍失败时设置 DMZ 主机
- 确认前面记录的本机 IPv4 地址仍未变化。
- 在路由器后台查找“DMZ 主机”“暴露主机”“Exposed Host”或“NAT 转发 → DMZ”。
- 开启 DMZ,把 DMZ 主机 IP 填为运行 p2pRemote 的设备 IPv4 地址,例如 192.168.1.100,然后保存。不要填写默认网关,也不要填写对端设备地址。
- 保持 Windows 防火墙开启,重新启动 p2pRemote 并再次连接。若连接成功,说明路由器的 NAT/端口过滤是主要原因。
- 测试完成后,如果只想用于排查,请关闭 DMZ;若必须长期使用,应确保系统已更新、Windows 防火墙开启,并且该设备没有对公网开放不必要的服务。
提示:DMZ 会把路由器收到的、未被其他规则匹配的入站连接转给指定设备,风险明显高于 UPnP。不要把 NAS、摄像头或存有敏感数据且缺少防火墙的设备设为 DMZ 主机。
光猫加路由器:两层都要处理
- 在主路由器状态页查看 WAN IP。若它是 192.168.x.x、10.x.x.x、172.16–31.x.x 或 100.64–127.x.x,说明主路由器前面还有一层 NAT。
- 如果光猫也在路由模式,可优先将光猫改为桥接、由主路由器拨号;不熟悉宽带账号和 IPTV 配置时,请联系运营商处理。
- 暂时无法桥接时,可在光猫后台把主路由器的 WAN IP 设置为光猫的 DMZ 主机,再在主路由器开启 UPnP;只改内层路由器通常不够。
- 如果最外层地址属于 100.64.0.0/10 或路由器 WAN IP 与公网 IP 查询结果不同,可能是运营商 CGNAT。此时家庭路由器的 DMZ/UPnP 无法控制运营商那一层,应联系运营商申请公网 IPv4。
完成后的检查顺序
- 先只开 UPnP 并重试;成功就停止,不再开启 DMZ。
- UPnP 失败后再设置 DMZ 并重试,用结果确认是否为路由器过滤问题。
- 两端都处于对称型 NAT 时,优先在其中至少一端完成上述设置;有条件时两端都检查。
- 仍失败时,用手机热点替换其中一端测试,并记录两端 NAT 类型、路由器 WAN IP、是否双重 NAT,以及客户端失败时间后再反馈。