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

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

目錄

14-隧道配置

本章節下載 14-隧道配置  (637.31 KB)

14-隧道配置

  錄

1 隧道

1.1 隧道簡介

1.2 支持的隧道技術

1.3 隧道配置限製和指導

1.4 配置Tunnel接口

1.4.1 功能簡介

1.4.2 Tunnel接口配置任務簡介

1.4.3 創建Tunnel接口

1.4.4 配置處理接口流量的slot

1.4.5 配置封裝後隧道報文的屬性

1.4.6 恢複當前Tunnel接口的缺省配置

1.4.7 配置隧道模塊的告警功能

1.5 隧道接口顯示和維護

1.6 隧道常見故障處理

1.6.1 Tunnel接口未處於up狀態

2 IPv6 over IPv4隧道

2.1 IPv6 over IPv4 隧道簡介

2.1.1 IPv6 over IPv4隧道原理

2.1.2 IPv6 over IPv4隧道模式分類

2.2 IPv6 over IPv4隧道配置任務簡介

2.3 配置IPv6 over IPv4手動隧道

2.3.1 配置限製和指導

2.3.2 配置步驟

2.3.3 IPv6 over IPv4手動隧道典型配置舉例

2.4 配置6to4隧道

2.4.1 配置限製和指導

2.4.2 配置步驟

2.4.3 6to4隧道典型配置舉例

2.4.4 6to4中繼典型配置舉例

2.5 配置ISATAP隧道

2.5.1 配置限製和指導

2.5.2 配置步驟

2.5.3 ISATAP隧道典型配置舉例

3 IPv4 over IPv4隧道

3.1 IPv4 over IPv4 隧道簡介

3.2 IPv4 over IPv4隧道配置限製和指導

3.3 配置IPv4 over IPv4隧道

3.4 IPv4 over IPv4隧道典型配置舉例

3.4.1 IPv4 over IPv4隧道基本組網配置舉例

4 IPv4 over IPv6隧道

4.1 IPv4 over IPv6隧道簡介

4.1.1 IPv4 over IPv6隧道原理

4.1.2 IPv4 over IPv6隧道模式

4.2 配置IPv4 over IPv6手動隧道

4.2.1 配置限製和指導

4.2.2 配置步驟

4.2.3 IPv4 over IPv6手動隧道典型配置舉例

5 IPv6 over IPv6隧道

5.1 IPv6 over IPv6隧道簡介

5.2 IPv6 over IPv6隧道配置限製和指導

5.3 配置IPv6 over IPv6隧道

5.4 IPv6 over IPv6隧道典型配置舉例

5.4.1 IPv6 over IPv6隧道基本組網配置舉例

 


1 隧道

說明

本章僅介紹隧道接口的配置,有關隧道模式的介紹請參見後續章節。

 

1.1  隧道簡介

隧道技術是一種封裝技術,即一種網絡協議將其他網絡協議的數據報文封裝在自己的報文中,然後在網絡中傳輸。封裝後的數據報文在網絡中傳輸的路徑,稱為隧道。隧道是一條虛擬的點對點連接,隧道的兩端需要對數據報文進行封裝及解封裝。隧道技術就是指包括數據封裝、傳輸和解封裝在內的全過程。

1.2  支持的隧道技術

目前支持的隧道技術包括:

·     GRE(Generic Routing Encapsulation,通用路由封裝)隧道,GRE的相關介紹和配置請參見“三層技術-IP業務配置指導”中的“GRE”。

·     VXLAN(Virtual eXtensible LAN,可擴展虛擬局域網絡)隧道和VXLAN-DCI(VXLAN Data Center Interconnect,VXLAN數據中心互聯)隧道,VXLAN和VXLAN-DCI的相關介紹和配置請參見“VXLAN配置指導”中的“VXLAN”。

·     IPv6 over IPv4隧道、IPv4 over IPv4隧道、IPv4 over IPv6隧道和IPv6 over IPv6隧道。

1.3  隧道配置限製和指導

在設備上,主備倒換或備用主控板拔出時,建立在主用主控板或備用主控板上的隧道接口不會被刪除,若再配置相同的隧道接口,係統會提示隧道接口已經存在。如果需要刪除隧道接口,請使用undo interface tunnel命令。

同一台設備上,多個Tunnel接口不要同時配置完全相同的目的端地址和源端地址。

通過ip addressipv6 address命令,為VXLAN、VXLAN over IPv6、VXLAN-DCI和VXLAN-DCI over IPv6模式的隧道接口配置的IP地址無實際意義,不建議為以上類型的隧道接口配置IP地址。有關ip address命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IP地址”,有關ipv6 address命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IPv6基礎”。

 

 

 

 

暫不支持在三層以太網子接口/三層聚合子接口和配置了子接口的三層以太網接口/三層聚合接口上配置隧道。

模式為VXLAN over IPv4隧道、VXLAN over IPv6隧道、VXLAN-DCI over IPv4隧道和VXLAN-DCI over IPv6隧道的Tunnel接口不支持tunnel dfbit enable命令。

1.4  配置Tunnel接口

1.4.1  功能簡介

隧道兩端的設備上,需要創建虛擬的三層接口,即Tunnel接口,以便隧道兩端的設備利用Tunnel接口發送報文、識別並處理來自隧道的報文。

1.4.2  Tunnel接口配置任務簡介

Tunnel接口配置任務如下:

(1)     創建Tunnel接口

(2)     (可選)配置處理接口流量的slot

(3)     (可選)配置封裝後隧道報文的屬性

(4)     (可選)恢複當前Tunnel接口的缺省配置

(5)     (可選)配置隧道模塊的告警功能

1.4.3  創建Tunnel接口

(1)     進入係統視圖。

system-view

(2)     創建Tunnel接口,指定隧道模式,並進入Tunnel接口視圖。

interface tunnel number mode { gre [ ipv6 ] | ipv4-ipv4 | ipv4-ipv6 | ipv6-ipv4 [ 6to4 | isatap ] | ipv6-ipv6 | { vxlan | vxlan-dci } [ ipv6 ] }

在隧道的兩端應配置相同的隧道模式,否則可能造成報文傳輸失敗。

(3)     設置隧道的源端地址或源接口。

