V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
panda7456
V2EX  ›  宽带症候群

北京联通 IPv6 网页访问问题求助

  •  
  •   panda7456 · 2020-07-07 21:06:09 +08:00 · 5563 次点击
    这是一个创建于 1600 天前的主题,其中的信息可能已经有所发展或是发生改变。
    例如 mp.weixin.qq.comdocs.qq.comwww.ithome.com 之类的网站无法访问,提示 ERR_CONNECTION_RESET (微信)或者 ERR_TIMED_OUT (腾讯文档,it 之家)

    上述网站无论 ping 还是 tracert 都是没有问题的,如图 https://wx1.sbimg.cn/2020/07/07/CDY9k.png

    test-ipv6 全通,并且走 xxRay 连国内或者国外的 v6 节点都能正常使用,通过联通 4G 走 RDP 也可以访问回来:(

    问了联通客服,联通说:我这边没有收到 ipv6 可以正常使用的通知(???)

    求问该怎么检修或者跟客服撕逼(或者想办法绕过去:(

    PS. 卫健委的网站也无法访问并且无法 ping 通(怀疑禁了 ping ?)
    20 条回复    2020-10-09 23:17:52 +08:00
    a570295535
        1
    a570295535  
       2020-07-07 21:27:30 +08:00 via Android
    我也遇到类似问题,联通让找空间商,空间商说是联通骨干线路故障,好几天了也没解决!
    panda7456
        2
    panda7456  
    OP
       2020-07-07 21:36:44 +08:00
    @a570295535 这个现象已经持续好久了,至少去年年底就有了:(
    并且感觉这种很多地方都出现的情况感觉像是 AS 的问题
    jackhhh
        3
    jackhhh  
       2020-07-07 22:22:28 +08:00
    “更改适配器设置” -> “以太网” -> “属性” -> 取消勾选“Internet 协议版本 6” -> “确定”返回
    darrh00
        4
    darrh00  
       2020-07-07 23:07:47 +08:00
    也是北京联通, 之前在路由器配置完成 ipv6,也遇到类似问题,基本大网站都没问题,唯独访问 jd.com, 只要开了 ipv6, 肯定无法访问。

    然后看了 http://test-ipv6.com/index.html.zh_CN 中的测试项目里上有一个提到了 PMTUD 的问题:

    >> 验证 IPv6 能否传输大数据包。如果这项测试超时,但其他 IPv6 测试成功,那么可能存在 PMTUD 问题,也许与 IP 隧道有关。 再次检查你的防火墙是否已放行 ICMPv6 第 2 类消息(“数据包过大”)。

    顺着这个提示,修改了 ipv6 ra 中的 mtu 参数,症状就消失了。 你可以看看你的路由器是否有相关的设置选项。。

    我是自己用纯的 Linux 作为路由器,用的 Dnsmasq 做的 router annoucement, 只需加入如下参数:

    enable-ra
    dhcp-range=::2,constructor:br0,slaac,2m
    ra-param=br0,mtu:1280,high,10,32

    这里主要是 mtu:1280 这个参数。
    PublicDNS
        5
    PublicDNS  
       2020-07-07 23:31:05 +08:00 via Android
    @darrh00 江苏联通,jd, b 站以及 weibo 的视频和图片 ipv6 下都有问题,巧了,我今天刚好也看到这个 PMTUD, 第一印象是 WAN6_IN 的防火墙规则有问题,明天先改 dnsmasq 试试。
    optional
        6
    optional  
       2020-07-07 23:32:26 +08:00 via iPhone
    关闭 ipv6 。
    darrh00
        7
    darrh00  
       2020-07-07 23:40:17 +08:00
    嗯,刚才又验证了一下,把 ra-param 参数去掉,mtu 变成默认值 1500, 可以用 tcpdump 抓包看:

    >> tcpdump -v -i en1 icmp6 and 'ip6[40] = 134'

    结果中的 mtu option (5), length 8 (1): 1500 项目

    修改后后重新插拔网线,测试京东仍然无法问题。

    v2 上之前也有讨论,https://www.v2ex.com/t/508640

    在 mtu 变成 1500 下无法访问的情况下,用 MSS-clamping 也可以解决。

    ip6tables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

    上面的讨论中提到的这句 ip6tables 也有效。
    darrh00
        8
    darrh00  
       2020-07-07 23:48:46 +08:00
    @PublicDNS

    你用的是 openwrt? 好像 openwrt 不是用 dnsmasq 做 ra 的吧? 对 openwrt 不是很熟,
    建议你先试试 MSS-clamping 。
    ygchy
        9
    ygchy  
       2020-07-07 23:55:58 +08:00 via iPhone
    最近也遇到了类似的问题,于是今天把路由器的 IPv6 关了
    aMR
        10
    aMR  
       2020-07-08 00:10:26 +08:00
    理论上 ipv6 路由都应该按照 rfc4890 配置允许一部分 icmpv6 通过,这样才能支持 pmtud,实际上这块非常混乱,有条件建议直接在路由上配 mss-clamp

    ipv6 的 mss 是 mtu 减去 60

    https://tools.ietf.org/html/rfc4890#page-14
    panda7456
        11
    panda7456  
    OP
       2020-07-08 00:41:37 +08:00   ❤️ 1
    @darrh00 我用 ping 确认了下如果-l 大于 1412 的时候,就不通了,然后我刚才尝试在 Win 下把网卡的 v6 MTU 改成 1400 就正常多了(默认是 1500 )
    PublicDNS
        12
    PublicDNS  
       2020-07-08 00:46:24 +08:00 via Android
    @darrh00 我的是 ubnt erx,dhcp server 是 dnsasq https://help.ui.com/hc/en-us/articles/115002673188 , 要看看怎么加额外参数,不行就通过 iptables
    PublicDNS
        13
    PublicDNS  
       2020-07-08 01:01:49 +08:00 via Android
    @darrh00 erx 用的是 radvd
    应该是这个 option 吧?

    AdvLinkMTU integer
    The MTU option is used in router advertisement messages to insure that all nodes on a link use the same MTU value in those cases where the link MTU is not well known.

    If specified, i.e. not 0, must not be smaller than 1280 and not greater than the maximum MTU allowed for this link (e.g. ethernet has a maximum MTU of 1500. See RFC 4864).

    Default: 0
    aMR
        14
    aMR  
       2020-07-08 01:25:20 +08:00
    @PublicDNS er-x 的话直接 mss-clamp6 最省事
    set firewall options mss-clamp6 interface-type pppoe
    set firewall options mss-clamp6 mss 1420

    似乎很多遇到这个问题的都是用 ubnt 或者软路由的,ubnt 的默认设置需要背锅
    panda7456
        15
    panda7456  
    OP
       2020-07-08 03:07:02 +08:00
    @darrh00
    @aMR 我现在用的是光猫拨号,看了下感觉光猫应该没法设置 MTU,然后因为某些原因不能改为桥接模式。麻烦问下如果我在下级接一个路由然后再路由上配置的话能解决这个问题吗:(
    Jeremial
        16
    Jeremial  
       2020-07-08 09:39:59 +08:00
    同样用的北京联通, 开了 IPV6 后, 京东 PC 版无法打开, 另外微信公众号文章中的图片也看不到.
    所以后来就把 IPV6 关了
    brMu
        17
    brMu  
       2020-07-08 10:44:41 +08:00
    同北京联通,我都是把 IPV6 关了,等真正可用的时候再开
    PublicDNS
        18
    PublicDNS  
       2020-07-08 11:32:19 +08:00
    @aMR 非常感谢!解决了困扰我半年的问题, 这个绝对是 ubnt 默认设置的锅, 配置 mss-clamp6 就好了。
    aMR
        19
    aMR  
       2020-07-09 00:01:58 +08:00
    @panda7456 理论上是可以,但二级路由会稍微折腾一些
    vxfdd
        20
    vxfdd  
       2020-10-09 23:17:52 +08:00
    一毛一样的情况,广州电信,开启 ipv6 之后某些网站打不开,打开慢,设置了下 mss-clamp6 貌似可以了。感谢大佬。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   917 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:38 · PVG 05:38 · LAX 13:38 · JFK 16:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.