如果目的地是 VPN 主机,Windows 10 不会通过 VPN 路由流量

如果目的地是 VPN 主机,Windows 10 不会通过 VPN 路由流量

我已经在 Ubuntu 18.04 服务器上使用 strongswan 设置了 ikev2 VPN,并且我使用的是 Windows 10 Pro 1809 和内置的 vpn 客户端。

我可以正常连接到 VPN,几乎所有流量都通过 VPN 路由。如果我访问 ipchicken.com 或 whatismyip.com 等网站,它们会显示 VPN IP 地址。

但是,如果我尝试访问托管在同一台服务器上的反向代理,流量来自我的外部连接,而不是 vpn。这意味着我无法访问反向代理上仅限于本地 ip 地址的某些服务。

如果我直接通过服务器的 LAN ip 访问反向代理,那么流量就会通过 vpn。

是什么赋予了?

答案1

到您服务器的公共 IP 地址的流量必须通过互联网。否则 VPN 本身将无法工作。VPN 隧道无法使用自身到达服务器;这毫无意义。Windows 在协议方面不会有所区别;任何发往您服务器的公共 IP 的流量都将通过互联网路由。

您可以通过打开命令提示符并输入来查看路由表中的路由规则route print。VPN 服务器的公共 IP 地址将被列为单一的高优先级路由。

要通过 VPN 访问您的服务器,您应该使用服务器的 IP 地址...

  • 在 VPN 子网上
  • 可从 VPN 子网网关路由

您发现服务器的 LAN IP 通过 VPN 传输。您的计算机将通过 VPN 发送此 IP,因为此 IP 不在您的本地 LAN 上,也不是服务器的公共 IP。服务器在 VPN 接口上看到此流量,并且作为 VPN 网关,服务器将其转发到远程 LAN*。然后,服务器在其远程 LAN IP 上看到远程 LAN 上的此流量并拾取它,将其转发到正确的应用程序。

* 请注意,Linux 非常聪明,可以跳过此步骤。它知道所有其他接口的 IP 地址,默认情况下将接受任何接口上它所拥有的任何 IP 的流量。

相关内容