source { ipv4-address | ipv6-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IP地址;如果設置的是隧道的源接口,則該接口的主IP地址將作為封裝後隧道報文的源IP地址。

(4)     設置隧道的目的端地址。

destination { ipv4-address | ipv6-address }

缺省情況下,未設置隧道的目的端地址。

隧道的目的端地址是對端接收報文的接口的地址,該地址將作為封裝後隧道報文的目的地址。

(5)     (可選)配置接口描述信息。

description text

缺省情況下,接口描述信息為“該接口的接口名 Interface”。

(6)     (可選)配置Tunnel接口的MTU值。

mtu size

缺省情況下,隧道接口的狀態始終為Down時,隧道的MTU值為64000;隧道接口的狀態當前為Up時,隧道的MTU值為根據隧道目的地址查找路由而得到的出接口的MTU值減隧道封裝報文頭長度。

ip mtuipv6 mtumtu(對IPv4和IPv6類型隧道均生效)命令均可以配置Tunnel接口的MTU值,ip mtuipv6 mtu的優先級高於mtu。當幾條命令同時配置時,MTU值以ip mtuipv6 mtu命令為準,此時若將ip mtuipv6 mtu命令恢複至缺省值,MTU值以mtu命令為準;當以上命令均未配置時,隧道的MTU值為根據隧道目的地址查找路由而得到的出接口的MTU值減隧道封裝報文頭長度。

(7)     (可選)配置Tunnel接口的期望帶寬。

bandwidth bandwidth-value

缺省情況下,接口的期望帶寬=接口的最大速率÷1000(kbit/s)。

期望帶寬供業務模塊使用,不會對接口實際帶寬造成影響。

(8)     開啟Tunnel接口。

undo shutdown

缺省情況下,Tunnel接口處於開啟狀態。

1.4.4  配置處理接口流量的slot

1. 功能簡介

當要求同一個Tunnel接口的流量必須在同一個slot上進行處理時,可以在Tunnel接口下配置處理接口流量的slot。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入Tunnel接口視圖。

interface tunnel number

(3)     配置處理接口流量的slot。

(獨立運行模式)

service slot slot-number

(IRF模式)

service chassis chassis-number slot slot-number

缺省情況下,未配置處理接口流量的slot。

1.4.5  配置封裝後隧道報文的屬性

(1)     進入係統視圖。

system-view

(2)     進入Tunnel接口視圖。

interface tunnel number

(3)     設置封裝後隧道報文的ToS。

tunnel tos tos-value

缺省情況下,封裝後隧道報文的ToS值與封裝前原始IP報文的ToS值相同。

模式為VXLAN over IPv4隧道、VXLAN over IPv6隧道、VXLAN-DCI over IPv4隧道和VXLAN-DCI over IPv6隧道的Tunnel接口不支持本命令。

(4)     設置封裝後隧道報文的TTL值。

tunnel ttl ttl-value

缺省情況下,封裝後隧道報文的TTL值為255。

模式為VXLAN over IPv4隧道、VXLAN over IPv6隧道、VXLAN-DCI over IPv4隧道和VXLAN-DCI over IPv6隧道的Tunnel接口不支持本命令。

1.4.6  恢複當前Tunnel接口的缺省配置

1. 配置限製和指導

注意

接口下的某些配置恢複到缺省情況後,會對設備上當前運行的業務產生影響。建議您在執行本配置前,完全了解其對網絡產生的影響。

 

您可以在執行default命令後通過display this命令確認執行效果。對於未能成功恢複缺省的配置,建議您查閱相關功能的命令手冊,手工執行恢複該配置缺省情況的命令。如果操作仍然不能成功,您可以通過設備的提示信息定位原因。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入Tunnel接口視圖。

interface tunnel number

(3)     恢複當前接口的缺省配置。

default

1.4.7  配置隧道模塊的告警功能

1. 功能簡介

用戶可根據業務需求開啟指定隧道類型的告警功能:

·     開啟了VXLAN隧道配置下發失敗的告警功能後,設備會將配置下發失敗的Tunnel接口編號信息作為告警信息發送到設備的SNMP模塊。

·     開啟了解封裝VXLAN報文失敗的告警功能後,設備會將解封裝失敗的VXLAN報文的源地址IP類型、源地址IP、目的地址IP類型、目的地址IP等信息作為告警信息發送到設備的SNMP模塊。

·     開啟了Tunnel接口數量告警功能後,當設備上的Tunnel接口個數超過了告警閾值,即設備允許創建數量的80%時,設備會將超出的Tunnel接口的框號和板號信息作為告警信息發送到設備的SNMP模塊。

·     開啟了VXLAN over IPv4隧道狀態的告警功能後,設備上的VXLAN over IPv4隧道狀態發生變化時,設備會將此隧道信息記錄在告警信息中,生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關特性。

·     開啟了VXLAN over IPv6隧道狀態的告警功能後,設備上的VXLAN over IPv6隧道狀態發生變化時,設備會將此隧道信息記錄在告警信息中,生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關特性。

·     當不指定任何參數時,設備將同時開啟VXLAN over IPv4/IPv6隧道狀態的告警功能。

有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟隧道模塊的告警功能。

snmp-agent trap enable tunnel [ max-threshold-reached | vxlan-config-failure | vxlan-decap-failure | vxlan-tunnel-status | vxlan-ipv6-tunnel-status ] *

缺省情況下,隧道模塊的告警功能處於關閉狀態。

1.5  隧道接口顯示和維護

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

在用戶視圖下執行reset命令可以清除Tunnel接口的統計信息。

表1-1 隧道顯示和維護

操作

命令

顯示Tunnel接口的相關信息

display interface [ tunnel [ number ] ] [ brief [ description | down ] ]

顯示Tunnel接口的IPv6相關信息(本命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IPv6基礎”)

display ipv6 interface [ tunnel [ number ] ] [ brief ]

清除Tunnel接口的統計信息

reset counters interface [ tunnel [ number ] ]

清除Tunnel接口的IPv6統計信息(本命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IPv6基礎”)

(獨立運行模式)

reset ipv6 statistics [ slot slot-number ]

(IRF模式)

reset ipv6 statistics [ chassis chassis-number slot slot-number ]

 

1.6  隧道常見故障處理

1.6.1  Tunnel接口未處於up狀態

1. 故障現象

在Tunnel接口上配置了相關的參數後(例如隧道的源端地址、目的端地址和隧道模式),Tunnel接口仍未處於up狀態。

2. 故障分析

Tunnel接口未處於up狀態的原因可能是隧道起點的物理接口沒有處於up狀態,或隧道的目的端地址不可達。

3. 處理過程

使用display interfacedisplay ipv6 interface命令查看隧道起點的物理接口狀態為up還是down。如果物理接口狀態是down的,請檢查網絡連接。

使用display ipv6 routing-tabledisplay ip routing-table命令查看是否目的端地址通過路由可達。如果路由表中沒有保證隧道通訊的路由表項,請配置相關路由。


2 IPv6 over IPv4隧道

2.1  IPv6 over IPv4 隧道簡介

2.1.1  IPv6 over IPv4隧道原理

圖2-1所示,IPv6 over IPv4隧道是在IPv6數據報文前封裝上IPv4的報文頭,通過隧道使IPv6報文穿越IPv4網絡,實現隔離的IPv6網絡互通。IPv6 over IPv4隧道兩端的設備必須支持IPv4/IPv6雙協議棧,即同時支持IPv4協議和IPv6協議。

圖2-1 IPv6 over IPv4隧道原理圖

 

IPv6 over IPv4隧道對報文的處理過程如下:

(1)     IPv6網絡中的主機發送IPv6報文,該報文到達隧道的源端設備Device A。

(2)     Device A根據路由表判定該報文要通過隧道進行轉發後,在IPv6報文前封裝上IPv4的報文頭,通過隧道的實際物理接口將報文轉發出去。IPv4報文頭中的源IP地址為隧道的源端地址,目的IP地址為隧道的目的端地址。

(3)     封裝報文通過隧道到達隧道目的端設備(或稱隧道終點)Device B,Device B判斷該封裝報文的目的地是本設備後,將對報文進行解封裝。

(4)     Device B根據解封裝後的IPv6報文的目的地址處理該IPv6報文。如果目的地就是本設備,則將IPv6報文轉給上層協議處理;否則,查找路由表轉發該IPv6報文。

2.1.2  IPv6 over IPv4隧道模式分類

根據隧道終點的IPv4地址的獲取方式不同,隧道分為“配置隧道”和“自動隧道”。

·     如果IPv6 over IPv4隧道終點的IPv4地址不能從IPv6報文的目的地址中自動獲取,需要進行手工配置,這樣的隧道稱為“配置隧道”。

·     如果IPv6報文的目的地址中嵌入了IPv4地址,則可以從IPv6報文的目的地址中自動獲取隧道終點的IPv4地址,這樣的隧道稱為“自動隧道”。

根據對IPv6報文的封裝方式的不同,IPv6 over IPv4隧道分為以下幾種模式。

1. IPv6 over IPv4手動隧道

IPv6 over IPv4手動隧道是點到點之間的鏈路。建立手動隧道需要在隧道兩端手工指定隧道的源端和目的端地址。

手動隧道可以建立在連接IPv4網絡和IPv6網絡的兩個邊緣路由器之間,實現隔離的IPv6網絡跨越IPv4網絡通信;也可以建立在邊緣路由器和IPv4/IPv6雙棧主機之間,實現隔離的IPv6網絡跨越IPv4網絡與雙棧主機通信。

2. 6to4隧道

·     普通6to4隧道

6to4隧道是點到多點的自動隧道,主要建立在邊緣路由器之間,用於通過IPv4網絡連接多個IPv6孤島。

6to4隧道兩端采用特殊的6to4地址,其格式為:2002:abcd:efgh:子網號::接口ID/48。其中:2002表示固定的IPv6地址前綴;abcd:efgh為用16進製表示的IPv4地址(如1.1.1.1可以表示為0101:0101),用來唯一標識一個6to4網絡(如果IPv6孤島中的主機都采用6to4地址,則該IPv6孤島稱為6to4網絡),6to4網絡的邊緣路由器上連接IPv4網絡的接口地址需要配置為此IPv4地址;子網號用來在6to4網絡內劃分子網;子網號和接口ID共同標識了一個主機在6to4網絡內的位置。通過6to4地址中嵌入的IPv4地址可以自動確定隧道的終點,使隧道的建立非常方便。

6to4地址中采用一個全球唯一的IPv4地址標識了一個6to4網絡,克服了IPv4兼容IPv6自動隧道的局限性。

·     6to4中繼

6to4隧道隻能用於前綴為2002::/16的6to4網絡之間的通信,但在IPv6網絡中也會使用像2001::/16這樣的IPv6網絡地址。為了實現6to4網絡和其它IPv6網絡的通信,必須有一台6to4路由器作為網關轉發到IPv6網絡的報文,這台路由器就叫做6to4中繼(6to4 relay)路由器。

如下圖所示,在6to4網絡的邊緣路由器Device A上配置一條到達IPv6網絡(非6to4網絡)的靜態路由,下一跳地址指向6to4中繼路由器Device C的6to4地址,這樣,所有去往該IPv6網絡的報文都會被轉發到6to4中繼路由器,之後再由6to4中繼路由器轉發到IPv6網絡中,從而實現6to4網絡與IPv6網絡的互通。

圖2-2 6to4隧道和6to4中繼原理圖

 

3. ISATAP隧道

ISATAP隧道是點到多點的自動隧道技術,為IPv6主機通過IPv4網絡接入IPv6網絡提供了一個較好的解決方案。

使用ISATAP隧道時,IPv6報文的目的地址要采用特殊的ISATAP地址。ISATAP地址格式為:Prefix:0:5EFE:abcd:efgh/64。其中,64位的Prefix為任何合法的IPv6單播地址前綴;abcd:efgh為用16進製表示的32位IPv4地址(如1.1.1.1可以表示為0101:0101),該IPv4地址不要求全球唯一。通過ISATAP地址中嵌入的IPv4地址可以自動確定隧道的終點,使隧道的建立非常方便。

ISATAP隧道主要用於跨越IPv4網絡在IPv6主機與邊緣路由器之間、兩個邊緣路由器之間建立連接。

圖2-3 ISATAP隧道原理圖

 

2.2  IPv6 over IPv4隧道配置任務簡介

IPv6 over IPv4隧道配置任務如下:

(1)     配置IPv6 over IPv4隧道

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

¡     配置IPv6 over IPv4手動隧道

¡     配置6to4隧道

¡     配置ISATAP隧道

2.3  配置IPv6 over IPv4手動隧道

2.3.1  配置限製和指導

·     在本端設備上為隧道指定的目的端地址,應該與在對端設備上為隧道指定的源端地址相同;在本端設備上為隧道指定的源端地址,應該與在對端設備上為隧道指定的目的端地址相同。

·     在同一台設備上,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址和目的端地址。

·     如果封裝前IPv6報文的目的IPv6地址與Tunnel接口的IPv6地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv6地址的轉發路由,以便需要進行封裝的報文能正常轉發。用戶可以配置靜態路由,指定到達目的IPv6地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址。用戶也可以配置動態路由,在Tunnel接口使能動態路由協議。在隧道的兩端都要進行此項配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“IPv6靜態路由”或其他路由協議配置。

2.3.2  配置步驟

(1)     進入係統視圖。

system-view

(2)     進入模式為IPv6 over IPv4手動隧道的Tunnel接口視圖。

interface tunnel number [ mode ipv6-ipv4 ]

(3)     設置Tunnel接口的IPv6地址。

詳細配置方法,請參見“三層技術-IP業務配置指導”中的“IPv6基礎”。

(4)     設置隧道的源端地址或源接口。

source { ipv4-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IP地址;如果設置的是隧道的源接口,則該接口的主IP地址將作為封裝後隧道報文的源IP地址。

(5)     設置隧道的目的端地址。

destination ipv4-address

缺省情況下,未設置隧道的目的端地址。

隧道的目的端地址是對端接收報文的接口的地址,該地址將作為封裝後隧道報文的目的地址。

(6)     (可選)設置封裝後隧道報文的DF(Don’t Fragment,不分片)標誌。

tunnel dfbit enable

缺省情況下,未設置隧道報文的不分片標誌,即轉發隧道報文時允許分片。

2.3.3  IPv6 over IPv4手動隧道典型配置舉例

1. 組網需求

圖2-4所示,兩個IPv6網絡分別通過Switch A和Switch B與IPv4網絡連接,要求在Switch A和Switch B之間建立IPv6 over IPv4隧道,使兩個IPv6網絡可以互通。由於隧道終點的IPv4地址不能從IPv6報文的目的地址中自動獲取,因此,需要配置IPv6 over IPv4手動隧道。

2. 組網圖

圖2-4 IPv6 over IPv4手動隧道組網圖

3. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv4報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/2

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ip address 192.168.100.1 255.255.255.0

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/1

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 address 3002::1 64

[SwitchA-Vlan-interface101] quit

# 創建模式為IPv6 over IPv4手動隧道的接口Tunnel0。

[SwitchA] interface tunnel 0 mode ipv6-ipv4

# 配置Tunnel0接口的IPv6地址。

[SwitchA-Tunnel0] ipv6 address 3001::1/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchA-Tunnel0] source vlan-interface 100

# 配置Tunnel0接口的目的端地址(Switch B的Vlan-interface100的IP地址)。

[SwitchA-Tunnel0] destination 192.168.50.1

[SwitchA-Tunnel0] quit

# 配置從Switch A經過Tunnel0接口到IPv6 network 2的靜態路由。

[SwitchA] ipv6 route-static 3003:: 64 tunnel 0

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/2

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ip address 192.168.50.1 255.255.255.0

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/1

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 address 3003::1 64

[SwitchB-Vlan-interface101] quit

# 創建模式為IPv6 over IPv4手動隧道的接口Tunnel0。

[SwitchB] interface tunnel 0 mode ipv6-ipv4

# 配置Tunnel0接口的IPv6地址。

[SwitchB-Tunnel0] ipv6 address 3001::2/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchB-Tunnel0] source vlan-interface 100

