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

pc 明明有公网 ipv6 地址,也能 ping 通 ipv6 DNS 和网关,但就是不能上网

  •  
  •   letmefly · 2023-05-10 22:23:38 +08:00 · 2470 次点击
    这是一个创建于 574 天前的主题,其中的信息可能已经有所发展或是发生改变。
    要知道我开这个 ipv6 就是为了 pt 啊。

    我的路由器是 ubnt er-x ,刷了原版的 openwrt 22.03.5 固件,刚开始拨号的时候 ipv6 是很正常,能过 ipv6 test 网站,下 pt 也有 ipv6 连接。但是我在测速的时候发现网速只有 94 兆,原来是光猫连路由器的速率变成百兆了,就手欠重启了光猫,这之后网速是恢复正常了,但是 ipv6 就开始出现故障了,不能通过 ipv6 test 了。

    之前,er-x 原厂系统也是这样,开了 ipv6 一段时间后网速变慢,我就重启过路由和光猫,ipv6 公网地址还是存在的,但无法上网了,我觉得原厂系统太复杂了,就刷成了 openwrt ,原以为会好用些,但情况没半点改善。
    17 条回复    2024-01-14 22:24:06 +08:00
    mohumohu
        1
    mohumohu  
       2023-05-10 22:53:47 +08:00
    估计是 ipv6 地址过期了没刷新,想用 ipv6 估计还是只有光猫拨号稳
    yuchenr
        2
    yuchenr  
       2023-05-11 07:37:15 +08:00
    我也是 er-x 原厂固件。目前来看,还是比较稳定。只有在 PPPoE 重新拨号的情况下偶尔会出现 IPv6 无法访问的情况。
    我在 Windows 里放了检测脚本,ping 不通 IPv6 时会重新启用网卡的 IPv6 协议。CentOS 系统在每天夜间 up 一次接口。
    Opportunity
        3
    Opportunity  
       2023-05-11 14:10:14 +08:00
    我就说之前刚看到类似的讨论,感觉你也是这个问题

    https://v2ex.com/t/938587
    leostone
        4
    leostone  
       2023-05-11 15:26:54 +08:00
    看看 mtu 我上次这情况就是 mtu 问题..
    letmefly
        5
    letmefly  
    OP
       2023-05-11 22:59:27 +08:00
    mtu 改过,没有用。
    打算下周一再开 ipv6 试试。
    flynaj
        6
    flynaj  
       2023-05-12 15:46:30 +08:00 via Android
    ipv6 地址还在你电脑上,要几分钟后老地址时效,你手动把网络连接的 IPv6 关了,在打开就立马刷新了。
    huaxie1988
        7
    huaxie1988  
       2023-05-13 21:34:37 +08:00
    禁用 dhcpv6 ,使用 slaac 然后再禁用 na
    uci set dhcp.lan.dhcpv6='server'
    uci set dhcp.lan.ra='server'
    uci set dhcp.lan.ra_slaac='1'
    uci set dhcp.lan.ra_flags='other-config'
    uci set dhcp.lan.dhcpv6_na='0'
    uci set dhcp.lan.ra_useleasetime='1'
    uci set dhcp.lan.preferred_lifetime='1h'
    uci commit
    /etc/init.d/odhcpd restart
    然后再建个脚本解决重启不通告前缀失效的问题
    在 init.d 目录新建个文件,例如 wandown ,内容如下

    #!/bin/sh /etc/rc.common

    STOP=80

    USE_PROCD=1

    stop_service() {
    ifdown wan
    sleep 1
    }

    然后给该文件加上运行权限
    chmod +x /etc/init.d/wandown
    允许该脚本
    /etc/init.d/wandown enable
    然后关闭 odhcpd 前 wan 口会先被关闭,odhcpd 就会发 preferred_lifetime 为 0 的 ra 给下方设备让 ip 前缀失效。
    letmefly
        8
    letmefly  
    OP
       2023-05-14 09:54:27 +08:00
    @huaxie1988 禁用 dhcpv6 ,使用 slaac 然后再禁用 na 这里的 na 是否 RA?
    huaxie1988
        9
    huaxie1988  
       2023-05-14 10:00:12 +08:00
    @letmefly 这个 na 是 windows 会直接拿 dhcpv4 的后缀和 ra 前缀组合一个 ipv6 地址去发 IANA 请求给路由器,然后 M 置 0 也会 dhcpv6 分到地址,这个是禁用这个功能的,和 ra 无关。
    letmefly
        10
    letmefly  
    OP
       2023-05-16 07:25:44 +08:00
    昨天将接口 wan6 里的设备 改成 @wan (原来是 eth0 ),ipv6 一直都在,网站测试慢的时候,把 lan 口的 ipv6 RA 设置,RA MTU 改成 1432 。
    letmefly
        11
    letmefly  
    OP
       2023-05-16 18:01:10 +08:00
    7 楼的 wandown 脚本有用,uci 也使用了,没效果。
    我将路由器的配置恢复到某天的只有 ipv4 地址的配置,然后再对 wan6 进行编辑,将设备改成 @wan 后能用 ipv6 上网,但是不能重启路由器,重启后就又不能上网了。如果 wan6 不改还是原来的 eth0 的话,有 ipv6 地址,但不能上网。
    huaxie1988
        12
    huaxie1988  
       2023-05-16 21:53:27 +08:00 via Android
    @letmefly openwrt 不需要创建 ipv6 接口,由 wan 自动创建。
    huaxie1988
        13
    huaxie1988  
       2023-05-16 21:58:34 +08:00 via Android
    @letmefly 你还要检查 rc.d 目录是否有 K80wandown ,单独执行下 /etc/init.d/wandown stop 看 wan 口是否关闭了。
    letmefly
        14
    letmefly  
    OP
       2023-05-17 07:52:47 +08:00
    @huaxie1988 openwrt 不需要创建 ipv6 接口,由 wan 自动创建。你还要检查 rc.d 目录是否有 K80wandown ,单独执行下 /etc/init.d/wandown stop 看 wan 口是否关闭了。

    我知道如果不修改 wan6 接口,pppoe 拨号成功之后,会生成一个虚拟接口 wan_6 ,但问题是这个时候,lan 口虽然会往下分配 ipv6 地址,但是不能通过 ipv6 上网啊。即使我在 putty 里运行了 wandown 脚本和那些 uci 命令,也是如此。但如果我修改一下 wan6 接口(非拨号成功后生成的虚拟接口),把设备从原来的 eth0(wan,wan6)改成接口别名 @wan 后,就能通过 ipv6 上网了。但是这时候,在状态概览网络那里会出现 2 个 ipv6 上游,让强逼症十分难爱。我就因此反复重置修改了很多次,但只要一重启路由器或光猫,就会从原来能通过 ipv6 上网在状态变成不能上网。我现在觉得好累,就这样吧,能用上 ipv6 就好,我也折腾不动了。
    huaxie1988
        15
    huaxie1988  
       2023-05-17 10:00:17 +08:00 via Android
    @letmefly 原版 openwrt pppoe ipv6 不需要任何特别设置 lan 的设备都可以上网啊,你自己检查下配置吧,高度怀疑你错误设置了防火墙,包括接口所属区域,规则等。或者安装了什么软件影响了。
    letmefly
        16
    letmefly  
    OP
       2023-05-17 22:42:03 +08:00
    我几乎没有动过防火墙的设定,路由器里我划分了 2 个网段,软件就安装了汉化包和 zerotier 和 vlmcsd ( kms 服务还需要 luci-compat) ,zerotier 的安装我是按照 https://github.com/mwarning/zerotier-openwrt/wiki 这个帖子来进行的。
    里面有防火墙的设定
    这个帖子要求重启两次路由器,重启后 lan 口虽然仍然还有 ipv6 地址,但是就已经不能再通过 ipv6 来上网了。修改设备为 @wan 后就神奇的可以了。
    imldy
        17
    imldy  
       325 天前
    我在 RAX3000M 原版固件上遇到了类似的问题,上网设置模式为桥接则正常,改为路由 DHCP 则有 IPv6 地址但无法联通 IPv6 网络。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5921 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 02:20 · PVG 10:20 · LAX 18:20 · JFK 21:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.