04-三层技术-IP业务配置指导

09-DHCPv6配置

本章节下载 09-DHCPv6配置  (397.06 KB)

docurl=/cn/Service/Document_Software/Document_Center/Switches/Catalog/S5500/S5500-EI-D/Configure/Operation_Manual/H3C_S5500-EI-D_CG-Release_2210-6W100/04/201203/740047_30005_0.htm

09-DHCPv6配置


1 DHCPv6简介

1.1  DHCPv6概述

DHCPv6(Dynamic Host Configuration Protocol for IPv6,支持IPv6的动态主机配置协议)是针对IPv6编址方案设计的,为主机分配IPv6前缀、IPv6地址和其他网络配置参数的协议。

与其他IPv6地址分配方式(手工配置、通过路由器公告消息中的网络前缀无状态自动配置等)相比,DHCPv6具有以下优点:

l              更好地控制地址的分配。通过DHCPv6不仅可以记录为主机分配的地址,还可以为特定主机分配特定的地址,以便于网络管理。

l              为设备分配前缀,便于全网络的自动配置和管理。

l              除了IPv6前缀、IPv6地址外,还可以为主机分配DNS服务器、域名等网络配置参数。

1.2  DHCPv6地址/前缀分配过程

DHCPv6服务器为客户端分配地址/前缀的过程分为两类:

l              交互两个消息的快速分配过程

l              交互四个消息的分配过程

1.2.1  交互两个消息的快速分配过程

图1-1 地址/前缀快速分配过程

 

图1-1所示,地址/前缀快速分配过程为:

(1)        DHCPv6客户端在发送的Solicit消息中携带Rapid Commit选项,标识客户端希望服务器能够快速为其分配地址/前缀和网络配置参数;

(2)        如果DHCPv6服务器支持快速分配过程,则直接返回Reply消息,为客户端分配IPv6地址/前缀和其他网络配置参数。如果DHCPv6服务器不支持快速分配过程,则采用“1.2.2  交互四个消息的分配过程”为客户端分配IPv6地址/前缀和其他网络配置参数。

1.2.2  交互四个消息的分配过程

交互四个消息的分配过程如图1-2所示。

图1-2 交互四个消息的分配过程

 

交互四个消息分配过程的简述如表1-1

表1-1 交互四个消息的分配过程

步骤

发送的消息

说明

(1)

Solicit

DHCPv6客户端发送该消息,请求DHCPv6服务器为其分配IPv6地址/前缀和网络配置参数

(2)

Advertise

如果Solicit消息中没有携带Rapid Commit选项,或Solicit消息中携带Rapid Commit选项,但服务器不支持快速分配过程,则DHCPv6服务器回复该消息,通知客户端可以为其分配的地址/前缀和网络配置参数

(3)

Request

如果DHCPv6客户端接收到多个服务器回复的Advertise消息,则根据消息接收的先后顺序、服务器优先级等,选择其中一台服务器,并向该服务器发送Request消息,请求服务器确认为其分配地址/前缀和网络配置参数

(4)

Reply

DHCPv6服务器回复该消息,确认将地址/前缀和网络配置参数分配给客户端使用

 

1.3  地址/前缀租约更新过程

DHCPv6服务器分配给客户端的IPv6地址/前缀具有一定的租借期限。租借期限由有效生命期(Valid Lifetime)决定。地址/前缀的租借时间到达有效生命期后,DHCPv6客户端不能再使用该地址/前缀。在有效生命期到达之前,如果DHCPv6客户端希望继续使用该地址/前缀,则需要更新地址/前缀租约。

图1-3 通过Renew更新地址/前缀租约

 

图1-3所示,地址/前缀租借时间到达时间T1(推荐值为首选生命期Preferred Lifetime的一半)时,DHCPv6客户端会向为它分配地址/前缀的DHCPv6服务器单播发送Renew报文,以进行地址/前缀租约的更新。如果客户端可以继续使用该地址/前缀,则DHCPv6服务器回应续约成功的Reply报文,通知DHCPv6客户端已经成功更新地址/前缀租约;如果该地址/前缀不可以再分配给该客户端,则DHCPv6服务器回应续约失败的Reply报文,通知客户端不能获得新的租约。

图1-4 通过Rebind更新地址/前缀租约

 

图1-4所示,如果在T1时发送Renew请求更新租约,但是没有收到DHCPv6服务器的回应报文,则DHCPv6客户端会在T2(推荐值为首选生命期的0.8倍)时,向所有DHCPv6服务器组播发送Rebind报文请求更新租约。如果客户端可以继续使用该地址/前缀,则DHCPv6服务器回应续约成功的Reply报文,通知DHCPv6客户端已经成功更新地址/前缀租约;如果该地址/前缀不可以再分配给该客户端,则DHCPv6服务器回应续约失败的Reply报文,通知客户端不能获得新的租约;如果DHCPv6客户端没有收到服务器的应答报文,则到达有效生命期后,客户端停止使用该地址/前缀。

有效生命期和首选生命期的详细介绍请参见“三层技术-IP业务配置指导”中的“IPv6基础”。

 

1.4  DHCPv6无状态配置

1.4.1  DHCPv6无状态配置简介