# 配置Tunnel0接口的目的端地址(Switch A的Vlan-interface100的IP地址)。

[SwitchB-Tunnel0] destination 192.168.100.1

[SwitchB-Tunnel0] quit

# 配置從Switch B經過Tunnel0接口到IPv6 network 1的靜態路由。

[SwitchB] ipv6 route-static 3002:: 64 tunnel 0

4. 驗證配置

# 完成上述配置後,在Switch A和Switch B上分別執行display ipv6 interface命令,可以看出Tunnel0接口處於up狀態。(具體顯示信息略)

# 從Switch A和Switch B上可以Ping通對端的Vlan-int101接口的IPv6地址。下麵僅以Switch A為例。

[SwitchA] ping ipv6 3003::1

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

56 bytes from 3003::1, icmp_seq=0 hlim=64 time=45.000 ms

56 bytes from 3003::1, icmp_seq=1 hlim=64 time=10.000 ms

56 bytes from 3003::1, icmp_seq=2 hlim=64 time=4.000 ms

56 bytes from 3003::1, icmp_seq=3 hlim=64 time=10.000 ms

56 bytes from 3003::1, icmp_seq=4 hlim=64 time=11.000 ms

 

--- Ping6 statistics for 3003::1 ---

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

round-trip min/avg/max/std-dev = 4.000/16.000/45.000/14.711 ms

