openvpn - 连接到openVPN后无法浏览互联网

AZh*_*Zhu 13 openvpn windows-7

我使用以下服务器端配置设置了一个openVPN隧道:

port 1194
proto udp
dev tun
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
push "route 10.8.0.0 255.255.255.0"
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
client-to-client
log-append /var/log/openvpn
group daemon
daemon
verb 3
Run Code Online (Sandbox Code Playgroud)

和客户端配置文件如下:

client
remote ******* 1194
dev tun
comp-lzo
ca ca.crt
cert client1.crt
key client1.key
route-delay 2
route-method exe
redirect-gateway def1
verb 3
Run Code Online (Sandbox Code Playgroud)

但是,在连接时,我可以毫无问题地ping 10.8.0.1,但我甚至无法访问Google.

我在Windows 7旗舰版中使用管理员权限运行Open VPN 2.1.4.服务器是Ubuntu 10.04安装,默认情况下启用TUN.

我能在日志中找到的唯一可疑部分是这样的:

Mon Feb 21 20:44:33 2011 C:\WINDOWS\system32\route.exe ADD ********* MASK 255.255.255.255 192.168.1.1
OK!
Mon Feb 21 20:44:33 2011 C:\WINDOWS\system32\route.exe ADD 0.0.0.0 MASK 128.0.0.0 10.8.0.5
OK!
Mon Feb 21 20:44:34 2011 C:\WINDOWS\system32\route.exe ADD 128.0.0.0 MASK 128.0.0.0 10.8.0.5
OK!
Mon Feb 21 20:44:34 2011 C:\WINDOWS\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.5
OK!
Mon Feb 21 20:44:34 2011 C:\WINDOWS\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.5
The route addition failed: The object already exists.
Mon Feb 21 20:44:34 2011 Initialization Sequence Completed
Run Code Online (Sandbox Code Playgroud)

不确定这是否有帮助.

请帮忙!

谢谢!

Mar*_*tin 22

您正在使用该标志redirect-gateway def1,因为您将通过VPN重定向所有流量.

如果您在服务器上配置了NAT或任何其他地址转换,我无法从您的帖子中看到,但我的猜测是,数据包只是通过您的VPN路由,然后无法返回到您的客户端.

如果您的VPN客户端是,10.8.0.2并且您的服务器是10.8.0.1并且具有以下互联网IP 12.12.12.12:您将10.8.0.2通过VPN路由发送到谷歌,然后从那里发送到Google.问题是,原始地址将保持原样10.8.0.2,因此答案数据包永远不会找回给您.您必须添加一些转换方法来获取数据包并将原点转换10.8.0.212.12.12.12和返回:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

这在OpenVPN手册中也有解释.我希望这能解决你的问题,但从描述中我无法确定你是否启用了任何NAT转换,所以也许这根本没有帮助:-)