有状态DHCPv6配置

9afb5b981246bbc6770cc51d7c8cfb0e.gif

正文共:1234 字 16 图,预估阅读时间:3 分钟

前面我们提到IPv6地址的配置方式比较丰富IPv6从入门到精通,支持有状态地址配置、无状态地址配置和手工配置等配置方式,并且就手工配置方式和IPv6的地址架构进行了充分介绍IPv6地址架构一本通

相比于无状态地址配置和手工配置的方式,DHCPv6有状态地址配置能更好地控制地址的分配。和IPv4的DHCP一样,服务器可以为特定主机分配特定的地址,以便于网络管理。还可以为主机分配DNS服务器、域名、域名后缀、SIP(Session Initiation Protocol,会话起始协议)服务器地址或域名等网络配置参数。

与IPv4的DHCP不同的是,DHCPv6除了支持分配IPv6地址,还支持为客户端分配前缀,以便于全网络的自动配置和管理。

我们先来看一个比较正常的DHCPv6动态分配IPv6地址配置。

7b308e25b43b89c64e610939b68d8806.png

组网非常简单,就是一台DHCPv6服务器为客户端分配IPv6地址。

配置之前先接单介绍一下IPv6邻居发现(Neighbor Discovery,ND)消息中比较重要的路由器请求消息RS(Router Solicitation)路由器通告消息RA(Router Advertisement),RS消息用于请求前缀和其他配置信息,以实现节点的自动配置,而RA消息是对RS消息进行响应。

也就是说,在本案例中,DHCPv6客户端会向DHCPv6服务器发送RS消息来请求配置信息,而DHCPv6服务器会响应DHCPv6客户端的请求。

但在RA消息中,又有两个比较重要的标志位:被管理地址配置标志位(M flag)其他信息配置标志位(O flag)。在配置DHCPv6服务器时,要配置被管理地址的配置标志位(M flag)的值为1,即主机采用有状态自动配置(通过DHCPv6服务器)获取IPv6地址;配置其他信息配置标志位(O flag)的值为1,即主机通过DHCPv6服务器获取除IPv6地址以外的其他信息。以上配置统称为取消设备发布RA消息的抑制。

配置DHCPv6服务器接口IPv6地址,同时配置接口工作在DHCPv6服务器模式。

#
interface GigabitEthernet2/0
 ipv6 dhcp select server
 ipv6 address 1::1/64
 ipv6 nd autoconfig managed-address-flag
 ipv6 nd autoconfig other-flag
 undo ipv6 nd ra halt

配置IPv6地址池1,为1::/64网段的客户端分配IPv6地址,配置DNS服务器地址为2::2,配置主机域名后缀为guotiejun.com,配置网关为1::1。

#
ipv6 dhcp pool 6
 network 1::/64
 dns-server 2::2
 domain-name guotiejun.com
 gateway-list 1::1

配置完成之后查看主机获取到的IPv6地址信息。

c2fcc5121ff67bc23238d633af17214a.png

可以看到,主机上一下子有了4个IPv6地址,其中一个首选地址是1::2,很明显,这个是从DHCPv6服务器获取到的;还有两个地址也是1::的前缀,但是目前看不出来是怎么来的,因为抓包的时候报文太多了;还有一个FE80的本地链路地址。还能看到获取到的DNS服务器和DNS后缀和服务器配置的一样。

通过display ipv6 dhcp server ip-in-use命令在DHCPv6服务器上查看已经分配的IPv6地址信息。

2efd69aad60cbaaea61523a2829f7c74.png

电脑的报文太杂,把客户端换成路由器测试一下。

25681716e7ae360fb14e6b936d12d012.png

这次报文就好看多了,可以看到报文交互使用了以下几种类型的IPv6地址:

1、fe80打头的链路本地地址,分别是FE80::2E5F:80FF:FE16:105(服务器)和FE80::2E5F:82FF:FE0D:205(客户端);

2、ff打头的组播地址,ff02表示本地链路上的所有IPv6 路由器组;

3、::表示未指定地址;

4、1::2和1::1两个全球单播地址。

可以看到配置完RA消息的M位和O位之后,服务器发送的RA消息中对应标志位已经设置为1。

69c5e12de6a8d2ca305c58c97e301144.png

可以看到DHCPv6的交互报文为4个,属于标准的交互4个消息的分配过程。除此之外,还有一种交互2个消息的快速分配过程。

cbc8177a3c469d93e1ebe2cfa361c22b.png

第1个报文是客户端发送的Solicit消息,请求DHCPv6服务器为其分配IPv6地址和网络配置参数。

08174d7e211d716865b1ef17dcff4e0d.png

这里面,我们可以看到客户端消息中携带的链路层地址和真实MAC地址的最后两位不相同,原因现在还不知道。Option Request中的参数可以说是覆盖服务器能配置的所有参数。

第2个报文是DHCPv6服务器回复的Advertise消息,通知客户端为其分配的IPv6地址为1::2,域名后缀为guotiejun.com,DNS服务器为2::2。同样的,这里可以看到服务器和客户端消息中携带的链路层地址和真实MAC地址的最后两位不相同,原因现在还不知道。

3f5ed3f4902e5ad9921c525422886d7a.png

第3个报文是客户端向服务器发送Request消息,请求服务器确认为其分配IPv6地址1::2和其他配置参数。如果网络中有多个DHCPv6服务器,则根据报文中的Server Identifier进行标识。

c97c4920bcb9815aa10a25f2467d9293.png

第4个报文是DHCPv6服务器回复客户端的Reply消息,确认将地址1::2分配给该客户端使用,同时下发其他网络配置参数。

f8354dad4de17d5bcea0daed774a4cc0.png

在客户端上使用命令display ipv6 dhcp client查看DHCPv6客户端的信息。

3853dd5f1440ee1ba4c4ecae9c5b874a.png

状态基本上都是对的,现在我们把1::2配置为不参与自动分配的IPv6地址,查看一下客户端重新获取地址的情况。

#
 ipv6 dhcp server forbidden-address 1::2

可以看到,客户端再次请求地址时,被分配了1::3的IPv6地址。

d4b27b8627bdd2cd0b398b5bf9f638c0.png

查看DHCPv6客户端的信息。

9b6ae9041fd8685e9777919d773bacb8.png

这里比较有意思的就是路由表,无论是电脑还是路由器作为客户端,显示的网关都是FE80的地址。

ec7ae23f9406994984ecfb1e7fb4ef07.png

但是不同的是,路由器上无法对这个地址执行ping操作,而Windows上却可以,但是第一个包会丢。

e8b9ed631bdabe7d7e60ef1e6249bbeb.png

真是神奇又尴尬呢,看来之前有地方是说错了。

b804b66f6ef45205e3ca0c04902ad7e4.png

db30aa1e4f3411838ea377dd1cc7b7fa.gif

长按二维码
关注我们吧

5a05a306fbecba5c51951e601198bcf0.jpeg

9e9aefdd6419fdabe34cde55f6450024.png

IPv6从入门到精通

IPv6地址架构一本通

SRv6的网络编程实现

Android4也能跑Linux了,Linux Deploy了解一下!

使用UserLAnd给华为平板装个Linux系统

一篇能解决90%以上SSL VPN问题的武林秘籍

没想到啊,竟然万物皆可EVE-NG!

听说过借钱的,听说过借IP地址的吗?“IP地址借用”了解一下

Windows 11支持Android已经4个多月了,我不希望你还被蒙在鼓里!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Danileaf_Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值