1. 程式人生 > >第11章 拾遺5:IPv6和IPv4共存技術(2)_ISATAP隧道技術

第11章 拾遺5:IPv6和IPv4共存技術(2)_ISATAP隧道技術

6.3 ISATAP隧道技術

(1)基本概念

  ①在一個IPv4網路中主機與路由器之間建立一條ISATAP隧道,以便讓該主機可以訪問IPv6網路中的資源。

  ②條件:IPv4中的PC主機需要支援IPv4和IPv6雙棧協議,然後需要一臺支援ISATAP的路由器。該路由器可以在網路中的任何位置,只要PC能通過IPv4地址ping通它

  ③當IPv4中的PC主機需要訪問IPv6資源時,需要先與ISATAP路由器建立ISATAP隧道,然後根據路由器提供的IPv6字首構造自己的IPv6地址,並將這臺路由器設定為自己的IPv6預設閘道器。如此一來,這臺PC就能夠通過ISATAP路由器訪問IPv6資源。

(2)ISATAP隧道技術原理

Ⅰ. ISATAP路由器配置:

  A.分配IPv4地址:2.2.2.2/24。

  B.建立tunnel介面用於ISATAP,該介面會根據IPv4產生一個64位的介面標識,並搭配fe80::形成tunnel介面的LinkLocal地址,格式fe80::0000:5efe:x.x.x.x(其中的x.x.x.x為IPv4地址)

  C.為tunnel介面配置一個全域性單播IPv6地址,可以手工配置,也可以通過+EUI64的方式構成的。如2001:1111::0000:5efe:0202.0202/64。

Ⅱ. ISATAP主機配置:

  A.Win7系統上預設安裝了IPv6協議棧,預設就會有一個ISATAP的虛擬網絡卡

  B.當給PC的物理網絡卡配置IPv4地址(如1.1.1.1/24),ISATAP虛擬網絡卡會自動根據該地址計算出一個LinkLocal地址,格式如:fe80::0200:5efe:1.1.1.1(或fe80::0200:5efe:0101.0101)。

Ⅲ. 當主機上配置了ISATAP後(用netsh命令,使其指向ISATAP路由器,見後面例子),會向ISATAP路由器傳送RS訊息請求IPv6字首(如上圖中的①)。

Ⅳ. 這個RS訊息會在IPv4網路中被路由,最終轉到ISATAP路由器。這將使得路由器立即以一個RA進行迴應,這個RA訊息裡就包含ISATAP上所配置的那個IPv6全域性單播地址的字首

Ⅴ. PC主機收到RA迴應後,會拿出裡頭的IPv6字首,隨後在後面加上自己的ISATAP虛擬網絡卡的64位介面標識地址,構成一個IPv6全域性單播地址,同時產生一條預設路由,指向ISATAP路由器的LinkLocal地址

Ⅵ. 至此,PC主機就可以訪問IPv6網路中的資源。它首先將IPv6資料包封裝在IPv4資料包中,然後傳給ISATAP路由器,再由ISATAP路由器解封裝後轉發給IPv6網路。

(3)ISATAP隧道實驗

  ①R1路由器配置

//R1路由器
R1#conf t
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip address 192.168.10.10 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#interface serial 2/0
R1(config-if)#clock rate 64000
R1(config-if)#ip address 131.107.0.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit

  ②R2路由器配置

R2#config t
R2(config)#ipv6 unicast-routing   //啟用IPv6路由轉發功能
R2(config)#interface serial 2/0
R2(config-if)#ip address 131.107.0.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#interface serial 2/1
R2(config-if)#clock rate 64000
R2(config-if)#ipv6 address 2001:2::1/64
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#ip route 192.168.10.0 255.255.255.0 131.107.0.1
R2(config)#ipv6 route 2001:1::/64 2001:2::2
R2(config)#interface tunnel 0                  //配置ISATAP隧道介面
R2(config-if)#ipv6 address 2001:3::/64 eui-64  //必須指定用eui-64方式
R2(config-if)#no ipv6 nd suppress-ra           //在IPv6的介面上不會發送路由器公告報文
R2(config-if)#tunnel source 131.107.0.2        //隧道介面源地址
R2(config-if)#tunnel mode ipv6ip isatap
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#
R2#show running-config   //檢視路由器執行配置

  ③R3路由器配置