DHCPv6服务器可以为已经具有IPv6地址/前缀的客户端分配其他网络配置参数,该过程称为DHCPv6无状态配置。

DHCPv6客户端通过地址无状态自动配置功能成功获取IPv6地址后,如果接收到的RA(Router Advertisement,路由器通告)报文中M标志位(Managed address configuration flag,被管理地址配置标志位)为0、O标志位(Other stateful configuration flag,其他配置标志位)为1,则DHCPv6客户端会自动启动DHCPv6无状态配置功能,以获取除地址/前缀外的其他网络配置参数。

地址无状态自动配置是指节点根据路由器发现/前缀发现所获取的信息,自动配置IPv6地址。详细介绍请参见“三层技术-IP业务配置指导”的“IPv6基础”。

 

1.4.2  DHCPv6无状态配置过程

图1-5 DHCPv6无状态配置工作过程

 

图1-5所示,DHCPv6无状态配置的具体过程为:

(1)        客户端以组播的方式向DHCPv6服务器发送Information-request报文,该报文中携带Option Request选项,指定客户端需要从服务器获取的配置参数。

(2)        服务器收到Information-request报文后,为客户端分配网络配置参数,并单播发送Reply报文将网络配置参数返回给客户端。

(3)        客户端检查Reply报文中提供的信息,如果与Information-request报文中请求的配置参数相符,则按照Reply报文中提供的参数进行网络配置;否则,忽略该参数。如果接收到多个Reply报文,客户端将选择最先收到的Reply报文,并根据该报文中提供的参数完成客户端无状态配置。

1.5  协议规范

与DHCPv6相关的协议规范有:

l              RFC 3736:Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6

l              RFC 3315:Dynamic Host Configuration Protocol for IPv6 (DHCPv6)

l              RFC 2462:IPv6 Stateless Address Autoconfiguration

l              RFC 3633:IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6

 


2 DHCPv6服务器配置

2.1  DHCPv6服务器简介

2.1.1  DHCPv6服务器应用环境

图2-1 DHCPv6服务器应用组网图

 

图2-1所示,为了便于集中管理IPv6地址,简化网络配置,DHCPv6服务器可以用来为DHCPv6客户端分配IPv6前缀。DHCPv6客户端获取到IPv6前缀后,向所在网络发送包含该前缀信息的RA消息,以便网络内的主机根据该前缀自动配置IPv6地址。

目前,设备作为DHCPv6服务器时,只能为DHCPv6客户端分配前缀,不能分配地址;且支持DHCPv6无状态配置,为DHCPv6客户端分配除IPv6地址/前缀外的其他网络配置参数。

 

2.1.2  基本概念

1. DHCPv6采用的组播地址

DHCPv6中采用组播地址FF05::1:3来表示站点本地范围内所有的DHCPv6服务器;采用组播地址FF02::1:2来表示链路本地范围内所有的DHCPv6服务器和中继。

2. DUID

DUID(DHCP Unique Identifier,DHCP唯一标识符)用来标识一台DHCPv6设备(包括客户端、服务器和中继)。

图2-2 DUID-LL结构

 

目前,设备采用RFC 3315规定的DUID-LL(DUID Based on Link-layer Address,基于链路层地址的DUID)作为DHCPv6设备的标识。DUID-LL的结构如图2-2所示:

l              DUID type:DUID类型。设备支持的DUID类型为DUID-LL,取值为0x0003。

l              Hardware type:硬件类型。设备支持的硬件类型为以太网,取值为0x0001。

l              Link layer address:链路层地址。取值为设备的桥MAC地址。

3. IA

IA(Identity Association,标识联盟)用于管理分配给客户端的一组地址和前缀等信息,通过IAID标识。一个客户端可以有多个IA,如客户端的每个接口拥有一个IA,用来管理该接口获取的地址和前缀等信息。

4. IAID

IAID是IA的标识符,由客户端选择。在一个客户端上不同IA的IAID不能相同。

5. PD

PD(Prefix Delegation,前缀授权)是DHCPv6服务器为分配的前缀创建的租约,前缀租约中记录了IPv6前缀、客户端DUID、IAID、有效时间、首选时间、租约过期时间、申请前缀的客户端的IPv6地址等信息。

2.1.3  前缀的选择过程

DHCPv6服务器从接口接收到客户端的请求后,从该接口应用的地址池中选择前缀和其他网络配置参数,分配给客户端。地址池既可以包含静态绑定前缀,用于为特定客户端分配固定前缀;也可以引用包含一定前缀范围的前缀池,用于动态选择可用前缀分配给客户端。

DHCPv6服务器按照如下顺序从地址池中为客户端选择匹配的前缀:

(1)        DUID、IAID与客户端DUID、IAID匹配,且与客户端期望前缀匹配的静态绑定前缀;

(2)        DUID、IAID与客户端DUID、IAID匹配的静态绑定前缀;

(3)        DUID与客户端的DUID匹配,且与客户端期望前缀匹配的静态绑定前缀,该前缀中未指定客户端的IAID;

(4)        DUID与客户端DUID匹配的静态绑定前缀,该前缀中未指定客户端的IAID;

(5)        前缀池中与客户端期望前缀匹配的空闲前缀;

