• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

05-三層技術-IP業務配置指導

目錄

13-IPv6基礎配置

本章節下載 13-IPv6基礎配置  (688.42 KB)

13-IPv6基礎配置

  錄

1 IPv6基礎

1.1 IPv6簡介

1.1.1 IPv6協議特點

1.1.2 IPv6地址介紹

1.1.3 IPv6 PMTU發現

1.1.4 IPv6過渡技術介紹

1.1.5 協議規範

1.2 IPv6基礎配置任務簡介

1.3 配置IPv6全球單播地址

1.3.1 功能簡介

1.3.2 配置限製和指導

1.3.3 采用EUI-64格式形成IPv6地址

1.3.4 手工指定IPv6地址

1.3.5 無狀態自動配置IPv6地址

1.3.6 引用前綴生成接口上的IPv6地址,並將此前綴分配給終端設備

1.4 配置IPv6鏈路本地地址

1.4.1 功能簡介

1.4.2 配置限製和指導

1.4.3 配置自動生成鏈路本地地址

1.4.4 手工指定接口的鏈路本地地址

1.5 配置IPv6任播地址

1.6 配置PMTU發現

1.6.1 配置接口MTU

1.6.2 配置指定地址的靜態PMTU

1.6.3 配置PMTU老化時間

1.7 配置ICMPv6報文發送功能

1.7.1 關閉接收指定類型的ICMPv6報文功能

1.7.2 關閉發送指定類型的ICMPv6報文功能

1.7.3 配置發送ICMPv6差錯報文對應的令牌桶容量和令牌刷新周期

1.7.4 配置允許回複組播形式的Echo request報文

1.7.5 配置ICMPv6目的不可達差錯報文發送功能

1.7.6 配置ICMPv6超時差錯報文發送功能

1.7.7 配置ICMPv6重定向報文發送功能

1.7.8 配置設備主動發送的ICMPv6報文的源地址

1.7.9 配置設備發送ICMPv6應答報文使用的源地址

1.8 開啟三層報文統計功能

1.9 開啟IPv6分片報文本地重組功能

1.10 IPv6基礎顯示和維護

1.11 IPv6基礎典型配置舉例

1.11.1 IPv6基本組網配置舉例

2 IPv6鄰居發現

2.1 IPv6鄰居發現簡介

2.1.1 IPv6鄰居發現使用的ICMPv6消息

2.1.2 地址解析

2.1.3 驗證鄰居是否可達

2.1.4 重複地址檢測

2.1.5 路由器發現/前綴發現及地址無狀態自動配置

2.1.6 重定向功能

2.1.7 協議規範

2.2 IPv6鄰居發現配置任務簡介

2.3 配置靜態鄰居表項

2.4 配置接口上允許動態學習的鄰居的最大個數

2.5 開啟接口從未經請求的NA報文中學習鄰居信息的功能

2.6 配置STALE狀態ND表項的老化時間

2.7 配置鏈路本地ND表項資源占用最小化

2.8 配置設備的跳數限製

2.9 配置允許發布RA消息及相關參數

2.9.1 RA消息及相關參數介紹

2.9.2 配置限製和指導

2.9.3 配置允許發布RA消息

2.9.4 配置RA消息中的常用參數

2.9.5 配置RA消息中的DNS服務器信息

2.9.6 配置RA消息中的DNS域名後綴信息

2.9.7 開啟RA消息中的DNS信息抑製功能

2.10 配置重複地址檢測時發送鄰居請求消息的次數

2.11 配置IPv6地址衝突自恢複功能

2.12 配置VLAN內的ND Snooping功能

2.12.1 功能簡介

2.12.2 配置ND Snooping表項學習功能

2.12.3 配置設備支持學習的ND Snooping表項最大個數

2.12.4 配置ND Snooping表項的其他參數

2.13 配置VXLAN內的ND Snooping功能

2.13.1 功能簡介

2.13.2 配置步驟

2.14 配置ND Proxy功能

2.14.1 功能簡介

2.14.2 配置普通ND Proxy功能

2.14.3 配置本地ND Proxy功能

2.15 配置接口為用戶側接口或網絡側接口

2.16 配置ND直連路由通告功能

2.16.1 功能簡介

2.16.2 三層接入組網應用

2.16.3 配置步驟

2.17 開啟ND記錄終端用戶間IPv6地址衝突功能

2.18 開啟ND記錄終端用戶端口遷移功能

2.19 開啟ND輸出終端用戶上下線日誌功能

2.20 開啟ND表項下發硬件日誌功能

2.21 與轉發表匹配的ND請求報文的丟棄功能

2.21.1 與轉發表匹配的ND請求報文的丟棄功能簡介

2.21.2 配置與轉發表匹配的ND請求報文的丟棄功能

2.22 ND-Ping

2.22.1 針對IPv6地址的ND-Ping功能

2.22.2 針對MAC地址的ND-Ping功能

2.23 IPv6鄰居發現顯示和維護

2.24 IPv6鄰居發現典型配置舉例

2.24.1 ND Snooping基本組網配置舉例

 


1 IPv6基礎

1.1  IPv6簡介

IPv6(Internet Protocol Version 6,互聯網協議版本6)是網絡層協議的第二代標準協議,也被稱為IPng(IP Next Generation,下一代互聯網協議),它是IETF(Internet Engineering Task Force,互聯網工程任務組)設計的一套規範,是IPv4的升級版本。IPv6和IPv4之間最顯著的區別為:IP地址的長度從32比特增加到128比特。

1.1.1  IPv6協議特點

1. 簡化的報文頭格式

通過將IPv4報文頭中的某些字段裁減或移入到擴展報文頭,減小了IPv6基本報文頭的長度。IPv6使用固定長度的基本報文頭,從而簡化了轉發設備對IPv6報文的處理,提高了轉發效率。盡管IPv6地址長度是IPv4地址長度的四倍,但IPv6基本報文頭的長度隻有40字節,為IPv4報文頭長度(不包括選項字段)的兩倍。

圖1-1 IPv4報文頭和IPv6基本報文頭格式比較

 

2. 充足的地址空間

IPv6的源地址與目的地址長度都是128比特(16字節)。它可以提供超過3.4×1038種可能的地址空間,完全可以滿足多層次的地址劃分需要,以及公有網絡和機構內部私有網絡的地址分配。

3. 層次化的地址結構

IPv6的地址空間采用了層次化的地址結構,有利於路由快速查找,同時可以借助路由聚合,有效減少IPv6路由表占用的係統資源。

4. 地址自動配置

為了簡化主機配置,IPv6支持有狀態地址配置和無狀態地址配置:

·     有狀態地址配置是指從服務器(如DHCPv6服務器)獲取IPv6地址及相關信息,詳細介紹請參見“三層技術-IP業務配置指導”中的“DHCPv6”;

·     無狀態地址配置是指主機根據自己的鏈路層地址及路由器發布的前綴信息自動配置IPv6地址及相關信息。

同時,主機也可根據自己的鏈路層地址及默認前綴(FE80::/10)形成鏈路本地地址,實現與本鏈路上其他主機的通信。

5. 內置安全性

IPv6將IPsec作為它的標準擴展頭,可以提供端到端的安全特性。這一特性也為解決網絡安全問題提供了標準,並提高了不同IPv6應用之間的互操作性。

6. 支持QoS

IPv6報文頭的流標簽(Flow Label)字段實現流量的標識,允許設備對某一流中的報文進行識別並提供特殊處理。

7. 增強的鄰居發現機製

IPv6的鄰居發現協議是通過一組ICMPv6(Internet Control Message Protocol for IPv6,IPv6互聯網控製消息協議)消息實現的,管理著鄰居節點間(即同一鏈路上的節點)信息的交互。它代替了ARP(Address Resolution Protocol,地址解析協議)、ICMPv4路由器發現和ICMPv4重定向消息,並提供了一係列其他功能。

8. 靈活的擴展報文頭

IPv6取消了IPv4報文頭中的選項字段,並引入了多種擴展報文頭,在提高處理效率的同時還大大增強了IPv6的靈活性,為IP協議提供了良好的擴展能力。IPv4報文頭中的選項字段最多隻有40字節,而IPv6擴展報文頭的大小隻受到IPv6報文大小的限製。

1.1.2  IPv6地址介紹

1. IPv6地址表示方式

IPv6地址被表示為以冒號(:)分隔的一連串16比特的十六進製數。每個IPv6地址被分為8組,每組的16比特用4個十六進製數來表示,組和組之間用冒號隔開,比如:2001:0000:130F:0000:0000:09C0:876A:130B。

為了簡化IPv6地址的表示,對於IPv6地址中的“0”可以有下麵的處理方式:

·     每組中的前導“0”可以省略,即上述地址可寫為2001:0:130F:0:0:9C0:876A:130B。

·     如果地址中包含一組或連續多組均為0的組,則可以用雙冒號“::”來代替,即上述地址可寫為2001:0:130F::9C0:876A:130B。

說明

在一個IPv6地址中隻能使用一次雙冒號“::”,否則當設備將“::”轉變為0以恢複128位地址時,將無法確定“::”所代表的0的個數。

 

IPv6地址由兩部分組成:地址前綴與接口標識。其中,地址前綴相當於IPv4地址中的網絡號碼字段部分,接口標識相當於IPv4地址中的主機號碼部分。

地址前綴的表示方式為:IPv6地址/前綴長度。其中,前綴長度是一個十進製數,表示IPv6地址最左邊多少位為地址前綴。

2. IPv6的地址分類

IPv6主要有三種類型的地址:單播地址、組播地址和任播地址。

·     單播地址:用來唯一標識一個接口,類似於IPv4的單播地址。發送到單播地址的數據報文將被傳送給此地址所標識的接口。

·     組播地址:用來標識一組接口(通常這組接口屬於不同的節點),類似於IPv4的組播地址。發送到組播地址的數據報文被傳送給此地址所標識的所有接口。

·     任播地址:用來標識一組接口(通常這組接口屬於不同的節點)。發送到任播地址的數據報文被傳送給此地址所標識的一組接口中距離源節點最近(根據使用的路由協議進行度量)的一個接口。

IPv6中沒有廣播地址,廣播地址的功能通過組播地址來實現。

IPv6地址類型是由地址前麵幾位(稱為格式前綴)來指定的,主要地址類型與格式前綴的對應關係如表1-1所示。

表1-1 地址類型與格式前綴的對應關係

地址類型

格式前綴(二進製)

IPv6前綴標識

單播地址

未指定地址

00...0  (128 bits)

::/128

環回地址

00...1  (128 bits)

::1/128

鏈路本地地址

1111111010

FE80::/10

全球單播地址

其他形式

-

組播地址

11111111

FF00::/8

任播地址

從單播地址空間中進行分配,使用單播地址的格式

 

3. 單播地址的類型

IPv6單播地址的類型可有多種,包括全球單播地址、鏈路本地地址等。

·     全球單播地址等同於IPv4公網地址,提供給網絡服務提供商。這種類型的地址允許路由前綴的聚合,從而限製了全球路由表項的數量。

·     鏈路本地地址用於鄰居發現協議和無狀態自動配置中鏈路本地上節點之間的通信。使用鏈路本地地址作為源或目的地址的數據報文不會被轉發到其他鏈路上。

·     環回地址:單播地址0:0:0:0:0:0:0:1(簡化表示為::1)稱為環回地址,不能分配給任何物理接口。它的作用與在IPv4中的環回地址相同,即節點用來給自己發送IPv6報文。

·     未指定地址:地址“::”稱為未指定地址,不能分配給任何節點。在節點獲得有效的IPv6地址之前,可在發送的IPv6報文的源地址字段填入該地址,但不能作為IPv6報文中的目的地址。

4. 組播地址

表1-2所示的組播地址,是預留的特殊用途的組播地址。

表1-2 預留的IPv6組播地址列表

地址

應用

FF01::1

表示節點本地範圍所有節點的組播地址

FF02::1

表示鏈路本地範圍所有節點的組播地址

FF01::2

表示節點本地範圍所有路由器的組播地址

FF02::2

表示鏈路本地範圍所有路由器的組播地址

 

另外,還有一類組播地址:被請求節點(Solicited-Node)地址。該地址主要用於獲取同一鏈路上鄰居節點的鏈路層地址及實現重複地址檢測。每一個單播或任播IPv6地址都有一個對應的被請求節點地址。其格式為:

FF02:0:0:0:0:1:FFXX:XXXX

其中,FF02:0:0:0:0:1:FF為104位固定格式;XX:XXXX為單播或任播IPv6地址的後24位。

5. IEEE EUI-64格式的接口標識符

IPv6單播地址中的接口標識符用來唯一標識鏈路上的一個接口。目前IPv6單播地址基本上都要求接口標識符為64位。

對於所有IEEE 802接口類型(例如,VLAN接口)的接口,IEEE EUI-64格式的接口標識符是從接口的鏈路層地址(MAC地址)變化而來的。IPv6地址中的接口標識符是64位,而MAC地址是48位,因此需要在MAC地址的中間位置(從高位開始的第24位後)插入十六進製數FFFE(1111111111111110)。為了使接口標識符的作用範圍與原MAC地址一致,還要將Universal/Local (U/L)位(從高位開始的第7位)進行取反操作。最後得到的這組數就作為EUI-64格式的接口標識符。

圖1-2 MAC地址到EUI-64格式接口標識符的轉換過程

 

