IPv6系列-详解自动分配IPv6地址

IPv6系列-详解自动分配IPv6地址

什么是私有VLAN?

IPv6系列-详解自动分配IPv6地址

 

深入研究自动分配IPv6地址的Stateless(无状态)与Stateful(有状态)方式

小慢哥的原创文章,迎接转载


目录

▪ 一. Link-Local Address的天生方式

▪ 二. Global Address的天生方式

▪ 三. RA报文中3个要害的Flag

▪ 四. 流程示意图

▪ 五. 测试获得IP效果

▪ 六. 应用场景(选择无状态照样有状态)

▪ 七. 后续内容

▪ 附. 参考文档


一. Link-Local Address的天生方式

天生“链路内陆地址”,有2种方式

▷ 手动设置

▷ 自动设置

其中“自动设置”凭据算法,又分为

▷ eui64:凭据mac地址换算而来

▷ stable_secret:追随网络环境的转变而转变,处于牢固网络环境时其值将牢固

▷ random:随机天生


二. Global Address的天生方式

天生“全球单播地址”(或者“唯一内陆地址”),有2种方式

▷ 手动设置

▷ 自动设置

其中“自动设置”凭据获取方式,又分为

▷ 无状态(Stateless):凭据路由通告报文RA(Router Advertisement)包罗的prefix前缀信息自动设置IPv6地址,组成方式是Prefix + (EUI64 or 随机)。Stateless也可以称为SLAAC(Stateless address autoconfiguration)

▷ 有状态(Stateful):通过DHCPv6方式获得IPv6地址

其中“有状态”又分为2种

▷ 有状态DHCPv6(Stateful DHCPv6):IPv6地址、其他参数(如DNS)均通过DHCPv6获取

▷ 无状态DHCPv6(Stateless DHCPv6):IPv6地址依然通过路由通告RA方式天生,其他参数(如DNS)通过DHCPv6获取

为了制止混淆,在此注释下有状态、无状态到底是什么意思:首先,请明确一点,有状态、无状态仅针对于IPv6地址分配方式,并不包罗其他参数

▷ 有状态:可控、可治理。在网络中存在一个IP地址治理者,它能够识别客户端,凭据差别的客户端,分配对应的IPv6地址,客户端与服务端之间需要维护IP地址的租期及续约。现在实现这种效果的,就是DHCPv6协议,IP地址治理者就是DHCPv6 Server

▷ 无状态:不可控、难治理。在网络中只有网关,没有IP地址治理者。因此无人去识别客户端,每个客户端凭据网关发送的相同的RA报文内容,自行设置IPv6地址


三. RA报文中3个要害的Flag

RA报文中存在3个要害的flag bit:

网络安全之交换机常见的VLAN跳跃攻击和生成树攻击原理

IPv6系列-详解自动分配IPv6地址

 

▷ Autonomous flag(简称A flag):示意是否设置无状态IP。在一个RA报文中,可存在多个prefix,好比2401::/64、2402::/64、2403::/64,每个prefix都可以自力设置A flag

▪ 为on时(对应bit位为1):示意客户端应当在该prefix范围内自动天生IPv6地址(客户端通过DAD自行保证地址可用),并设置子网路由条目、网关

▪ 为off时(对应bit位为0):示意客户端不应当在该prefix范围内自动天生IPv6地址,然则可以设置子网路由条目、网关

▷ Managed flag(简称M flag):示意是否设置有状态IP。M flag是RA报文的全局参数,一个RA报文只有一个M flag

▪ 为on时(对应bit位为1):示意在stateless流程竣事后最先stateful流程,也就是告诉客户端可以通过DHCPv6来获得IPv6地址和其他参数(如DNS列表)

▪ 为off时(对应bit位为0):示意不通过DHCPv6来获得IPv6地址。

▷ Other flag(简称O flag):示意是否通过DHCPv6获得除IP以外的其他参数(如DNS列表)。O flag也是RA报文中的全局参数,一个RA报文只有一个O flag。注重:仅当M flag为off时,该参数才会被读取。

▪ 为on时(对应bit位为1):当M flag为on,或者M flag为off且至少有一个A flag为on时,将通过DHCPv6获得其他参数

▪ 为off时(对应bit位为0):当M flag为on时,依然将通过DHCPv6获得其他参数;当M flag也为off时,将不通过DHCPv6获得其他参数


四. 流程示意图

无状态和有状态并不是相互对立的,他们可以同时存在,也就是一张网卡上可以同时泛起通过RA天生的IP以及通过DHCPv6获得的IP。通过下面这张笔者绘制的流程图可知晓其中秘密。

IPv6系列-详解自动分配IPv6地址

 

从图中可以看到,顺序为:

1️⃣ Stateless自动设置“链路内陆地址”

2️⃣ Stateless自动设置“全球地址”(或“唯一内陆地址”)

3️⃣ Stateful自动设置“全球地址”(或“唯一内陆地址”)和其他参数,其中Stateful阶段中存在Stateful DHCPv6或Stateless DHCPv6

注重:部门客户端操作系统或网络治理器当Stateless阶段没有收到RA报文后,就到此竣事,不会走Stateful阶段,好比CentOS 7、Ubuntu 17的默认逻辑都是这样,而windows server 2012就会继续走Stateful阶段。


五. 测试获得IP效果

测试环境:客户端基于CentOS 7+NetworkManager(即系统默认的网络治理方式)举行测试

▪ 网关会发送RA报文,包罗一个prefix

▪ DHCPv6 Server会分配IP、DNS

测试内容:测试M、O、A flag在所有排列组合的情况下

▪ 客户端是否会通过RA报文设置无状态IP

▪ 客户端是否会通过RA报文设置prefix子网路由

▪ 客户端是否会通过RA报文设置gateway

▪ 客户端是否会通过DHCPv6获得有状态IP

▪ 客户端是否会通过DHCPv6获得DNS

测试效果

IPv6系列-详解自动分配IPv6地址

 


六. 应用场景(选择无状态照样有状态)

何时接纳无状态、何时接纳有状态,要害看应用场景。焦点在于是否需要控制IP地址,好比保持IP稳定,若是需要控制,就接纳有状态;若是无需控制,就接纳无状态。

▷ 服务端领域:如对外提供服务,通常需要接纳有状态IP。由于营业IP的突然转变容易导致营业中止(除非做好服务发现)

▷ 客户端领域:如移动装备、办公室内PC机,只需要上IPv6互联网,并不需要对外提供服务,可以接纳无状态IP


七. 后续内容

由于篇幅有限,本文尚未贴出实验的详细设置。将会在《IPv6系列》后续文章里,贴出实验的完整信息,包罗RA、DHCPv6的设置,以及客户端的设置,敬请关注。


附. 参考文档

http://www.6deploy.eu/tutorials/080-6deploy_ipv6_autoconfiguration_mechs_v0_4.pdf
https://cshihong.github.io/2018/02/01/DHCPv6基础/

IPv6基础知识详解,一分钟了解下

分享到 :
相关推荐

发表评论

登录... 后才能评论