(6)        前缀池中的其他空闲前缀。

2.2  配置DHCPv6服务器

2.2.1  DHCPv6服务器配置任务简介

表2-1 DHCPv6服务器配置任务简介

配置任务

说明

详细配置

使能DHCPv6服务器功能

必选

2.2.3 

创建前缀池

必选

2.2.4 

配置DHCPv6地址池

必选

2.2.5 

配置接口引用地址池

必选

2.2.6 

 

2.2.2  配置准备

配置DHCPv6服务器功能之前,需要先执行ipv6命令使能IPv6报文收发功能。ipv6命令的详细介绍请参见“三层技术-IP业务命令参考”中的“IPv6基础”。

2.2.3  使能DHCPv6服务器功能

表2-2 使能DHCPv6服务器功能

操作

命令

说明

进入系统视图

system-view

-

使能DHCPv6服务器功能

ipv6 dhcp server enable

必选

缺省情况下,DHCPv6服务器功能处于关闭状态

 

2.2.4  创建前缀池

前缀池用来定义一个前缀范围。

表2-3 创建前缀池

操作

命令

说明

进入系统视图

system-view

-

创建前缀池

ipv6 dhcp prefix-pool prefix-pool-number prefix prefix/prefix-len assign-len assign-len

必选

缺省情况下,设备上不存在任何前缀池

 

2.2.5  配置DHCPv6地址池

DHCPv6地址池中包括了供分配的前缀和网络配置参数等信息,如DNS服务器地址、域名、SIP服务器地址、SIP服务器域名和AFTR(Address Family Transition Router,地址族转换路由器)地址。DHCPv6服务器从地址池中选择前缀和其他网络配置参数,分配给客户端。

表2-4 配置DHCPv6地址池

操作

命令

说明

进入系统视图

system-view

-

创建DHCPv6地址池,并进入DHCPv6地址池视图

ipv6 dhcp pool pool-number

必选

缺省情况下,设备上不存在任何DHCPv6地址池

配置静态绑定前缀

static-bind prefix prefix/prefix-len duid duid [ iaid iaid ] [ preferred-lifetime preferred-lifetime valid-lifetime valid-lifetime ]

二者至少选择其一

缺省情况下,没有指定地址池分配的前缀

配置地址池引用前缀池

prefix-pool prefix-pool-number [ preferred-lifetime preferred-lifetime valid-lifetime valid-lifetime ]

配置为客户端分配的DNS服务器地址

dns-server ipv6-address

可选

缺省情况下,没有指定为客户端分配的DNS服务器地址

配置为客户端分配的域名

domain-name domain-name

可选

缺省情况下,没有指定为客户端分配的域名

配置为客户端分配的SIP服务器地址或域名

sip-server { address ipv6-address | domain-name domain-name }

可选

缺省情况下,没有指定为客户端分配的SIP服务器地址或域名

配置为客户端分配的AFTR地址

ds-lite address ipv6-address

可选

缺省情况下,没有指定为客户端分配的AFTR地址

 

l          一个地址池最多可以引用一个前缀池。

l          地址池可以引用并不存在的前缀池,但是,此时设备无法从该地址池中动态选择前缀分配给客户端。只有创建该前缀池后,才能支持前缀的动态选择。

l          不允许通过重复执行prefix-pool命令的方式修改地址池引用的前缀池、前缀的首选生命期和有效生命期。只有取消当前地址池引用的前缀池后,才能引用其他的前缀池,或修改首选生命期和有效生命期。

l          一个地址池下最多可以配置8个DNS服务器地址、1个域名、8个SIP服务器地址和8个SIP服务器域名。

 

2.2.6  配置接口引用地址池

在接口上引用地址池后,该接口将具有DHCPv6服务器功能,即从该接口接收到客户端的请求后,设备将从该接口应用的地址池中选择前缀和其他网络配置参数,分配给客户端。

表2-5 配置接口引用地址池

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口引用DHCPv6地址池

ipv6 dhcp server apply pool pool-number [ allow-hint | preference preference-value | rapid-commit ] *

必选

缺省情况下,接口没有引用DHCPv6地址池

 

l          一个接口不能同时作为DHCPv6服务器和DHCPv6中继。

l          建议不要在一个接口上同时配置DHCPv6服务器和DHCPv6客户端功能。

l          一个接口上最多只能引用一个地址池。

l          接口可以引用并不存在的地址池,但是,此时该接口无法为客户端分配前缀等信息。只有创建该地址池后,才能为客户端分配前缀等信息。

l          不允许通过重复执行ipv6 dhcp server apply pool命令的方式修改接口引用的地址池和服务器优先级等参数。只有取消当前接口引用的地址池后,才能引用其他的地址池,或修改服务器优先级等参数。

 

2.3  DHCPv6服务器显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后DHCPv6服务器的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除DHCPv6服务器的统计信息。

表2-6 DHCPv6服务器显示和维护

操作

命令

显示本设备DUID

display ipv6 dhcp duid [ | { begin | exclude | include } regular-expression ]

显示DHCPv6地址池的信息

display ipv6 dhcp pool [ pool-number ] [ | { begin | exclude | include } regular-expression ]

显示前缀池的信息

