[IPv6] Prefix Information option (PIO)
RA 封包里面可以有 0 个或多个 Prefix Information option (PIO)
PIO 里面除了有 prefix 外
还有 L flag (on-link flag) 和 autonomous address-configuration flag
L flag = 1 代表此 prefix 是属于 on-link , 会被加到 prefix list 里面
preifx list 里面记录 on-link prefix
on-link 代表直接传送就会送到目的地 , 不用透过 router 转送
off-link 代表需要透过 router 转送才会送到目的地
若 prefix list 里的 lifetime = 0 , 则此 prefix 为 off-link , 可以删除
若收到的 RA 有 preifx list 里的 prefix , 可以更新其 lifetime
L flag = 0 代表没有对此 prefix 是 on-link 或 off-link 做说明
也就是不能将此 prefix 视为 off-link
autonomous address-configuration flag = 1 代表 host 可以使用此 prefix 来组成 ipv6 address
windows 输入 route print -6 会显示 IPv6 路由表
可以看到那些属于 on-link
若 windows 8.1 收到 valid lifetime = 0 , preferred lifetime = 0 的 2001:b021:34::/64
windows 8.1 会将 2001:b021:34::/64 这笔 on-link 清除
不过我曾经看过没被清掉的 case , 不知是不是 bug
详细请参考
RFC4861 Neighbor Discovery for IP version 6 (IPv6)
待续
看完文章请按 赞 or 推 , 感谢啦 ~