對於Tunnel類型的接口,IEEE EUI-64格式的接口標識符的低32位為Tunnel接口的源IPv4地址,ISATAP隧道的接口標識符的高32位為0000:5EFE,其他隧道的接口標識符的高32位為全0。關於各種隧道的介紹,請參見“三層技術-IP業務配置指導”中的“隧道”。

對於其他接口類型(例如,Serial接口)的接口,IEEE EUI-64格式的接口標識符由設備隨機生成。

1.1.3  IPv6 PMTU發現

報文從源端到目的端的傳輸路徑中所經過的鏈路可能具有不同的MTU。在IPv6中,當報文的長度大於鏈路的MTU時,報文的分片將在源端進行,從而減輕中間轉發設備的處理壓力,合理利用網絡資源。

PMTU(Path MTU,路徑MTU)發現機製的目的就是要找到從源端到目的端的路徑上最小的MTU。如圖1-3所示,PMTU的工作過程為:

(1)     源端主機按照自己的MTU對報文進行分片,之後向目的主機發送報文。

(2)     中間轉發設備接收到該報文進行轉發時,如果發現轉發報文的接口支持的MTU值小於報文長度,則會丟棄報文,並給源端返回一個ICMPv6差錯報文,其中包含了轉發失敗的接口的MTU。

(3)     源主機收到該差錯報文後,將按照報文中所攜帶的MTU重新對報文進行分片並發送。

如此反複,直到目的端主機收到這個報文,從而確定報文從源端到目的端路徑中的最小MTU。

圖1-3 PMTU發現工作過程

 

1.1.4  IPv6過渡技術介紹

在IPv6成為主流協議之前,首先使用IPv6協議棧的網絡希望能與當前仍被IPv4支撐著的互聯網進行正常通信,因此必須開發出IPv4和IPv6互通技術以保證IPv4能夠平穩過渡到IPv6。互通技術應該對信息傳遞做到高效無縫。目前已經出現了多種過渡技術,這些技術各有特點,用於解決不同過渡時期、不同環境的通信問題。

1. 雙協議棧

雙協議棧是一種最簡單直接的過渡機製。同時支持IPv4協議和IPv6協議的網絡節點稱為雙協議棧節點。當雙協議棧節點配置IPv4地址和IPv6地址後,就可以在相應接口上轉發IPv4和IPv6報文。當一個上層應用同時支持IPv4和IPv6協議時,根據協議要求可以選用TCP或UDP作為傳輸層的協議,但在選擇網絡層協議時,它會優先選擇IPv6協議棧。雙協議棧技術適合IPv4網絡節點之間或者IPv6網絡節點之間通信,是所有過渡技術的基礎。但是,這種技術要求運行雙協議棧的節點有一個全球唯一的地址,實際上沒有解決IPv4地址資源匱乏的問題。

2. 隧道技術

隧道是一種封裝技術,它利用一種網絡協議來傳輸另一種網絡協議,即利用一種網絡傳輸協議,將其他協議產生的數據報文封裝在它自己的報文中,然後在網絡中傳輸。關於隧道技術的詳細介紹,請參見“三層技術-IP業務配置指導”中的“隧道”。

3. 6PE

6PE是一種過渡技術,ISP可以利用已有的IPv4骨幹網為分散用戶的IPv6網絡提供接入能力。

6PE的主要思想是:6PE(IPv6 Provider Edge,IPv6供應商邊緣)路由器將用戶的IPv6路由信息轉換為帶有標簽的IPv6路由信息,並且通過IBGP(Internal Border Gateway Protocol,內部邊界網關協議)會話擴散到ISP的IPv4骨幹網中。6PE路由器轉發IPv6報文時,首先會將進入骨幹網隧道的數據流打上標簽。隧道可以是GRE隧道或者MPLS LSP等。

圖1-4 6PE組網圖

 

當ISP想利用自己原有的IPv4/MPLS網絡,使其通過MPLS具有IPv6流量交換能力時,隻需要升級PE路由器就可以了。所以對於運營商來說,使用6PE技術作為IPv6過渡機製無疑是一個高效的解決方案,其操作風險也會小得多。

1.1.5  協議規範

相關的協議規範有:

·     RFC 1881:IPv6 Address Allocation Management

·     RFC 1887:An Architecture for IPv6 Unicast Address Allocation

·     RFC 1981:Path MTU Discovery for IP version 6

·     RFC 2375:IPv6 Multicast Address Assignments

·     RFC 2460:Internet Protocol, Version 6 (IPv6) Specification

·     RFC 2464:Transmission of IPv6 Packets over Ethernet Networks

·     RFC 2526:Reserved IPv6 Subnet Anycast Addresses

·     RFC 3307:Allocation Guidelines for IPv6 Multicast Addresses

·     RFC 4191:Default Router Preferences and More-Specific Routes

·     RFC 4291:IP Version 6 Addressing Architecture

·     RFC 4443:Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification

·     RFC 4862:IPv6 Stateless Address Autoconfiguration

1.2  IPv6基礎配置任務簡介

IPv6基礎配置任務如下:

(1)     配置IPv6地址

請選擇以下至少一項任務進行配置:

¡     配置IPv6全球單播地址

¡     配置IPv6鏈路本地地址

¡     配置IPv6任播地址

(2)     (可選)配置PMTU發現

¡     配置接口MTU

¡     配置指定地址的靜態PMTU

¡     配置PMTU老化時間

(3)     (可選)配置ICMPv6報文發送功能

¡     關閉接收指定類型的ICMPv6報文功能

¡     關閉發送指定類型的ICMPv6報文功能

¡     配置發送ICMPv6差錯報文對應的令牌桶容量和令牌刷新周期

¡     配置允許回複組播形式的Echo request報文

¡     配置ICMPv6目的不可達差錯報文發送功能

¡     配置ICMPv6超時差錯報文發送功能

¡     配置ICMPv6重定向報文發送功能

¡     配置設備主動發送的ICMPv6報文的源地址

(4)     (可選)開啟IPv6分片報文本地重組功能

1.3  配置IPv6全球單播地址

1.3.1  功能簡介

IPv6全球單播地址可以通過下麵幾種方式配置:

·     采用EUI-64格式形成:當配置采用EUI-64格式形成IPv6地址時,接口的IPv6地址的前綴需要手工配置,而接口ID則由接口自動生成。

·     手工配置:用戶手工配置IPv6全球單播地址。

·     引用前綴生成IPv6地址:引用前綴生成IPv6地址時,接口的IPv6地址的前綴可以通過手工配置或DHCPv6動態獲取,同時該前綴還會分配給終端設備。

·     無狀態自動配置:根據接收到的RA報文中攜帶的地址前綴信息,自動生成IPv6全球單播地址。

每個接口可以有多個全球單播地址。

手工配置的全球單播地址(包括采用EUI-64格式形成的全球單播地址)的優先級高於自動生成的全球單播地址。如果在接口已經自動生成全球單播地址的情況下,手工配置前綴相同的全球單播地址,不會覆蓋之前自動生成的全球單播地址。如果刪除手工配置的全球單播地址,設備還可以使用自動生成的全球單播地址進行通信。

1.3.2  配置限製和指導

采用EUI-64格式形成IPv6地址和無狀態自動配置IPv6地址,都會用到接口標識符。接口標識符根據接口的MAC地址生成。因此,如果修改了接口的MAC地址,IPv6地址也會變化,導致相關協議(如MLD、IPv6 PIM、OSPFv3等)表項重建。如需避免該問題,用戶可以采用其他不依賴MAC地址的方式為接口配置IPv6地址,比如手工指定IPv6地址。

1.3.3  采用EUI-64格式形成IPv6地址

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     采用EUI-64格式形成IPv6地址。

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length } eui-64

缺省情況下,接口上未配置IPv6全球單播地址。

1.3.4  手工指定IPv6地址

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     手工指定IPv6地址。

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length }

缺省情況下,接口上未配置IPv6全球單播地址。

1.3.5  無狀態自動配置IPv6地址

1. 功能簡介

在配置了無狀態自動配置IPv6地址功能後,接口會根據接收到的RA報文中攜帶的地址前綴信息和接口ID,自動生成IPv6全球單播地址。如果接口是IEEE 802類型的接口(例如,以太網接口、VLAN接口),其接口ID是由MAC地址根據一定的規則生成,此接口ID具有全球唯一性。對於不同的前綴,接口ID部分始終不變,攻擊者通過接口ID可以很方便的識別出通信流量是由哪台設備產生的,並分析其規律,會造成一定的安全隱患。

如果在地址無狀態自動配置時,自動生成接口ID不斷變化的IPv6地址,就可以加大攻擊的難度,從而保護網絡。為此,設備提供了臨時地址功能,使得係統可以生成臨時地址。配置該功能後,通過地址無狀態自動配置,IEEE 802類型的接口可以同時生成兩類地址:

·     公共地址:地址前綴采用RA報文攜帶的前綴,接口ID由MAC地址產生。接口ID始終不變。

·     臨時地址:地址前綴采用RA報文攜帶的前綴,接口ID由係統根據MD5算法計算產生。接口ID不斷變化。

在配置了優先選擇臨時地址功能前提下發送報文,係統將優先選擇臨時地址作為報文的源地址。當臨時地址的有效生命期過期後,這個臨時地址將被刪除,同時,係統會通過MD5算法重新生成一個接口ID不同的臨時地址。所以,該接口發送報文的源地址的接口ID總是在不停變化。如果生成的臨時地址因為DAD衝突不可用,就采用公共地址作為報文的源地址。

臨時地址的首選生命期和有效生命期的確定原則如下:

·     首選生命期是如下兩個值之中的較小者:“RA前綴中的首選生命期”和“配置的臨時地址首選生命期減去DESYNC_FACTOR”。DESYNC_FACTOR是一個0~600秒的隨機值。

·     有效生命期是如下兩個值之中的較小者:“RA前綴中的有效生命期”和“配置的臨時地址有效生命期”。

2. 配置限製和指導

如果RA報文攜帶的前綴長度不是64位,則該接口自動生成IPv6全球單播地址失敗。

設備的接口必須啟用地址無狀態自動配置功能才能生成臨時地址,而且臨時地址不會覆蓋公共地址,因此會出現一個接口下有多個前綴相同但是接口ID不同的地址。

如果公共地址生成失敗,例如前綴衝突,則不會生成臨時地址。

在接口上開啟無狀態地址自動配置功能後,接口通過無狀態自動配置方式生成全球單播地址。如果通過undo ipv6 address auto命令關閉該功能,將刪除該接口上所有自動生成的全球單播地址和鏈路本地地址。

3. 開啟無狀態自動配置IPv6地址功能

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟無狀態地址自動配置功能,使接口通過無狀態自動配置方式生成全球單播地址。

ipv6 address auto

缺省情況下,接口上無狀態地址自動配置功能處於關閉狀態。

4. 配置係統生成臨時地址,並優先選擇臨時地址作為報文的源地址

(1)     進入係統視圖。

system-view

(2)     配置係統生成臨時地址。

ipv6 temporary-address [ valid-lifetime preferred-lifetime ]

缺省情況下,係統不生成臨時地址。

(3)     優先選擇臨時地址作為報文的源地址。

ipv6 prefer temporary-address

缺省情況下,不會用臨時地址作為接口發送報文的源地址。

1.3.6  引用前綴生成接口上的IPv6地址,並將此前綴分配給終端設備

(1)     進入係統視圖。

system-view

(2)     配置IPv6前綴。請選擇其中一項進行配置。

¡     手工配置靜態的IPv6前綴。

ipv6 prefix prefix-number ipv6-prefix/prefix-length

缺省情況下,未配置靜態IPv6前綴。

¡     配置設備作為DHCPv6客戶端動態獲取IPv6前綴,並生成指定編號的IPv6前綴。

配置方法請參見“三層技術-IP業務配置指導”中的“DHCPv6客戶端”。

(3)     進入接口視圖。

interface interface-type interface-number

(4)     引用前綴生成接口上的IPv6地址,並將此前綴分配給終端設備。

ipv6 address prefix-number sub-prefix/prefix-length

缺省情況下,接口上未引用前綴,也不會向終端設備分配該前綴。

1.4  配置IPv6鏈路本地地址

1.4.1  功能簡介

IPv6的鏈路本地地址可以通過兩種方式獲得:

·     自動生成:設備根據鏈路本地地址前綴(FE80::/10)及接口的鏈路層地址,自動為接口生成鏈路本地地址;

·     手工指定:用戶手工配置IPv6鏈路本地地址。

1.4.2  配置限製和指導

當接口配置了IPv6全球單播地址後,同時會自動生成鏈路本地地址。且與采用ipv6 address auto link-local命令生成的鏈路本地地址相同。此時如果手工指定接口的鏈路本地地址,則手工指定的有效。如果刪除手工指定的鏈路本地地址,則接口的鏈路本地地址恢複為係統自動生成的地址。

undo ipv6 address auto link-local命令隻能刪除使用ipv6 address auto link-local命令生成的鏈路本地地址。即如果此時已經配置了IPv6全球單播地址,由於係統會自動生成鏈路本地地址,則接口仍有鏈路本地地址;如果此時沒有配置IPv6全球單播地址,則接口沒有鏈路本地地址。

每個接口隻能有一個鏈路本地地址,為了避免鏈路本地地址衝突,推薦使用鏈路本地地址的自動生成方式。

配置鏈路本地地址時,手工指定方式的優先級高於自動生成方式。即如果先采用自動生成方式,之後手工指定,則手工指定的地址會覆蓋自動生成的地址;如果先手工指定,之後采用自動生成的方式,則自動配置不生效,接口的鏈路本地地址仍是手工指定的。此時,如果刪除手工指定的地址,則自動生成的鏈路本地地址會生效。

