我的目的是通过多个 NAT 后面的远程机器路由所有 Internet 流量。ISP 的 NAT 服务器不在我的控制之下。我确实控制了我自己的 NAT 服务器,它是一个本地路由器。服务器和客户端都运行 Windows 7(客户端 - x64 和服务器 - x86)。
为此,我设置了 SoftEther VPN 服务器并通过 SoftEther VPN 客户端连接到它。服务器配置为使用 VPN Azure,因为它无法在我的 ISP 的 NAT 中“打孔”。这排除了在客户端使用内置 IPSec/L2TP VPN 的可能性,因为它不理解 VPN Azure。
然而,通过运行一些测试,我发现,通过这种设置,我客户端的 Internet 流量仍然通过本地 Internet 网关。我研究了客户端上的路由表,发现 SoftEther 只为一些远程 LAN IP 设置了路由,而不是所有 Internet IP。我试图通过手动添加新路线来解决这个问题:
route add 0.0.0.0 mask 0.0.0.0 0.0.0.0 metric 2 if 22
Run Code Online (Sandbox Code Playgroud)
其中 22 - 是 SoftEther 客户端创建的接口。但是,服务器似乎丢弃了所有未寻址到远程 LAN 的数据包(我不确定这一点)。
如何配置 SoftEther 客户端为所有 IP 和 SoftEther 服务器自动创建路由以通过远程网关路由所有 Internet 数据包?或者是否有针对此类任务的替代解决方案?
PS 我试过使用 NAT32,但它似乎以某种方式与服务器上的 Internet 连接混合在一起,使其无法供本地用户使用。