V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
fkdog
V2EX  ›  问与答

win10 ipv6 获取有 bug

  •  
  •   fkdog · 2021-03-29 20:47:01 +08:00 · 1105 次点击
    这是一个创建于 1346 天前的主题,其中的信息可能已经有所发展或是发生改变。

    路由上已经设置使用 SLAAC+RDNSS,wireshark 抓包也能看到路由下发的 RA 报文里,管理地址和其他信息分配的 flag 是 0 。

    然而 win10 在即使 RA 报文里标注了使用 SLAAC 的情况下,依然会发送 dhcpv6 solicit 报文。甚至是在收到 RA 报文之前就在发送 dhcpv6 solicit 报文了。如果路由上 dhcpv6 服务没有关闭时,便会给 win10 电脑分配 ipv6 地址。

    因此会出现一个情况就是:在 slaac 分配地址的情况下,win10 依然会通过 dhcpv6 方式请求 ipv6 地址。在 win10 电脑上就会出现 3 个地址,一个是 dhcpv6 分配的地址,一个是 slaac 地址、一个是 slaac 临时地址。

    4 条回复    2021-03-31 15:46:05 +08:00
    lcdtyph
        1
    lcdtyph  
       2021-03-29 22:10:23 +08:00 via iPhone   ❤️ 1
    是的,无论如何配置 win 都会发送 dhcpv6 solicit,而且这问题似乎从 vista 时代就有了

    可以在防火墙里把这个 type 的报文禁用掉
    mansurx
        2
    mansurx  
       2021-03-30 08:28:06 +08:00 via Android
    windows 不讲武德,只有 windows 是不等 ra 消息就发 solicit 拿地址,应该是特意设置的。
    其他 mac 、iOS 、linux 都会等 ra 消息
    fkdog
        3
    fkdog  
    OP
       2021-03-30 18:10:14 +08:00   ❤️ 1
    @lcdtyph @mansurx
    经过我多次的研究对比,发现 windows 虽然会发送 solicit 报文,但是这个 solicit 报文里并没有出现请求地址的选项。dhcpv6 服务器也不会响应这个报文信息。

    当 ra 设置了 dhcpv6 获取 ip,windows 会再发一个带有请求地址选项的 solicit 报文,这个报文是会被 dhcpv6 服务器响应并发回地址的。

    设置了 slaac 但是依然返回了 dhcpv6 地址的原因貌似是光猫太垃圾,修改了 slaac 选项后重启相关服务要等几十秒以后才生效。中间的这几十秒 ra 依然返回 dhcpv6 获取地址的报文。
    mansurx
        4
    mansurx  
       2021-03-31 15:46:05 +08:00
    @fkdog #3 感谢,我再重新测下,之前只看了报文类型,没看内容
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5684 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:30 · PVG 11:30 · LAX 19:30 · JFK 22:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.