IPv6 邻居发现协议 NDP 更新机制!

2021-08-30 09:40:25 +08:00
 acbot
局域网下的设备都通过无状态模式( SLAAC 模式)配置 IPv6 地址,由于 IPv6 前缀是变化的和地址生命周期的因素所以局域网的设备间隔一段时间就会生成新的 IPv6 地址,网络运行一段时间后 ip -6 nei show 会看到同一个 MAC 地址 有很多 Stale 状态的记录,即使某些记录明显是已经失效的(历史前缀生成的地址,对方机器的历史地址等),现在问题来了,明明这些地址都已经不存在了,为啥还能看到记录,使用 ip -6 nei flush *** 这些记录都立即变成 FAILSE 状态,但是记录还是有,那么 IPv6 邻居发现协议 到底是多久更新一次,如何才能清空里面的邻居信息呢?
2369 次点击
所在节点    路由器
7 条回复
trepwq
2021-08-30 10:27:59 +08:00
eui-64 格式不是跟 mac 地址绑定么
sujin190
2021-08-30 11:10:05 +08:00
@trepwq #1 楼主的意思应该时前缀变化了的情况下,比如宽带给的就经常变,然后你会发现一个网卡好多个 ip 地址

openwrt 的话似乎在 dhcp 中配置 ra_useleasetime 值为 1 才会启用 ipv6 地址过期的配置,设置了这个之后似乎前缀变了之后,无效的 ip 地址会消失了,可以试试看
sujin190
2021-08-30 11:18:07 +08:00
acbot
2021-08-30 11:21:40 +08:00
@trepwq slaac 的 stable-privacy 模式不是 eui-64 再说 就算是 slaac 的 eui-64 模式,前缀变了同样也要生成新的地址。
acbot
2021-08-30 11:34:12 +08:00
@sujin190 可能是我描述不太清楚,比如:我上一次 拨号获取的前缀是 2400:198:558:890::/60 本次拨号前缀已经变成 2400:198:A85:B890::/60 路由器上使用 ip -6 nei show 查看两个前缀的记录都有 并且还有可能是 Stale 状态,而这个时候 PC 只有最后一个新前缀生成的新地址。
acbot
2021-08-30 11:36:19 +08:00
@sujin190 谢谢,我去测试一下,我只开了 RA 通告,DHCPv6 和 NDP 都是禁用状态 不知道这个选项是否有效!
sujin190
2021-08-30 11:41:54 +08:00
@acbot #6 这个就是设置 ra 的,开了之后默认超时时间看上面那个文档似乎是 2 小时

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/798753

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX