使用 OpenVPN 玩使用广播数据包的游戏时出现问题。其他游戏可以正常运行,主机可以相互 ping

使用 OpenVPN 玩使用广播数据包的游戏时出现问题。其他游戏可以正常运行,主机可以相互 ping

我在桥接模式下运行 OpenVPN 服务器,客户端可以成功连接,查看共享文件夹并玩允许输入 LAN IP 地址的 LAN 游戏。但是,我认为我无法玩像 Sacred Underworld 这样的游戏,因为它会发送广播数据包。该游戏甚至没有出现在客户端计算机上的游戏列表中。

我是 OpenVPN 的新手,但我认为这可能与以下两个问题有关:

  1. 我可能需要某种路由来允许正确处理广播数据包(虽然不确定如何设置)

  2. 我的 VPN 在与路由器不同的子网中运行。例如,我的家庭网络是192.168.1.xx,而我的 VPN 使用类似 的网络10.0.0.xx。我是否可能需要让我的 VPN 与我的实际网络共享同一个子网(即192.168.1.xx)?如果是,我该如何设置?

答案1

关于问题1:

使用 (UDP) 广播的 LAN 游戏通常会选择使用最低度量作为其广播路由的网络接口(即 ip )。很可能您的默认网络接口(例如您的 NIC)具有最低度量,因此游戏在您的LAN 而不是 VPN255.255.255.255上广播。您可以在 Linux 或Windows 上使用检查路由表。192.168.1.0/24route -vnroute print

要在 VPN 上接收广播,请在所有 OpenVPN 客户端上执行以下操作 (不是在服务器上):

在 OpenVPN 接口上添加新的广播路由 ( 255.255.255.255/32),其度量值低于默认网络接口使用的度量值。如果 OpenVPN 接口上已经存在这样的路由,则只需将度量值更改为最低的度量值即可。

在 Windows 中,广播路由已经存在,因此您只需像这样更改全局接口度量:

netsh int ip set int <name_of_your_openvpn_connection> metric=5

如果建立连接,这将优先考虑 OpenVPN 接口。如果您似乎无法设置指标,请尝试禁用自动公制界面选项。

在 Linux 中,您可能只需要添加相应的路由(如果需要,添加度量):

route add -host 255.255.255.255/32 <your_openvpn_device>

这将获得像魔兽争霸III或者纪元 1404广播到 VPN 而不是本地 LAN(已通过 Debian OpenVPN 服务器和多个 Windows 7 客户端成功测试)。


关于问题2:

充足 教程(还辅助脚本) 介绍如何在 OpenVPN 中设置以太网桥接。

请注意,如果您只想通过 OpenVPN 玩 LAN 游戏,则根本不需要任何以太网桥接。将 OpenVPN 与 Tap 设备一起使用就足够了,例如,还可以处理旧游戏所需的广播或 IPX 等协议。

答案2

度量有两个,接口度量和网关度量。对于 IPv4,实际度量是两者之和。

可以将其中一个或两个都配置为自动。如果您想要一个精确的值,则必须同时指定两者。

您可以使用鼠标来完成此操作,配置接口 IPv4 协议的高级属性。

相关内容