09-DHCPv6配置
本章節下載: 09-DHCPv6配置 (274.52 KB)
目 錄
DHCPv6(Dynamic Host Configuration Protocol for IPv6,支持IPv6的動態主機配置協議)是針對IPv6編址方案設計的,為主機分配IPv6前綴、IPv6地址和其他網絡配置參數的協議。
與其他IPv6地址分配方式(手工配置、通過路由器公告消息中的網絡前綴無狀態自動配置等)相比,DHCPv6具有以下優點:
l 更好地控製地址的分配。通過DHCPv6不僅可以記錄為主機分配的地址,還可以為特定主機分配特定的地址,以便於網絡管理。
l 為設備分配前綴,便於全網絡的自動配置和管理。
l 除了IPv6前綴、IPv6地址外,還可以為主機分配DNS服務器、域名等網絡配置參數。
DHCPv6服務器為客戶端分配地址/前綴的過程分為兩類:
l 交互兩個消息的快速分配過程
l 交互四個消息的分配過程
圖1-1 地址/前綴快速分配過程

如圖1-1所示,地址/前綴快速分配過程為:
(1) DHCPv6客戶端在發送的Solicit消息中攜帶Rapid Commit選項,標識客戶端希望服務器能夠快速為其分配地址/前綴和網絡配置參數;
(2) 如果DHCPv6服務器支持快速分配過程,則直接返回Reply消息,為客戶端分配IPv6地址/前綴和其他網絡配置參數。如果DHCPv6服務器不支持快速分配過程,則采用“1.2.2 交互四個消息的分配過程”為客戶端分配IPv6地址/前綴和其他網絡配置參數。
交互四個消息的分配過程如圖1-2所示。

交互四個消息分配過程的簡述如表1-1。
|
步驟 |
發送的消息 |
說明 |
|
(1) |
Solicit |
DHCPv6客戶端發送該消息,請求DHCPv6服務器為其分配IPv6地址/前綴和網絡配置參數 |
|
(2) |
Advertise |
如果Solicit消息中沒有攜帶Rapid Commit選項,或Solicit消息中攜帶Rapid Commit選項,但服務器不支持快速分配過程,則DHCPv6服務器回複該消息,通知客戶端可以為其分配的地址/前綴和網絡配置參數 |
|
(3) |
Request |
如果DHCPv6客戶端接收到多個服務器回複的Advertise消息,則根據消息接收的先後順序、服務器優先級等,選擇其中一台服務器,並向該服務器發送Request消息,請求服務器確認為其分配地址/前綴和網絡配置參數 |
|
(4) |
Reply |
DHCPv6服務器回複該消息,確認將地址/前綴和網絡配置參數分配給客戶端使用 |
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基礎”。
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-5 DHCPv6無狀態配置工作過程

如圖1-5所示,DHCPv6無狀態配置的具體過程為:
(1) 客戶端以組播的方式向DHCPv6服務器發送Information-request報文,該報文中攜帶Option Request選項,指定客戶端需要從服務器獲取的配置參數。
(2) 服務器收到Information-request報文後,為客戶端分配網絡配置參數,並單播發送Reply報文將網絡配置參數返回給客戶端。
(3) 客戶端檢查Reply報文中提供的信息,如果與Information-request報文中請求的配置參數相符,則按照Reply報文中提供的參數進行網絡配置;否則,忽略該參數。如果接收到多個Reply報文,客戶端將選擇最先收到的Reply報文,並根據該報文中提供的參數完成客戶端無狀態配置。
與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-1 DHCPv6中繼應用組網圖

DHCPv6客戶端通常通過鏈路本地範圍的組播地址與DHCPv6服務器通信,以獲取IPv6地址和其他網絡配置參數。如圖2-1所示,服務器和客戶端不在同一個鏈路範圍內時,服務器和客戶端無法直接通信,需要通過DHCPv6中繼來轉發報文。部署DHCPv6中繼可以避免在每個鏈路範圍內都部署DHCPv6服務器,既節省了成本,又便於進行集中管理。
圖2-2 DHCPv6中繼的工作過程

如圖2-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地址和其他參數進行網絡配置。
工作在DHCPv6中繼模式的接口接收到DHCPv6客戶端發來的報文後,將其封裝在Relay-forward報文中,並發送給指定的DHCPv6服務器,由DHCPv6服務器為客戶端分配IPv6地址和其他網絡配置參數。
配置DHCPv6中繼之前,需要通過係統視圖下的ipv6命令使能IPv6報文的轉發功能。
表2-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客戶端功能。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後DHCPv6中繼的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除DHCPv6中繼的統計信息。
表2-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 |
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 DHCPv6中繼組網圖

(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
設備作為DHCPv6客戶端時,隻支持DHCPv6無狀態配置,即隻能通過DHCPv6獲取除地址/前綴外的其他網絡配置參數,不能獲取IPv6地址和前綴。
DHCPv6客戶端通過地址無狀態自動配置功能成功獲取IPv6地址後,如果接收到的RA報文中M標誌位為0、O標誌位為1,則設備會自動啟動DHCPv6無狀態配置功能,以獲取除地址/前綴外的其他網絡配置參數。
為了使客戶端能夠通過DHCPv6無狀態配置成功獲取網絡配置參數,需要確保DHCPv6服務器可用。
表3-1 配置DHCPv6客戶端
|
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
使能IPv6報文轉發功能 |
ipv6 |
必選 |
|
進入接口視圖 |
interface interface-type interface-number |
- |
|
使能IPv6地址無狀態自動配置功能 |
ipv6 address auto |
必選 |
![]()
l ipv6 address auto命令的詳細介紹請參見“三層技術-IP業務命令參考”中的“IPv6基礎”。
l 建議不要在一個接口上同時配置DHCPv6客戶端和DHCPv6中繼功能。
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後DHCPv6客戶端的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除DHCPv6客戶端的統計信息。
表3-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 ] |
l Switch A通過DHCPv6無狀態配置獲取域名服務器、域名等信息;
l Switch B作為網關,周期性發布RA消息。
圖3-1 DHCPv6無狀態配置組網圖

(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報文。
如果收到的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
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!