display ipv6 dhcp prefix-pool [ prefix-pool-number ] [ | { begin | exclude | include } regular-expression ]

显示DHCPv6服务器的配置信息

display ipv6 dhcp server [ interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ]

显示前缀租约信息

display ipv6 dhcp server pd-in-use { all | pool pool-number | prefix prefix/prefix-len | prefix-pool prefix-pool-number } [ | { begin | exclude | include } regular-expression ]

显示DHCPv6服务器的报文统计信息

display ipv6 dhcp server statistics [ | { begin | exclude | include } regular-expression ]

清除DHCPv6服务器的前缀租约信息

reset ipv6 dhcp server pd-in-use { all | pool pool-number | prefix prefix/prefix-len }

清除DHCPv6服务器的报文统计信息

reset ipv6 dhcp server statistics

 

2.4  DHCPv6服务器典型配置举例

1. 组网需求

DHCPv6客户端从DHCPv6服务器获取IPv6地址前缀,以及网络配置参数:DNS服务器地址、域名、SIP服务器地址和SIP服务器域名。其中:

l              Switch作为DHCPv6服务器,地址为1::1/64。

l              DHCPv6服务器为DUID为00030001CA0006A40000的客户端固定分配前缀2001:0410:0201::/48;为其他客户端分配2001:0410::/48~2001:0410:FFFF::/48之间除2001:0410:0201::/48外的前缀。

l              DNS服务器地址为2:2::3。

l              DHCPv6客户端所属域的域名为aaa.com。

l              SIP服务器地址为2:2::4,域名为bbb.com。

2. 配置思路

在DHCPv6服务器上需要进行如下配置:

l              使能IPv6报文转发功能和DHCPv6服务器功能。

l              创建前缀池。为了满足为客户端分配2001:0410::/48~2001:0410:FFFF::/48范围的前缀这一需求,需要配置前缀池包含的前缀为2001:0410::/32,分配的前缀长度为48。

l              创建地址池。在地址池配置静态绑定前缀,引用前缀池,并配置DNS服务器地址等参数。

l              在连接DHCPv6客户端的接口上引用地址池。

3. 组网图

图2-3 DHCPv6服务器配置组网图

 

4. 配置步骤

(1)        配置DHCPv6服务器

# 使能IPv6报文转发功能及DHCPv6服务器功能。

<Switch> system-view

[Switch] ipv6

[Switch] ipv6 dhcp server enable

# 配置VLAN接口2的IPv6地址。

[Switch] interface vlan-interface 2

[Switch-Vlan-interface2] ipv6 address 1::1/64

[Switch-Vlan-interface2] quit

# 配置前缀池1,包含的前缀为2001:0410::/32,分配的前缀长度为48。

[Switch] ipv6 dhcp prefix-pool 1 prefix 2001:0410::/32 assign-len 48

# 创建地址池1。

[Switch] ipv6 dhcp pool 1

# 配置地址池1引用已存在的前缀池1,并设置首选生命期为1天,有效生命期为3天。

[Switch-ipv6-dhcp-pool-1] prefix-pool 1 preferred-lifetime 86400 valid-lifetime 259200

# 在地址池1中配置静态绑定前缀:绑定的前缀为2001:0410:0201::/48,绑定的客户端DUID为00030001CA0006A40000,并设置首选生命期为1天,有效生命期为3天。

[Switch-ipv6-dhcp-pool-1] static-bind prefix 2001:0410:0201::/48 duid 00030001CA0006A40000 preferred-lifetime 86400 valid-lifetime 259200

# 配置为客户端分配的DNS服务器地址为2:2::3。

[Switch-ipv6-dhcp-pool-1] dns-server 2:2::3

# 配置为客户端分配的域名为aaa.com。

[Switch-ipv6-dhcp-pool-1] domain-name aaa.com

# 配置为客户端分配的SIP服务器地址为2:2::4,域名为bbb.com。

[Switch-ipv6-dhcp-pool-1] sip-server address 2:2::4

[Switch-ipv6-dhcp-pool-1] sip-server domain-name bbb.com

[Switch-ipv6-dhcp-pool-1] quit

# 在VLAN接口2上引用已存在的地址池1,使能期望前缀分配和前缀快速分配功能,并将优先级设置为最高。

[Switch] interface vlan-interface 2

[Switch-Vlan-interface2] ipv6 dhcp server apply pool 1 allow-hint preference 255 rapid-commit

(2)        验证配置结果

# 完成上述配置后,查看VLAN接口2上的DHCPv6服务器配置信息。

[Switch-Vlan-interface2] display ipv6 dhcp server interface vlan-interface 2

Using pool: 1

Preference value: 255

Allow-hint: Enabled

Rapid-commit: Enabled

# 显示地址池1的信息。

[Switch-Vlan-interface2] display ipv6 dhcp pool 1

DHCPv6 pool: 1

  Static bindings:

    DUID: 00030001CA0006A40000

    IAID: A1A1A1A1

    Prefix: 2001:410:201::/48

      preferred lifetime 86400, valid lifetime 2592000

  Prefix pool: 1

    preferred lifetime 86400, valid lifetime 2592000

  DNS server address:

    2:2::3

  Domain name: aaa.com

  SIP server address:

    2:2::4

  SIP server domain name:

    bbb.com

