V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
insub
V2EX  ›  云计算

阿里云上买了个云服务器,可以正常连上VPN,可是不能访问公网

  •  
  •   insub · 2012-10-21 16:54:15 +08:00 · 31484 次点击
    这是一个创建于 4414 天前的主题,其中的信息可能已经有所发展或是发生改变。
    客户端肯定没有问题,自己linode上相同配置的vpn和killwall买的vpn连上之后都可以正常访问公网
    阿里云跟linode区别主要是双网卡,内网是eth0,IP 20.100.x.x,公网是 eth1,IP 42.121.x.x
    还有一个区别就是linode是ubuntu 9.04,阿里云是ubuntu 12.04
    搭上之后分配IP地址等等看着都还正常,现在主要怀疑是iptable转发规则的问题,或者DNS的问题

    系统是Ubuntu 12.04,双网卡,内网是eth0,IP 20.100.x.x,公网是 eth1,IP 42.121.x.x
    大致配置如下:

    apt-get install pptpd

    修改vim /etc/pptpd.conf文件
    localip 192.168.7.1
    remoteip 192.168.7.7-17

    添加VPN用户
    修改文件/etc/ppp/chap-secrets
    username pptpd password *

    添加DNS
    修改文件/etc/ppp/options
    ms-dns 8.8.8.8
    ms-dns 8.8.4.4

    编辑/etc/sysctl.conf文件
    net.ipv4.ip_forward=1
    运行下面的命令让配置生效
    sysctl -p

    iptable防火墙设置iptables -A INPUT -p gre -j ACCEPT
    iptables -A OUTPUT -p gre -j ACCEPTopen port 1723/tcp
    /sbin/iptables -t nat -A POSTROUTING -s 192.168.7.0/24 -o eth1 -j MASQUERADE


    iptables -t nat -A POSTROUTING -s 192.168.7.0/24 -j SNAT --to-source 42.121.x.x
    iptables -A FORWARD -s 192.168.7.0/24 -o 42.121.x.x -p udp --dport 67 -j ACCEPT
    iptables -A FORWARD -s 192.168.7.0/24 -o 42.121.x.x -p udp --dport 68 -j ACCEPT
    iptables -A FORWARD -i 42.121.x.x -p udp --sport 67 -j ACCEPT
    iptables -A FORWARD -i 42.121.x.x -p udp --sport 68 -j ACCEPT

    访问能正常连上,server也有ppp0出现....

    本人前端Coder,只能各种规则都胡乱试了下,惆怅...
    尤其诡异的是,https://google.com.hk可以正常使用,或者直接用google.com.hk的IP访问也可以,其它网站无论是域名还是IP都不可访问.....
    19 条回复    1970-01-01 08:00:00 +08:00
    lengxx
        1
    lengxx  
       2012-10-21 18:22:17 +08:00
    阿里云的服务器在墙内,你用他来穿墙?
    hedaors
        2
    hedaors  
       2012-10-21 18:34:37 +08:00
    @lengxx 或许是用来再墙外下载盗版电影之类的用。
    ninjai
        3
    ninjai  
       2012-10-21 18:35:51 +08:00
    没看见MTU的设置
    insub
        4
    insub  
    OP
       2012-10-21 23:14:42 +08:00
    @lengxx hedaors : 用来穿公司的监控。linode上的才用来穿墙

    @ninjai 谢谢,MTU确实没设置,查了下资料,看着真像,于是下了个MicrosoftFixit50613.msi把本机上的MTU改了
    悲剧出现了,连当初没问题的Linode现在也访问不了公网了!!!
    不过倒是更加肯定跟服务器端的MTU设置有关系,目前还在查资料想办法
    哪位同学弄过的,望指教~
    ninjai
        5
    ninjai  
       2012-10-22 00:04:20 +08:00   ❤️ 1
    @insub 并不是修改本机的MTU,而是修改服务器VPN连接的MTU
    这是我自己的VPN服务器使用的
    /sbin/iptables -A INPUT -p gre -j ACCEPT
    /sbin/iptables -A FORWARD -s 10.1.1.0/255.255.255.0 -p tcp -m tcp --tcp-flags FI
    N,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356
    /sbin/iptables -t nat -A POSTROUTING -s 10.1.1.0/255.255.255.0 -j SNAT --to-sour
    ce x.x.x.x
    insub
        6
    insub  
    OP
       2012-10-22 13:44:38 +08:00
    更诡异的事情出现了,调整之后,google.com可以访问,aliyun.com,也就是我的服务器所在的服务商阿里云的首页和内容甚至论坛都可以访问,WTF

    所以MTU问题基本可以排除掉,目前怀疑网关,掩码,之前还怀疑过DNS...


    下面是连上aliyun VPN之后的情况客户端和服务器端的情况:

    win pc ipconfig/all :

    PPP adapter aliyun:
    Connection-specific DNS Suffix . :
    Description . . . . . . . . . . . : WAN (PPP/SLIP) Interface
    Physical Address. . . . . . . . . : 00-53-45-00-00-00
    Dhcp Enabled. . . . . . . . . . . : No
    IP Address. . . . . . . . . . . . : 192.168.1.234
    Subnet Mask . . . . . . . . . . . : 255.255.255.255
    Default Gateway . . . . . . . . . : 192.168.1.234
    DNS Servers . . . . . . . . . . . : 8.8.8.8
    8.8.4.4

    win pc route print
    ===========================================================================
    Interface List
    0x1 ........................... MS TCP Loopback interface
    0x2 ...5c d9 98 76 90 e0 ...... D-Link DWL-G122 Wireless G USB Adapter (rev.F1)
    0x5d0004 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
    ===========================================================================
    ===========================================================================
    Active Routes:
    Network Destination Netmask Gateway Interface Metric
    0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.8 2
    0.0.0.0 0.0.0.0 192.168.1.234 192.168.1.234 1
    42.121.x.x 255.255.255.255 192.168.1.1 192.168.1.8 1
    127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
    169.254.0.0 255.255.0.0 192.168.1.8 192.168.1.8 20
    192.168.1.0 255.255.255.0 192.168.1.8 192.168.1.8 20
    192.168.1.8 255.255.255.255 127.0.0.1 127.0.0.1 20
    192.168.1.234 255.255.255.255 127.0.0.1 127.0.0.1 50
    192.168.1.255 255.255.255.255 192.168.1.8 192.168.1.8 20
    192.168.1.255 255.255.255.255 192.168.1.234 192.168.1.234 50
    224.0.0.0 240.0.0.0 192.168.1.8 192.168.1.8 20
    224.0.0.0 240.0.0.0 192.168.1.234 192.168.1.234 1
    255.255.255.255 255.255.255.255 192.168.1.8 192.168.1.8 1
    255.255.255.255 255.255.255.255 192.168.1.234 192.168.1.234 1
    Default Gateway: 192.168.1.234
    ===========================================================================
    Persistent Routes:
    None


    aliyun ifconfig
    eth0 Link encap:Ethernet HWaddr 00:16:3e:0e:21:65
    inet addr:10.200.x.x Bcast:10.200.247.255 Mask:255.255.248.0
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:4594 errors:0 dropped:0 overruns:0 frame:0
    TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:198106 (198.1 KB) TX bytes:480 (480.0 B)
    Interrupt:73

    eth1 Link encap:Ethernet HWaddr 00:16:3e:0e:21:66
    inet addr:42.121.x.x Bcast:42.121.107.255 Mask:255.255.252.0
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:144874 errors:0 dropped:0 overruns:0 frame:0
    TX packets:4188 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:9851321 (9.8 MB) TX bytes:781945 (781.9 KB)
    Interrupt:74

    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    UP LOOPBACK RUNNING MTU:16436 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

    ppp0 Link encap:Point-to-Point Protocol
    inet addr:192.168.1.1 P-t-P:192.168.1.234 Mask:255.255.255.255
    UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
    RX packets:1073 errors:0 dropped:0 overruns:0 frame:0
    TX packets:655 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:3
    RX bytes:120977 (120.9 KB) TX bytes:283721 (283.7 KB)


    aliyun route
    Kernel IP routing table
    Destination Gateway Genmask Flags Metric Ref Use Iface
    default 42.121.107.254 0.0.0.0 UG 0 0 0 eth1
    10.0.0.0 10.200.247.254 255.0.0.0 UG 0 0 0 eth0
    10.200.240.0 * 255.255.248.0 U 0 0 0 eth0
    42.121.104.0 * 255.255.252.0 U 0 0 0 eth1
    172.16.0.0 10.200.247.254 255.240.0.0 UG 0 0 0 eth0
    192.168.0.0 10.200.247.254 255.255.0.0 UG 0 0 0 eth0
    192.168.1.234 * 255.255.255.255 UH 0 0 0 ppp0
    ninjai
        7
    ninjai  
       2012-10-22 14:13:42 +08:00
    @insub 坚持MTU的观点
    insub
        8
    insub  
    OP
       2012-10-22 16:21:36 +08:00
    我按照你的配置给加上了iptablle,set mtu 调整了几个不同数值。都不行...
    请问ninjai,有什么办法可以查错么,靠猜太痛苦了。
    insub
        9
    insub  
    OP
       2012-10-22 16:42:37 +08:00
    另外,MTU的调整,是否直接生效,无需调整?
    insub
        10
    insub  
    OP
       2012-10-22 16:42:58 +08:00
    说错了,是否直接生效,无需重连接?
    ninjai
        11
    ninjai  
       2012-10-22 22:30:32 +08:00
    @insub 可以ping来debug,用不同的datagram
    ninjai
        12
    ninjai  
       2012-10-22 22:32:08 +08:00
    @insub 可以把你现有的iptables发出来看看,建议先越简单越好
    ninjai
        13
    ninjai  
       2012-10-22 22:54:05 +08:00   ❤️ 1
    insub
        14
    insub  
    OP
       2012-10-23 00:09:54 +08:00
    调整了还是不行,3天了,崩溃,甚至我之前在其它三台VPS上搭过VPN,都没出现这样问题。

    @ninjai 有个不情之请,可否请你在我的阿里云上搭一下VPN?可以提供干净的初始环境,ubuntu 12.04,未做过任何操作的。如果可以的话,请加下我QQ?e2vx貌似没有私信功能。我的号是 4119+33330 ,或邮箱 insub#126的邮箱

    后续我也会将完整阿里云VPN配置过程做个详细的note,供后面有需要的同学使用。
    kanezeng
        15
    kanezeng  
       2012-10-23 16:52:24 +08:00
    前几天同样在阿里云搭过,同样ubuntu同样访问外网不能,后来怀疑是ufw的问题(在12.04里ufw应该已经代替iptables了吧?),时间没时间纠结这个问题,干脆换成10.*的ubuntu,同样步骤顺利完成。
    insub
        16
    insub  
    OP
       2012-10-23 18:04:25 +08:00   ❤️ 1
    结贴来了。

    后来查到,转发的数据包通过公网网卡出去后再没回来,然后google.com.hk和aliyun.com的数据包则可以正常返回。

    于是提交工单,阿里云的官方回复如下:
    “您好,这个问题已经确认,目前还不能很好的支持,我们工程师正在试图修复这个问题。产品经理还没有给出具体的修复时间。我们会尽快确认时间然后通知您。”

    WTF......
    insub
        17
    insub  
    OP
       2012-10-23 18:04:42 +08:00
    Ubuntu 10.10可以正常使用,没有问题
    insub
        18
    insub  
    OP
       2012-10-23 18:13:08 +08:00
    @kanezeng 要是能早说一步,我就不用浪费三天时间去折腾了,偏执狂活该啊.....
    BOYPT
        19
    BOYPT  
       2012-10-25 11:29:36 +08:00
    调整iptables策略的时候,配合-j LOG目标和tcpdump排查才是解决途径。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1279 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 23:35 · PVG 07:35 · LAX 15:35 · JFK 18:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.