我正在尝试配置一个 PPTP VPN 网络来玩局域网游戏。结构如下图所示:
可以看到,客户端 1、客户端 2 和客户端 3 与 VPN 服务器(Windows Server 2012,使用默认的“传入连接”接口接受传入的 VPN 请求)建立 VPN 连接(使用 Windows 中集成的标准 VPN 接口),因此不需要第三方软件。
连接已成功建立(每个路由器上都已转发端口 1723),但是当一个客户端尝试托管游戏时,其他客户端看不到它(每个客户端的防火墙上都已设置了游戏使用的端口的例外),因此我假设每个客户端之间没有直接通信。
我尝试在每个客户端上取消选中“在远程网络上使用默认网关”,但这并不能解决问题。
我现在想做的是添加一些静态路由,但我不完全了解它们是如何工作的......
任何帮助将不胜感激。
答案1
对于静态路由,只需在通过 VPN 连接后在客户端上运行以下命令,并将<VPN>
其替换为您的 VPN 连接的名称:
netsh interface ip show config name=<VPN>
记住“IP 地址”下列出的内容。(此外,还有“子网前缀”条目,它会根据您的计划告诉您您的网络地址。)
现在您只需通过运行以下命令并查看“接口列表”中 VPN 连接旁边的点之前的数字来获取这个奇数接口号:
route print -4
有了这些信息,您现在可以在提升的提示符下运行以下命令:
route add 192.168.1.0 mask 255.255.255.0 <IP> IF <IF>
<IP>
之前获取的IP地址和<IF>
接口号在哪里。
运行此命令即可。使用ping
/确认tracert
,或者可能再查看一下route print -4
,它应该会告诉您发往特定位置的数据包将采用什么路由。
顺便说一句,看看你的计划,你可能要重新考虑使用具有相同网络地址和相同客户端 IP 的本地网络?!这行不通,在同一个网络上,IP 应该是唯一的,并且每个网络通常只有一个网络连接,在这种情况下,你有一个本地网络连接和一个通过 VPN。
/编辑:另请参阅我发布的脚本如何使 Windows VPN 路由选择性流量(按目标网络)?(或在该线程中发布的另一个脚本)。
答案2
问:你想做什么?
点对点
Windows 只允许一个 VPN 用户连接到另一个用户,因此这不起作用。
使用服务器在用户或客户端电脑上共享和分发游戏
Windows Server 不喜欢与另一个用户或客户端共享一个用户或客户端,因此这也不起作用。
对于 Windows,服务器需要有您想要共享的游戏,此外,如果您想共享客户端,您需要服务器上的软件将其他“客户端”路由到“服务客户端”。(服务器只是一个美化的路由器!)
如果您想在 PC 上共享游戏,则需要在该 PC 上安装软件,以便让多个客户端连接到该 PC,因为 Windows 一次只允许一个 VPN 或远程。