路由器上 Clash 透明代理时, LAN 内其他设备的 IPv6 地址会被改变? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
通过以下 Referral 链接购买 DigitalOcean 主机,你将可以帮助 V2EX 持续发展
DigitalOcean - SSD Cloud Servers
ciaoSora
V2EX    VPS

路由器上 Clash 透明代理时, LAN 内其他设备的 IPv6 地址会被改变?

  •  
  •   ciaoSora 2024-05-20 13:01:18 +08:00 2146 次点击
    这是一个创建于 512 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景:在路由器上配置开启了 IPv6 ,现在全家的电脑、手机以及路由器本身都有 2408 开头的中国联通公网 IPv6 地址,现在电脑浏览器访问 https://test-ipv6.com ,能看到 v6 地址与我在电脑上执行 ifconfig 的结果一致。然后在路由器上用 ShellClash 跑了一个 Clash ,并且开了 IPv4 和 IPv6 的透明代理,我的需求是,国内的站点要直连并且优先 IPv6 ,其他网站走节点。规则配置大致如下:

    proxies: - name: "my_hk_vmess" type: vmess # 删掉了节点的其他细节 - name: "direct_prefer_ipv6" type: direct ip-version: ipv6-prefer proxy-groups: - name: 直连 type: select proxies: - direct_prefer_ipv6 - name: 走节点 type: select proxies: - my_hk_vmess rules: - DOMAIN-KEYWORD,ipv6, 直连 - DOMAIN-SUFFIX,cn, 直连 - DOMAIN-SUFFIX,hk, 走节点 - DOMAIN-SUFFIX,speedtest.net, 走节点 - GEOIP,CN, 直连 - MATCH, 走节点 

    现在的情况是:这份规则,我以及其他终端用户用的很舒服,开了浏览器 F12 也确实看到国内的网站解析到了 IPv6 地址。然而,在规则里我让包含 "ipv6" 的域名直连,就是为了测试 https://test-ipv6.com ,此时奇怪的事情就发生了。

    假设路由器的 v6 地址是 RouterIP,我的电脑的 v6 地址是 LaptopIP。此时用电脑访问(直连) https://test-ipv6.com ,显示我的 v6 地址是 RouterIP(而不是 LaptopIP)。我的理解是,由于路由器上开了 IPv6 透明代理,所以等于是路由器代替我的电脑向 test-ipv6 的服务器发包?

    此时更奇怪的事情就发生了,电脑访问(直连) https://www.ip5.me/ipv6/ ,竟然显示我的 v6 地址是 LaptopIP

    麻烦大佬教一下以上两件奇怪的事情发生的原因,提前谢谢

    p.s., 路由器上 ShellClash 没有开启「 CN IP 数据包不经过 clash 内核」。

    4 条回复    2024-05-26 09:50:54 +08:00
    xclrr
        1
    xclrr  
       2024-05-20 13:34:08 +08:00 via Android
    dns 的问题,test-ipv6.com 没有 ipv6 地址,所以过了 NAT
    ciaoSora
        2
    ciaoSora  
    OP
       2024-05-20 14:14:27 +08:00
    @xclrr 谢谢大佬!`dig` 了一下 test-ipv6.com , 确实没有 v6 地址,而 www.ip5.me 是有 v6 地址的。但是有点没理解跟 NAT 有什么关系,请问下「过了 NAT 」是什么意思呀? NAT 不是仅仅是个 IPv4 的概念吗?而且,https://ipv6.test-ipv6.com 是个纯 v6 网站,我访问这个网站时,显示我的 v6 地址仍然是 `RouterIP`……
    heganyuliang
        3
    heganyuliang  
       2024-05-26 00:21:19 +08:00
    同样的问题,开启 ShellClash 之后 ipw.cntestipv6.cn 检测的 v6 地址都是路由器的地址,而且我这里 www.ip5.me/ipv6 只显示 v4 地址了
    ciaoSora
        4
    ciaoSora  
    OP
       2024-05-26 09:50:54 +08:00
    @heganyuliang 我现在感觉显示路由器的 v6 地址才是正确的行为,「透明代理」这个词里的「透明」应该是仅对 TCP 服务发起端来说的。

    就像传统的 IPv4 世界里,你用一个境外的主机建了个机场(代理),然后自己电脑上连接他,那他就是一个不透明的代理,相同点是「都是代理」,既然代理了,那么就会「代替」、「取代」你( IP 包的 Src IP 会被替换为代理的 IP ),来跟目标服务器通信,然后再把结果发回给你。

    不太清楚 www.ip5.me/ipv6 是什么原理…… 感觉跟其他的测试网站似乎不太一样。

    然后我现在已经关掉了 ShellClash 的 IPv6 透明代理,直接让所有 v6 的流量直连了,目前运行良好,测试自己的 IP 也都是我的本机 IP 而不是路由器 IP ,境外流量也都顺利地解析为 IPv4 然后走了节点。现在的 ShellClash IPv6 相关配置是:

    ipv6 内核支持:已开启; ipv6 透明代理:未开启; ipv6-DNS 解析:已开启; CNIP 绕过内核:未开启
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3189 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 00:32 PVG 08:32 LAX 17:32 JFK 20:32
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86