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

🌏 家庭双/多上行 IPv6 网络规划求教: NPTv6 + ULA 是正解吗?现在流行哪些交换机?

  •  
  •   Meano · 1 天前 · 1122 次点击

    目前准备组建家庭的新网络,双上行线路 (双 ISP: 1000M + 2000M) 已就位,突然发现 IPv6 的多 WAN 配置是个麻烦事儿:

    • 各终端系统对 RARIO 的支持基本等于无,无法通过 RA 下发策略路由
    • 终端侧多前缀 IPv6 的支持可能有限,根据目的地址选择出口路由的体验应该无法保证
    • ISP 动态前缀的问题也比较麻烦,尤其是 DHCPv6 终端经常前缀切换不及时,目前的组网我也只保留了 RA ,禁用了 DHCPv6
    • 还需要做全局分流透明代理

    因此感觉无法避免做 IPv6 的地址转换,目前考虑的方案是: NPTv6 + ULA 通过 NPTv6 在边界层做地址转换,内部使用 ULA 地址空间,以此保持 IPv6 的连通性与可控性。

    交换机选型 本来想交换机要不要用 Ubiquiti 的,问了一下代理商,目前没有明确的 Ubiquiti NPTv6 的支持,而且多 WAN 只能下发一组前缀。 OpenWRT 的路由也可以做,只是近两年自用 OpenWRT 尤其是无线开源的驱动,多多少少会有一些不稳定的问题,也需要自己写 hotplug 脚本测试,在考虑有没有现成的一些稳定方案可替代。

    所以请教一下大家:

    1. 有没有用 NPTv6 + ULA 架构的朋友,体验如何?有没有更优雅的 IPv6 多 WAN 方案?
    2. 有没有品牌(如锐捷、H3C 、Ubiquiti )在这块做得比较好的?

    欢迎大家交流一下思路或方案

    24 条回复    2025-10-21 16:34:13 +08:00
    nakes
        1
    nakes  
       1 天前   ❤️ 1
    没有。ipv6 多地址的话,本身还得看终端的情况。有些终端自己就选择个出口出去了。你在网关设置没啥用,我现在是移动+电信的双出口,用的 routeros ,内网下发 ula 地址,然后在出口做 netmap 转换,好处终端不烧脑。。反正就一个 v6 地址,策略都在网关上设置,用起来妥妥的
    tpxcer
        2
    tpxcer  
       1 天前
    我也被 v6 困扰
    我现在接了四条线,其中一条没有 V6 ,然后我发现如果我用这条没有 V6 的做主宽带网内的其他机器指定路由也无法从其他有 v6 的 isp 出去,非常蛋疼。 不知道 NPTv6 + ULA 楼主说的是什么。反正我目前如果不用没 v6 的那条做主宽带其他带 v6 的都行。。。。我蛋都要碎了。
    nakes
        3
    nakes  
       1 天前
    @tpxcer 你这是不是 v6 的默认网关根据主线被设置了。v6 的默认网关和 v4 的默认网关不一样。看你用是啥系统,我用的 routeros 倒是挺好设置的这一块。
    tpxcer
        4
    tpxcer  
       1 天前   ❤️ 1
    @nakes 没有,我几条线都单独设置的 vlan ,我 traceroute 看游走 v6 的网关,但是下一步就没出去了。
    用的是 unifi
    lisonfan
        5
    lisonfan  
       1 天前   ❤️ 1
    抛弃 v6
    huamiao
        6
    huamiao  
       1 天前   ❤️ 1
    出口用的 Opensense ,NPTv6+ULA 。可以定义内部网络到各个 WAN 的 prefix ( vlans<->wans ,可以自动检测)。走哪个 interface 就替换哪个。配合 gateway group 做各种多 wan 策略。用了好几年了。
    unused
        7
    unused  
       1 天前   ❤️ 1
    不要 NPT6 ,直接 NAT66 。NPT6 的 RFC 还是 experimental ,ALG 没有,甚至最基本的 ICMPv6 的处理都没有。
    LGA1150
        8
    LGA1150  
       1 天前
    @unused 如果是 OpenWrt/Linux ,使用 Netfilter 的 Prefix NAT 是有状态的,你说的功能都可以实现。
    unused
        9
    unused  
       1 天前
    @LGA1150 有状态的就属于 NAT ,不是 NPT 了
    Meano
        10
    Meano  
    OP
       1 天前
    @nakes 嗯 终端的处理情况确实很复杂,就是集中管理有点儿违背 IPv6 端到端的设计意图
    Meano
        11
    Meano  
    OP
       1 天前
    @tpxcer 看来 Unifi 确实没做这方面的处理,我看 Unifi 的官方文档没有啥相关的信息就去找卖家问了问,闭源系统的灵活性应该是会差一点
    Meano
        12
    Meano  
    OP
       1 天前
    @lisonfan 哈哈哈,目前某些情况下 v6 还是有点儿优势的,有些路由和忙时的拥挤程度会比 v4 好一点
    tpxcer
        13
    tpxcer  
       1 天前
    @Meano 就 v6 这块不行,感觉这块没弄好,v4 倒是没什么问题。
    Xymmh
        14
    Xymmh  
       1 天前
    NAT
    SingeeKing
        15
    SingeeKing  
    PRO
       1 天前
    歪个楼,不考虑直接禁止 v6 吗?我总觉得给终端直接暴露公网 v6 地址着实不安全,而完全禁掉内网 v6 也确实没遇到过任何问题(反而之前我遇到过 v6 被限速/绕路。。)
    Tianao
        16
    Tianao  
       1 天前   ❤️ 2
    RFC 8678
    Enterprise Multihoming using Provider-Assigned IPv6 Addresses without Network Prefix Translation: Requirements and Solutions
    Meano
        17
    Meano  
    OP
       1 天前
    @huamiao 之前没了解过 OPNsense ,这次看一看
    Meano
        18
    Meano  
    OP
       1 天前
    @unused 家用场景 ALG 可能可以暂时不考虑,ICMPv6 应该需要考虑下处理方式。
    Meano
        19
    Meano  
    OP
       1 天前
    @SingeeKing 楼上我也说了 v6 在有些情况下会好一点,而且 v6 战未来啊,技术历史演进还是不开倒车的好。
    目前看 v6 地址池子很大,直接暴露公网被扫的概率比较低,我个人还没见过有从 v6 port 扫进来过的情况
    Meano
        20
    Meano  
    OP
       1 天前
    @Tianao 看了一下,问题还是倡议与落地的冲突,SADR 会卡在终端设备的升级与迭代上;像长期前缀分发这个事儿,感觉没有 ISP 会正经配合。。。
    nakes
        21
    nakes  
       1 天前
    @Meano 补充一个,你可以试一下 prefix hint,我也是在 https://www.v2ex.com/t/1069456https://www.v2ex.com/t/1014864 看到的,测试后我的宽带 v6 前缀已经一年没变动过了。不过这个似乎看具体的运营商配置,我的电信可以,移动之前有段时间就不行,后面也可以了。不清楚是移动更新了配置还是 routeros 的 bug ,你看看你的路由有没有这个东西能用。
    xqzr
        22
    xqzr  
       1 天前
    RFC 6724 规定了,源地址的选择
    例如,
    访问 2409 ,选择 2409 作为源;
    访问 240e ,选择 240e 作为源。
    以此类推...

    https://datatracker.ietf.org/doc/html/rfc6724#section-5
    maybeonly
        23
    maybeonly  
       1 天前
    1.我家有两个 ipv6 出口,目前用的是 fdxx::出口做 snpt 。以前也尝试过把其中一条宽带的公网下发过去,走另一条宽带的时候在出口处做 snpt ,这样可以避免一些 app 误认为没有 ipv6 。后来改掉的原因是,觉得这样一个 webrtc 就找到你了,不好。现状就是写了一套配置脚本用配置文件配置 ipv6 的下发( fdxx 或者来自某个 wan 的 dhcp-dp 或者不给)
    2.软路由手搓的,想咋搓咋搓。
    3.其他考虑:
    内网互联从来不考虑 ipv6 ,因为涉及到真实 ip 和虚拟地址的转换,只有经过网关的时候才能生效,而且需要双向经过网关( snpt/dnpt )而实际上并不总是经过网关,或者会让网络环境过于复杂(现在已经非常复杂了)。内网互联老老实实使用 ipv4 。
    从未考虑过下发多个前缀的 ipv6 地址,并不是所有设备都能兼容,而且同样的提高整个网络而不仅仅是路由器的复杂度。
    有将拿到的/60 拆分成多个/64 在不同的 vlan 使用。例如 bt 采用的是单独的 vlan ,该 vlan 使用的是(1)中提到的真实地址下发,同时通过脚本添加了另一段的 ipv6 地址在 dummy 口以供上报。这里的情况同时下发多前缀似乎可行,但是考虑到使用统一的配置模板,并未如此操作。
    而且多 ip 的话,考虑到 ipv6 有时候会自作主张地选择他觉得合适的前缀,这并不一定合适,如果出站连接的话路由器的路由表会帮他决策。

    核心思想是路由器可以复杂,下面的接入层必须简单。
    terrancesiu
        24
    terrancesiu  
       21 小时 33 分钟前
    我就是 routeros 的 netmap 解决,国内出站、入站都 ok ,出境就走 bgp rr 过来的路由表直接 fdxx 开头路由走到 vps ,然后 vps 做 nat666 出去。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5821 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 06:08 · PVG 14:08 · LAX 23:08 · JFK 02:08
    ♥ Do have faith in what you're doing.