如何使用不同的外部和内部端口进行端口转发

如何使用不同的外部和内部端口进行端口转发

我知道使用相同外部和内部端口的端口转发,例如 VPN 设置

外部端口 - 1723

内部端口 - 1723

设备 - 192.168.1.40

但我见过这样的设置

外部端口 - 23458

内部端口 - 1723

设备 - 192.168.1.40

无论我怎么尝试,似乎都无法让它工作。如何访问具有不同外部和内部转发端口的 VPN。

答案1

你使用外部端口,实际上你不需要知道内部端口。路由器或 VPN 会自动重定向到内部端口。

192.168.1.40:23458

答案2

我怀疑问题可能不是出在一般的端口不同,而是你试图使用点对点隧道协议作为您的 VPN 协议。PPTP 不仅仅通过 TCP 连接运行 – 那只是控制渠道。

PPTP 数据通道使用单独的 GRE 隧道,因此 NAT 需要为通过的 VPN 连接做出特殊安排(就像它为 FTP 所做的那样)——并且通常只有当路由器看到特定端口上的活动时,才会激活“NAT 助手”。简而言之,如果连接到端口 1723,路由器就会应用其 PPTP 特定的 NAT 魔法;如果连接到任何其他端口,则不会。

这项检查很可能已经完成“端口转发”规则生效,因此路由器仅识别 PPTP 连接,如果外部的端口是1723。

(您可以尝试在路由器上为 GRE 配置静态端口转发规则,但大多数路由器实际上不允许您选择除 TCP 或 UDP 之外的任何协议,而 GRE 使用两者都不其中 – 它直接通过 IP 作为协议 47 进行传输。)

因此,我实际的建议是使用其他 VPN 协议,因为还有其他原因要避免使用 PPTP,而不仅仅是这个原因(具体来说:弱身份验证和同样弱的基于 RC4 的加密)。对于 Windows 客户端,OpenVPN 可能是一个不错的选择。

相关内容