原文地址:http://blog.ihipop.info/2012/06/3218.html

由于IPv6的 Router Advertisement 无状态自动配置 stateless在目前的标准下[1]只能告知客户端此网段的ipv6 prefix和default gateway(网关的linklocal地址),因此,如果要实现更加详细的资讯配置,只能使用RADVD+DHCPv6进行协同工作,即进行DHCPv6的stateful配置。

但是,由于DHCPv6不能告知客户端默认路由,默认路由的广播只能靠RA,这样就必须在RA报文里面,不报告“A”(自动配置),只报告“R”(路由前缀),让客户端通过DHCPv6去获取默认路由。

如下是台湾同胞博客上找到的一张RA报文( Router Advertisement (RFC 4861) )结构图

IPv6的RA报文中各个flag的含义及其与DHCPv6协同工作要点

红色框的地方,叫做 Router Advertisement Option( RFC5175),

M: Managed Address Configuration 這個 bit 如果是 1,代表要請電腦另外再去跟 DHCPv6 要 IPv6 Prefix

O: Other Configuration 這個 bit 如果是 1,代表請電腦去跟 DHCPv6 要 DNS 等等資訊。
这两项在RADVD里面分别对应AdvManagedFlag和AdvOtherConfigFlag。

大家看我的抓包

IPv6的RA报文中各个flag的含义及其与DHCPv6协同工作要点

M和O的不同组合代表了不同的含义

M和O的不同组合代表
M O 对应意义 描述
1 1 地址和DNS什么的都从DHCPv6服务器取得 Stateful DHCPv6
0 1 地址使用RA广播的prefix+ EUI-64计算出来的接口地址,DNS和其他服务器从DHCPv6取得 Stateless DHCPv6
0 0 完全的Stateless配置,仅地址使用RA广播的prefix+ EUI-64计算出来的接口地址。 Stateless AutoConfiguration
关于上文的注释1,RA广播DNS配置的问题,其实有个 RFC5006描述了这个协议,但是这个还不是标准,据说RADVD支持这个协议,但是不成为标准的东西,很多客户端也不支持,目前谈这个没没有意义。

转载于:https://blog.51cto.com/hanson2017/2047550

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