# 显示前缀池1的信息。

[Switch-Vlan-interface2] display ipv6 dhcp prefix-pool 1

Prefix: 2001:410::/32

Assigned length: 48

Total prefix number: 65536

Available: 65535

In-use: 0

Static: 1

# DUID为00030001CA0006A40000的客户端获取IPv6前缀后,显示前缀租约信息。

[Switch-Vlan-interface2] display ipv6 dhcp server pd-in-use all

Total number = 1

Prefix                                      Type      Pool Lease-expiration

2001:410:201::/48                           Static(C) 1    Jul 10 2009 19:45:01

# 其他客户端获取IPv6前缀后,显示前缀租约信息。

[Switch-Vlan-interface2] display ipv6 dhcp server pd-in-use all

Total number = 2

Prefix                                      Type      Pool Lease-expiration

2001:410:201::/48                           Static(C) 1    Jul 10 2009 19:45:01

2001:410::/48                               Auto(C)   1    Jul 10 2009 20:44:05

 


3 DHCPv6中继配置

3.1  DHCPv6中继简介

3.1.1  应用环境

图3-1 DHCPv6中继应用组网图

 

DHCPv6客户端通常通过链路本地范围的组播地址与DHCPv6服务器通信,以获取IPv6地址和其他网络配置参数。如图3-1所示,服务器和客户端不在同一个链路范围内时,服务器和客户端无法直接通信,需要通过DHCPv6中继来转发报文。部署DHCPv6中继可以避免在每个链路范围内都部署DHCPv6服务器,既节省了成本,又便于进行集中管理。

3.1.2  DHCPv6中继的工作过程

图3-2 DHCPv6中继的工作过程

 

图3-2所示,以交互两个消息的快速分配过程为例,DHCPv6客户端通过DHCPv6中继,从DHCPv6服务器获取IPv6地址和其他网络配置参数的过程为:

(1)        DHCPv6客户端向所有DHCPv6服务器和中继的组播地址FF02::1:2发送携带Rapid Commit选项的Solicit消息;

(2)        DHCPv6中继接收到Solicit消息后,将其封装在Relay-forward报文的中继消息选项(Relay Message Option)中,并将Relay-forward报文发送给DHCPv6服务器;

(3)        DHCPv6服务器从Relay-forward报文中解析出客户端的Solicit消息,为客户端选取IPv6地址和其他参数,构造Reply消息,将Reply消息封装在Relay-reply报文的中继消息选项中,并将Relay-reply报文发送给DHCPv6中继;

(4)        DHCPv6中继从Relay-reply报文中解析出服务器的Reply消息,转发给DHCPv6客户端,以便DHCPv6客户端根据DHCPv6服务器分配的IPv6地址和其他参数进行网络配置。

3.2  配置DHCPv6中继

工作在DHCPv6中继模式的接口接收到DHCPv6客户端发来的报文后,将其封装在Relay-forward报文中,并发送给指定的DHCPv6服务器,由DHCPv6服务器为客户端分配IPv6地址和其他网络配置参数。

3.2.1  配置准备

配置DHCPv6中继之前,需要通过系统视图下的ipv6命令使能IPv6报文的转发功能。

3.2.2  配置步骤

表3-1 配置DHCPv6中继

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口工作在DHCPv6中继模式,并指定DHCPv6服务器的地址

ipv6 dhcp relay server-address ipv6-address [ interface interface-type interface-number ]

必选

缺省情况下,接口未工作在DHCPv6中继模式,也未指定任何DHCPv6服务器

 

l          通过多次执行ipv6 dhcp relay server-address命令可以指定多个DHCPv6服务器,一个接口下最多可以指定8个DHCPv6服务器。DHCPv6中继接收到DHCPv6客户端报文后,将其转发给所有的DHCPv6服务器。

l          如果指定的DHCPv6服务器地址为链路本地地址或链路范围的组播地址,则必须通过ipv6 dhcp relay server-address命令的interface参数指定出接口,否则报文可能会无法到达服务器。

l          通过undo ipv6 dhcp relay server-address命令删除接口上指定的全部DHCPv6服务器后,该接口不再工作在DHCPv6中继模式。

l          一个接口不能同时作为DHCPv6中继和DHCPv6服务器。

l          建议不要在一个接口上同时配置DHCPv6中继和DHCPv6客户端功能。

 

3.3  DHCPv6中继显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后DHCPv6中继的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除DHCPv6中继的统计信息。

表3-2 DHCPv6中继显示和维护

操作

命令

显示本设备DUID

display ipv6 dhcp duid [ | { begin | exclude | include } regular-expression ]

显示DHCPv6中继指定的DHCPv6服务器地址信息

display ipv6 dhcp relay server-address { all | interface interface-type interface-number } [ | { begin | exclude | include } regular-expression ]

显示DHCPv6中继的报文统计信息

display ipv6 dhcp relay statistics [ | { begin | exclude | include } regular-expression ]

清除DHCPv6中继的报文统计信息

reset ipv6 dhcp relay statistics

 

3.4  DHCPv6中继典型配置举例

1. 组网需求