生成鏈路本地地址時,會用到接口ID。對於IEEE 802類型的接口(例如以太網接口、VLAN接口),其接口ID根據接口的MAC地址生成。因此,如果修改了接口的MAC地址,鏈路本地地址也會變化,導致相關協議(如MLD、IPv6 PIM、OSPFv3等)表項重建。如需避免該問題,用戶可以采用其他不依賴MAC地址的方式為接口配置鏈路本地地址,比如手工指定接口的鏈路本地地址。

1.4.3  配置自動生成鏈路本地地址

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置自動生成鏈路本地地址。

ipv6 address auto link-local

缺省情況下,接口上沒有鏈路本地地址。當接口配置了IPv6全球單播地址後,會自動生成鏈路本地地址。

1.4.4  手工指定接口的鏈路本地地址

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     手工指定接口的鏈路本地地址。

ipv6 address { ipv6-address [ prefix-length ] | ipv6-address/prefix-length } link-local

缺省情況下,未指定接口的鏈路本地地址。

1.5  配置IPv6任播地址

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置IPv6任播地址。

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length } anycast

缺省情況下,接口上未配置任播地址。

1.6  配置PMTU發現

1.6.1  配置接口MTU

1. 功能簡介

當設備發送報文時,如果發現報文長度比發送該報文的接口的MTU值大,則會將其丟棄。如果設備是作為中間設備轉發該報文,同時會將接口的MTU值通過ICMPv6報文的“Packet Too Big”消息發給源端主機,源端主機以該值重新發送IPv6報文。為減少報文被丟棄帶來的額外流量開銷,需要根據實際組網環境設置合適的接口MTU值。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置接口MTU。

ipv6 mtu size

缺省情況下,未配置接口上發送IPv6報文的MTU。

1.6.2  配置指定地址的靜態PMTU

1. 功能簡介

用戶可以為指定的目的IPv6地址配置靜態的PMTU值。當設備作為源端從接口發送報文時,將比較該接口的MTU與指定目的IPv6地址的靜態PMTU,如果報文長度大於二者中的最小值,則采用此最小值對報文進行分片發送。發送過程中再通過“1.1.3  IPv6 PMTU發現”中的方法動態確定設備作為源端到目的端主機的PMTU值。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置指定IPv6地址對應的靜態PMTU值。

ipv6 pathmtu [ vpn-instance vpn-instance-name ] ipv6-address value

缺省情況下,未配置靜態PMTU值。

1.6.3  配置PMTU老化時間

1. 功能簡介

通過“1.1.3  IPv6 PMTU發現”中的方法動態確定設備作為源端到目的端主機的PMTU後,設備將使用這個MTU值發送後續報文到目的端主機。當PMTU老化時間超時後,源端主機會通過PMTU機製重新確定發送報文的MTU值。

2. 配置限製與指導

該配置對靜態PMTU不起作用。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置PMTU老化時間。

ipv6 pathmtu age age-time

缺省情況下,PMTU的老化時間是10分鍾。

1.7  配置ICMPv6報文發送功能

1.7.1  關閉接收指定類型的ICMPv6報文功能

1. 功能簡介

缺省情況下,設備接收所有類型的ICMPv6報文的功能處於開啟狀態,這樣可能會存在安全風險。例如設備短時間內可能會收到大量的回送請求報文,影響設備性能,致使設備無法正常運行。為了提高設備的安全性,可以使用本功能,關閉設備對指定類型的ICMPv6報文的接收功能。

2. 配置限製和指導

請用戶根據實際需求使用本功能,隨意關閉某類型ICMPv6報文的接收功能,可能會影響網絡的正常運行。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     關閉接收指定類型的ICMPv6報文功能。

undo ipv6 icmpv6 { name name | type type code code } receive enable

缺省情況下,接收所有類型的ICMPv6報文的功能處於開啟狀態。

1.7.2  關閉發送指定類型的ICMPv6報文功能

1. 功能簡介

缺省情況下,設備發送多數ICMPv6報文的功能處於開啟狀態,這樣可能會存在安全風險。例如設備發出的時間戳請求應答、掩碼請求應答、網絡重定向和網絡不可達等報文,其攜帶的設備相關信息可能給設備帶來安全隱患。為了提高設備的安全性,可以使用本功能,關閉設備對指定類型的ICMPv6報文的發送功能。

2. 配置限製和指導

請用戶根據實際需求使用本功能,隨意關閉某類型ICMPv6報文的發送功能,可能會影響網絡的正常運行。

ICMPv6目的不可達報文發送功能同時受本功能和ipv6 unreachables enable命令的控製。隻要一方開啟,ICMPv6目的不可達報文發送功能就處於開啟狀態。

ICMPv6超時報文發送功能同時受本功能和ipv6 hoplimit-expires enable命令的控製。隻要一方開啟,ICMPv6超時報文發送功能就處於開啟狀態。

ICMPv6重定向報文發送功能同時受本功能和ipv6 redirects enable命令的控製。隻要一方開啟,ICMPv6重定向報文發送功能就處於開啟狀態。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     關閉發送指定類型的ICMPv6報文功能。

undo ipv6 icmpv6 { name name | type type code code } send enable

缺省情況下,發送ICMPv6目的不可達報文、ICMPv6超時報文和ICMPv6重定向報文功能處於關閉狀態,發送其它ICMPv6報文功能處於開啟狀態。

 

 

1.7.3  配置發送ICMPv6差錯報文對應的令牌桶容量和令牌刷新周期

1. 功能簡介

如果網絡中短時間內發送的ICMPv6差錯報文過多,將可能導致網絡擁塞。為了避免這種情況,用戶可以控製在指定時間內發送ICMPv6差錯報文的最大個數,目前采用令牌桶算法來實現。

用戶可以設置令牌桶的容量,即令牌桶中可以同時容納的令牌數;同時可以設置令牌桶的刷新周期,即每隔多長時間發放一個令牌到令牌桶中,直到令牌桶中的令牌數達到配置的容量。一個令牌表示允許發送一個ICMPv6差錯報文,每當發送一個ICMPv6差錯報文,則令牌桶中減少一個令牌。如果連續發送的ICMPv6差錯報文超過了令牌桶的容量,則後續的ICMPv6差錯報文將不能被發送出去,直到按照所設置的刷新頻率將新的令牌放入令牌桶中。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置發送ICMPv6差錯報文對應的令牌桶容量和令牌刷新周期。

ipv6 icmpv6 error-interval interval [ bucketsize ]

缺省情況下,令牌桶容量為10,令牌刷新周期為100毫秒。

刷新周期為0時,表示不限製ICMPv6差錯報文的發送。

1.7.4  配置允許回複組播形式的Echo request報文

(1)     進入係統視圖。

system-view

(2)     配置設備允許回複組播形式的Echo request報文。

ipv6 icmpv6 multicast-echo-reply enable

缺省情況下,不允許設備回複組播形式的Echo request報文。

1.7.5  配置ICMPv6目的不可達差錯報文發送功能

1. 功能簡介

ICMPv6目的不可達報文發送功能是在設備收到IPv6數據報文後,如果發生目的不可達的差錯,則將報文丟棄並給源端發送ICMPv6目的不可達差錯報文。

設備在滿足下列任一條件時會發送目的不可達報文:

·     設備在轉發報文時,如果在路由表中沒有找到對應的轉發路由,且路由表中沒有缺省路由,則給源端發送“沒有到達目的地址的路由”ICMPv6差錯報文;

·     設備在轉發報文時,如果是因為管理策略(例如防火牆過濾、ACL等)導致無法發送報文時,則給源端發送“與目的地址的通信被管理策略禁止”ICMPv6差錯報文;

·     設備在轉發報文時,如果報文的目的IPv6地址超出源IPv6地址的範圍(例如,報文的源IPv6地址為鏈路本地地址,報文的目的IPv6地址為全球單播地址),會導致報文無法到達目的端,此時要給源端發送“超出源地址範圍”ICMPv6差錯報文;

·     設備在轉發報文時,如果不能解析目的IPv6地址對應的鏈路層地址,則給源端發送“地址不可達”ICMPv6差錯報文;

·     設備收到目的地址為本地、傳輸層協議為UDP的數據報文時,如果報文的目的端口號與正在使用的進程不匹配,則給源端發送“端口不可達”ICMPv6差錯報文。

2. 配置限製和指導

由於ICMPv6目的不可達報文傳遞給用戶進程的信息為不可達信息,如果有用戶惡意攻擊,可能會影響終端用戶的正常使用。為了避免上述現象發生,可以關閉設備的ICMPv6目的不可達報文發送功能,從而減少網絡流量、防止遭到惡意攻擊。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟設備的ICMPv6目的不可達報文的發送功能。

ipv6 unreachables enable

缺省情況下,ICMPv6目的不可達報文發送功能處於關閉狀態。

1.7.6  配置ICMPv6超時差錯報文發送功能

1. 功能簡介

ICMPv6超時報文發送功能是在設備收到IPv6數據報文後,如果發生超時差錯,則將報文丟棄並給源端發送ICMPv6超時差錯報文。

設備在滿足下列任一條件時會發送ICMPv6超時報文:

·     設備收到IPv6數據報文後,如果報文的目的地不是本地且報文的Hop limit字段是1,則發送“Hop limit超時”ICMPv6差錯報文;

·     設備收到目的地址為本地的IPv6數據報文的第一個分片後,啟動定時器,如果所有分片報文到達之前定時器超時,則會發送“重組超時”ICMPv6差錯報文。

如果接收到大量需要發送ICMPv6差錯報文的惡意攻擊報文,設備會因為處理大量該類報文而導致性能降低。

2. 配置限製和指導

為了避免上述現象發生,可以關閉設備的ICMPv6超時報文發送功能,從而減少網絡流量、防止遭到惡意攻擊。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟設備的ICMPv6超時報文的發送功能。

ipv6 hoplimit-expires enable

缺省情況下,ICMPv6超時報文發送功能處於開啟狀態。

1.7.7  配置ICMPv6重定向報文發送功能

1. 功能簡介

當主機啟動時,它的路由表中可能隻有一條到缺省網關的缺省路由。當滿足一定的條件時,缺省網關會向源主機發送ICMPv6重定向報文,通知主機重新選擇更好的下一跳進行後續報文的發送。

同時滿足下列條件時,設備會發送ICMPv6重定向報文:

·     接收和轉發數據報文的接口是同一接口;

·     被選擇的路由本身沒有被ICMPv6重定向報文創建或修改過;

·     被選擇的路由不是設備的缺省路由;

·     被轉發的IPv6數據報文中不包含路由擴展頭。

ICMPv6重定向報文發送功能可以簡化主機的管理,使具有很少選路信息的主機逐漸建立較完善的路由表,從而找到最佳路由。但是由於重定向功能會在主機的路由表中增加主機路由,當增加的主機路由很多時,會降低主機性能。因此缺省情況下設備的ICMPv6重定向報文發送功能處於關閉狀態。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟設備的ICMPv6重定向報文發送功能。

ipv6 redirects enable

缺省情況下,ICMPv6重定向報文發送功能處於關閉狀態。

1.7.8  配置設備主動發送的ICMPv6報文的源地址

1. 功能簡介

在網絡中IPv6地址配置較多的情況下,收到ICMPv6報文時,用戶很難根據報文的源IPv6地址判斷報文來自哪台設備。指定特定地址(如環回口地址)作為設備發送ICMPv6差錯報文和ping echo request報文的源地址,可以幫助接收方判斷ICMPv6報文的來源。

2. 配置限製與指導

用戶發送ping echo request報文時,如果ping ipv6命令中已經指定源地址,則使用該源地址,否則使用ipv6 icmpv6 source配置的源地址。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置設備主動發送的ICMPv6報文的源地址。

ipv6 icmpv6 source [ vpn-instance vpn-instance-name ] ipv6-address

缺省情況下,未配置設備主動發送的ICMPv6報文的源地址。

1.7.9  配置設備發送ICMPv6應答報文使用的源地址

1. 功能簡介

指定特定地址(如環回口地址)或本設備上一個接口的地址作為發送ICMPv6響應報文的源地址,可以幫助接收方判斷ICMPv6報文的來源。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置ICMPv6應答報文源地址。

ipv6 icmpv6 reply source [ vpn-instance vpn-instance-name ] { address ipv6-address | interface interface-type [ interface-number ] }

缺省情況下,未配置ICMPv6應答報文源地址。

1.8  開啟三層報文統計功能

1. 功能簡介

開啟本功能後,設備會統計接口接收或發送的IPv6報文的數量,該統計信息可通過display interface命令查看。

2. 配置限製與指導

接口報文流量過大時,開啟本功能會造成設備CPU占用率高,影響轉發性能。因此,當用戶不需要統計接口接收或發送的IPv6報文數量時,建議關閉本功能。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟三層報文統計功能。

statistics l3-packet enable { inbound | outbound }

缺省情況下,三層報文統計功能處於關閉狀態。

1.9  開啟IPv6分片報文本地重組功能

1. 功能簡介

多台設備組成的IRF環境下,當某成員設備收到目的為本IRF設備的IPv6分片報文時,需要把分片報文送到主設備進行重組,這樣會導致報文重組性能較低的問題。

當開啟IPv6分片報文本地重組功能後,分片報文會在該成員設備上直接進行報文重組,這樣就能提高分片報文的重組性能。

