开发者社区> 问答> 正文

ipv6 全都设置好了,可是我还是ping不了

peanut888 2017-08-24 15:21:34 7593

ipv6 设置好了,ping6 ipv6.google.com已经没有问题了,ping本地的 通过he。net配置的也没问题,可是ping非本地的通过he.net的不行,是因为我的是专有网络吗?

网络协议 网络安全
分享到
取消 提交回答
全部回答(4)
  • 游客st6camefjycdm
    2019-07-29 00:53:18

    我也遇到了,阿里云这个 IPv4 NAT Connection Tracking 带来的问题非常有意思。虽然我不知道真正的解决办法,但是我有一个歪招。且听我慢慢说明。

    1. 配置好 HE 隧道以后,从阿里云里面,可以向外访问任何的 IPv6 网站,其他网站所看到的本机 IP 正是你隧道的客户端地址 2001:aaa:bbb:ccc::2,一切看起来仿佛都很正常。
    2. 但是,从外面另一台机器上试图 ping6 2001:aaa:bbb:ccc::2,莫名其妙的无法到达。。。
    3. 此时,请你继续开着你不通的 ping6。然后你从阿里云上通过 IPv6 隧道任意发出去一个请求,请求哪里无所谓,什么协议也无所谓。你发出去请求的一瞬间,你会发现,你上面那个正在运行的 ping6 突然通了,外面其他的人也全都可以正常访问你机器了!
    4. 此时,关掉所有通过隧道的 IPv6 连接,不管是向里的还是向外的。只需短短 60 秒,你就会发现外面又不能主动连接到你了。

    实际上其他 NAT 用户也遇到了相同的问题(123)。不同于 PPTP 这类 VPN 协议,6in4 隧道协议是无状态的,如果没有流量从中通过的时候,不会建立和保持着一个去往 HE 服务器的 IPv4 连接,此时 NAT 无法感知到这个连接仍然存在,超时后就把这个转换条目从 NAT 表里扔掉了,当 HE 的请求主动发过来的时候就不知道该往哪转发了。

    那么简单粗暴的解决方法就是,每过 50 秒往外随便扔一点东西。

    • 比方说,你可以 nohup ping6 -i 50 ip.sb& 每 50 秒发一个 ICMP 包出去。
    • 或者你一直经由 IPv6 隧道里面开着一个 TCP 长连接也可以,TCP 协议自然会发一些 Keep alive packets 出去。
    • RFC 5572 看起来有针对这个问题进行优化,但是 HE 可能没支持这个协议。
    • 最好的解决办法是,让阿里云在 NAT 设备上把 6in4 设为 Do Not Track。
    0 0
  • 5764604751839764
    2019-07-17 21:31:37

    我也遇到题主这样的问题,服务器可以ping6通外边,外边没法ping通服务器
    12

    1 0
  • peanut888
    2019-07-17 21:31:37

    QQ_20170824180947
    2
    3
    4
    5

    这个是我ping6 ipv6.google.com的配置,以及我ping6 自己在he分配的ipv6的通道(本地)
    但是我ping6 非本地已经配置好的ipv6地址的就是不行,我再另外一台已经配置好的再北美的服务器,来ping6 game.fanyingbi.com就一直没反应


    7
    如图就一直这样就不行,ping6 非本地的ipv6

    0 0
  • dongshan8
    2019-07-17 21:31:37

    题主您好,

    能否举具体的例子或截图?

    您在ECS里,能ping6通ipv6.google.com,但从外网ping6不通he分配给您的ipv6隧道地址吗?

    0 0
添加回答
+ 订阅

云安全开发者的大本营

推荐文章
相似问题
推荐课程