2.4  配置6to4隧道

2.4.1  配置限製和指導

·     6to4隧道不需要配置隧道的目的端地址,因為隧道的目的端地址可以通過6to4 IPv6地址中嵌入的IPv4地址自動獲得。

·     對於自動隧道,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址。

·     如果封裝前IPv6報文的目的IPv6地址與Tunnel接口的IPv6地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv6地址的轉發路由,以便需要進行封裝的報文能正常轉發。對於自動隧道,用戶隻能配置靜態路由,指定到達目的IPv6地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址,不支持動態路由。在隧道的兩端都要進行轉發路由的配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“IPv6靜態路由”。

·     使能6to4隧道功能時,隧道源端口和目的端口以及相關的IP地址不能為LSCM1GT48SC0單板上的端口或IP地址。

2.4.2  配置步驟

(1)     進入係統視圖。

system-view

(2)     進入模式為6to4隧道的Tunnel接口視圖。

interface tunnel number [ mode ipv6-ipv4 6to4 ]

(3)     設置Tunnel接口的IPv6地址。

詳細配置方法,請參見“三層技術-IP業務配置指導”中的“IPv6基礎”。

(4)     設置隧道的源端地址或源接口。

source { ipv4-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IP地址;如果設置的是隧道的源接口,則該接口的主IP地址將作為封裝後隧道報文的源IP地址。

(5)     (可選)設置封裝後隧道報文的DF(Don’t Fragment,不分片)標誌。

tunnel dfbit enable

缺省情況下,未設置隧道報文的不分片標誌,即轉發隧道報文時允許分片。

2.4.3  6to4隧道典型配置舉例

1. 組網需求

圖2-5所示,兩個6to4網絡通過網絡邊緣6to4 switch(Switch A和Switch B)與IPv4網絡相連。在Switch A和Switch B之間建立6to4隧道,實現6to4網絡中的主機Host A和Host B之間的互通。

2. 組網圖

圖2-5 6to4隧道組網圖

3. 配置思路

為了實現6to4網絡之間的互通,除了配置6to4隧道外,還需要為6to4網絡內的主機及6to4 switch配置6to4地址。

·     Switch A上接口Vlan-interface100的IPv4地址為2.1.1.1/24,轉換成6to4地址後的前綴為2002:0201:0101::/48,Host A的地址必須使用該前綴。

·     Switch B上接口Vlan-interface100的IPv4地址為5.1.1.1/24,轉換成6to4地址後的前綴為2002:0501:0101::/48,Host B的地址必須使用該前綴。

4. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv4報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/2

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ip address 2.1.1.1 24

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/1

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的地址為6to4地址2002:0201:0101:1::1/64。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 address 2002:0201:0101:1::1/64

[SwitchA-Vlan-interface101] quit

# 創建模式為6to4隧道的接口Tunnel0。

[SwitchA] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[SwitchA-Tunnel0] ipv6 address 2002:0201:0101:1::3/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchA-Tunnel0] source vlan-interface 100

[SwitchA-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳為Tunnel接口的靜態路由。

[SwitchA] ipv6 route-static 2002:: 16 tunnel 0

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/2

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ip address 5.1.1.1 24

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/1

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的地址為6to4地址2002:0501:0101:1::1/64。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 address 2002:0501:0101:1::1/64

[SwitchB-Vlan-interface101] quit

# 創建模式為6to4隧道的接口Tunnel0。

[SwitchB] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[SwitchB-Tunnel0] ipv6 address 2002:0501:0101:1::3/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchB-Tunnel0] source vlan-interface 100

[SwitchB-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳為Tunnel接口的靜態路由。

[SwitchB] ipv6 route-static 2002:: 16 tunnel 0

5. 驗證配置

完成以上配置之後,Host A與Host B可以互相Ping通。

D:\>ping6 -s 2002:201:101:1::2 2002:501:101:1::2

 

Pinging 2002:501:101:1::2

from 2002:201:101:1::2 with 32 bytes of data:

 

Reply from 2002:501:101:1::2: bytes=32 time=13ms

Reply from 2002:501:101:1::2: bytes=32 time=1ms

Reply from 2002:501:101:1::2: bytes=32 time=1ms

Reply from 2002:501:101:1::2: bytes=32 time<1ms

 

Ping statistics for 2002:501:101:1::2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 13ms, Average = 3ms

2.4.4  6to4中繼典型配置舉例

1. 組網需求

圖2-6所示,Switch A為6to4交換機,其IPv6側的網絡使用6to4地址。Switch B作為6to4中繼交換機,它和IPv6網絡(2001::/16)相連。要求在Switch A和Switch B之間配置6to4隧道,使得6to4網絡中的主機與IPv6網絡中的主機互通。

2. 組網圖

圖2-6 6to4中繼組網圖

3. 配置思路

6to4中繼交換機的配置與6to4交換機的配置相同,但為實現6to4網絡與IPv6網絡的互通,需要在6to4交換機上配置到IPv6網絡的路由,下一跳指向6to4中繼交換機的6to4地址。6to4中繼交換機上接口Vlan-interface100的IPv4地址為6.1.1.1/24,轉換成6to4地址後的前綴為2002:0601:0101::/48,6to4交換機上配置的到IPv6網絡的路由下一跳可以是符合該前綴的任意一個地址。

4. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv4報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/2

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ip address 2.1.1.1 255.255.255.0

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/1

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的地址為6to4地址2002:0201:0101:1::1/64。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 address 2002:0201:0101:1::1/64

[SwitchA-Vlan-interface101] quit

# 創建模式為6to4隧道的接口Tunnel0。

[SwitchA] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[SwitchA-Tunnel0] ipv6 address 2002:0201:0101:1::3/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchA-Tunnel0] source vlan-interface 100