R3#conf t
R3(config)#ipv6 unicast-routing
R3(config)#interface serial 2/1
R3(config-if)#ipv6 address 2001:2::2/64
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#interface fastEthernet 0/0
R3(config-if)#ipv6 address 2001:1::1/64
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#ipv6 route 2001:3::/64 2001:2::1
R3(config)#exit

(4)Win7和Win8虛擬機器設定

  ①Win8:設定IPv6地址為:2001:1::2/64,預設閘道器為2001:2::1

  ②Win7:IPv4地址(192.168.10.20/24,預設閘道器192.168.10.10),IPv6地址為自動獲取。同時配置ISATAP隧道以管理員身份執行CMD):C:\Windows\system32>netsh interface ipv6 isatap set route 131.107.0.2  //使Win7指向ISATAP路由器。

  ③測試:在Win7上ping 2001:1::2

//給計算機配置ISATAP隧道,使其指向ISATAP路由器
C:\Windows\system32>netsh interface ipv6 isatap set route 131.107.0.2  //指向ISATAP路由器
確定。
C:\Windows\system32>ipconfig /all

乙太網介面卡 mynet:

   連線特定的 DNS 字尾 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection
   實體地址. . . . . . . . . . . . . : 00-0C-29-CB-FB-8B
   DHCP 已啟用 . . . . . . . . . . . : 否
   自動配置已啟用. . . . . . . . . . : 是
   本地連結 IPv6 地址. . . . . . . . : fe80::244b:cbc4:696e:2be1%11(首選)
   IPv4 地址 . . . . . . . . . . . . : 192.168.10.20(首選)
   子網掩碼  . . . . . . . . . . . . : 255.255.255.0
   預設閘道器. . . . . . . . . . . . . : 192.168.10.10
   DHCPv6 IAID . . . . . . . . . . . : 234884137
   DHCPv6 客戶端 DUID  . . . . . . . : 00-01-00-01-20-9E-E3-1D-00-0C-29-CB-FB-8B

   DNS 伺服器  . . . . . . . . . . . : 8.8.8.8
   TCPIP 上的 NetBIOS  . . . . . . . : 已啟用

隧道介面卡 isatap.{7CA5AC9B-1CDF-4B45-B5BA-875A2767632E}:    //ISATAP虛擬網絡卡的介面設定

   連線特定的 DNS 字尾 . . . . . . . :
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter
   實體地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已啟用 . . . . . . . . . . . : 否
   自動配置已啟用. . . . . . . . . . : 是
   IPv6 地址 . . . . . . . . . . . . : 2001:3::5efe:192.168.10.20(首選) //獲取的IPv6字首:2001:3::/64
   本地連結 IPv6 地址. . . . . . . . : fe80::5efe:192.168.10.20%12(首選) //本地鏈路地址
   預設閘道器. . . . . . . . . . . . . : fe80::5efe:131.107.0.2%12         //自動將ISATAP路由器設為閘道器
   DNS 伺服器  . . . . . . . . . . . : 8.8.8.8
   TCPIP 上的 NetBIOS  . . . . . . . : 已禁用

C:\Windows\system32>ping 2001:1::2

正在 Ping 2001:1::2 具有 32 位元組的資料:
來自 2001:1::2 的回覆: 時間=95ms
來自 2001:1::2 的回覆: 時間=60ms
來自 2001:1::2 的回覆: 時間=91ms
來自 2001:1::2 的回覆: 時間=121ms

2001:1::2 的 Ping 統計資訊:
    資料包: 已傳送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
    最短 = 60ms,最長 = 121ms,平均 = 91ms

C:\Windows\system32>