Skip to content

端口转发

端口转发用于把 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 转发才能正常转发流量。客户端安装时会尝试开启;如果开启失败,只显示错误,不阻断安装流程。