本文主要是介绍IPv6地址分配,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在IPv6网络中,网络节点的自动配置分为两种:
1. 无状态自动配置:网络节点从路由通告中获取配置参数。
2. 全状态自动配置:网络节点通过DHCPv6服务器获取配置参数。
DHCPv6作为目前唯一提出的全状态配置模型,在RFC3315中进行了详细的描述.
DHCPv6分配过程:
1、新的网络节点[主机或者接口]在本地链路内发送一个到所有DHCPv6服务器和DHCPv6中继(地址:FF02::1:2 端口:547)的多播报文--Solicit;
2、服务器收到该报文后会单播回应Advertise报文;
3、客户端选择服务器之后,发送Request报文请求配置信息;
4、服务器完成参数的分配后即回应Reply报文。
新的客户端服务端标识,被称之为DUID(DHCP Unique IDentifier);
新的地址参数包含在IA(Identity Association)的选项中,每个DHCPv6客户端关联一个IA,而每个IA中可以包含多个地址以及相关的时间信息;并且根据地址类型的不同生成对应的IA,如:
IA_NA(Identity association for non-temporary addresses,IA中包含的地址是非临时地址)
IA_TA(Identity association for temporary addresses,IA中包含的地址是临时地址)
IA_PD(Identity Association for Prefix Delegation)基于前缀的分配,可以通过DHCPv6分配网络前缀,而不仅仅是IPv6的地址,扩展IA的类型就可以将一个前缀以一个地址的形式(时间参数等)分配给客户端
M/O 标记
IPv6 主机自动执行无状态地址自动配置,并在相邻路由器发送的路由器公告消息中使用基于以下标记的配置协议(如 DHCPv6):
托管地址配置标记,也称为 M 标记。路由器通告的RA 报文中的管理标记,当M 标志位为1 时,表示链路上的IPv6 主机采用DHCPv6 方式获取IPv6 地址/前缀。其他有状态配置标记 ,也称为 O 标记。路由器通告的RA 报文中的其他配置标记,当O 标志位为1 时,表示链路上的IPv6 主机采用DHCPv6 方式获取除IPv6 地址/前缀以外的其他网络配置参数。
结合 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 地址)进行配置,所以这是一种不太可能的组合。
类似于 DHCP for IPv4,DHCPv6 基础结构的组件由下列各项构成:请求配置的 DHCPv6 客户端、提供配置的 DHCPv6 服务器、以及 DHCPv6 中继代理(当客户端位于不具备 DHCPv6 服务器的子网上时,它在客户端和服务器之间传递信息)。
DHCPv6客户端简介
DHCPv6客户端可以自动地从DHCPv6服务器获得前缀空间以及其它配置参数。客户端获取到前缀空间之后,将该前缀空间保存在IPv6的全局前缀空间内,这样这个前缀就可以通过前缀划分分配给其他接口,用来进行前缀通告等。
DHCPv6的客户端是基于接口的,获取到的相关参数也是基于接口的,比如域名服务器,SNTP服务器,在对应的接口网络协议不通时,相关的配置也会自动失效。
这篇关于IPv6地址分配的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!