我正在 Xubuntu 14.04 中连接到与 Cisco 兼容的 VPN。
我可以连接并访问网络上的 IP 和服务器。但是,我无法访问外部网站。当我更改设置时,这种情况发生了逆转,我可以访问互联网,但无法访问 VPN 上的内部内容。
在 VPN 下,config -> ipv4 setting -> routes
我尝试了“忽略自动获得的路由”和“仅将此连接用于其网络上的资源”的所有排列组合。
我还尝试手动配置 VPN 的 DNS 服务器并使用 Google 的公共服务器,以及连接到 VPN 时系统日志输出中显示的 VPN 附加搜索域。
我也执行过 dpkg-reconfigure resolveconf 但无济于事。
我想要的只是能够连接到 VPN,访问其上的服务器和 IP,同时还能够访问更广泛的互联网,而无需先断开 VPN 连接。
根据要求输出 ip route
无需VPN:
default via 192.168.1.1 dev eth0 proto static
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.151 metric 1
VPN:
default via 192.168.1.1 dev eth0 proto static
10.0.0.0/24 dev tun0 proto static
10.0.1.0/24 dev tun0 proto kernel scope link src 10.0.1.116
10.0.4.0/24 dev tun0 proto static
10.0.6.0/24 dev tun0 proto static
xx.xx.xx.xx via 192.168.1.1 dev eth0 proto static
172.16.0.0/24 dev tun0 proto static
192.168.1.0/24 dev tun0 proto static
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.151 metric 1
(xx.xx.xx.xx 是我的公网 IP)
答案1
该问题是由路由器的设置引起的。
它使用 192.168.1.x 作为本地范围,当我将其更改为使用 192.168.0.x 时,一切都开始正常工作。
VPN 使用两个范围内的 IP - 10.0.0.x 和 192.168.1.x。由于我的机器被分配了 10.0.0.x 范围内的 IP,因此不清楚 VPN 是否也使用了冲突的范围。
答案2
VPN 服务器会推送 VPN 客户端设置的路由。这些路由没有问题,但默认路由可能通过 VPN 连接。因此,连接到 VPN 后,只需将默认路由改回正常路由即可。
在终端中删除默认路由:
sudo route del default
添加新路线:
sudo route add default gw <ip>
替换<ip>
为您家里的路线。如果您不知道该 IP,只需在未连接到 VPN 时输入此命令(它会打印您的默认网关/路由器 IP):
sudo route -n | awk '/^0.0.0.0/{print $2}'