2. 配置限製與指導

開啟IPv6分片報文本地重組功能後,如果分片報文是從IRF係統中不同的成員設備進入的,會導致IPv6分片報文本地無法重組成功。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟設備的IPv6分片報文本地重組功能。

ipv6 reassemble local enable

缺省情況下,IPv6分片報文本地重組功能處於關閉狀態。

1.10  IPv6基礎顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示IPv6配置後的運行情況,用戶可以通過查看顯示信息驗證配置的效果。

在用戶視圖下,執行reset命令可以清除相應的統計信息。

display tcp statisticsdisplay udp statisticsreset tcp statisticsreset udp statistics命令的詳細介紹請參見“三層技術-IP業務命令參考”中的“IP性能優化”。

表1-3 IPv6基礎顯示和維護

操作

命令

顯示IPv6 FIB信息

display ipv6 fib [ vpn-instance vpn-instance-name ] [ ipv6-address [ prefix-length ] ]

顯示IPv6 FIB表項數的使用率

display ipv6 fib usage

顯示IPv6 ICMP流量統計信息

display ipv6 icmp statistics [ slot slot-number ]

顯示接口的IPv6信息

display ipv6 interface [ interface-type [ interface-number ] ] [ brief [ description ] ]

顯示接口的IPv6前綴信息

display ipv6 interface interface-type interface-number prefix

顯示IPv6的PMTU信息

display ipv6 pathmtu [ vpn-instance vpn-instance-name ] { ipv6-address | { all | dynamic | static } [ count ] }

顯示IPv6前綴信息

display ipv6 prefix [ prefix-number ]

顯示IPv6 RawIP連接摘要信息

display ipv6 rawip [ slot slot-number  ]

顯示IPv6 RawIP連接詳細信息

display ipv6 rawip verbose [ slot slot-number [ pcb pcb-index ] ]

顯示IPv6報文及ICMPv6報文的統計信息

display ipv6 statistics [ slot slot-number ]

顯示IPv6 TCP連接摘要信息

display ipv6 tcp [ slot slot-number ]

顯示IPv6 TCP連接詳細信息

display ipv6 tcp verbose [ slot slot-number [ pcb pcb-index ] ]

顯示IPv6 UDP連接摘要信息

display ipv6 udp [ slot slot-number ]

顯示IPv6 UDP連接詳細信息

display ipv6 udp verbose [ slot slot-number [ pcb pcb-index ] ]

顯示IPv6 TCP連接的流量統計信息

display tcp statistics [ slot slot-number ]

顯示IPv6 UDP流量統計信息

display udp statistics [ slot slot-number ]

清除PMTU值

reset ipv6 pathmtu { all | dynamic | static }

清除IPv6報文及ICMPv6報文的統計信息

reset ipv6 statistics [ slot slot-number ]

清除IPv6 TCP連接的流量統計信息

reset tcp statistics

清除IPv6 UDP流量統計信息

reset udp statistics

 

1.11  IPv6基礎典型配置舉例

1.11.1  IPv6基本組網配置舉例

1. 組網需求

·     如圖1-5所示,Host、Switch A和Switch B之間通過以太網端口相連,將以太網端口分別加入相應的VLAN裏,在VLAN接口上配置IPv6地址,驗證它們之間的互通性。

·     Switch B有可以到Host的路由。

·     在Host上安裝IPv6,根據IPv6鄰居發現協議自動配置IPv6地址,有可以到Switch B的路由。

2. 組網圖

圖1-5 IPv6地址配置組網圖

說明

交換機上已經創建相應的VLAN接口。

 

3. 配置步驟

(1)     配置Switch A

# 手工指定VLAN接口2的全球單播地址。

<SwitchA> system-view

[SwitchA] interface vlan-interface 2

[SwitchA-Vlan-interface2] ipv6 address 3001::1/64

[SwitchA-Vlan-interface2] quit

# 手工指定VLAN接口1的全球單播地址,並允許其發布RA消息。(缺省情況下,所有的接口不會發布RA消息)

[SwitchA] interface vlan-interface 1

[SwitchA-Vlan-interface1] ipv6 address 2001::1/64

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

[SwitchA-Vlan-interface1] quit

(2)     配置Switch B

# 配置VLAN接口2的全球單播地址。

<SwitchB> system-view

[SwitchB] interface vlan-interface 2

[SwitchB-Vlan-interface2] ipv6 address 3001::2/64

[SwitchB-Vlan-interface2] quit

# 配置IPv6靜態路由,該路由的目的地址為2001::/64,下一跳地址為3001::1。

[SwitchB] ipv6 route-static 2001:: 64 3001::1

(3)     配置Host

在Host上安裝IPv6,根據IPv6鄰居發現協議自動配置IPv6地址。

# 從Switch A上查看端口Twenty-FiveGigE1/0/2的鄰居信息。

[SwitchA] display ipv6 neighbors interface twenty-fivegige 1/0/2

Type: S-Static    D-Dynamic    O-Openflow     R-Rule    IS-Invalid static

IPv6 address              MAC address    VLAN/VSI   Interface     State T  Aging

FE80::215:E9FF:FEA6:7D14      0015-e9a6-7d14 1     WGE1/0/2                STALE D 1238

2001::15B:E0EA:3524:E791      0015-e9a6-7d14  1     WGE1/0/2                STALE D 1248

通過上麵的信息可以知道Host上獲得的IPv6全球單播地址為2001::15B:E0EA:3524:E791。

4. 驗證配置

# 顯示Switch A的接口信息,可以看到各接口配置的IPv6全球單播地址。

[SwitchA] display ipv6 interface vlan-interface 2

Vlan-interface2 current state: UP

Line protocol current state: UP

IPv6 is enabled, link-local address is FE80::20F:E2FF:FE00:2

  Global unicast address(es):

    3001::1, subnet is 3001::/64

  Joined group address(es):

    FF02::1

    FF02::2

    FF02::1:FF00:1

    FF02::1:FF00:2

  MTU is 1500 bytes

  ND DAD is enabled, number of DAD attempts: 1

  ND reachable time is 1200000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    25829

  InTooShorts:                   0

  InTruncatedPkts:               0

  InHopLimitExceeds:             0

  InBadHeaders:                  0

  InBadOptions:                  0

  ReasmReqds:                    0

  ReasmOKs:                      0

  InFragDrops:                   0

  InFragTimeouts:                0

  OutFragFails:                  0

  InUnknownProtos:               0

  InDelivers:                    47

  OutRequests:                   89

  OutForwDatagrams:              48

  InNoRoutes:                    0

  InTooBigErrors:                0

  OutFragOKs:                    0

  OutFragCreates:                0

  InMcastPkts:                   6

  InMcastNotMembers:             25747

  OutMcastPkts:                  48

  InAddrErrors:                  0

  InDiscards:                    0

  OutDiscards:                   0

[SwitchA] display ipv6 interface vlan-interface 1

Vlan-interface1 current state: UP

Line protocol current state: UP

IPv6 is enabled, link-local address is FE80::20F:E2FF:FE00:1C0

  Global unicast address(es):

    2001::1, subnet is 2001::/64

  Joined group address(es):

    FF02::1

    FF02::2

    FF02::1:FF00:1

    FF02::1:FF00:1C0

  MTU is 1500 bytes

  ND DAD is enabled, number of DAD attempts: 1

  ND reachable time is 1200000 milliseconds

  ND retransmit interval is 1000 milliseconds

  ND advertised reachable time is 0 milliseconds

  ND advertised retransmit interval is 0 milliseconds

  ND router advertisements are sent every 600 seconds

  ND router advertisements live for 1800 seconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    272

  InTooShorts:                   0

  InTruncatedPkts:               0

  InHopLimitExceeds:             0

  InBadHeaders:                  0

  InBadOptions:                  0

  ReasmReqds:                    0

  ReasmOKs:                      0

  InFragDrops:                   0

  InFragTimeouts:                0

  OutFragFails:                  0

  InUnknownProtos:               0

  InDelivers:                    159

  OutRequests:                   1012

  OutForwDatagrams:              35

  InNoRoutes:                    0

  InTooBigErrors:                0

  OutFragOKs:                    0

  OutFragCreates:                0

  InMcastPkts:                   79

  InMcastNotMembers:             65

  OutMcastPkts:                  938

  InAddrErrors:                  0

  InDiscards:                    0

  OutDiscards:                   0

# 顯示Switch B的接口信息,可以看到接口配置的IPv6全球單播地址。

[SwitchB] display ipv6 interface vlan-interface 2

Vlan-interface2 current state: UP

Line protocol current state: UP

IPv6 is enabled, link-local address is FE80::20F:E2FF:FE00:1234

  Global unicast address(es):

    3001::2, subnet is 3001::/64

  Joined group address(es):

    FF02::1

    FF02::2

    FF02::1:FF00:2

    FF02::1:FF00:1234

  MTU is 1500 bytes

  ND DAD is enabled, number of DAD attempts: 1

  ND reachable time is 1200000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    117

  InTooShorts:                   0

  InTruncatedPkts:               0

  InHopLimitExceeds:             0

  InBadHeaders:                  0

  InBadOptions:                  0

  ReasmReqds:                    0

  ReasmOKs:                      0

  InFragDrops:                   0

  InFragTimeouts:                0

  OutFragFails:                  0

  InUnknownProtos:               0

  InDelivers:                    117

  OutRequests:                   83

  OutForwDatagrams:              0

  InNoRoutes:                    0

  InTooBigErrors:                0

  OutFragOKs:                    0

  OutFragCreates:                0

  InMcastPkts:                   28

  InMcastNotMembers:             0

  OutMcastPkts:                  7

  InAddrErrors:                  0

  InDiscards:                    0

  OutDiscards:                   0

# 在Host上使用Ping測試和Switch A及Switch B的互通性;在Switch B上使用Ping測試和Switch A及Host的互通性。

說明

在Ping鏈路本地地址時,需要使用-i參數來指定鏈路本地地址的接口。

 

[SwitchB] ping ipv6 -c 1 3001::1

Ping6(56 data bytes) 3001::2 --> 3001::1, press CTRL+C to break

56 bytes from 3001::1, icmp_seq=0 hlim=64 time=4.404 ms

 

--- Ping6 statistics for 3001::1 ---

1 packet(s) transmitted, 1 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 4.404/4.404/4.404/0.000 ms

[SwitchB] ping ipv6 -c 1 2001::15B:E0EA:3524:E791

Ping6(56 data bytes) 3001::2 --> 2001::15B:E0EA:3524:E791, press CTRL+C to break

56 bytes from 2001::15B:E0EA:3524:E791, icmp_seq=0 hlim=64 time=5.404 ms

 

--- Ping6 statistics for 2001::15B:E0EA:3524:E791 ---

1 packet(s) transmitted, 1 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 5.404/5.404/5.404/0.000 ms

從Host上也可以ping通Switch B和Switch A,證明它們是互通的。


2 IPv6鄰居發現

2.1  IPv6鄰居發現簡介

2.1.1  IPv6鄰居發現使用的ICMPv6消息

IPv6 ND(IPv6 Neighbor Discovery,IPv6鄰居發現)協議使用五種類型的ICMPv6消息,實現下麵一些功能:地址解析、驗證鄰居是否可達、重複地址檢測、路由器發現/前綴發現、地址自動配置和重定向等。

鄰居發現協議使用的ICMPv6消息的類型及作用如表2-1所示。

表2-1 鄰居發現協議使用的ICMPv6消息類型及作用

ICMPv6消息

類型號

作用

鄰居請求消息NS(Neighbor Solicitation)

135

獲取鄰居的鏈路層地址

驗證鄰居是否可達

進行重複地址檢測

鄰居通告消息NA(Neighbor Advertisement)

136

對NS消息進行響應

節點在鏈路層變化時主動發送NA消息,向鄰居節點通告本節點的變化信息

路由器請求消息RS(Router Solicitation)

133

節點啟動後,通過RS消息向路由器發出請求,請求前綴和其他配置信息,用於節點的自動配置

路由器通告消息RA(Router Advertisement)

134

對RS消息進行響應

在沒有抑製RA消息發布的條件下,路由器會周期性地發布RA消息,其中包括前綴信息選項和一些標誌位的信息

重定向消息(Redirect)

137

當滿足一定的條件時,缺省網關通過向源主機發送重定向消息,使主機重新選擇正確的下一跳地址進行後續報文的發送

 

2.1.2  地址解析

獲取同一鏈路上鄰居節點的鏈路層地址(與IPv4的ARP功能相同),通過鄰居請求消息NS和鄰居通告消息NA實現。如圖2-1所示,節點A要獲取節點B的鏈路層地址的過程為:

(1)     節點A以組播方式發送NS消息。NS消息的源地址是節點A的接口IPv6地址,目的地址是節點B的被請求節點組播地址,消息內容中包含了節點A的鏈路層地址和請求的目標地址。

(2)     節點B收到NS消息後,判斷報文的目標地址是否為自己的IPv6地址。如果是,則節點B可以學習到節點A的鏈路層地址,並以單播方式返回NA消息,其中包含了自己的鏈路層地址。

(3)     節點A從收到的NA消息中就可獲取到節點B的鏈路層地址。

圖2-1 地址解析示意圖

 

2.1.3  驗證鄰居是否可達

在獲取到鄰居節點的鏈路層地址後,通過鄰居請求消息NS和鄰居通告消息NA可以驗證鄰居節點是否可達。

(1)     節點發送NS消息,其中目的地址是鄰居節點的IPv6地址。