l              DHCPv6客户端所在网络地址为1::/64,DHCPv6服务器的地址为2::2/64。客户端和服务器不在同一个链路,需要通过DHCPv6中继转发报文。

l              Switch A作为DHCPv6中继,为客户端和服务器转发报文。

l              Switch A同时作为1::/64网络的网关设备,通过RA消息中的M标志位和O标志位指定该网络中的主机通过DHCPv6获取IPv6地址和其他网络配置参数。

2. 组网图

图3-3 DHCPv6中继组网图

 

3. 配置步骤

(1)        配置Switch A作为DHCPv6中继

# 使能IPv6报文转发功能。

<SwitchA> system-view

[SwitchA] ipv6

# 配置VLAN接口2和VLAN接口3的IPv6地址。

[SwitchA] interface vlan-interface 2

[SwitchA-Vlan-interface2] ipv6 address 2::1 64

[SwitchA-Vlan-interface2] quit

[SwitchA] interface vlan-interface 3

[SwitchA-Vlan-interface3] ipv6 address 1::1 64

# 配置VLAN接口3工作在DHCPv6中继模式,并指定DHCPv6服务器地址。

[SwitchA-Vlan-interface3] ipv6 dhcp relay server-address 2::2

(2)        配置Switch A作为网关

# 配置发布RA消息,并配置M和O标志位。

[SwitchA-Vlan-interface3] undo ipv6 nd ra halt

[SwitchA-Vlan-interface3] ipv6 nd autoconfig managed-address-flag

[SwitchA-Vlan-interface3] ipv6 nd autoconfig other-flag

(3)        验证配置结果

# 完成上述配置后,查看DHCPv6服务器的地址信息。

[SwitchA-Vlan-interface3] display ipv6 dhcp relay server-address all

Interface: Vlan3

Server address(es)                             Output Interface

2::2

# 查看DHCPv6中继转发报文的统计信息。

[SwitchA-Vlan-interface3] display ipv6 dhcp relay statistics

Packets dropped               :  0

    Error                     :  0

    Excess of rate limit      :  0

Packets received              :  14

    SOLICIT                   :  0

    REQUEST                   :  0

    CONFIRM                   :  0

    RENEW                     :  0

    REBIND                    :  0

    RELEASE                   :  0

    DECLINE                   :  0

    INFORMATION-REQUEST       :  7

    RELAY-FORWARD             :  0

    RELAY-REPLY               :  7

Packets sent                  :  14

    ADVERTISE                 :  0

    RECONFIGURE               :  0

    REPLY                     :  7

    RELAY-FORWARD             :  7

    RELAY-REPLY               :  0

 


4 DHCPv6客户端配置

4.1  DHCPv6客户端简介

设备作为DHCPv6客户端时,只支持DHCPv6无状态配置,即只能通过DHCPv6获取除地址/前缀外的其他网络配置参数,不能获取IPv6地址和前缀。

DHCPv6客户端通过地址无状态自动配置功能成功获取IPv6地址后,如果接收到的RA报文中M标志位为0、O标志位为1,则设备会自动启动DHCPv6无状态配置功能,以获取除地址/前缀外的其他网络配置参数。

4.2  配置DHCPv6客户端

4.2.1  配置准备

为了使客户端能够通过DHCPv6无状态配置成功获取网络配置参数,需要确保DHCPv6服务器可用。

4.2.2  配置步骤

表4-1 配置DHCPv6客户端

操作

命令

说明

进入系统视图

system-view

-

使能IPv6报文转发功能

ipv6

必选

进入接口视图

interface interface-type interface-number

-

使能IPv6地址无状态自动配置功能

ipv6 address auto

必选

 

l          ipv6 address auto命令的详细介绍请参见“三层技术-IP业务命令参考”中的“IPv6基础”。

l          建议不要在一个接口上同时配置DHCPv6客户端和DHCPv6服务器功能,也不要在一个接口上同时配置DHCPv6客户端和DHCPv6中继功能。

 

4.3  DHCPv6客户端显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后DHCPv6客户端的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除DHCPv6客户端的统计信息。

表4-2 DHCPv6客户端显示和维护

操作

命令

显示DHCPv6客户端的信息

display ipv6 dhcp client [ interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ]

显示DHCPv6客户端的统计信息

display ipv6 dhcp client statistics [ interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ]

显示本设备DUID

display ipv6 dhcp duid [ | { begin | exclude | include } regular-expression ]

清除DHCPv6客户端的统计信息

reset ipv6 dhcp client statistics [ interface interface-type interface-number ]

 

4.4  DHCPv6无状态配置典型配置举例

1. 组网需求

l              Switch A通过DHCPv6无状态配置获取域名服务器、域名等信息;

l              Switch B作为网关,周期性发布RA消息。

2. 组网图

图4-1 DHCPv6无状态配置组网图

 

3. 配置步骤

(1)        配置网关Switch B

# 使能IPv6报文转发功能。

<SwitchB> system-view

[SwitchB] ipv6

# 配置VLAN接口2的IPv6地址。

[SwitchB] interface vlan-interface 2

[SwitchB-Vlan-interface2] ipv6 address 1::1 64

# 配置RA消息中O标志位为1。

