端口转发
端口转发用于把 From 端点上的服务端口,暴露到 To 端点的指定端口。
这里的 From 是服务来源,也就是服务真实存在的端点。To 是转发入口,也就是用户实际访问的端点。例如把 From 10.8.0.2:80 转发到 To 10.8.0.3:8080,用户访问 To 端点的 8080,流量会被 To 端点转发到 From 端点的 80。
在系统字段和界面文案里,From 对应“源”,To 对应“目的”:
- From 端点 = 源端点。
- From 端口 = 源端口,也就是服务端口。
- To 端点 = 目的端点。
- To 端口 = 目的端口,也就是对外暴露的访问端口。
支持协议
规则支持:
- TCP。
- UDP。
- 所有流量。
协议作用在 To 端点暴露出来的目的端口上。选择 TCP 时,只转发 TCP;选择 UDP 时,只转发 UDP;选择所有流量时会同时生成对应规则。
系统限制
端口转发通过 To 端点的生命周期命令实现,因此 To 端点系统需要明确选择。
当前支持:
- Linux。
- macOS。
不支持 Windows 作为 To 端点,因为 Windows WireGuard GUI 工具链不等价支持 wg-quick 生命周期命令。
已管理规则
端口转发页面会展示系统已管理的规则,格式围绕 “From xxx To xxx” 组织。
阅读时按这个语义理解:
- From:服务在哪里。
- To:把这个服务暴露到哪里。
每条规则可以临时禁用。禁用后,页面状态应显示“禁用”,并提示端口转发已禁用。
新建规则
新建规则时需要选择:
- 配置。
- From 端点:服务真实存在的端点。
- 源端口:From 端点上的服务端口。
- 协议。
- To 端点:负责承接访问并执行转发命令的端点。
- 目的端口:To 端点对外暴露的端口。
- 目的系统:To 端点的系统类型。
创建后,系统会把对应生命周期命令写入 To 端点。之后需要让 To 端点重新应用配置,规则才会真正生效。
删除规则
通过端口转发工具创建的生命周期命令只能回到端口转发页面删除。
端点高级配置页面可以看到这些命令,但删除按钮会禁用。这样可以避免用户在高级配置里手动删除一半,导致端口转发页面状态和真实命令不一致。
与系统转发能力
Linux 和 macOS 需要开启 IPv4 转发才能正常转发流量。客户端安装时会尝试开启;如果开启失败,只显示错误,不阻断安装流程。