[SwitchA-Tunnel0] quit

# 配置到6to4中繼的靜態路由。

[SwitchA] ipv6 route-static 2002:0601:0101:: 64 tunnel 0

# 配置到純IPv6網絡的缺省路由,指定路由的下一跳地址為6to4中繼交換機的6to4地址。

[SwitchA] ipv6 route-static :: 0 2002:0601:0101::1

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/2

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ip address 6.1.1.1 255.255.255.0

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/1

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 address 2001::1/16

[SwitchB-Vlan-interface101] quit

# 創建模式為6to4隧道的接口Tunnel0。

[SwitchB] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[SwitchB-Tunnel0] ipv6 address 2002:0601:0101:1::3/64

# 配置Tunnel0接口的源接口為Vlan-interface100。

[SwitchB-Tunnel0] source vlan-interface 100

[SwitchB-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳為Tunnel接口的靜態路由。

[SwitchB] ipv6 route-static 2002:: 16 tunnel 0

5. 驗證配置

完成以上配置之後,Host A與Host B可以互相Ping通。

D:\>ping6 -s 2002:201:101:1::2 2001::2

 

Pinging 2001::2

from 2002:201:101:1::2 with 32 bytes of data:

 

Reply from 2001::2: bytes=32 time=13ms

Reply from 2001::2: bytes=32 time=1ms

Reply from 2001::2: bytes=32 time=1ms

Reply from 2001::2: bytes=32 time<1ms

 

Ping statistics for 2001::2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 13ms, Average = 3ms

2.5  配置ISATAP隧道

2.5.1  配置限製和指導

·     ISATAP隧道不需要配置隧道的目的端地址,因為隧道的目的端地址可以通過ISATAP地址中嵌入的IPv4地址自動獲得。

·     對於自動隧道,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址。

·     如果封裝前IPv6報文的目的IPv6地址與Tunnel接口的IPv6地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv6地址的轉發路由,以便需要進行封裝的報文能正常轉發。對於自動隧道,用戶隻能配置靜態路由,指定到達目的IPv6地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址,不支持動態路由。在隧道的兩端都要進行轉發路由的配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“IPv6靜態路由”。

·     使能ISATAP隧道功能時,隧道源端口和目的端口及相關的IP地址不能為LSCM1GT48SC0單板上的端口或IP地址。

2.5.2  配置步驟

(1)     進入係統視圖。

system-view

(2)     進入模式為ISATAP隧道的Tunnel接口視圖。

interface tunnel number [ mode ipv6-ipv4 isatap ]

(3)     設置Tunnel接口的IPv6地址。

詳細配置方法,請參見“三層技術-IP業務配置指導”中的“IPv6基礎”。

(4)     設置隧道的源端地址或源接口。

source { ipv4-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IP地址;如果設置的是隧道的源接口,則該接口的主IP地址將作為封裝後隧道報文的源IP地址。

(5)     (可選)設置封裝後隧道報文的DF(Don’t Fragment,不分片)標誌。

tunnel dfbit enable

缺省情況下,未設置隧道報文的不分片標誌,即轉發隧道報文時允許分片。

2.5.3  ISATAP隧道典型配置舉例

1. 組網需求

圖2-7所示,IPv6網絡和IPv4網絡通過ISATAP交換機相連,在IPv4網絡側分布著一些IPv6主機。要求將IPv4網絡中的IPv6主機通過ISATAP隧道接入到IPv6網絡。

2. 組網圖

圖2-7 ISATAP隧道組網圖

3. 配置步驟

(1)     配置Switch

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<Switch> system-view

[Switch] vlan 100

[Switch-vlan100] port ten-gigabitethernet 3/0/1

[Switch-vlan100] quit

# 配置接口Vlan-interface100的IPv6地址。

[Switch] interface vlan-interface 100

[Switch-Vlan-interface100] ipv6 address 3001::1/64

[Switch-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[Switch] vlan 101

[Switch-vlan101] port ten-gigabitethernet 3/0/2

[Switch-vlan101] quit

# 配置接口Vlan-interface101的IP地址。

[Switch] interface vlan-interface 101

[Switch-Vlan-interface101] ip address 1.1.1.1 255.0.0.0

[Switch-Vlan-interface101] quit

# 創建模式為ISATAP隧道的接口Tunnel0。

[Switch] interface tunnel 0 mode ipv6-ipv4 isatap

# 配置Tunnel0接口采用EUI-64格式形成IPv6地址。

[Switch-Tunnel0] ipv6 address 2001:: 64 eui-64

# 配置Tunnel0接口的源接口為Vlan-interface101。

[Switch-Tunnel0] source vlan-interface 101

# 取消對RA消息發布的抑製,使主機可以通過交換機發布的RA消息獲取地址前綴等信息。

[Switch-Tunnel0] undo ipv6 nd ra halt

[Switch-Tunnel0] quit

(2)     配置ISATAP主機

ISATAP主機上的具體配置與主機的操作係統有關,下麵僅以Windows 7操作係統為例進行說明。

# 配置ISATAP交換機的IPv4地址。

C:\>netsh interface ipv6 isatap set router 1.1.1.1

(3)     配置IPv6主機

# 配置一條到ISATAP交換機隧道的路由。

C:\>netsh interface ipv6 set route 2001::/64 5 3001::1

4. 驗證配置

# 在ISATAP主機上Ping IPv6主機的地址,可以Ping通,表明ISATAP隧道已經成功建立,ISATAP主機可訪問IPv6網絡中的主機。

C:\>ping 3001::2

 

Pinging 3001::2 with 32 bytes of data:

 

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

 

Ping statistics for 3001::2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 1ms, Maximum = 1ms, Average = 1ms


3 IPv4 over IPv4隧道

3.1  IPv4 over IPv4 隧道簡介

IPv4 over IPv4隧道(RFC 1853)是對IPv4報文進行封裝,使得一個IPv4網絡的報文能夠在另一個IPv4網絡中傳輸。例如,運行IPv4協議的兩個子網位於不同的區域,並且這兩個子網都使用私網地址時,可以通過建立IPv4 over IPv4隧道,實現兩個子網的互聯。

圖3-1 IPv4 over IPv4隧道原理圖

 

報文在隧道中傳輸經過封裝與解封裝兩個過程,以圖3-1為例說明這兩個過程:

·     封裝過程

Device A連接IPv4主機所在子網的接口收到IPv4報文後,首先交由IPv4協議棧處理。IPv4協議棧根據IPv4報文頭中的目的地址判斷該報文需要通過隧道進行轉發,則將此報文發給Tunnel接口。

Tunnel接口收到此報文後,在IPv4報文外再封裝一個IPv4報文頭,封裝的報文頭中源IPv4地址為隧道的源端地址,目的IPv4地址為隧道的目的端地址。封裝完成後將報文重新交給IPv4協議棧處理,IPv4協議棧根據添加的IPv4報文頭查找路由表,轉發報文。

·     解封裝過程

解封裝過程和封裝過程相反。Device B從接口收到IPv4報文後,將其送到IPv4協議棧處理。IPv4協議棧檢查接收到的IPv4報文頭中的協議號。如果協議號為4(表示封裝的報文為IPv4報文),則將此IPv4報文發送到隧道模塊進行解封裝處理。解封裝之後的IPv4報文將重新被送到IPv4協議棧進行二次路由處理。

3.2  IPv4 over IPv4隧道配置限製和指導

·     在本端設備上為隧道指定的目的端地址,應該與在對端設備上為隧道指定的源端地址相同;在本端設備上為隧道指定的源端地址,應該與在對端設備上為隧道指定的目的端地址相同。

·     在同一台設備上,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址和目的端地址。

·     本端隧道接口的IPv4地址與隧道的目的端地址不能在同一個網段內。

·     如果封裝前IPv4報文的目的IPv4地址與Tunnel接口的IPv4地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv4地址的轉發路由,以便需要進行封裝的報文能正常轉發。用戶可以配置靜態路由,指定到達目的IPv4地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址。用戶也可以配置動態路由,在Tunnel接口使能動態路由協議。在隧道的兩端都要進行轉發路由的配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“靜態路由”或其他路由協議配置。

·     配置經過隧道接口的路由時,路由的目的地址不能與該隧道的目的端地址在同一個網段內。

3.3  配置IPv4 over IPv4隧道

(1)     進入係統視圖。

system-view

(2)     進入模式為IPv4 over IPv4隧道的Tunnel接口視圖。

interface tunnel number [ mode ipv4-ipv4 ]

(3)     設置Tunnel接口的IPv4地址。

ip address ip-address { mask | mask-length } [ sub ]

(4)     設置隧道的源端地址或源接口。

source { ipv4-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IP地址;如果設置的是隧道的源接口,則該接口的主IP地址將作為封裝後隧道報文的源IP地址。

(5)     設置隧道的目的端地址。

destination ipv4-address

缺省情況下,未設置隧道的目的端地址。

隧道的目的端地址是對端接收報文的接口的地址,該地址將作為封裝後隧道報文的目的地址。

(6)     (可選)設置封裝後隧道報文的DF(Don’t Fragment,不分片)標誌。

tunnel dfbit enable

缺省情況下,未設置隧道報文的不分片標誌,即轉發隧道報文時允許分片。

3.4  IPv4 over IPv4隧道典型配置舉例

3.4.1  IPv4 over IPv4隧道基本組網配置舉例

1. 組網需求

運行IP協議的兩個子網Group 1和Group 2位於不同的區域,這兩個子網都使用私網地址。通過在交換機Switch A和交換機Switch B之間建立IPv4 over IPv4隧道,實現兩個子網的互聯。

2. 組網圖

圖3-2 IPv4 over IPv4隧道組網圖

3. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv4報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/1

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ip address 10.1.1.1 255.255.255.0

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/2

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的IP地址。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ip address 2.1.1.1 255.255.255.0

[SwitchA-Vlan-interface101] quit

# 創建模式為IPv4 over IPv4隧道的接口Tunnel1。

[SwitchA] interface tunnel 1 mode ipv4-ipv4

# 配置Tunnel1接口的IP地址。

[SwitchA-Tunnel1] ip address 10.1.2.1 255.255.255.0

# 配置Tunnel1接口的源端地址(Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] source 2.1.1.1

# 配置Tunnel1接口的目的端地址(Switch B的Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] destination 3.1.1.1

[SwitchA-Tunnel1] quit

# 配置從Switch A經過Tunnel1接口到Group 2的靜態路由。

[SwitchA] ip route-static 10.1.3.0 255.255.255.0 tunnel 1

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/1

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ip address 10.1.3.1 255.255.255.0

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/2

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的IP地址。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ip address 3.1.1.1 255.255.255.0

[SwitchB-Vlan-interface101] quit

# 創建模式為IPv4 over IPv4隧道的接口Tunnel2。

[SwitchB] interface tunnel 2 mode ipv4-ipv4

# 配置Tunnel2接口的IP地址。

[SwitchB-Tunnel2] ip address 10.1.2.2 255.255.255.0

# 配置Tunnel2接口的源端地址(Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] source 3.1.1.1

# 配置Tunnel2接口的目的端地址(SwitchA的Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] destination 2.1.1.1

[SwitchB-Tunnel2] quit

# 配置從Switch B經過Tunnel2接口到Group 1的靜態路由。

[SwitchB] ip route-static 10.1.1.0 255.255.255.0 tunnel 2

4. 驗證配置

# 完成上述配置後,在Switch A和Switch B上分別執行display interface tunnel命令,可以看出Tunnel接口處於up狀態。(具體顯示信息略)

# 從Switch A和Switch B上可以Ping通對端的Vlan-interface100接口的IPv4地址。下麵僅以Switch A為例。

[SwitchA] ping -a 10.1.1.1 10.1.3.1

Ping 10.1.3.1 (10.1.3.1) from 10.1.1.1: 56 data bytes, press CTRL+C to break

56 bytes from 10.1.3.1: icmp_seq=0 ttl=255 time=2.000 ms

56 bytes from 10.1.3.1: icmp_seq=1 ttl=255 time=1.000 ms

56 bytes from 10.1.3.1: icmp_seq=2 ttl=255 time=0.000 ms

56 bytes from 10.1.3.1: icmp_seq=3 ttl=255 time=1.000 ms

56 bytes from 10.1.3.1: icmp_seq=4 ttl=255 time=1.000 ms

 

--- Ping statistics for 10.1.3.1 ---

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

round-trip min/avg/max/std-dev = 0.000/1.000/2.000/0.632 ms


4 IPv4 over IPv6隧道

4.1  IPv4 over IPv6隧道簡介

4.1.1  IPv4 over IPv6隧道原理

隨著IPv6網絡的廣泛部署,IPv6網絡將逐漸取代IPv4網絡,占據主導地位。尚未被IPv6網絡取代的IPv4網絡將形成孤島,需要通過IPv6網絡互通。IPv4 over IPv6隧道在IPv4報文上封裝IPv6的報文頭,通過隧道使IPv4報文穿越IPv6網絡,從而實現通過IPv6網絡連接隔離的IPv4網絡孤島。

圖4-1 IPv4 over IPv6隧道原理圖

 

IPv4報文在隧道中傳輸經過封裝與解封裝兩個過程,以圖4-1為例說明這兩個過程:

·     封裝過程

Device A連接IPv4網絡的接口收到IPv4報文後,首先交由IPv4協議棧處理。IPv4協議棧根據IPv4報文頭中的目的地址判斷該報文需要通過隧道進行轉發,則將此報文發給Tunnel接口。

Tunnel接口收到此報文後添加IPv6報文頭,IPv6報文頭中源IPv6地址為隧道的源端地址,目的IPv6地址為隧道的目的端地址。封裝完成後將報文交給IPv6模塊處理。IPv6協議模塊根據IPv6報文頭的目的地址重新確定如何轉發此報文。

·     解封裝過程

解封裝過程和封裝過程相反。從連接IPv6網絡的接口接收到IPv6報文後,將其送到IPv6協議模塊。IPv6協議模塊檢查IPv6報文封裝的協議類型。若封裝的協議為IPv4,則報文進入隧道處理模塊進行解封裝處理。解封裝之後的IPv4報文被送往IPv4協議模塊進行二次路由處理。

4.1.2  IPv4 over IPv6隧道模式

1. IPv4 over IPv6手動隧道

IPv4 over IPv6手動隧道需要手動配置隧道的源和目的IPv6地址,以便根據配置的地址在IPv4報文上封裝IPv6報文頭,使報文能通過隧道穿越IPv6網絡。IPv4 over IPv6手動隧道是一種點到點的虛擬鏈路。

4.2  配置IPv4 over IPv6手動隧道

4.2.1  配置限製和指導

·     在本端設備上為隧道指定的目的端地址,應該與在對端設備上為隧道指定的源端地址相同;在本端設備上為隧道指定的源端地址,應該與在對端設備上為隧道指定的目的端地址相同。

·     在同一台設備上,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址和目的端地址。

·     如果封裝前IPv4報文的目的IPv4地址與Tunnel接口的IPv4地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv4地址的轉發路由,以便需要進行封裝的報文能正常轉發。用戶可以配置靜態路由,指定到達目的IPv4地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址。用戶也可以配置動態路由,在Tunnel接口使能動態路由協議。在隧道的兩端都要進行轉發路由的配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“靜態路由”或其他路由協議配置。

·     使能IPv4 over IPv6手動隧道功能時,隧道的源端口、目的端口以及相關的IP地址不能為

·LSCM1GT48SC0單板上的端口或IP地址。

4.2.2  配置步驟

(1)     進入係統視圖。

system-view

(2)     進入模式為IPv4 over IPv6隧道的Tunnel接口視圖。

interface tunnel number [ mode { ipv4-ipv6 } ]

(3)     設置Tunnel接口的IPv4地址。

ip address ip-address { mask | mask-length } [ sub ]

(4)     設置隧道的源端地址或源接口。

source { ipv6-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IPv6地址;如果設置的是隧道的源接口,則該接口下的最小地址將作為封裝後隧道報文的源IPv6地址。

(5)     設置隧道的目的端地址。

destination ipv6-address

缺省情況下,未設置隧道的目的端地址。

隧道的目的端地址是對端接收報文的接口的地址,該地址將作為封裝後隧道報文的目的IPv6地址。

4.2.3  IPv4 over IPv6手動隧道典型配置舉例

1. 組網需求

兩個IPv4網絡分別通過Switch A和Switch B與IPv6網絡連接。通過在Switch A和Switch B之間建立IPv4 over IPv6手動隧道,實現兩個IPv4網絡穿越IPv6網絡互聯。

2. 組網圖

圖4-2 IPv4 over IPv6手動隧道組網圖

3. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv6報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/1

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ip address 30.1.1.1 255.255.255.0

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/2

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 address 2001::1:1 64

[SwitchA-Vlan-interface101] quit

# 創建模式為IPv4 over IPv6隧道的接口Tunnel1。

[SwitchA] interface tunnel 1 mode ipv4-ipv6

# 配置Tunnel1接口的IP地址。

[SwitchA-Tunnel1] ip address 30.1.2.1 255.255.255.0

# 配置Tunnel1接口的源端地址(Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] source 2001::1:1

# 配置Tunnel1接口的目的端地址(Switch B的Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] destination 2003::2:1

[SwitchA-Tunnel1] quit

# 配置從Switch A經過Tunnel1接口到IPv4 network 2的靜態路由。

[SwitchA] ip route-static 30.1.3.0 255.255.255.0 tunnel 1

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/1

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IP地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ip address 30.1.3.1 255.255.255.0

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/2

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 address 2003::2:1 64

[SwitchB-Vlan-interface101] quit

# 創建模式為IPv4 over IPv6隧道的接口Tunnel2。

[SwitchB] interface tunnel 2 mode ipv4-ipv6

# 配置Tunnel2接口的IP地址。

[SwitchB-Tunnel2] ip address 30.1.2.2 255.255.255.0

# 配置Tunnel2接口的源端地址(Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] source 2003::2:1

# 配置Tunnel2接口的目的端地址(Switch A的Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] destination 2001::1:1

[SwitchB-Tunnel2] quit

# 配置從Switch B經過Tunnel2接口到IPv4 network 1的靜態路由。

[SwitchB] ip route-static 30.1.1.0 255.255.255.0 tunnel 2

4. 驗證配置

# 完成上述配置後,在Switch A和Switch B上分別執行display interface tunnel命令,可以看出Tunnel接口處於up狀態。(具體顯示信息略)

# 從Switch A和Switch B上可以Ping通對端的Vlan-interface100接口的IPv4地址。下麵僅以Switch A為例。

[SwitchA] ping -a 30.1.1.1 30.1.3.1

Ping 30.1.3.1 (30.1.3.1) from 30.1.1.1: 56 data bytes, press CTRL+C to break

56 bytes from 30.1.3.1: icmp_seq=0 ttl=255 time=3.000 ms

56 bytes from 30.1.3.1: icmp_seq=1 ttl=255 time=1.000 ms

56 bytes from 30.1.3.1: icmp_seq=2 ttl=255 time=0.000 ms

56 bytes from 30.1.3.1: icmp_seq=3 ttl=255 time=1.000 ms

56 bytes from 30.1.3.1: icmp_seq=4 ttl=255 time=1.000 ms

 

--- Ping statistics for 30.1.3.1 ---

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

round-trip min/avg/max/std-dev = 0.000/1.200/3.000/0.980 ms


5 IPv6 over IPv6隧道

5.1  IPv6 over IPv6隧道簡介

IPv6 over IPv6隧道(RFC 2473)是對IPv6報文進行封裝,使這些被封裝的報文能夠在另一個IPv6網絡中傳輸,封裝後的報文即IPv6隧道報文。例如,如果運行IPv6協議的兩個子網的網絡地址不希望泄露到IPv6網絡中,則可以通過建立IPv6 over IPv6隧道,實現在兩個子網的網絡地址不被泄露的情況下,使兩個子網互通。

圖5-1 IPv6 over IPv6隧道原理圖

 

IPv6報文在隧道中傳輸經過封裝與解封裝兩個過程,以圖5-1為例說明這兩個過程:

·     封裝過程

Device A連接網絡A的接口收到IPv6報文後,首先交由IPv6協議模塊處理。IPv6協議模塊根據報文的目的IPv6地址判斷該報文需要通過隧道進行轉發,則將此報文發給Tunnel接口。

Tunnel接口收到此報文後,為IPv6報文再封裝一個IPv6報文頭,封裝的IPv6報文頭中源IPv6地址為隧道的源端地址,目的IPv6地址為隧道的目的端地址。封裝完成後將報文交給IPv6模塊處理。IPv6協議模塊根據添加的IPv6報文頭的目的地址重新確定如何轉發此報文。

·     解封裝過程

解封裝過程和封裝過程相反。從IPv6網絡接口接收的報文被送到IPv6協議模塊。IPv6協議模塊檢查IPv6報文封裝的協議類型。若封裝的協議為IPv6,則報文進入隧道處理模塊進行解封裝處理;解封裝之後的報文被送往相應的協議模塊進行二次路由處理。

5.2  IPv6 over IPv6隧道配置限製和指導

·     在本端設備上為隧道指定的目的端地址,應該與在對端設備上為隧道指定的源端地址相同;在本端設備上為隧道指定的源端地址,應該與在對端設備上為隧道指定的目的端地址相同。

·     在同一台設備上,隧道模式相同的Tunnel接口建議不要同時配置完全相同的源端地址和目的端地址。

·     本端隧道接口的IPv6地址與隧道的目的端地址不能在同一個網段內。

·     如果封裝前IPv6報文的目的IPv6地址與Tunnel接口的IPv6地址不在同一個網段,則必須配置通過Tunnel接口到達目的IPv6地址的轉發路由,以便需要進行封裝的報文能正常轉發。用戶可以配置靜態路由,指定到達目的IPv6地址的路由出接口為本端Tunnel接口或下一跳為對端Tunnel接口地址。用戶也可以配置動態路由,在Tunnel接口使能動態路由協議。在隧道的兩端都要進行轉發路由的配置,配置的詳細情況請參見“三層技術-IP路由配置指導”中的“IPv6靜態路由”或其他路由協議配置。

·     配置經過隧道接口的路由時,路由的目的地址不能與該隧道的目的端地址在同一個網段內。

·     使能IPv6 over IPv6隧道功能時,隧道的源端口、目的端口以及相關的IP地址不能為

·LSCM1GT48SC0單板上的端口或IP地址。

5.3  配置IPv6 over IPv6隧道

(1)     進入係統視圖。

system-view

(2)     進入模式為IPv6 over IPv6隧道的Tunnel接口視圖。

interface tunnel number [ mode ipv6-ipv6 ]

(3)     設置Tunnel接口的IPv6地址。

詳細配置方法,請參見“三層技術-IP業務配置指導”中的“IPv6基礎”。

(4)     設置隧道的源端地址或源接口。

source { ipv6-address | interface-type interface-number }

缺省情況下,未設置隧道的源端地址和源接口。

如果設置的是隧道的源端地址,則該地址將作為封裝後隧道報文的源IPv6地址;如果設置的是隧道的源接口,則該接口下的最小地址將作為封裝後隧道報文的源IPv6地址。

(5)     設置隧道的目的端地址。

destination ipv6-address

缺省情況下,未設置隧道的目的端地址。

隧道的目的端地址是對端接收報文的接口的地址,該地址將作為封裝後隧道報文的目的IPv6地址。

5.4  IPv6 over IPv6隧道典型配置舉例

5.4.1  IPv6 over IPv6隧道基本組網配置舉例

1. 組網需求

運行IPv6協議的兩個子網Group 1和Group 2的網絡地址不希望泄露到IPv6網絡中。網絡管理員通過在交換機Switch A和交換機Switch B之間建立IPv6 over IPv6隧道,實現在Group 1和Group 2的網絡地址不被泄露的情況下,確保Group 1和Group 2互通。

2. 組網圖

圖5-2 IPv6 over IPv6隧道組網圖

3. 配置步驟

說明

在開始下麵的配置之前,請確保Switch A和Switch B上已經創建相應的VLAN接口,且兩者之間IPv6報文路由可達。

 

(1)     配置Switch A

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchA> system-view

[SwitchA] vlan 100

[SwitchA-vlan100] port ten-gigabitethernet 3/0/1

[SwitchA-vlan100] quit

# 配置接口Vlan-interface100的IPv6地址。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ipv6 address 2003:1::1 64

[SwitchA-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchA] vlan 101

[SwitchA-vlan101] port ten-gigabitethernet 3/0/2

[SwitchA-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchA] interface vlan-interface 101

[SwitchA-Vlan-interface101] ipv6 address 2001::11:1 64

[SwitchA-Vlan-interface101] quit

# 創建模式為IPv6 over IPv6隧道的接口Tunnel1。

[SwitchA] interface tunnel 1 mode ipv6-ipv6

# 配置Tunnel1接口的IP地址。

[SwitchA-Tunnel1] ipv6 address 3001::1:1 64

# 配置Tunnel1接口的源端地址(Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] source 2001::11:1

# 配置Tunnel1接口的目的端地址(Switch B的Vlan-interface101的IP地址)。

[SwitchA-Tunnel1] destination 2003::22:1

[SwitchA-Tunnel1] quit

# 配置從Switch A經過Tunnel1接口到Group 2的靜態路由。

[SwitchA] ipv6 route-static 2003:3:: 64 tunnel 1

(2)     配置Switch B

# 配置接口Ten-GigabitEthernet3/0/1加入VLAN100。

<SwitchB> system-view

[SwitchB] vlan 100

[SwitchB-vlan100] port ten-gigabitethernet 3/0/1

[SwitchB-vlan100] quit

# 配置接口Vlan-interface100的IPv6地址。

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ipv6 address 2003:3::1 64

[SwitchB-Vlan-interface100] quit

# 配置接口Ten-GigabitEthernet3/0/2(隧道的實際物理接口)加入VLAN101。

[SwitchB] vlan 101

[SwitchB-vlan101] port ten-gigabitethernet 3/0/2

[SwitchB-vlan101] quit

# 配置接口Vlan-interface101的IPv6地址。

[SwitchB] interface vlan-interface 101

[SwitchB-Vlan-interface101] ipv6 address 2003::22:1 64

[SwitchB-Vlan-interface101] quit

# 創建模式為IPv6 over IPv6隧道的接口Tunnel2。

[SwitchB] interface tunnel 2 mode ipv6-ipv6

# 配置Tunnel2接口的IP地址。

[SwitchB-Tunnel2] ipv6 address 3001::1:2 64

# 配置Tunnel2接口的源端地址(Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] source 2003::22:1

# 配置Tunnel2接口的目的端地址(Switch A的Vlan-interface101的IP地址)。

[SwitchB-Tunnel2] destination 2001::11:1

[SwitchB-Tunnel2] quit

# 配置從Switch B經過Tunnel2接口到Group 1的靜態路由。

[SwitchB] ipv6 route-static 2003:1:: 64 tunnel 2

4. 驗證配置

# 完成上述配置後,在Switch A和Switch B上分別執行display ipv6 interface命令,可以看出Tunnel接口處於up狀態。(具體顯示信息略)

# 從Switch A和Switch B上可以Ping通對端的Vlan-interface100接口的IPv6地址。下麵僅以Switch A為例。

[SwitchA] ping ipv6 -a 2003:1::1 2003:3::1

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

56 bytes from 2003:3::1, icmp_seq=0 hlim=64 time=9.000 ms

56 bytes from 2003:3::1, icmp_seq=1 hlim=64 time=1.000 ms

56 bytes from 2003:3::1, icmp_seq=2 hlim=64 time=0.000 ms

56 bytes from 2003:3::1, icmp_seq=3 hlim=64 time=0.000 ms

56 bytes from 2003:3::1, icmp_seq=4 hlim=64 time=0.000 ms

 

--- Ping6 statistics for 2003:3::1 ---

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

round-trip min/avg/max/std-dev = 0.000/2.000/9.000/3.521 ms

 

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

BOB登陆
官網
聯係我們