[SwitchB-Vlan-interface2] ipv6 nd autoconfig other-flag

# 配置允许发送RA消息。

[SwitchB-Vlan-interface2] undo ipv6 nd ra halt

(2)        配置DHCPv6客户端Switch A

# 使能IPv6报文转发功能。

<SwitchA> system-view

[SwitchA] ipv6

# 在VLAN接口2上使能IPv6地址无状态自动配置功能。

[SwitchA] interface vlan-interface 2

[SwitchA-Vlan-interface2] ipv6 address auto

执行此命令后,如果VLAN接口2下没有配置地址,Switch A会自动生成本地链路地址,并主动发送RS(Router Solicitation,路由器请求)报文,请求网关Switch B立即回应RA报文。

4. 验证配置结果

如果收到的RA报文中M标志位为0、O标志位为1,Switch A就会启动DHCPv6客户端无状态配置。

# 可以通过display ipv6 dhcp client命令查看当前客户端的配置信息,如果从服务器成功获取了配置,将会有类似的显示信息。

[SwitchA-Vlan-interface2] display ipv6 dhcp client interface vlan-interface 2

Vlan-interface2 is in stateless DHCPv6 client mode

State is OPEN

Preferred Server:

    Reachable via address     :  FE80::213:7FFF:FEF6:C818

    DUID                      :  0003000100137ff6c818

    DNS servers               :  1:2:3::5

                                 1:2:4::7

    Domain names              :  abc.com

                                 Sysname.com

# 可以通过display ipv6 dhcp client statistics命令查看当前客户端的统计信息。

[SwitchA-Vlan-interface2] display ipv6 dhcp client statistics

Interface                     :  Vlan-interface2

Packets Received              :  1

        Reply                 :  1

        Advertise             :  0

        Reconfigure           :  0

        Invalid               :  0

Packets Sent                  :  5

        Solicit               :  0

        Request               :  0

        Confirm               :  0

        Renew                 :  0

        Rebind                :  0

        Information-request   :  5

        Release               :  0

        Decline               :  0

 


5 DHCPv6 Snooping配置

l          设备只有位于DHCPv6客户端与DHCPv6服务器之间,或DHCPv6客户端与DHCPv6中继之间时,DHCPv6 Snooping功能配置后才能正常工作;设备位于DHCPv6服务器与DHCPv6中继之间时,DHCPv6 Snooping功能配置后不能正常工作。

l          DHCPv6 Snooping中对于接口的相关配置,目前只能在二层以太网端口或二层聚合接口上进行。关于聚合接口的详细介绍,请参见“二层技术-以太网交换配置指导”中的“以太网链路聚合”。

 

5.1  DHCPv6 Snooping简介

DHCPv6 Snooping是DHCPv6的一种安全特性,具有如下功能:

l              保证客户端从合法的服务器获取IPv6地址。

l              记录DHCPv6客户端IPv6地址与MAC地址的对应关系。

1. 保证客户端从合法的服务器获取IPv6地址

网络中如果存在私自架设的伪DHCPv6服务器,则可能导致DHCPv6客户端获取错误的IPv6地址和网络配置参数,无法正常通信。为了使DHCPv6客户端能通过合法的DHCPv6服务器获取IPv6地址,DHCPv6 Snooping安全机制允许将端口设置为信任端口(Trusted Port)和不信任端口(Untrusted Port):

l              信任端口正常转发接收到的DHCPv6报文。

l              不信任端口接收到DHCPv6服务器发送的应答报文后,丢弃该报文。

图5-1 信任端口和非信任端口

 

连接DHCPv6服务器、DHCPv6中继或其他DHCPv6 Snooping设备的端口需要设置为信任端口,其他端口设置为不信任端口,从而保证DHCPv6客户端只能从合法的DHCPv6服务器获取地址,私自架设的伪DHCPv6服务器无法为DHCPv6客户端分配地址。如图5-1中,将连接DHCPv6服务器的端口设置为信任端口,其他端口设置为非信任端口。

2. 记录DHCPv6客户端IPv6地址与MAC地址的对应关系

DHCPv6 Snooping通过监听DHCPv6报文,记录DHCPv6 Snooping表项,其中包括客户端的MAC地址、获取到的IPv6地址、与DHCPv6客户端连接的端口及该端口所属的VLAN等信息。网络管理员可以通过display ipv6 dhcp snooping user-binding命令查看客户端获取的IPv6地址信息,以便了解用户上网时所用的IPv6地址,并对其进行管理和监控。

5.2  使能DHCPv6 Snooping

使能DHCPv6 Snooping功能,必须首先在系统视图下全局使能DHCPv6 Snooping功能。全局使能DHCPv6 Snooping功能,并正确地配置信任端口和非信任端口后,可以保证客户端从合法的服务器获取IPv6地址。但是,此时不会记录DHCPv6 Snooping表项。

如果需要记录DHCPv6 Snooping表项,则需要在全局使能DHCPv6 Snooping功能的基础上,在VLAN视图下使能VLAN内的DHCPv6 Snooping功能。使能VLAN内的DHCPv6 Snooping功能,还可以实现DHCPv6 Snooping设备接收到该VLAN内客户端发送的请求报文后,只通过该VLAN内的信任端口转发该请求报文,不会通过其他非信任端口转发请求报文,以减轻网络负担。

