我的家庭网络已安装并运行 OpenVPN 服务器。我可以使用 OpenVPN 客户端软件从 Windows 计算机连接到该网络,一切正常。
我有一台安装了 OpenVPN 客户端的 Ubuntu 笔记本电脑。我可以使用客户端和服务器提供的 client.ovpn 连接到 OpenVPN 服务器;但是,连接后我无法 ping 或访问 VPN 上的机器。对网络机器运行 ping 操作会导致以下结果:
$ ping 192.168.2.3
PING 192.168.2.3 (192.168.2.3) 56(84) bytes of data.
From 192.168.2.136 icmp_seq=1 Destination Host Unreachable
From 192.168.2.136 icmp_seq=2 Destination Host Unreachable
From 192.168.2.136 icmp_seq=3 Destination Host Unreachable
在 Windows 上,同样的事情也能正常进行,因此 Ubuntu 客户端上的路由配置一定存在问题,但我不知道是什么问题。为了以防万一,我刷新了客户端上的防火墙规则。
route -n
以下是VPN 连接之前和之后的输出:
107.15.x.x
是VPN网络的公网IP。
172.27.x.x
代表VPN的虚拟网络。
无需 VPN
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 wlan0
192.168.2.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0
192.168.121.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr1
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
使用 VPN
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 wlan0
107.15.x.x 192.168.2.1 255.255.255.255 UGH 0 0 0 wlan0
127.0.1.1 172.27.232.1 255.255.255.255 UGH 101 0 0 tun0
172.27.224.0 172.27.232.1 255.255.240.0 UG 101 0 0 tun0
172.27.232.0 0.0.0.0 255.255.252.0 U 0 0 0 tun0
192.168.2.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0
192.168.2.0 172.27.232.1 255.255.255.0 UG 101 0 0 tun0
192.168.121.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr1
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
知道我需要做什么才能解决这个问题吗?
答案1
看到这是一个简单的寻址方案问题:
如果您可以控制这两种寻址方案,并且将来会添加很多站点:请使用国家/地区、城市和本地 LAN 的10.A.B.C/24
寻址方案...(想得大一点!)A
B
C
如果您只能控制其中一种寻址方案(或者在不久的将来不会添加很多站点),则使用一种方案192.168.dayofyourbirthday.0/8
(使其足够随机,以便您在不久的将来不会再次遇到此问题)
所有的问题都会消失!
:-)