由IPv4自动分配演进至 IPv6地址自动分配

1、局域网IPv4地址自动获取:DHCP

在IPv4环境中使用DHCP协议能够快速为主机终端分配IP地址、DNS、网关这些上网必要的参数。只需要配置好DHCP即可完成。

2、演进到IPv6网络中怎么来为局域网快速分配IPV6必要的上网参数呢?

在IPv6环境下,终端获取完整的IPv6 地址及DNS这些有3种方式。

方式① 无状态自动地址分配 + DHCPv6无状态自动分配

即:通过”无状态自动地址分配“分配IPv6地址,通过” DHCPv6无状态自动分配“分配DNS等参数(DHCPv6分配的不含网关)

方式②DHCPv6有状态自动分配

即:通过DHCPv6协议分配IPv6地址和DNS等参数(DHCPv6分配的不含网关)

方式③手动配置

即:终端手工配置自己的IPv6地址即DNS参数

3、IPv6地址自动分配方式定义

  • 无状态自动地址分配。由接口ID生成链路本地地址,再根据路由通告报文RA(Router Advertisement)包含的前缀信息+EUI64方式自动配置本机地址。
  • 有状态自动地址分配,即DHCPv6方式。DHCPv6又分为如下两种:
    • DHCPv6有状态自动分配。DHCPv6服务器自动分配IPv6地址/PD前缀及其他网络配置参数(DNS、NIS、SNTP服务器地址等参数)。
    • DHCPv6无状态自动分配。主机IPv6地址仍然通过路由通告方式自动生成,DHCPv6服务器只分配除IPv6地址以外的配置参数,包括DNS、NIS、SNTP服务器等参数。

4、IPv6中NDP协议的RA报文三个字段定义采用的地址分配方式

字段1: 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地址,但是可以配置子网路由条目、网关

字段2: Managed flag(简称M flag):表示是否配置有状态IP。M flag是RA报文的全局参数,一个RA报文只有一个M flag

▪ 为on时(对应bit位为1):表示在stateless流程结束后开始stateful流程,也就是告诉客户端可以通过DHCPv6来获得IPv6地址和其他参数(如DNS列表)
▪ 为off时(对应bit位为0):表示不通过DHCPv6来获得IPv6地址。

字段3: 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获得其他参数
————————————————
以上3个字段原文摘录自「小慢哥Linux运维」。版权声明:本文为CSDN博主「小慢哥Linux运维」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/Loveychent/article/details/102098329

至于我们选择自动分配IPv6时,可以选择配置设备的RA报文中三个字段来实现相应的IPv6自动分配方式,自己依据需求来自行定义

5、无状态IPv6地址分配 与 有状态DHCPv6 IPv6分配区别

无状态IPv6地址分配:需要在设备侧(网关侧)配置好接口的IPv6地址前缀信息,设备通告RA报文中”Autonomous flag“为1(该字段需要看不同网络设备厂商的默认值是0还是1)时表示无状态自动分配IPv6.指定的网络位前缀假设位2100::/64,终端依据EUI-64自动分配得后64地址。后64位地址是从接口的链路层地址(如MAC地址)变化而来的。IPv6地址中的接口标识符是64位,而MAC地址是48位,因此需要在MAC地址的中间位置插入十六进制数FFFE。然后将U/L位(从高位开始的第7位)设置为“1”,这样就得到了EUI-64格式的接口ID。

 MAC地址到EUI-64格式的转换过程

① MAC地址为 00-AA-00-3F-2A-1C

②中间插入FFFE后为00-AA-00-FF-FE-3F-2A-1C

③.第一个字节为0000 0000,第7为反转为0000 0010转换16进制为02

④得到结果为02-AA-00-FF-FE-3F-2A-1C,转换为ip6表示格式为2AA:FF:FE3F:2A1C

到这里这样就完了,能上网了?No No No

还需要配置通告的RA报文中”Other flag“为1,再配置好DHCPv6服务即可完成DNS等参数分配,才可以愉快的上网。

DHCPv6分配:需要在设备侧(网关侧)配置好通告的RA报文中”Managed flag“为1,同时配置好DHCPv6服务,即可完成地址自动分配。

手机电脑终端在IPv6地址支持情况

实测电脑(win10)可以支持前缀>64的IPv6地址获取(无状态和有状态DHCPv6)

安卓手机只支持前缀64的IPv6地址获取(无状态和有状态DHCPv6),当路由器配置IPv6前缀为/120位的时候华为手机测试无法获取IPv6地址(无状态和有状态DHCPv6),当路由器配置IPv6前缀改为/64位的时候华为手机测试获取到IPv6地址(无状态和有状态DHCPv6)。很多的家用小无线路由器设置地址自动分配的时候只能支持小于/64前缀的,应该是考虑了安卓手机只支持前缀64的IPv6地址获取的原因。

可见安卓手机对IPv6的支持还需要提高,安卓也可能是基于设备路由性能的原因而考虑当前只支持64位前缀。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值