表5-1 使能DHCPv6 Snooping

操作

命令

说明

进入系统视图

system-view

-

全局使能DHCPv6 Snooping功能

ipv6 dhcp snooping enable

必选

缺省情况下,DHCPv6 Snooping功能处于关闭状态

进入VLAN视图

vlan vlan-id

-

在VLAN内使能DHCPv6 Snooping功能

ipv6 dhcp snooping vlan enable

可选

缺省情况下,VLAN内DHCPv6 Snooping功能处于关闭状态

 

5.3  配置DHCPv6 Snooping信任端口

DHCPv6 Snooping将端口分为两种:

l              信任端口:正常转发接收到的DHCPv6报文。

l              不信任端口:接收到DHCPv6服务器发送的应答报文后,丢弃该报文。

使能VLAN内的DHCPv6 Snooping功能,DHCPv6 Snooping设备接收到该VLAN内客户端发送的请求报文后,只通过该VLAN内的信任端口转发该请求报文,不会通过其他非信任端口转发请求报文,以减轻网络负担。

表5-2 配置DHCPv6 Snooping信任端口

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置端口为信任端口

ipv6 dhcp snooping trust

必选

缺省情况下,全局使能DHCPv6 Snooping功能后,设备的所有端口均为不信任端口

 

l          为了使DHCPv6客户端能从合法的DHCPv6服务器获取IPv6地址,必须将与合法DHCPv6服务器相连的端口设置为信任端口,且设置的信任端口和与DHCPv6客户端相连的端口必须在同一个VLAN内。

l          如果二层以太网端口加入了聚合组,则加入聚合组之前和加入聚合组之后在该接口上进行的DHCPv6 Snooping相关配置不会生效;该接口退出聚合组后,DHCPv6 Snooping的配置才会生效。

 

5.4  配置接口动态学习DHCPv6 Snooping表项的最大数目

通过本配置可以限制接口动态学习DHCPv6 Snooping表项的最大数目,以防止接口学习到大量DHCPv6 Snooping表项,占用过多地系统资源。

表5-3 配置接口动态学习DHCPv6 Snooping表项的最大数目

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口动态学习DHCPv6 Snooping表项的最大数目

ipv6 dhcp snooping max-learning-num number

可选

缺省情况下,不限制接口动态学习DHCPv6 Snooping表项的数目

 

5.5  DHCPv6 Snooping显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示DHCPv6 Snooping的配置情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除DHCPv6 Snooping表项信息。

表5-4 DHCPv6 Snooping显示和维护

操作

命令

显示DHCPv6 Snooping信任端口信息

display ipv6 dhcp snooping trust [ | { begin | exclude | include } regular-expression ]

显示DHCPv6 Snooping表项信息

display ipv6 dhcp snooping user-binding { ipv6-address | dynamic } [ | { begin | exclude | include } regular-expression ]

清除DHCPv6 Snooping表项

reset ipv6 dhcp snooping user-binding { ipv6-address | dynamic }

 

5.6  DHCPv6 Snooping典型配置举例

5.6.1  组网需求

Switch通过以太网端口GigabitEthernet1/0/1连接到DHCPv6服务器,通过以太网端口GigabitEthernet1/0/2、GigabitEthernet1/0/3连接到DHCPv6客户端。GigabitEthernet1/0/1、GigabitEthernet1/0/2和GigabitEthernet1/0/3都属于VLAN 2。

要求:

l              与DHCPv6服务器相连的端口可以转发DHCPv6服务器的响应报文,而其他端口不转发DHCPv6服务器的响应报文。

l              记录DHCPv6客户端IPv6地址及MAC地址的绑定关系。

5.6.2  组网图

图5-2 DHCPv6 Snooping组网示意图

 

5.6.3  配置步骤

# 全局使能DHCPv6 Snooping功能。

<Switch> system-view

[Switch] ipv6 dhcp snooping enable

# 将端口GigabitEthernet1/0/1、GigabitEthernet1/0/2和GigabitEthernet1/0/3加入VLAN 2。

[Switch] vlan 2

[Switch-vlan2] port GigabitEthernet 1/0/1 GigabitEthernet 1/0/2 GigabitEthernet 1/0/3

# 在VLAN 2内使能DHCPv6 Snooping功能。

[Switch-vlan2] ipv6 dhcp snooping vlan enable

[Switch] quit

# 配置GigabitEthernet1/0/1端口为信任端口。

[Switch] interface GigabitEthernet 1/0/1

[Switch-GigabitEthernet1/0/1] ipv6 dhcp snooping trust

# 验证配置结果。

配置完成后,通过GigabitEthernet1/0/2连接DHCPv6客户端、GigabitEthernet1/0/1连接DHCPv6服务器,则可以发现DHCPv6客户端能够从DHCPv6服务器获取IPv6地址。通过display ipv6 dhcp snooping user-binding命令可以查看生成的DHCPv6 Snooping表项。如果GigabitEthernet1/0/3连接私自架设的伪DHCPv6服务器,则该服务器无法为DHCPv6客户端分配IPv6地址。

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

联系我们