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

unifiOS 下,如何在 ipv6 的网络设置中引入旁路网关的 ipv6 地址

  •  
  •   emyself · 26 天前 · 885 次点击

    主路由 ubnt UCG-MAX,unifiOS 旁路由 Openwrt(虚拟机),旁路由的作用不言而喻 主路由设置 DHCP ,IPV4 的网路设置中网关可以自定义到旁路,但是 IPv6 的的网络设置中,没有网关的设置选项,默认的网关是主路由,造成的结果就是 ipv6 访问是不正常的。有什么解决方案吗? 我查了一下资料,这些设置在/run/dnsmasq.conf.d/下的 ipv6 的 conf 中,但是我不太知道如何去设置,以及设置后的风险,有了解的朋友吗?

    16 条回复    2025-02-12 01:52:18 +08:00
    ranaanna
        1
    ranaanna  
       26 天前
    这是一个 ipv6 多默认网关的问题。首先,“这些设置”肯定不是在 unifios 的 dnsmasq.conf 中

    其次,ipv6 的路由、节点以及路径信息是依靠邻居发现协议 NDP 实现的。OP 的 openwrt 需要能够响应路由请求、或者能够主动发送路由通告,换句话说,就是和 OP 的 unifios 一样能够充当 ipv6 路由器的角色。因此如前所述是一个多默认网关的问题

    在此基础上,由于存在两个 ipv6 网关,需要指定默认网关优先级,让默认的流量从优先级较高的网关出去。ipv4 时代是通过 metric ,但是 ipv6 不是,只能在网关上指定路由通告的 default preference ,只有 high, medium 和 low 3 个选项

    最后在前面的基础上,可以在客户端通过 ip -6 route 这样的指令指定特定的 ip 从特定的网关出去
    ranaanna
        2
    ranaanna  
       26 天前
    续上,所以 unifios 上唯一能做的,就是设置 router advert 的 default preference 为 low ,让默认流量走"旁路由"
    emyself
        3
    emyself  
    OP
       26 天前
    很感谢你听懂了我的问题!
    emyself
        4
    emyself  
    OP
       26 天前
    在 unifi 上的 ipv6 上,ra 的设置优先级可以设置为 low 。而在 op 上,我需要设置 ipv6 的 dhcp 吗?
    ranaanna
        5
    ranaanna  
       26 天前
    @emyself 一般来说,并不需要。SLAAC 即可,除非 radvd 的设置为
    1. other-config flag = on ,此时需要 dhcpdv6 通告除默认网关外其他配置,如 dns 等,称为 stateless dhcp
    2. managed flag = on ,此时需要 dhcpdv6 提供地址,称为 stateful dhcp
    无论如何,ipv6 默认网关的信息是通过 NDP 传播的,并不是通过 dhcp 。SLAAC 是最简单的。另外目前基本上所有系统都已支持 radvd 通告 dns ,所以上述的 1 已不需要。至于 2 ,除非真的需要手动配置 ipv6 地址,一般都是不建议这样做的
    akirageorge
        6
    akirageorge  
       25 天前
    不知道 unify 是否支持 NAT66 ,通过这个可以支持,然后设置 openwrt 旁路由下发前缀以及 SLAAC 地址 DHCP
    emyself
        7
    emyself  
    OP
       21 天前
    @akirageorge 我问个小白的问题,是不是 ICMPv6?
    emyself
        8
    emyself  
    OP
       21 天前
    emyself
        9
    emyself  
    OP
       21 天前
    是这样设置吗?
    emyself
        10
    emyself  
    OP
       21 天前
    ranaanna
        11
    ranaanna  
       21 天前 via Android
    @emyself 是的,这样客户端会得到个 ipv6 地址,分别来自两个网关。如果显示默认网关,会得到类似以下的结果:
    ranaanna
        12
    ranaanna  
       21 天前 via Android
    :~# ip -6 r show default
    default via fe80::1ae8:29ff:fe2e:79c1 dev eth0 proto ra metric 1024 expires 1641sec hoplimit 64 pref low
    default via fe80::215:5dff:fe8c:6630 dev eth0 proto ra metric 1024 expires 8908sec hoplimit 64 pref medium
    emyself
        13
    emyself  
    OP
       20 天前
    @ranaanna 那我是否要在 openwrt 下,设置 RA ?
    https://i.ibb.co/WNmMFjcK/Snipaste-2025-02-11-23-54-42.png
    emyself
        14
    emyself  
    OP
       20 天前
    ranaanna
        16
    ranaanna  
       20 天前 via Android   ❤️ 1
    @emyself 需要
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1083 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:40 · PVG 02:40 · LAX 10:40 · JFK 13:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.