(2)     如果收到鄰居節點的確認報文,則認為鄰居可達;否則,認為鄰居不可達。

2.1.4  重複地址檢測

當節點獲取到一個IPv6地址後,需要使用重複地址檢測功能確定該地址是否已被其他節點使用(與IPv4的免費ARP功能相似)。如圖2-2所示,通過NS和NA實現重複地址檢測的過程為:

(1)     節點A發送NS消息,NS消息的源地址是未指定地址::,目的地址是待檢測的IPv6地址對應的被請求節點組播地址,消息內容中包含了待檢測的IPv6地址。

(2)     如果節點B已經使用這個IPv6地址,則會返回NA消息。其中包含了自己的IPv6地址。

(3)     節點A收到節點B發來的NA消息,就知道該IPv6地址已被使用。反之,則說明該地址未被使用,節點A就可使用此IPv6地址。

圖2-2 重複地址檢測示意圖

 

2.1.5  路由器發現/前綴發現及地址無狀態自動配置

路由器發現/前綴發現是指節點從收到的RA消息中獲取鄰居路由器及所在網絡的前綴,以及其他配置參數。

地址無狀態自動配置是指節點根據路由器發現/前綴發現所獲取的信息,自動配置IPv6地址。

路由器發現/前綴發現通過路由器請求消息RS和路由器通告消息RA來實現,具體過程如下:

(1)     節點啟動時,通過RS消息向路由器發出請求,請求前綴和其他配置信息,以便用於節點的配置。

(2)     路由器返回RA消息,其中包括前綴信息選項(路由器也會周期性地發布RA消息)。

(3)     節點利用路由器返回的RA消息中的地址前綴及其他配置參數,自動配置接口的IPv6地址及其他信息。

前綴信息選項中不僅包括地址前綴的信息,還包括該地址前綴的首選生命期(preferred lifetime)和有效生命期(valid lifetime)。節點收到周期性發送的RA消息後,會根據該消息更新前綴的首選生命期和有效生命期。

·     有效生命期:表示前綴有效期。在有效生命期內,通過該前綴自動生成的地址可以正常使用;有效生命期過期後,通過該前綴自動生成的地址變為無效,將被刪除。

·     首選生命期:表示首選通過該前綴無狀態自動配置地址的時間。首選生命期過期後,節點通過該前綴自動配置的地址將被廢止。節點不能使用被廢止的地址建立新的連接,但是仍可以接收目的地址為被廢止地址的報文。首選生命期必須小於或等於有效生命期。

2.1.6  重定向功能

當主機啟動時,它的路由表中可能隻有一條到缺省網關的缺省路由。當滿足一定的條件時,缺省網關會向源主機發送ICMPv6重定向消息,通知主機選擇更好的下一跳進行後續報文的發送(與IPv4的ICMP重定向消息的功能相同)。

同時滿足下列條件時,設備會發送ICMPv6重定向報文:

·     接收和轉發數據報文的接口是同一接口;

·     被選擇的路由本身沒有被ICMPv6重定向報文創建或修改過;

·     被選擇的路由不是設備的缺省路由;

·     被轉發的IPv6數據報文中不包含路由擴展頭。

2.1.7  協議規範

相關的協議規範有:

·     RFC 4861:Neighbor Discovery for IP Version 6 (IPv6)

·     RFC 8106:IPv6 Router Advertisement Options for DNS Configuration

2.2  IPv6鄰居發現配置任務簡介

本節中的所有配置均為可選,請根據實際情況選擇配置。

·     配置ND表項的相關功能

¡     配置靜態鄰居表項

¡     配置接口上允許動態學習的鄰居的最大個數

¡     配置STALE狀態ND表項的老化時間

¡     配置鏈路本地ND表項資源占用最小化

·     配置設備的跳數限製

·     配置允許發布RA消息及相關參數

·     配置重複地址檢測時發送鄰居請求消息的次數

·     配置IPv6地址衝突自恢複功能

·     配置ND Snooping功能

¡     配置VLAN內的ND Snooping功能

¡     配置VXLAN內的ND Snooping功能

·     配置ND Proxy功能

·     配置接口為用戶側接口或網絡側接口

·     配置ND直連路由通告功能

·     配置ND記錄終端用戶信息功能

¡     開啟ND記錄終端用戶間IPv6地址衝突功能

¡     開啟ND記錄終端用戶端口遷移功能

¡     開啟ND輸出終端用戶上下線日誌功能

·     開啟ND表項下發硬件日誌功能

·     與轉發表匹配的ND請求報文的丟棄功能

·     ND-Ping

2.3  配置靜態鄰居表項

1. 功能簡介

鄰居表項保存的是設備在鏈路範圍內的鄰居信息,設備鄰居表項可以通過鄰居請求消息NS及鄰居通告消息NA來動態創建,也可以通過手工配置來靜態創建。

設備根據鄰居節點的IPv6地址和與此鄰居節點相連的三層接口號來唯一標識一個靜態鄰居表項。目前,靜態鄰居表項有如下幾種配置方式:

·     配置本節點的三層接口相連的鄰居節點的IPv6地址和鏈路層地址。

·     配置本節點VLAN中的二層端口相連的鄰居節點的IPv6地址和鏈路層地址。

·     配置本節點相連的鄰居節點的IPv6地址、對應的MAC地址、入接口(VSI虛接口)、出接口(Tunnel口)以及VSI的名稱。

·     配置本節點相連的鄰居節點的IPv6地址、對應的MAC地址、入接口(VSI虛接口)、出接口(由二層接口結合對應二層接口上的以太網服務實例確定)以及VSI的名稱。

2. 配置限製與指導

對於VLAN接口,可以采用前兩種方式來配置靜態鄰居表項:

·     采用第一種方式配置靜態鄰居表項後,設備還需要解析該VLAN下的二層端口信息。

·     采用第二種方式配置靜態鄰居表項後,需要保證port-type port-number指定的二層端口屬於vlan-id指定的VLAN,且該VLAN已經創建了VLAN接口。在配置後,設備會將VLAN所對應的VLAN接口與IPv6地址相對應來唯一標識一個靜態鄰居表項。

對於鄰居節點相連的三層接口為VSI虛接口時,可以采用後兩種方式來配置靜態鄰居表項:

·     采用第三種方式配置靜態鄰居表項後,該鄰居表項處於REACH狀態。用於VXLAN網關通過Tunnel口相連的組網中,VSI和VSI虛接口共同確定一個VXLAN網關,且一個VSI虛接口會對應多個Tunnel接口。所以,配置靜態鄰居表項時,需要指定VSI虛接口、VSI和Tunnel口之間的對應關係。

·     采用第四種方式配置靜態鄰居表項後,該鄰居表項處於REACH狀態。用於VXLAN網關關聯的本地站點,VSI和VSI虛接口共同確定一個VXLAN網關,一個VXLAN網關下可能存在多個本地站點,本地站點通過以太網服務實例和VSI相關聯。所以,配置靜態鄰居表項時,需要指定VSI虛接口、連接本地站點的二層以太網接口、以太網服務實例和VSI之間的對應關係。

有關VSI、VSI虛接口和以太網服務實例的詳細介紹,請參見“VXLAN配置指導”中的“VXLAN概述”。

有關Tunnel口的詳細介紹,請參見“三層技術-IP業務配置指導”中的“隧道”。

在刪除VSI虛接口對應的靜態鄰居表項時,隻需要指定VSI對應的VSI虛接口即可。

在刪除VLAN接口對應的靜態鄰居表項時,隻需要指定VLAN對應的VLAN接口即可。

執行undo ipv6 neighbor命令既可以刪除靜態鄰居表項,也可以刪除動態鄰居表項。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置靜態鄰居表項。

ipv6 neighbor ipv6-address mac-address { vlan-id port-type port-number | interface interface-type interface-number | vsi-interface vsi-interface-id tunnel number vsi vsi-name | vsi-interface vsi-interface-id interface-type interface-number service-instance instance-id vsi vsi-name } [ vpn-instance vpn-instance-name ]

缺省情況下,未配置靜態鄰居表項。

2.4  配置接口上允許動態學習的鄰居的最大個數

1. 功能簡介

設備可以通過NS消息和NA消息來動態獲取鄰居節點的鏈路層地址,並將其加入到鄰居表中。為了防止部分接口下的用戶占用過多的資源,可以通過設置接口學習動態鄰居表項的最大個數來進行限製。當接口學習到的動態鄰居表項的個數達到所設置的最大值時,該接口將不再學習動態鄰居表項。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置接口上允許學習的動態鄰居表項的最大個數。

ipv6 neighbors max-learning-num max-number

缺省情況下,接口上允許學習動態鄰居表項的最大數目為當前設備剩餘資源的最大值。

2.5  開啟接口從未經請求的NA報文中學習鄰居信息的功能

1. 功能簡介

在一些組網中,為了保證網絡的冗餘鏈路備份,服務器會發送NA報文給兩台對端設備,此時因為不關注對端的地址,所以發送的是組播NA,設備無法從組播NA中學習ND表項。所以在沒有服務器對端到服務器的IPv6流量,且服務器沒有逐個發送單播給對端設備的情況下,對端設備無法學習到服務器的ND表項。

開啟本功能後,接口可以從未經請求的NA報文中學習鄰居信息,生成STALE狀態的ND表項。

2. 配置限製和指導

為防止接收ND攻擊報文,建議本功能僅在信任網絡內開啟。

為防止設備上學習過多的ND表項,占用係統資源,建議開啟本功能前,通過ipv6 neighbor stale-aging命令配置較小的STALE老化時間,加速老化無效的ND表項。

本功能僅支持在三層接口視圖下開啟。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入三層接口視圖。

interface interface-type interface-number

(3)     開啟接口從未經請求的NA報文中學習鄰居信息的功能。

ipv6 nd unsolicited-na-learning enable

缺省情況下,接口不學習未經請求的NA報文中的鄰居信息到ND表項中。

2.6  配置STALE狀態ND表項的老化時間

1. 功能簡介

為適應網絡的變化,ND表需要不斷更新。在ND表中,處於STALE狀態的ND表項並非永遠有效,而是有一個老化時間。到達老化時間的STALE狀態ND表項將遷移到DELAY狀態。5秒鍾後DELAY狀態超時,ND表項將遷移到PROBE狀態,並且設備會發送3次NS報文進行可達性探測。若鄰居已經下線,則收不到回應的NA報文,此時設備會將該ND表項刪除。用戶可以根據網絡實際情況調整老化時間。

2. 配置限製和指導

係統視圖和接口視圖下都可以配置STALE狀態ND表項的老化時間,接口視圖下的配置優先級高於係統視圖下的配置。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置STALE狀態ND表項的老化時間。

¡     在係統視圖下配置STALE狀態ND表項的老化時間。

ipv6 neighbor stale-aging { aging-minutes | second aging-seconds }

缺省情況下,STALE狀態ND表項的老化時間為240分鍾。

¡     請依次執行以下命令在接口視圖下配置STALE狀態ND表項的老化時間。

interface interface-type interface-number

ipv6 neighbor timer stale-aging { aging-minutes | second aging-seconds }

缺省情況下,未配置接口上STALE狀態ND表項的老化時間,以係統視圖下通過ipv6 neighbor stale-aging命令配置的老化時間為準。

2.7  配置鏈路本地ND表項資源占用最小化

1. 功能簡介

本功能可以對鏈路本地ND表項(該ND表項的IPv6地址為鏈路本地地址)占用的資源進行優化。

缺省情況下,所有ND表項均會下發硬件表項。配置本功能後,新學習的、未被引用的鏈路本地ND表項(該ND表項的鏈路本地地址不是某條路由的下一跳)不下發硬件表項,以節省資源。

本功能隻對後續新學習的ND表項生效,已經存在的ND表項不受影響。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置鏈路本地ND表項資源占用最小化。

ipv6 neighbor link-local minimize

缺省情況下,所有ND表項均會下發硬件表項。

2.8  配置設備的跳數限製

1. 功能簡介

本功能可以對設備發送的IPv6數據報文的跳數(即IPv6數據報文的Hop Limit字段的值)進行配置。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置設備的跳數限製。

ipv6 hop-limit value

缺省情況下,設備的跳數限製為64跳。

2.9  配置允許發布RA消息及相關參數

2.9.1  RA消息及相關參數介紹

用戶可以根據實際情況,配置接口是否發送RA消息及發送RA消息的時間間隔,同時可以配置RA消息中的相關參數以通告給主機。當主機接收到RA消息後,就可以采用這些參數進行相應操作。可以配置的RA消息中的參數及含義如表2-2所示。

表2-2 RA消息中的參數及描述

參數

描述

跳數限製(Hop Limit)

在RA消息中發布本設備的跳數限製,收到該RA消息之後,主機在發送IPv6報文時,將使用該跳數值填充IPv6報文頭中的Hop Limit字段

前綴信息(Prefix Information)

在同一鏈路上的主機收到設備發布的前綴信息後,可以進行無狀態自動配置等操作

MTU

發布鏈路的MTU,可以用於確保同一鏈路上的所有節點采用相同的MTU值

下載Boot文件的URL地址

用於設置RA消息中的下載Boot文件的URL地址。設備通過ND協議獲取IPv6地址的同時,能夠獲取下載Boot文件的URL地址,不需要再通過DHCPv6方式獲取

被管理地址配置標誌位(M flag)

用於確定主機是否采用有狀態自動配置獲取IPv6地址

