我在 Ubuntu 15.04 上有一个可以正常工作的互联网和 VPN 连接 (openconnect),然后我换了一个新路由器,它改变了我的 LAN ips。我从 10.xxx 改成了 192.168.xx,现在当我使用 vpn 时,我失去了所有的互联网连接,而 VPN 上的一切都很正常。
我已禁用笔记本电脑和路由器上的所有防火墙。这是我使用 VPN 时的网络状态,如您所见,192.168.0.0 有 2 个条目 - 我假设这就是问题所在。
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlp62s0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 vpn0
10.0.1.0 0.0.0.0 255.255.255.128 U 0 0 0 vpn0
54.175.25.57 192.168.0.1 255.255.255.255 UGH 0 0 0 wlp62s0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlp62s0
192.168.0.0 0.0.0.0 255.255.255.128 U 0 0 0 vpn0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp62s0
我还可以访问使用 10.xxx 的康卡斯特的 Wi-Fi 信号,当我使用该信号时,一切都正常。这是我使用 VPN 时的网络状态:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.224.0.1 0.0.0.0 UG 0 0 0 wlp62s0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 vpn0
10.0.1.0 0.0.0.0 255.255.255.128 U 0 0 0 vpn0
10.224.0.0 0.0.0.0 255.224.0.0 U 0 0 0 wlp62s0
54.175.25.57 10.224.0.1 255.255.255.255 UGH 0 0 0 wlp62s0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlp62s0
192.168.0.0 0.0.0.0 255.255.255.128 U 0 0 0 vpn0
这里不允许双重入境。
那么发生了什么,为什么,以及我该如何解决?
答案1
VPN 宣传可以通过它访问 IP 地址 192.168.0.0 至 192.168.0.127(第一个路由列表的倒数第二行) - 此 IP 范围与您的以太网范围 192.168.0.0 - 192.168.0.254(最后一行)重叠。
由于 VPN 路由更具体,因此它被优先使用,并给您带来问题。有几种方法可以解决这个问题,但本质上,您需要重新编号您的 LAN,以便它不会与 OpenVPN 冲突,并且理想情况下不会重叠。
您可以通过更改 OpenVPN 配置来实现这一点,使其不公布 192.168.0.0/25 范围 [但如果您在 VPN 的另一端有该范围内的其他主机,您将无法再访问它们],或者您可以将网络重新编号到该范围之外 - 例如,将您的 LAN 网络更改为 192.168.1.0 网络掩码 255.255.255.0