NAT 穿透
用公网 worker 为内网服务提供入口,区分业务端口、隧道端口和内网目标,并逐段验证。
NAT 穿透适合把家中、办公室或无公网入口机器上的服务接出来。公网服务器接收连接,再经隧道交给内网服务器,由内网服务器访问目标服务。
两端都选择面板中的 服务器(worker)。这里的“内网服务器”不是转发端点,也不要求它有可供外部直接连接的公网地址。
准备两端和目标服务
以把内网网页服务开放到 入口域名:18080 为例:
| 角色 | 示例与检查 |
|---|---|
| 公网服务器 | 已安装且在线的 worker,外部能到达它的业务端口和隧道端口 |
| 内网服务器 | 已安装且在线的 worker,能主动连接公网端的隧道地址 |
| 目标 | 127.0.0.1:8080,这个地址由内网服务器访问 |
| 公网端口 | 18080,供用户访问,与目标端口可以不同 |
先在内网服务器本机验证目标服务可用。目标是另一台局域网设备时,填写内网服务器实际能到达的地址,例如 192.168.10.20:8080。127.0.0.1始终指内网 worker 所在机器。
两台服务器与配置应在同一租户范围内,账号还需有对应管理权限与剩余 NAT 配额。
新建穿透配置
进入 端口管理 → NAT穿透管理 → 添加NAT穿透配置。
- 公网服务器选择提供入口的 worker。
- 内网服务器选择能访问目标服务的 worker。
- 公网端口填写
18080。 - 目标填写
127.0.0.1:8080,不要在这里填公网入口地址。 - 展开 高级选项,核对下面三项后保存。
| 高级字段 | 含义 |
|---|---|
| NAT公网端口 | 内网端连接公网端时使用的隧道端口;有外部端口映射时填写映射后的端口 |
| NAT绑定端口 | 公网服务器本机实际监听的隧道端口 |
| 监听地址 | 公网业务监听的绑定地址;留空使用默认双栈监听,指定地址必须属于该机器 |
当前新建接口中,NAT公网端口留空默认是 29123,NAT绑定端口留空跟随它。 表单提示仍写“自动生成”,不要据此认为每条规则会随机得到不同端口。若显式修改,务必核对安全组、端口映射及已有监听。
公网端口用于业务,NAT 端口用于两端隧道,两者不能混为一项。多个穿透配置可以共用内部 NAT 监听;不要为了每条业务规则机械地分配一个新的隧道端口。
保存后逐段验证
- 确认公网和内网 worker 都在线,配置已下发。
- 检查公网机器的业务端口和 NAT 绑定端口是否成功监听。
- 从内网机器检查公网隧道地址可达;有映射时核对 NAT公网端口与本机绑定端口的对应关系。
- 从面板之外的网络访问
入口域名:18080,检查网页实际响应。 - 若使用 UDP 服务,另外发送真实 UDP 请求并检查响应;TCP 成功不能证明 UDP 已放行。
云安全组、系统防火墙和上游 NAT 的映射都需要匹配实际使用的协议。面板生成入口地址,也不代表外部网络已经放行。
排查与维护
| 现象 | 检查位置 |
|---|---|
| 内网 worker 离线 | 先恢复其控制连接;见节点离线排查 |
| 目标连接被拒绝 | 内网服务进程、绑定地址及目标端口 |
| 公网端口被占用 | 同机其他业务、已有普通转发和 NAT 配置 |
| 隧道不能建立 | NAT 公网/绑定端口、外部映射、两端网络与日志 |
| 域名不通而 IP 可用 | DNS 记录、IPv4 / IPv6 与缓存;需要自动同步时见DDNS |
编辑配置可能重建监听或隧道,已有连接需要重连。删除规则前先确认谁在使用该公网入口;删除后还要检查节点是否已收到变更。
需要整网互通或把设备加入同一虚拟网段时,继续阅读 WireGuard 组网。