forum.gl-inet.cn

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
    查看: 5152|回复: 9

    [经验分享] AX1800 OpenWRT IPv6 问题

    [复制链接]

    12

    主题

    36

    帖子

    390

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    390
    发表于 2022-8-5 08:27:52 | 显示全部楼层 |阅读模式
    本帖最后由 neo 于 2022-8-6 09:32 编辑

    最近入手了 AX1800,自己编译了 5.4 内核开源固件,并开启 IPv6
    1. OpenWrt 21.02-SNAPSHOT r16399+142-c67509efd7 / LuCI openwrt-22.03 branch git-21.284.67084-e4d24f0
    复制代码
    运营商给 PPPOE-WAN 下发了一个 240e:xx:xx:xx:xx:xx:xx:xx/64 地址,以及一个 240e:xx:xx:xx::/56 网段。

    我把路由器的 br-lan 设置成 RA server/DHCPv6 disable/NDP relay
    然后局域网设备就可以自动配置 IPv6 地址了,是 240e:xx:xx:xx::/56 的一个子网段,而且跟 br-lan 在同一个网段。

    问题来了。从局域网 ping br-lan/pppoe-wan 都没有问题,但 ping 外网提示 destination unreachable, unreachable route
    更诡异的是从公网 ping 局域网设备能通。

    基本算是解决了。现在做一个总结。

    问题的关键是 OpenWRT 会为 br-lan 生成一条路由策略规则(注意,不是路由规则)
    1. ...
    2. 32766:  from all lookup main
    3. ...
    4. 4200000000:     from 240e:389:4f00:2500::1/64 iif br-lan unreachable
    复制代码
    讲道理因为有 32766 这条,所有有数据包都应该通过 main 路由表(我们平时加的路由规则都在此表保存)才对。但现在看下来是走了下面这一条。所以从局域网发出去的包会收到 unreachable 消息。

    解决的办法就是到 luci 后台 Network -> Routing -> IPv6 Rules 新建如下规则

    保存并应用就好了。

    现在讨论一下 IPv6 网络的其他问题。

    就我观察,电信和联通都会给路由器分配两套地址。其中电信会给 pppoe-wan 分配一个 /64 地址,然后再额外分配一个 /56 网段(IPv6-PD)。而联通也是类似,但额外的网段为 /60。

    如果打开 gl 路由器的 IPv6 功能,局域网里的设备只会分配到跟 pppoe-wan 一样的地址,而无法利用 PD 网段。而且 gl 后台的 IPv6 选项太少且过时,居然还提供 NAT6 功能。所以我建议不要使用 gl 的配置后台,而且直接使用 OpenWRT 的配置界面。

    所以我们需要安装 luci-proto-ipv6 包(忘记 OpenWRT 有没有默认安装了)

    本来 linux 默认是支持 IPv6 的。但 gl-sdk4-ipv6 会配置一个服务,每次启动时会强行禁用 IPv6。所以我们需要到 luic 的 System -> Startup 中禁用 gl_ipv6 服务。

    然后就是删除 /etc/sysctl.d/99-disable-ipv6.conf (这个文件是 gl_ipv6 生成的)
    最后就是重新开启各网卡的 IPv6 支持


    1. uci set network.wan6.disabled='0'
    2.     uci set network.wwan6.disabled='0'
    3.     uci set network.tethering6.disabled='0'
    4.     uci commit network
    复制代码

    然后就可以在 luci 的 Network -> Inerface 里面管理 IPv6 配置了。

    为了充分利用 PD 网段,我们可以如下配置:

    RA 是路由通告,我们改成服务器模式。这样路由器就会把 br-lan 所在的新网段通告给其他局域网设备。这些设备收到路由广播后会通过 SLAAC 自动配置 IPv6 地址。所以,也就没有必要再开启 DNCPv6 服务了。



    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    回复

    使用道具 举报

    76

    主题

    2144

    帖子

    9846

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    9846

    官方人员

    发表于 2022-8-5 10:51:54 | 显示全部楼层
    提示destination unreachable, unreachable route可能是路由表少了规则
    在我们的页面先设置试一试呢
    回复

    使用道具 举报

    12

    主题

    36

    帖子

    390

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    390
     楼主| 发表于 2022-8-6 07:44:36 | 显示全部楼层
    萝卜大侠 发表于 2022-8-5 10:51
    提示destination unreachable, unreachable route可能是路由表少了规则
    在我们的页面先设置试一试呢 ...

    基本破案了。OpenWRT 自己添加一条路由策略规则(已有的路由规则跟防火墙规则都没有问题):

    1. 4200000000:     from 240e:xx:xx:xx::1/64 iif br-lan unreachable
    复制代码


    最简单的办法是手工再加一条:

    1. 32766:  from all lookup main
    复制代码


    但 OpenWRT 这样做的原因还不确定
    回复

    使用道具 举报

    5

    主题

    199

    帖子

    1035

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1035
    发表于 2022-8-6 18:21:40 | 显示全部楼层
    顶,学习了,紫薯布丁
    回复

    使用道具 举报

    3

    主题

    20

    帖子

    333

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    333
    发表于 2022-8-6 19:57:12 | 显示全部楼层
    看不懂,够学
    回复

    使用道具 举报

    76

    主题

    2144

    帖子

    9846

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    9846

    官方人员

    发表于 2022-8-6 22:28:48 | 显示全部楼层
    neo 发表于 2022-8-6 07:44
    基本破案了。OpenWRT 自己添加一条路由策略规则(已有的路由规则跟防火墙规则都没有问题):

    厉害了
    我们实际测试也是发现OpenWrt的IPV6路由有些BUG
    回复

    使用道具 举报

    0

    主题

    8

    帖子

    38

    积分

    新手上路

    Rank: 1

    积分
    38
    发表于 2022-11-14 16:52:31 | 显示全部楼层
    谢谢楼主分享!
    回复

    使用道具 举报

    0

    主题

    834

    帖子

    1684

    积分

    禁止发言

    积分
    1684
    发表于 2023-1-14 02:53:26 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复

    使用道具 举报

    1

    主题

    27

    帖子

    219

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    219
    发表于 2023-11-25 01:01:59 | 显示全部楼层
    gl_ipv6也折腾到我了。明天按楼主这个方法试试看
    回复

    使用道具 举报

    12

    主题

    36

    帖子

    390

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    390
     楼主| 发表于 2024-1-15 21:02:25 | 显示全部楼层
    萝卜大侠 发表于 2022-8-6 22:28
    厉害了
    我们实际测试也是发现OpenWrt的IPV6路由有些BUG

    今天更新到 4.4.6 版本。发现 ipv6 问题还是没修,跟之前一样。是放弃治疗了吗?

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|gl-inet.cn ( 粤ICP备18130956号 )

    GMT+8, 2024-11-21 21:03 , Processed in 0.022937 second(s), 26 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表