如果設置該標誌位為1,主機將通過有狀態自動配置(例如DHCPv6服務器)來獲取IPv6地址;否則,將通過無狀態自動配置獲取IPv6地址,即根據自己的鏈路層地址及路由器發布的前綴信息生成IPv6地址

其他信息配置標誌位(O flag)

用於確定主機是否采用有狀態自動配置獲取除IPv6地址外的其他信息

如果設置其他信息配置標誌位為1,主機將通過有狀態自動配置(例如DHCPv6服務器)來獲取除IPv6地址外的其他信息;否則,將通過無狀態自動配置獲取其他信息

路由器生存時間(Router Lifetime)

用於設置發布RA消息的路由器作為主機的默認路由器的時間。主機根據接收到的RA消息中的路由器生存時間參數值,就可以確定是否將發布該RA消息的路由器作為默認路由器。發布RA消息中路由器生存時間為0的路由器不能作為默認路由器

鄰居請求消息重傳時間間隔(Retrans Timer)

設備發送NS消息後,如果未在指定的時間間隔內收到響應,則會重新發送NS消息

保持鄰居可達狀態的時間(Reachable Time)

當通過鄰居可達性檢測確認鄰居可達後,在所設置的可達時間內,設備認為鄰居可達;超過設置的時間後,如果需要向鄰居發送報文,會重新確認鄰居是否可達

路由優先級

(Router Preference)

用於設置發布RA消息的路由器的路由器優先級,主機根據接收到的RA消息中的路由器優先級,可以選擇優先級最高的路由器作為默認網關。在路由器的優先級相同的情況下,遵循“先來先用”的原則,優先選擇先接收到的RA消息對應的發送路由器作為默認網關

DNS服務器信息(DNS Server)

用於設置RA消息中的DNS服務器信息。主機通過接收到的RA消息便能夠獲取DNS服務器信息,不需再通過DHCPv6方式獲取

DNS域名後綴信息(DNS Search List)

用於設置RA消息中的DNS域名後綴信息。主機通過接收到的RA消息便能夠獲取DNS域名後綴信息,不需再通過DHCPv6方式獲取

 

2.9.2  配置限製和指導

RA消息發布的最大間隔時間應該小於或等於RA消息中路由器的生存時間,以保證在路由器失效之前得到更新的RA消息。

在接口上配置的鄰居請求消息重傳時間間隔及保持鄰居可達狀態的時間,既可作為RA消息中的信息發布給主機,也可作為本接口發送鄰居請求消息的時間間隔及保持鄰居可達狀態的時間。

2.9.3  配置允許發布RA消息

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     取消對RA消息發布的抑製。

undo ipv6 nd ra halt

缺省情況下,抑製發布RA消息。

(4)     配置RA消息發布的最大時間間隔和最小時間間隔。

ipv6 nd ra interval max-interval-value min-interval-value

缺省情況下,RA消息發布的最大間隔時間為600秒,最小時間間隔為200秒。

接口將在最大時間間隔與最小時間間隔之間隨機選取一個值來發布RA消息。

配置的最小時間間隔應該小於等於最大時間間隔的0.75倍。

2.9.4  配置RA消息中的常用參數

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置RA消息中的前綴信息。

ipv6 nd ra prefix { ipv6-prefix prefix-length | ipv6-prefix/prefix-length } [ valid-lifetime preferred-lifetime [ no-autoconfig | off-link | prefix-preference level ] * | no-advertise ]

缺省情況下,未配置RA消息中的前綴信息,此時將使用發送RA消息的接口IPv6地址作為RA消息中的前綴信息,其手工配置地址的有效生命期是2592000秒(30天),首選生命期是604800(7天);其他自動分配地址(如DHCPv6分配地址)的有效生命期和首選生命期與地址本身的生命期相同。

(4)     配置通過RA消息發布的前綴使用的缺省參數。

ipv6 nd ra prefix default [ valid-lifetime preferred-lifetime [ no-autoconfig | off-link ] * | no-advertise ]

缺省情況下,未配置通過RA消息發布的前綴使用的缺省參數。

(5)     配置RA消息中不攜帶MTU選項。

ipv6 nd ra no-advlinkmtu

缺省情況下,RA消息中攜帶MTU選項。

(6)     配置RA消息中不指定跳數限製。

ipv6 nd ra hop-limit unspecified

缺省情況下,RA消息中發布本設備的跳數限製,本設備的跳數限製默認為64跳。

(7)     配置RA消息中攜帶的下載Boot文件的URL地址。

ipv6 nd ra boot-file-url url-string

缺省情況下,RA消息中不攜帶下載Boot文件的URL地址。

(8)     設置被管理地址配置標誌位為1。

ipv6 nd autoconfig managed-address-flag

缺省情況下,被管理地址標誌位為0,即主機通過無狀態自動配置獲取IPv6地址。

(9)     設置其他配置標誌位為1。

ipv6 nd autoconfig other-flag

缺省情況下,其他配置標誌位為0,即主機通過無狀態自動配置獲取其他信息。

(10)     配置RA消息中路由器的生存時間。

ipv6 nd ra router-lifetime time

缺省情況下,RA消息中路由器的生存時間為RA消息發布的最大時間間隔的3倍。

(11)     配置鄰居請求消息重傳時間間隔。

ipv6 nd ns retrans-timer value

缺省情況下,接口發送NS消息的時間間隔為1000毫秒;接口發布的RA消息中Retrans Timer字段的值為0,即不對主機進行指定。

(12)     配置RA消息中路由器的優先級。

ipv6 nd router-preference { high | low | medium }

缺省情況下,RA消息中路由器的優先級為medium

(13)     配置保持鄰居可達狀態的時間。

ipv6 nd nud reachable-time time

缺省情況下,接口保持鄰居可達狀態的時間為1200000毫秒;接口發布的RA消息中Reachable Timer字段的值為0,即不對主機進行指定。

2.9.5  配置RA消息中的DNS服務器信息

1. 功能簡介

RA消息中攜帶DNS服務器選項,可為主機提供DNS服務器信息。當主機通過無狀態地址自動配置獲取IPv6地址的同時,能夠獲取DNS服務器信息,不需再通過DHCPv6方式獲取。

一條DNS服務器信息對應RA消息中的一個DNS服務器選項。選項按照配置序列號進行排列,序列號小的排在前麵。

執行ipv6 nd ra dns server命令後,立即發送RA報文,報文中攜帶新配置的以及之前配置的DNS服務器信息。執行undo ipv6 nd ra dns server命令後,立即發送兩個RA報文,第一個報文攜帶所有DNS服務器信息,包括被刪除的DNS服務器,其生存時間為0;第二個報文攜帶剩餘的DNS服務器信息。發送RA報文後,會立即刷新接口下RA消息發布的時間間隔。

2. 配置限製和指導

同一個接口下最多可配置8條DNS服務器信息。

如果沒有配置DNS服務器的生存時間,也未指定DNS服務器的生存時間為無限期,則DNS服務器的生存時間為3*RA消息發布的最大時間間隔,RA消息發布的最大時間間隔可以通過ipv6 nd ra interval命令配置。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置RA消息中的DNS服務器信息。

ipv6 nd ra dns server ipv6-address [ seconds | infinite ] sequence seqno

缺省情況下,未配置RA消息中的DNS服務器信息,RA消息中不帶DNS服務器信息。

2.9.6  配置RA消息中的DNS域名後綴信息

1. 功能簡介

RA消息中攜帶DNSSL(DNS Search List,DNS查詢列表)選項,可為主機提供域名後綴信息。當主機通過無狀態地址自動配置獲取IPv6地址的同時,能夠獲取域名後綴信息,不需再通過DHCPv6方式獲取。

一條DNS域名後綴信息對應RA消息中的一個DNSSL選項。選項按照配置序列號進行排列,序列號小的排在前麵。

執行ipv6 nd ra dns search-list命令後,立即發送RA報文,報文中攜帶新配置的以及之前配置的DNS域名後綴信息。執行undo ipv6 nd ra dns search-list命令後,立即發送兩個RA報文,第一個報文攜帶所有域名後綴信息,包括被刪除的DNS域名後綴,其生存時間為0;第二個報文攜帶剩餘的域名後綴信息。發送RA報文後,會立即刷新接口下RA消息發布的時間間隔。

2. 配置限製和指導

同一個接口下最多可配置8條DNS域名後綴信息。

如果沒有配置DNS域名後綴的生存時間,也未指定DNS域名後綴的生存時間為無限期,則DNS域名後綴的生存時間為3*RA消息發布的最大時間間隔,RA消息發布的最大時間間隔可以通過ipv6 nd ra interval命令配置

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置RA消息中的DNS域名後綴信息。

ipv6 nd ra dns search-list domain-name [ seconds | infinite ] sequence seqno

省情況下,未配置RA消息中的DNS域名後綴信息,RA消息中不帶DNS域名後綴信息。

2.9.7  開啟RA消息中的DNS信息抑製功能

1. 功能簡介

配置RA消息中的DNS信息(包括DNS服務器信息和DNS域名後綴信息)後,如果希望RA消息不發布DNS信息,可以開啟相應的抑製功能。

開啟RA消息中的DNS服務器信息抑製功能後:

·     若接口下已經配置了DNS服務器信息或者已經通過AAA授權了DNS服務器地址,則立即發送兩個RA報文,第一個報文攜帶DNS服務器的生存時間為0,第二個報文不攜帶DNS服務器信息。

·     若接口下未配置DNS服務器信息且未通過AAA授權DNS服務器地址,則不發送RA報文。

·     若接口下配置了新的DNS服務器信息或者刪除了一條DNS服務器信息,則立即發送RA報文,但是不攜帶任何DNS服務器信息。

關閉RA消息中的DNS服務器信息抑製功能後:

·     若接口下已經配置了DNS服務器信息或者已經通過AAA授權了DNS服務器地址,則立即發送RA報文,攜帶DNS服務器信息。

·     若接口下未配置DNS服務器信息且未通過AAA授權DNS服務器地址,則不發送RA報文。

發送RA報文後,會立即刷新接口下RA消息發布的時間間隔。

開啟、關閉RA消息中的DNS域名後綴信息抑製功能後,RA報文的發送邏輯和上述開啟、關閉RA消息中的DNS服務器信息抑製功能後的RA報文發送邏輯相同,此處不再贅述。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟RA消息中的DNS服務器信息抑製功能。

ipv6 nd ra dns server suppress

缺省情況下,RA消息中的DNS服務器信息抑製功能處於關閉狀態。

(4)     開啟RA消息中的DNS域名後綴信息抑製功能。

ipv6 nd ra dns search-list suppress

缺省情況下,RA消息中的DNS域名後綴信息抑製功能處於關閉狀態。

2.10  配置重複地址檢測時發送鄰居請求消息的次數

1. 功能簡介

接口獲得IPv6地址後,將發送鄰居請求消息進行重複地址檢測。如果在指定的時間內(通過ipv6 nd ns retrans-timer命令配置)沒有收到響應,則繼續發送鄰居請求消息,當發送的次數達到所設置的次數後,仍未收到響應,則認為該地址可用。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置重複地址檢測時發送鄰居請求消息的次數。

ipv6 nd dad attempts times

缺省情況下,重複地址檢測時發送鄰居請求報文的次數為1,當times值為0時,表示禁止重複地址檢測。

2.11  配置IPv6地址衝突自恢複功能

1. 功能簡介

當接口獲取到一個IPv6地址後,需要使用重複地址檢測功能確定該地址是否已被其他節點使用。此接口會通過ND協議向被檢測節點發送NS消息,地址衝突的節點會向此接口返回NA消息,接口收到NA消息後認為此IPv6地址是重複的。此IPv6地址在這個接口上被標識為duplicate狀態,無法被用於通信。

接口不會自動為被標識為duplicate狀態的IPv6地址使用重複地址檢測功能,因此即便地址不再衝突,被標識為duplicate狀態的IPv6地址也不會自動恢複到正常狀態。若開啟地址衝突自恢複功能,接口在收到被檢測節點的NA消息後,每隔一段時間會恢複重複地址檢測功能,繼續向被檢測節點發送NS消息,直到不再收到NA消息或地址衝突自恢複功能被關閉。有關具體探測過程的詳細介紹,請參見“2.1.4  重複地址檢測”。

若開啟了地址衝突自恢複功能且配置地址衝突自恢複的最大時間間隔為interval,在接口收到被檢測節點的NA消息後係統會等待1~interval秒之間的一個隨機時間間隔,然後恢複重複地址檢測功能。每次接口收到NA消息係統生成的隨機時間間隔都可能不同,這樣可以降低因同時發送NS消息而造成報文擁塞的幾率。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟IPv6地址衝突自恢複功能。

ipv6 address duplicate-detect enable

缺省情況下,IPv6地址衝突自恢複功能處於關閉狀態。

(3)     (可選)配置IPv6地址衝突自恢複的最大時間間隔。

ipv6 address duplicate-detect interval interval

缺省情況下,IPv6地址衝突自恢複的最大時間間隔為5秒。

2.12  配置VLAN內的ND Snooping功能

2.12.1  功能簡介

ND Snooping功能用於二層交換網絡環境,設備通過偵聽ND或者數據報文來創建ND Snooping表項,該表項內容包括報文的源IPv6地址、源MAC地址、所屬VLAN和報文入端口等信息。

ND Snooping表項可以配合ND Detection功能使用。關於ND Detection功能的詳細介紹,請參見“安全配置指導”的“ND攻擊防禦”。

