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

请教一个 openwrt ipv6 的设置问题

  •  
  •   xipuxiaoyehua · 2022-04-19 11:15:57 +08:00 · 10978 次点击
    这是一个创建于 710 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前是光猫桥接,open/wrt 主路由负责局域网内 IPv4 和 IPv6 的 dhcp 服务,局域网设备也可以顺利获取公网 IPv6 地址,发现了一个问题,只要开启 openc/lasn 里的允许解析 IPv6 dns 就无法访问一些 IPv6 的海外地址,比如 net/flix , 打开 openc/lash 的调试发现完全抓不到这一条记录,后面排查时发现,设备上的 IPv6 网关不是 openwrt ,是另外一个不知道的地址,op 的 IPv6 地址是 3d6d ,但是显示的网关是 3d6c ,具体如下图:



    有没有老哥能帮忙看一下这是因为什么啊?怎么解决呢?
    46 条回复    2022-09-18 17:08:46 +08:00
    neroxps
        1
    neroxps  
       2022-04-19 12:00:38 +08:00
    你这个 3d6c 应该是 lan 侧的地址。
    CKR
        2
    CKR  
       2022-04-19 12:17:54 +08:00 via Android
    对于家用来说,关闭 ipv6 可以大大提高科学上网效率。
    之前开了 ipv6 梯子出现好多问题,关了就好了。
    oovveeaarr
        3
    oovveeaarr  
       2022-04-19 12:42:40 +08:00
    考虑是 br-lan 的地址,或者光猫的。上 SSH 上看看就知道了。
    xipuxiaoyehua
        4
    xipuxiaoyehua  
    OP
       2022-04-19 13:13:45 +08:00
    @neroxps lan 侧是 2408 开头的公网 ipv6
    xipuxiaoyehua
        5
    xipuxiaoyehua  
    OP
       2022-04-19 13:14:26 +08:00
    @oovveeaarr 可能是光猫,但是光猫已经改了桥接,不应该光猫还在 dhcp ipv6 啊
    oovveeaarr
        6
    oovveeaarr  
       2022-04-19 13:16:42 +08:00
    @xipuxiaoyehua #5 slaac 是自动配置的,和 dhcpv6 无关。
    neroxps
        7
    neroxps  
       2022-04-19 14:10:48 +08:00
    @xipuxiaoyehua #4 lan 也有 FE80 地址的。RS 公告是从 LAN 端发出来的,所以公告的是 LAN 的路由地址。
    详细可以看看 IPv6 的邻居发现协议。
    neroxps
        8
    neroxps  
       2022-04-19 14:21:29 +08:00
    @CKR #2 如果用 fake-ip 模式,将匹配规则的 DNS 获得 Fake-ip ,其他的返回正常的 ipv6 地址即可,这样墙内墙外两不误。
    也可以在 DNS 服务器那边直接丢弃 AAAA 记录,这样访问互联网是纯 ipv4 环境,但外面可以用 ipv6 回家。
    qbqbqbqb
        9
    qbqbqbqb  
       2022-04-19 14:35:43 +08:00
    @xipuxiaoyehua 你看一下 br-lan 这个接口自己的 ipv6 是不是 3d6c 结尾的
    qbqbqbqb
        10
    qbqbqbqb  
       2022-04-19 14:39:57 +08:00
    openclash 里的 IPv6 流量代理有打开吗
    xipuxiaoyehua
        11
    xipuxiaoyehua  
    OP
       2022-04-19 14:46:15 +08:00
    @neroxps 目前只有 redir 模式可以屏蔽局域网内机器不走代理
    xipuxiaoyehua
        12
    xipuxiaoyehua  
    OP
       2022-04-19 14:46:44 +08:00
    @qbqbqbqb brlan 的 ip 显示的是 2408 开头的公网 v6 地址
    xipuxiaoyehua
        13
    xipuxiaoyehua  
    OP
       2022-04-19 14:47:55 +08:00
    @qbqbqbqb 开了的,但是 openc/lash 的调试里输入 www.netfl/ix.com 完全抓不到任何日志,应该是流量没有经过 openwrt
    qbqbqbqb
        14
    qbqbqbqb  
       2022-04-19 14:49:08 +08:00
    @xipuxiaoyehua 可以用 ssh 登录 openwrt 命令行里 ip addr 看所有地址,3d6c 估计是 br-lan 的 link-local 地址
    qbqbqbqb
        15
    qbqbqbqb  
       2022-04-19 14:59:46 +08:00
    看一下 ip6tables 防火墙配置正不正常
    xipuxiaoyehua
        16
    xipuxiaoyehua  
    OP
       2022-04-19 15:04:16 +08:00
    @qbqbqbqb 下班回去看看,谢老哥讲解
    ihades
        17
    ihades  
       2022-04-19 15:22:22 +08:00
    我放弃了用 ipv6 。。openwrt 上问题较多
    neroxps
        18
    neroxps  
       2022-04-19 15:39:00 +08:00
    @xipuxiaoyehua #12 SSH 进去 看 ifconfig 结果,UI 上可能显示不完全,每个接口都会有 FE80 地址的。
    ymmud
        19
    ymmud  
       2022-04-19 15:39:17 +08:00
    梯子只解析 v4 就行了
    neroxps
        20
    neroxps  
       2022-04-19 15:41:33 +08:00
    @xipuxiaoyehua #11 我是直接使用第三方的 DNS ,匹配 clash 的规则的话,就从 clash 那边解析,不匹配的,就返回正确 IP 。用 faek-ip 模式。真实 IP 自然就直接走默认路由,fake-ip 自然就跑到 clash 那边。
    xipuxiaoyehua
        21
    xipuxiaoyehua  
    OP
       2022-04-19 15:43:20 +08:00
    @ihades 有一些场景还需要用到 v6
    xipuxiaoyehua
        22
    xipuxiaoyehua  
    OP
       2022-04-19 15:44:12 +08:00
    @neroxps 晚上回去看看 ifconfig 结果,之前用 fake ip 忘了 nas 还在跑 pt ,一晚上干了 600g
    xipuxiaoyehua
        23
    xipuxiaoyehua  
    OP
       2022-04-19 15:44:32 +08:00
    @ymmud 还有一部分场景需要用到 v6 dns
    XiLingHost
        24
    XiLingHost  
       2022-04-19 16:21:40 +08:00
    可以考虑用策略路由做透明代理
    我目前不是使用 openwrt ,因此我的做法仅供参考
    我现在正在使用 opnsense 作为路由器,内网使用 v2raya 搭建代理服务器
    对于 v4 网络,使用 DHCPv4 来分配 IP ,对于 v6 网络使用路由器通告“Unmanaged”( A flag )来要求设备使用 slaac 方式自动配置 GUA ,同时,额外广播路由 fd00:1::/64 来为所有的设备添加 ULA
    配置 ADGuradHome 在 fd00:1::53/64 上并将其广播为默认 v6 的 dns 服务器,v4 网络也类似
    在防火墙中添加别名组,将需要透明代理的设备加入别名
    在防火墙浮动规则中添加规则,指定该别名的下一跳路由为 v2raya 主机的 IP
    AS4694lAS4808
        25
    AS4694lAS4808  
       2022-04-19 17:01:59 +08:00
    可能是 DNS 支持 ipv6 ,但是 clash 没配置 tproxy 代理 ipv6 流量?另外可以在 dhcpv6 配置通告 dns 为 openwrt 的本地 ipv6 地址,比如 fe80 或 3d6c(如果确认是 ipv6 ULA 前缀的话)

    类似 passwall ,开了 DNS v6 解析但是不开 ipv6 代理,结果就是 ipv6 流量走了直连,好多服务还都是 ipv6 的记录先返回
    sy1989
        26
    sy1989  
       2022-04-19 17:38:45 +08:00
    目前一些软件的 ipv6 透明代理没弄好,还有你的代理不一定支持 ipv6 。
    目前来说还是建议走代理的域名走 ipv4
    LostTeemo
        27
    LostTeemo  
       2022-04-19 18:19:48 +08:00 via Android
    你提到 clash ,我猜你是用的 openclash ,其实换别的就没有问题,我之前也是 IPv6 ,和 helloworld 完美兼容。其实用多了就会发现,珍爱生命远离 openclash ,我好几次遇到了不同的可以复现的 bug ,但是过了几个版本都没修复,虽然自定规则很好用,但还是算了
    52acca
        28
    52acca  
       2022-04-19 19:09:12 +08:00 via Android
    op 用 ipv6 没任何问题,包括代理,iptables 里面对国内 v4 和 v6 地址段做分流就行了。
    txydhr
        29
    txydhr  
       2022-04-19 20:33:16 +08:00
    @CKR 在 dns 服务器上屏蔽 aaaa 就行了
    lslqtz
        30
    lslqtz  
       2022-04-20 01:11:02 +08:00
    网关这样是正常的,fe80 到路由器,后面路由器路由给下一跳。地址相信是 br-lan 的
    vasaeru
        31
    vasaeru  
       2022-04-20 02:23:50 +08:00
    很简单 创建一个 wan6 接口一般默认就有 传输协议选择 dhcpv6 客户端 物理设置里面接口不要桥接 然后自定义接口里面填 wan 防火墙设置选 lan 组 其他不要选

    然后去最左边大菜单-网络-防火墙-把转发都选接受,并且确保 lan 组和 wan 组是箭头互指的
    kyf0722
        32
    kyf0722  
       2022-04-20 08:51:30 +08:00
    目前在用 OpenWrt 21.02.1 ipv6 支持还可以
    yzc27
        33
    yzc27  
       2022-04-20 11:25:53 +08:00
    @vasaeru #31 我就是你这样设置的,不过我的 openwrt ( LEDE )做为旁路由而非主路由。看了下防火墙入站、出战、转发都是“接受”,担心不知道对于 ipv6 来说,这样设置防火墙会不会不安全?毕竟 ipv6 直接暴露在公网了。
    neroxps
        34
    neroxps  
       2022-04-20 12:00:05 +08:00
    @xipuxiaoyehua #22 不应该吧。PT 不会跑到 fake-ip 的,除非你 tracker 地址获得 fake-ip 地址。
    我的在 DNS 那边设置 tracker 地址是由运营商 DNS 解析的,获得的是正确的 IP ,所以流量是不会走到梯子那头。
    ysc3839
        35
    ysc3839  
       2022-04-20 13:30:50 +08:00 via Android
    你路由器的 LAN MAC 是 c4:83:4f:16:3d:6c 吧?图 2 就是 LAN 的 Link Local 地址
    ResidualBlood
        36
    ResidualBlood  
       2022-04-20 17:06:51 +08:00
    @yzc27 按照 31 楼设置完后, 把旁路的 fe80 地址填写到主路由的内网 DNSv6 地址,这样 netflix 之类的就正常了
    a27454462855
        37
    a27454462855  
       2022-04-20 17:55:40 +08:00 via iPhone
    @ResidualBlood 我的还是不能解决,求指导
    xipuxiaoyehua
        38
    xipuxiaoyehua  
    OP
       2022-04-20 20:03:39 +08:00
    @vasaeru 请问介意加个 tg 或者 vx 请教一下吗
    vasaeru
        39
    vasaeru  
       2022-04-21 01:45:47 +08:00
    @xipuxiaoyehua 你有什么问题直接在这里说吧 人多主意多
    xipuxiaoyehua
        40
    xipuxiaoyehua  
    OP
       2022-04-21 08:38:26 +08:00
    @vasaeru 就是我按照#31 的方法设置完了还是不可以,现在暂时关了 AAAA 的 DNS 解析
    ResidualBlood
        41
    ResidualBlood  
       2022-04-21 09:09:12 +08:00
    vasaeru
        42
    vasaeru  
       2022-04-22 02:03:27 +08:00 via iPhone
    @xipuxiaoyehua 你的运营商是什么 wan 口打开了用对方通告的 dns 吗 lan 口有没有单独设置一个 dns wan 口有没有打开允许获取 ipv6 地址
    vasaeru
        43
    vasaeru  
       2022-04-22 02:06:36 +08:00 via iPhone
    @ResidualBlood 还有有没有用 test-ipv6.com 测试下支不支持 ipv6 如果你要海外的 ipv6 也代理的话要节点也有 ipv6 地址才行 然后打开 ipv6 透明代理 建议用 xray 协议
    flynaj
        44
    flynaj  
       2022-04-23 11:33:08 +08:00
    原版 openwrt 的话 LAN 接口这样设置就行。,OpenWrt 21.02.3
    TucoBruto
        45
    TucoBruto  
       2022-07-21 21:38:55 +08:00
    @flynaj 感谢!你的办法解决了 原来 openclash 没有监听 lan 口的 ipv6 地址 53 端口 不下发 lan 口 v6 地址作为 dns 解决了我有些 docker 一直通过这个查询 dns 的问题。
    jj001
        46
    jj001  
       2022-09-18 17:08:46 +08:00
    我也是使用 openwrt 拨号,使用的 passwall 插件,但是开启了 ipv6 的话电视端 Netflix 会提示似乎使用代理,电脑网页端不会,只能关闭 ipv6 才可以解决,但是不开启 ipv6 移动宽带下 pt 连接性不怎么好。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5322 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 05:55 · PVG 13:55 · LAX 22:55 · JFK 01:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.