48小时系统班试听入口

【网工实用技术】IPv6下的DHCP(DHCPv6)

发布作者:新盟教育 发布日期:2022-09-23 浏览人数:5271人

网工实用技术

一、IPv6概述

IPv6在IPv4的基础上做了很多改进,如扩编地址(由32位扩编为128位)、支持无状态地址自动配置、简化报头、身份验证、支持新的网络服务(QoS)等,并且增强了移动性和安全性,这使得IPv6成为下一代互联网的核心协议。


IPv6支持的地址分配方式:

  • 无状态地址自动配置;

  • 有状态地址自动配置。


无状态地址自动配置是指主机通过监听路由通告获得全局地址前缀(64位),然后在后边缀上自己的接口地址得到全局IP地址。这主要是因为IPv6有海量的IP地址资源,用户可以自行配置一个全局IP。

接口地址实际上就是MAC地址,由于MAC地址是48位的,所以这里要用到一个IEEE提供的EUI64转换算法,可以将48位的MAC地址换算为64位。然后主机向该地址发送一个邻居发现请求(Neighbor DiscoveryRequest),如果无响应,则证明网络地址是唯一的。

主机通过无状态地址自动配置获得IP的过程如图所示:

IPv6的无状态地址自动配置


有状态地址自动配置是由IPv4下的DHCP转化而来,IPv6继承并改进了这种服务,即DHCPv6协议,它向IPv6主机提供有状态的地址配置或无状态的配置设置。IPv6主机自动执行无状态地址自动配置,并在相邻路由器发送的路由器公告消息中使用基于以下标记的配置协议(如DHCPv6):

① 托管地址配置标记,也称为M标记。设置为1时,此标记指示主机使用配置协议来获取有状态地址。

② 其他有状态配置标记 ,也称为O标记。设置为1时,此标记指示主机使用配置协议来获取其他配置设置。

结合M和O标记的值可以产生以下组合:

① M和O标记均设置为0。 此组合对应不具有DHCPv6基础结构的网络。主机使用非链接本地地址的路由器公告以及其他方法(如手动配置)来配置其他设置。

② M和O标记均设置为1。DHCPv6用于这两种地址(链接本地地址和其他非链接本地地址)和其他配置设置。该组合称为DHCPv6有状态,其中DHCPv6将有状态地址分配给IPv6主机。

③ M标记设置为0,O标记设置为1。DHCPv6不用于分配地址,仅用来分配其他配置设置。相邻路由器配置为通告非链接本地地址前缀,IPv6主机从中派生出无状态地址。此组合称为DHCPv6无状态:DHCPv6不为IPv6主机分配有状态地址,但分配无状态配置设置。

④ M标记设置为1,O标记设置为0。 在此组合中,DHCPv6用于地址配置,但不用于其他设置。因为IPv6主机通常需要使用其他设置(如域名系统 (DNS) 服务器的IPv6地址)进行配置,所以这是一种不太可能的组合。

类似于DHCPv4,DHCPv6基础结构的组件由下列各项构成:请求配置的 DHCPv6客户端、提供配置的DHCPv6服务器、以及DHCPv6中继代理(当客户端位于不具备DHCPv6服务器的子网上时,它在客户端和服务器之间传递信息)。


二、DHCPv6协议下主机

与服务器交互

DHCPv6协议下客户端与服务器端的交互与DHCPv4类似采用如下图所示的4步交互:

DHCPv6协议下主机与服务器的四步交互


但DHCPv6支持快速的两步交互,即如果客户端发送的SOLICIT报文中有rapidcommit选项,并且服务器支持该交互方式,就可以进行如下图所示的两步交互:

DHCPv6协议下主机与服务器的两步快速交互


在上述交互过程中提到的DHCPv6报文与DHCPv4类似,如solicit报文类似与discover报文,advertise报文类似于offer报文等等。

表一 DHCP报文与DHCPv4报文对比

三、DHCPv6的报文结构


DHCPv6的封包有两种结构,即在中继与客户端上使用的报文结构有时是不同的,在客户端与服务器端报文结构如下图所示:

客户端与服务器端交互的报文——摘自RFC3315

而在服务器与中继代理端交互的报文结构与客户端与服务器端交互的报文是不同的,某种程度上显得更为复杂一些,RFC3315中描述的这种报文结构如图所示:

服务器与中继代理之间的报文——摘自RFC3315

结束语


从IPv4走向IPv6是必然的发展趋势,虽然IPv6支持无状态的自动分配地址,但这并不意味着DHCP会随着IPv6的出现以及IPv6设备的大量部署而退出历史舞台。不仅是在这么一个过渡时期,DHCP是不可或缺的,即便是在将来,DHCP仍将发挥重要作用。

思科公司的Droms预计,大部分的企业都将花钱来支持DHCPv6。他说:“网管员们都想知道网络上连接着什么样的主机和设备,以及这些设备的地址,因此,他们将希望使用DHCPv6。”

DHCPv6较DHCPv4更为复杂,也有很多不同的地方,如DHCPv4使用67和68端口,而DHCPv6使用546和547端口;不同的报文结构以及交互方式,DHCPv6设备都要使用DUID来互相认证等。但他们的原理类似,具备DHCPv4知识的技术人员在熟悉IPv6的基础上可以很快掌握DHCPv6协议。



推荐阅读

>>>【独家首发】新版HCIE考试解读直播回顾

>>> 重磅!华为HCIE认证改版升级通知!

>>>【命令解析】Linux用户行为的常用命令

>>> 网工必备通信基础知识,还不知道你就out了?

>>>【必备干货】网工入门必会桥接教程,外网+GNS3+Vmware

>>>【技术指南】5分钟搞清楚OSPF链路状态路由协议


网工界市场认可度极高的华为认证,你考了吗?


拿下华为HCIE认证之后,你可以:


  • 跨越90%企业的招聘硬门槛

  • 增加70%就业机会

  • 拿下BAT全国TOP100大厂敲门砖

  • 体系化得到网络技术硬实力

  • 技术大佬年薪可达30w+