ND Snooping表項可以配合IPv6 Source Guard功能使用。關於IPv6 Source Guard功能的詳細介紹,請參見“安全配置指導”中的“IP Source Guard”。

下麵具體介紹一下ND Snooping表項的建立、遷移和老化機製。(以ND報文為例)

1. 表項建立機製

當收到未知源地址的ND或者數據報文後,設備會新建一個ND Snooping表項,此時該表項處於INVALID狀態,隨後通過接收報文的接口所屬VLAN內的ND信任端口(配置了ipv6 nd detection trust命令的端口)發送兩次DAD NS報文進行探測,報文發送的時間間隔可以由ipv6 nd snooping dad retrans-timer命令配置。如果第一次報文發出後,在INVALID狀態的超時時間(可以由ipv6 nd snooping lifetime invalid命令配置)內未收到對應的NA應答,則說明局域網中不存在衝突的地址,此時該ND Snooping表項進入VALID狀態;如果第一次報文發出後,在INVALID狀態的超時時間內收到對應的NA應答,則說明局域網中存在衝突的地址,此時設備刪除該ND Snooping表項。

2. 表項遷移機製

表項遷移包括以下兩種方式:

·     本設備遷移:當設備從相同VLAN內的其他ND非信任端口收到相同源地址的ND報文時,設備通過學習到ND Snooping表項的入端口發送兩次DAD NS報文進行探測,報文發送的時間間隔可以由ipv6 nd snooping dad retrans-timer命令配置。如果第一次報文發出後,在INVALID狀態的超時時間內未收到對應的NA應答,則說明原用戶已經跟入端口斷開,則設備把該ND Snooping表項的入端口修改為收到新報文的端口;如果第一次報文發出後,在INVALID狀態的超時時間內收到對應的NA應答,則該ND Snooping表項不發生變化。

·     跨設備遷移:當設備從相同VLAN內的ND信任端口收到相同源地址的ND報文時,設備通過學習到ND Snooping表項的入端口發送兩次DAD NS報文進行探測,報文發送的時間間隔可以由ipv6 nd snooping dad retrans-timer命令配置。如果第一次報文發出後,在INVALID狀態的超時時間內未收到對應的NA應答,則說明原用戶已經跟入端口斷開,則設備刪除對應的ND Snooping表項,而與該ND信任端口相連的設備會開啟表項創建機製並建立ND Snooping表項,完成表項的跨設備遷移。如果第一次報文發出後,在INVALID狀態的超時時間內收到對應的NA應答,則說明原用戶未跟入端口斷開,設備會保留對應的ND Snooping表項。

3. 表項老化機製

如果一個ND Snooping表項自最後一次更新後,在VALID狀態超時時間(可以由ipv6 nd snooping lifetime valid命令配置)內未收到ND更新報文,則進入INVALID狀態,隨後設備通過學習到ND Snooping表項的入端口發送兩次DAD NS報文進行探測。如果第一次報文發出後,在INVALID狀態的超時時間內沒有收到對應的NA應答,則說明原用戶已經跟入端口斷開,設備刪除對應的ND Snooping表項;如果第一次報文發出後,在INVALID狀態的超時時間內收到對應的NA應答,則說明原用戶未跟入端口斷開,設備會保留對應的ND Snooping表項,重新進入VALID狀態。

2.12.2  配置ND Snooping表項學習功能

(1)     進入係統視圖。

system-view

(2)     進入VLAN視圖。

vlan vlan-id

(3)     開啟學習ND Snooping表項的功能。請至少選擇其中一項進行配置。

¡     開啟學習表項地址類型為全球單播地址的ND Snooping表項的功能。

ipv6 nd snooping enable global

¡     開啟學習表項地址類型為鏈路本地地址的ND Snooping表項的功能。

ipv6 nd snooping enable link-local

缺省情況下,學習表項地址類型為全球單播地址或鏈路本地地址的ND Snooping功能處於關閉狀態。

(4)     (可選)開啟通過IPv6數據報文學習ND Snooping表項的功能。

ipv6 nd snooping glean source

缺省情況下,通過IPv6數據報文學習ND Snooping表項的功能處於關閉狀態。

本命令開啟後,VLAN內ND非信任端口必須開啟IPv6 Source Guard功能,否則會導致該端口的報文不能正常轉發。

2.12.3  配置設備支持學習的ND Snooping表項最大個數

(1)     進入係統視圖。

system-view

(2)     進入二層以太網接口視圖或二層聚合接口視圖。

interface interface-type interface-number

(3)     (可選)配置接口下學習ND Snooping表項的最大個數。

ipv6 nd snooping max-learning-num max-number

接口下學習ND Snooping表項的最大個數為1024。

2.12.4  配置ND Snooping表項的其他參數

(1)     進入係統視圖。

system-view

(2)     進入二層以太網接口視圖或二層聚合接口視圖。

interface interface-type interface-number

(3)     (可選)配置接口為上行口,禁止接口學習ND Snooping表項。

ipv6 nd snooping uplink

缺省情況下,ND Snooping功能使能後,接口上允許學習ND Snooping表項。

(4)     退回係統視圖。

quit

(5)     (可選)配置ND Snooping表項的超時時間。

ipv6 nd snooping lifetime { invalid invalid-lifetime | valid valid-lifetime }

缺省情況下,ND Snooping表項的INVALID狀態(TENTATIVE、TESTING_TPLT和TESTING_VP狀態)的超時時間為500毫秒,VALID狀態的超時時間為300秒。

(6)     (可選)配置ND Snooping表項建立和遷移時發送兩次DAD NS報文進行探測的時間間隔。

ipv6 nd snooping dad retrans-timer interval

缺省情況下,發送兩次DAD NS報文進行探測的時間間隔為250毫秒。

2.13  配置VXLAN內的ND Snooping功能

2.13.1  功能簡介

在一個VXLAN內開啟ND Snooping功能後,設備通過偵聽該VXLAN內接收的ND報文來創建ND Snooping表項,該表項內容包括報文的源IPv6地址、源MAC地址、VSI名稱和出鏈路標識符等信息。關於VXLAN的詳細介紹,請參見“VXLAN配置指導”中的“VXLAN概述”。

ND Snooping表項可以配合ND Detection功能使用。關於ND Detection功能的詳細介紹,請參見“安全配置指導”的“ND攻擊防禦”。

ND Snooping表項可以配合IPv6 Source Guard功能使用。關於IPv6 Source Guard功能的詳細介紹,請參見“安全配置指導”中的“IP Source Guard”。

下麵具體介紹一下ND Snooping表項的建立和老化機製。

1. 表項建立機製

在一個VXLAN中開啟ND Snooping後,該VXLAN內接收的ND報文都會被上送到CPU。CPU對上送的ND報文進行分析,獲取ND報文的源IPv6地址、源MAC地址、VSI名稱和出鏈路標識符等信息,建立記錄用戶信息的ND Snooping表項。

2. 表項老化機製

ND Snooping表項的老化時間為5分鍾。如果一個ND Snooping表項在其老化時間到達前30秒時沒有收到ND更新報文,此表項會置為臨時非生效狀態,設備會向外主動發送一個NS請求進行探測。當收到源IPv6地址和源MAC與已存在的ND Snooping表項IPv6地址和MAC均相同的ND報文時,此ND Snooping表項進行更新,置為有效狀態,並重新老化計時。

當ND Snooping表項達到老化時間後,則將此ND Snooping表項刪除。

2.13.2  配置步驟

(1)     進入係統視圖。

system-view

(2)     創建一個VSI,並進入VSI視圖。

vsi vsi-name

(3)     開啟學習ND Snooping表項的功能。請至少選擇其中一項進行配置。

¡     開啟學習表項地址類型為全球單播地址的ND Snooping表項的功能。

ipv6 nd snooping enable global

¡     開啟學習表項地址類型為鏈路本地地址的ND Snooping表項的功能。

ipv6 nd snooping enable link-local

缺省情況下,學習表項地址類型為全球單播地址和鏈路本地地址的ND Snooping功能處於關閉狀態。

2.14  配置ND Proxy功能

2.14.1  功能簡介

如果NS請求是從一個網絡的主機發往同一網段卻不在同一物理網絡上的另一台主機,那麼連接它們的具有代理功能的設備就可以代答該請求,回應NA報文,這個過程稱作ND代理(ND Proxy)。

ND Proxy功能屏蔽了分離的物理網絡這一事實,使用戶使用起來,好像在同一個物理網絡上。

ND Proxy功能根據應用場景不同分為普通ND Proxy和本地ND Proxy。

1. 普通ND Proxy

普通ND Proxy的典型應用環境如圖2-3所示。設備Device通過兩個三層接口Interface A和Interface B連接兩個網絡,兩個三層接口的IPv6地址不在同一個網段,接口地址分別為4:1::99/64、4:2::99/64。但是兩個網絡內的主機Host A和Host B的地址通過掩碼的控製,既與相連設備的接口地址在同一網段,同時二者也處於同一個網段。

圖2-3 普通ND Proxy的應用環境

在這種組網情況下,當Host A需要與Host B通信時,由於目的IPv6地址與本機的IPv6地址為同一網段,因此Host A會直接發出請求Host B硬件地址的NS請求。但是,此時的兩台主機處於不同的廣播域中,Host B無法收到Host A的NS請求報文,當然也就無法應答。

通過在Device上啟用ND Proxy功能,可以解決此問題。在接口Interface A和Interface B上啟用ND Proxy後,Device可以應答Host A的NS請求。同時,Device作為Host B的代理,把其它主機發送過來的報文轉發給Host B。這樣,實現Host A與Host B之間的通信。

2. 本地ND Proxy

本地ND Proxy的應用場景如圖2-4所示。Host A屬於VLAN 2,Host B屬於VLAN 3。但它們分別連接到端口Port B1和 Port B3上。

圖2-4 本地ND Proxy的應用環境

在這種組網情況下,當Host A需要與Host B通信時,由於目的IPv6地址與本機的IPv6地址為同一網段,因此Host A會直接發出請求Host B硬件地址的NS請求。但是,因為連接兩台主機屬於不同的VLAN中,Host B無法收到Host A的NS請求報文。

通過在Device A上啟用本地ND Proxy功能,可以解決此問題。在接口Interface A上啟用本地ND Proxy後,Device A會代替Host B回應NA,Host A發給Host B的報文就會通過Device A進行轉發,從而實現Host A與Host B之間的通信。

本地ND Proxy可以在下列四種情況下實現主機之間的三層互通:

·     想要互通的主機分別連接到同一台設備的不同VLAN中的端口下;

·     想要互通的主機分別連接到同一個VLAN中的同一個隔離組內的不同二層隔離端口下;

·     開啟Super VLAN功能後,想要互通的主機屬於不同的Sub VLAN;

·     開啟Private VLAN功能後,想要互通的主機屬於不同的Secondary VLAN。

2.14.2  配置普通ND Proxy功能

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟普通ND Proxy功能。

proxy-nd enable

缺省情況下,ND Proxy功能處於關閉狀態。

2.14.3  配置本地ND Proxy功能

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟本地ND Proxy功能。

local-proxy-nd enable

缺省情況下,本地ND Proxy功能處於關閉狀態。

2.15  配置接口為用戶側接口或網絡側接口

1. 功能簡介

當接口連接終端主機時,可以配置接口為用戶側接口。對於這種接口上學到的ND表項,設備上不會生成到主機的路由。

當接口連接網絡設備時,需要配置接口為網絡側接口。對於這種接口上學到的ND表項可以用來生成設備的路由信息條目。此時接口允許學習的ND表項的最大取值受硬件下一跳資源的限製。

配置接口為用戶側或網絡側接口時,接口實際允許學習的動態ND表項的最大取值不同。根據實際使用情況,正確配置接口的工作模式,可以適當的節省硬件資源。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建VLAN接口並進入VLAN接口視圖。

interface vlan-interface vlan-interface-id

(3)     配置接口為用戶側接口或網絡層接口。

¡     配置接口為用戶側接口。

ipv6 nd mode uni

¡     配置接口為網絡側接口。

undo ipv6 nd mode

缺省情況下,接口為網絡側接口。

2.16  配置ND直連路由通告功能

2.16.1  功能簡介

ND直連路由通告功能用於使設備通過ND表項生成直連路由信息,以便其他路由協議發布該直連路由或指導報文轉發。通過路由優先級,可確定生成的直連路由條目的匹配順序;通過路由標記值,可便於動態路由協議引用對應標記值的直連路由,從而實現將該直連路由通告到對應網絡中的目的。

當設備開啟了ND直連路由通告功能後,設備通過本接口學習到的ND表項生成128位的主機路由,這會導致路由表中存在大量的主機路由。此時,可以使用ipv6 nd route-direct prefix convert-length命令配置匹配指定IPv6前綴的ND表項生成網段路由的前綴長度,使多個匹配指定IPv6前綴的ND表項生成一個網段路由,這樣可以避免路由協議向鄰居發布大量的主機路由。

2.16.2  三層接入組網應用

圖2-5所示,Server A和Server B通過三層接口接入到Device A與Device B。在Device A的Interface A和Device B的Interface B下開啟ND直連路由通告功能後,Device A可以通過ND表項生成到Server A的主機路由,Device B可以通過ND表項生成到Server B的主機路由。其他路由協議可以僅發布該主機路由,減少由於發布網段路由而引入的無效流量,節約帶寬。

圖2-5 三層接入組網圖

 

2.16.3  配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟ND直連路由通告功能。

ipv6 nd route-direct advertise [ preference preference-value | tag tag-value ] *

