在RapidXen买的VPS,PPTP和OpenVPN的转发都有问题。就是在这个诊断方法中的第6步挂了。从客户机ping某个因特网主机,然后一切都正常,但是从该主机应答的包回不来。具体就是开VPN的情况下,ping g.cn,在VPN服务器端抓包是如下结果:
# tcpdump -n -i tun0 icmp可以看到,只有echo request却没有从g.cn的echo reply。
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 96 bytes
19:56:47.576331 IP 10.8.0.10 > 203.208.39.99: ICMP echo request, id 5592, seq 18, length 64
19:56:48.576924 IP 10.8.0.10 > 203.208.39.99: ICMP echo request, id 5592, seq 19, length 64
19:56:49.576452 IP 10.8.0.10 > 203.208.39.99: ICMP echo request, id 5592, seq 20, length 64
19:56:50.575835 IP 10.8.0.10 > 203.208.39.99: ICMP echo request, id 5592, seq 21, length 64
所有的数据包都回不来,导致VPN没法用来翻墙了。
2)VPS
在VPS的客服里面提问,他们说可能是内核有问题,让我用PV-GRUB后使用发行版的内核。用PV-GRUB可以在Xen虚拟机中使用发行版的内核,而不是Xen提供的内核。
话说RapidXen的支持实在是太烂了,管理界面改成PV-GRUB,从操作界面里面的Send shutdown signal再Start the VPS不行,要用Immediately stop VPS才能在提供的内核和PV-GRUB之间成功切换。整个Web管理应用功能非常之简陋,而对VPS的配置也没有任何文档积累,到服务商的支持IRC里面问,也半天没人说话。
最后是根据Linode的文档,用上了Ubuntu 10.04 LTS(Lucid Lynx)自带的内核。但VPN的问题仍然没有消失。没办法啊,只好用SSH了,反正SSH也比较方便。
更新:2011年1月2日。客服回复说在library里面有PV-GRUB的设置文档,让我才知道他们也有知识库,不过里面只有3篇文章。