我第一次尝试设置 OpenVPN。我按照 OpenVPN 网站上的 HOWTO 指南操作,成功连接,但当我尝试路由我的网络流量时,似乎没有任何东西可以到达我的服务器。
我的服务器是 Amazon EC2 机箱,客户端是 MacOS Lion。我在 Mac 上使用 Tunnelblick。我已运行/尝试了以下内容:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
在我的服务器上运行- 在 Mac 上禁用防火墙
- 在 EC2 防火墙上启用 UDP 1194
- 尝试了 dev tun 和 dev tap
- 尝试使用 Amazon 的名称服务器和“推送“dhcp-option DNS 172.16.0.23”以及 Google 的 8.8.8.8[/list]
这是我的服务器配置文件:http://pastebin.com/izCBxk99
运行 OpenVPN 时服务器 ifconfig:http://pastebin.com/xM9w8kAA
服务器日志,其中一个客户端连接成功后尝试打开网页:http://pastebin.com/B1WAJ2XH
客户端配置文件:http://pastebin.com/GzPeXE7E
运行 OpenVPN 时客户端 ifconfig:http://pastebin.com/ZQvvP9Z0
客户端日志:http://pastebin.com/xmhEx77g
我注意到的唯一错误是在客户端日志中,其中显示:
2012-05-06 20:43:44 us=732786 /sbin/ifconfig tap0 delete
ifconfig: ioctl (SIOCDIFADDR): Can't assign requested address
2012-05-06 20:43:44 us=738214 NOTE: Tried to delete pre-existing tun/tap instance -- No Problem if failure
这可能是问题所在吗?我发现一些网页说 Tunnelblick 以前与 Lion 存在问题,但我使用的版本高于修复版本。
此外,我注意到在运行iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
(使用su
)之后,如果我这样做,我的服务器仍然会显示以下内容netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
10.248.138.0 0.0.0.0 255.255.254.0 U 0 0 0 eth0
0.0.0.0 10.248.138.1 0.0.0.0 UG 0 0 0 eth0
服务器似乎没有获取到新路由。这是问题所在吗?
请帮忙。谢谢!
答案1
您ip_forward
在服务器上启用了吗?
cat /proc/sys/net/ipv4/ip_forward # 0 disabled, 1 enabled
启用它以允许伪装:
echo 1 > /proc/sys/net/ipv4/ip_forward
为了使更改永久生效,请编辑/etc/sysctl.conf
:
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1