缺省情況下,ND直連路由通告功能處於關閉狀態。

(4)     (可選)配置匹配指定IPv6前綴的ND表項生成網段路由的前綴長度。

ipv6 nd route-direct prefix ipv6-prefix prefix-length convert-length convert-length

缺省情況下,未配置匹配指定IPv6前綴的ND表項生成網段路由的前綴長度,設備通過ND表項生成128位的主機路由。

本命令指定的IPv6前綴必須與接口配置的IPv6地址的前綴一致才會生效。

2.17  開啟ND記錄終端用戶間IPv6地址衝突功能

1. 功能簡介

開啟本功能後,當設備收到NA報文時,會根據NA報文中的源IPv6地址查詢ND表項,如果發現源IPv6地址和某條ND表項中的IPv6地址相同,但MAC地址不同,則認為網絡中的終端用戶間存在IPv6地址衝突。此時,設備會記錄衝突信息,同時生成對應的IPv6地址衝突日誌。生成的IPv6地址衝突日誌將被發送給信息中心模塊處理,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。有關信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟ND記錄終端用戶間IPv6地址衝突功能。

ipv6 nd user-ip-conflict record enable

缺省情況下,ND記錄終端用戶間IPv6地址衝突功能處於關閉狀態。

2.18  開啟ND記錄終端用戶端口遷移功能

1. 功能簡介

開啟本功能後,當設備收到NA報文時,會根據接收到NA報文的端口查詢ND表項。如果發現源IPv6地址和源MAC地址與某條ND表項中的IPv6地址和MAC地址相同,但端口不同,則認為用戶發生了端口遷移。此時,設備會記錄衝突信息,同時生成對應的IPv6地址的遷移日誌。生成的遷移日誌將被發送給信息中心模塊處理,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。有關信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟ND記錄終端用戶端口遷移功能。

ipv6 nd user-move record enable

缺省情況下,ND記錄終端用戶端口遷移功能處於關閉狀態。

2.19  開啟ND輸出終端用戶上下線日誌功能

1. 功能簡介

開啟本功能後,當設備檢測到終端用戶上、下線時,會生成上、下線日誌。生成的日誌將被發送給信息中心模塊處理,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。有關信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。

2. 配置限製和指導

日誌輸出速率值越大,CPU占用越高。請根據設備CPU的性能和使用情況,調整日誌輸出速率值。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟ND輸出終端用戶上下線日誌功能。

ipv6 nd online-offline-log enable [ rate rate ]

缺省情況下,ND輸出終端用戶上下線日誌功能處於關閉狀態。

2.20  開啟ND表項下發硬件日誌功能

1. 功能簡介

設備學習ND表項後,會將ND表項下發到硬件,以供芯片轉發報文時使用。開啟ND表項下發硬件日誌功能後,如果ND表項下發到硬件的過程產生異常,設備會時輸出日誌信息記錄此事件。生成的日誌信息將被發送到設備的信息中心,通過設置信息中心的參數,最終決定日誌報文的輸出規則(即是否允許輸出以及輸出方向)。有關信息中心參數的設置請參見“網絡管理和監控配置指導”中的“信息中心”。

2. 配置限製和指導

為了避免生成日誌的過程占用內存,建議用戶隻在流量的轉發產生異常,需要定位問題時開啟本功能。如果每秒鍾生成的日誌條目達到最大值,則即使有新的ND表項在下發到硬件的過程中產生異常,設備也不會輸出此ND表項的日誌。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟ND表項下發硬件日誌功能。

ipv6 nd hardware log enable [ count-limit count-limit-value ]

缺省情況下,ND表項下發硬件日誌功能處於關閉狀態。

2.21  與轉發表匹配的ND請求報文的丟棄功能

2.21.1  與轉發表匹配的ND請求報文的丟棄功能簡介

缺省情況下,當接口收到ND請求報文時,無論IPv6地址是否在轉發表中,接口都會返回ND應答報文。開啟此功能後,如果ND請求報文的目的IPv6地址在轉發表中,則接口直接丟棄ND請求報文,不會返回ND應答報文。開啟此功能可減少網絡內的ND報文,從而起到抑製ND泛洪的作用。

2.21.2  配置與轉發表匹配的ND請求報文的丟棄功能

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     開啟對與轉發表匹配的ND請求報文的丟棄功能。

ipv6 nd fib-miss drop

缺省情況下,與轉發表匹配的ND請求報文的丟棄功能處於關閉狀態。

2.22  ND-Ping

2.22.1  針對IPv6地址的ND-Ping功能

1. 功能簡介

針對IPv6地址的ND-Ping功能是利用ND報文在局域網內探測IPv6地址是否被其他設備使用的一種方法。

設備向目的IPv6地址發送一個NS報文後,如果在指定的時間內未收到對應的NA報文,且未達到指定的發送次數,則繼續發送下一個NS報文;如果已達到指定的發送次數,則認為此IPv6地址未被其他設備使用,將停止發送探測用途的NS報文。

通過ping ipv6命令也可以探測IPv6地址是否被網絡上的其他設備使用。但是如果目的端設備帶有防火牆功能且配置為對ICMPv6報文不進行回複時,就不會響應ICMPv6報文,造成探測結果不準確。由於ND報文是二層協議,大多數情況下報文不會被防火牆攔下,從而避免了此類情況的發生。另外,NS報文長度小於ICMPv6長度,占用的網絡資源更少。

2. 配置準備

如果要使用目的端的主機名使用針對IPv6地址的ND-Ping功能,請事先在設備上配置DNS功能。關於DNS的詳細介紹,請參見“三層技術-IP業務”中的“域名解析”。

3. 配置限製和指導

當局域網內有多台設備時,使用本功能可能會消耗較多時間。可以在執行命令過程中,輸入<Ctrl+C>終止ping nd ipv6命令。

4. Ping操作

可在任意視圖下,利用ND報文在局域網內探測IPv6地址是否被其他設備使用。

ping nd ipv6 host [ interface interface-type interface-number [ vlan vlan-id ] ] [ timeout timeout ] [ count count ]

2.22.2  針對MAC地址的ND-Ping功能

1. 功能簡介

當已知某網段一個特定的MAC地址而不知道其對應的IPv6地址時,通過針對MAC地址的ND-Ping功能發送廣播的三層ICMP報文可以得到該MAC所對應的IPv6地址。

設備發送ICMPv6回顯請求報文後,如果在指定的時間內未收到ICMPv6回顯應答報文,且未達到指定的發送次數,則繼續發送ICMPv6回顯請求報文;如果已達到指定的發送次數,則認為此MAC地址不存在,不再發送ICMPv6回顯請求報文。

2. 配置限製和指導

當指定網段內有多台設備時,使用本功能可能會消耗較多時間。可以在執行命令過程中,輸入<Ctrl+C>可終止ping nd mac命令。

3. Ping操作

可在任意視圖下,利用三層ICMP報文查詢MAC所對應的IPv6地址。

ping nd mac mac-address { ipv6 ipv6-address [ vpn-instance vpn-instance-name ] | interface interface-type interface-number } [ timeout timeout ] [ count count ]

2.23  IPv6鄰居發現顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後的運行情況,用戶可以通過查看顯示信息驗證配置的效果。

在用戶視圖下,執行reset命令可以清除相應的統計信息。

表2-3 IPv6鄰居發現顯示和維護

操作

命令

顯示ND代理應答報文數的統計信息

display ipv6 nd proxy statistics

顯示通過ND模塊通告生成的直連路由的相關信息

display ipv6 nd route-direct advertise interface interface-type interface-number

顯示VLAN內的ND Snooping表項個數

display ipv6 nd snooping count vlan [ interface interface-type interface-number ]

顯示VSI下的ND Snooping表項個數

display ipv6 nd snooping count  vsi [ vsi-name ]

顯示VLAN內的ND Snooping表項信息

display ipv6 nd snooping vlan [ [ vlan-id | interface interface-type interface-number ] [ global | link-local ] | ipv6-address ] [ verbose ]

顯示VSI下的ND Snooping表項信息

display ipv6 nd snooping vsi [ vsi-name ] [ slot slot-number

顯示ND記錄的終端用戶間IPv6地址衝突表項信息

display ipv6 nd user-ip-conflict record [slot slot-number ]

顯示ND記錄的終端用戶端口遷移表項信息

display ipv6 nd user-move record [ slot slot-number ]

顯示鄰居表項的個數

display ipv6 neighbors { { all | dynamic | static } [ slot slot-number ] | interface interface-type interface-number | vlan vlan-id } count

顯示鄰居信息

display ipv6 neighbors { { ipv6-address | all | dynamic | static } [ slot slot-number ] | interface interface-type interface-number | vlan vlan-id } [ verbose ]

顯示設備支持的ND表項的最大數目

display ipv6 neighbors entry-limit

顯示ND表項的統計信息

display ipv6 neighbors statistics { [ by-slot ] all | interface { interface-name | interface-type interface-number } | slot slot-number }

顯示ND表項數的使用率

display ipv6 neighbors usage

顯示指定VPN實例的鄰居信息

display ipv6 neighbors vpn-instance vpn-instance-name [ count ]

清除VLAN內的ND Snooping表項

reset ipv6 nd snooping vlan { [ vlan-id ] [ global | link-local ] | vlan-id ipv6-address }

清除VSI下的ND Snooping表項

reset ipv6 nd snooping vsi [ vsi-name ]

清除IPv6鄰居信息

reset ipv6 neighbors { all | dynamic | interface interface-type interface-number | slot slot-number | static }

 

2.24  IPv6鄰居發現典型配置舉例

2.24.1  ND Snooping基本組網配置舉例

1. 組網需求

Host A和Host B通過Device B連接到網關設備Device A。要求Device B上可以動態產生Host A和Host B的ND Snooping表項。

2. 組網圖

圖2-6 ND Snooping組網圖

 

3. 配置步驟

(1)     配置Device A

# 創建VLAN 10。

<DeviceA> system-view

[DeviceA] vlan 10

[DeviceA-vlan10] quit

# 配置端口Twenty-FiveGigE1/0/3允許VLAN 10的報文通過。

[DeviceA] interface twenty-fivegige 1/0/3

[DeviceA-Twenty-FiveGigE1/0/3] port link-type trunk

[DeviceA-Twenty-FiveGigE1/0/3] port trunk permit vlan 10

[DeviceA-Twenty-FiveGigE1/0/3] quit

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

[DeviceA] interface vlan-interface 10

[DeviceA-Vlan-interface10] ipv6 address 10::1/64

[DeviceA-Vlan-interface10] quit

(2)     配置Device B

# 創建VLAN 10。

[DeviceB] vlan 10

[DeviceB-vlan10] quit

# 配置端口Twenty-FiveGigE1/0/1~Twenty-FiveGigE1/0/3允許VLAN 10的報文通過。

[DeviceB] interface twenty-fivegige 1/0/1

[DeviceB-Twenty-FiveGigE1/0/1] port link-type access

[DeviceB-Twenty-FiveGigE1/0/1] port access vlan 10

[DeviceB-Twenty-FiveGigE1/0/1] quit

[DeviceB] interface twenty-fivegige 1/0/2

[DeviceB-Twenty-FiveGigE1/0/2] port link-type access

[DeviceB-Twenty-FiveGigE1/0/2] port access vlan 10

[DeviceB-Twenty-FiveGigE1/0/2] quit

[DeviceB] interface twenty-fivegige 1/0/3

[DeviceB-Twenty-FiveGigE1/0/3] port link-type trunk

[DeviceB-Twenty-FiveGigE1/0/3] port trunk permit vlan 10

[DeviceB-Twenty-FiveGigE1/0/3] quit

# 在VLAN 10下開啟學習表項類型為全球單播地址和鏈路本地地址的ND Snooping表項的功能。

[DeviceB] vlan 10

[DeviceB-vlan10] ipv6 nd snooping enable global

[DeviceB-vlan10] ipv6 nd snooping enable link-local

# VLAN 10下配置ND Snooping通過數據報文學習ND Snooping表項的功能。

[DeviceB-vlan10] ipv6 nd snooping glean source

# 將上行端口Twenty-FiveGigE1/0/3配置為ND信任端口,下行端口Twenty-FiveGigE1/0/1和Twenty-FiveGigE1/0/2采用缺省配置,即為ND非信任端口。

[DeviceB] interface twenty-fivegige 1/0/3

[DeviceB-Twenty-FiveGigE1/0/3] ipv6 nd detection trust

[DeviceB-Twenty-FiveGigE1/0/3] quit

# 配置下行端口Twenty-FiveGigE1/0/1和Twenty-FiveGigE1/0/2的ND Snooping 表項最大學習數目200條。

[DeviceB] interface twenty-fivegige 1/0/1

[DeviceB-Twenty-FiveGigE1/0/1] ipv6 nd snooping max-learning-num 200

[DeviceB-Twenty-FiveGigE1/0/1] quit

[DeviceB] interface twenty-fivegige 1/0/2

[DeviceB-Twenty-FiveGigE1/0/2] ipv6 nd snooping max-learning-num 200

[DeviceB-Twenty-FiveGigE1/0/2] quit

4. 驗證配置

# 在Device B上的VLAN10內可以查詢到獲取到的ND Snooping表項。

[DeviceB] display ipv6 nd snooping vlan 10

IPv6 address              MAC address     VID  Interface     Status       Age

10::5                     0001-0203-0405  10   WGE1/0/1      VALID        157

10::6                     0001-0203-0607  10   WGE1/0/2      VALID        105

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們