【實驗目的】
掌握Windows XP 環境下IPv6協議棧的安裝和卸載;瞭解Windows XP對IPv6協議的支援。
【技術原理】
- IPv6地址
IPv4地址是類似 A.B.C.D 的格式,是32位,用"."分成四段,10進位表示;
IPv6地址類似X:X:X:X:X:X:X:X的格式,是128位,用":"分成8段,16進位表示。
例如:2001: 0da8:8000:6081:0001:0000:0000:0001
為了簡化其標記法,rfc2373提出每段中前面的0可以省略,連續的0可省略為"::",但只能出現一次。以上例子即成為:2001:da8:8000:6081:1::1
IPv6地址被分成兩個部分:子網首碼和介面標識符,因此可以按照類似CIDR地址的方式被表示為一個帶額外數值的地址,其中該數值指出了地址中有多少位是代表網路部分(網路首碼),即IPv6節點地址中指出了前置長度,該長度與IPv6地址間以斜杠區分,例如:2001::1/64,這個地址中用於選路的前置長度為64位。
- 不同類型的 IPv6 單播地址
- 全域地址: 類似公用 IPv4 地址。全域地址在 Internet 的 IPv6 部分中全域可訪問, 地址通常以“2”或“3”開頭。
- 本地鏈路(Link-local) 地址:類似IPv4自動專用 IP 定址 (APIPA) 地址 (169.254.0.0/16),本地鏈路地址用於特定的鏈路,通常以“fe80”開頭。
- 本地網站(Site-local) 地址: 類似專用 IPv4 地址,本地網站地址用於企業的 Intranet,並可重複用於企業的不同網站。通常以“fec”、“fed”、“fee”或“fef”開頭。RFC 3879 並不推薦使用本地網站地址。
- 嵌有IPv4地址的IPv6地址:按照一種混合方式表達,即X : X : X : X : X :X : d . d . d . d,其中X表示一個1 6位整數,而d表示一個8位的十進位整數。例如,地址0 : 0 : 0 : 0 : 0 : 0 : 192 .168 . 168. 1就是一個合法的IPv6地址。使用簡寫的表達方式後,該地址也可以表示為:: : 192 .168 . 168 . 1
- 本地鏈路地址
預設情況下,Windows XP的IPv6 協議會為已經安裝的乙太網路絡適配器所對應的每個介面都配置一個本地鏈路地址,其首碼是 FE80::/64。IPv6 地址的最後 64 位元稱為介面標識符,它派生自網路適配的 48 位 MAC 位址:
把十六進位數 0xFF-FE 插入到 MAC 位址的第三和第四個位元組之間;
對MAC 位址第一個位元組的第二個低位取補碼(如果它是 1,那它就要被設定成 0;如果它是 0,它就要被設定成 1)。
【例如】MAC 位址是 00-60-08-52-F9-D8:
- 把十六進位數 0xFF-FE 插入到 MAC 位址的 0x08 (第三個位元組)和 0x52 (第四個位元組)中間,構成了 64 位元的地址 00-60-08-FF-FE-52-F9-D8。
- 0x00 的第二個低位是0,在取補碼之後變成了 1。其結果是,第一個位元組的0x00 變成了 0x02。
- 相對應的介面標識符是 02-60-08-FF-FE-52-F9-D8。
樣本節點的本地鏈路地址是 FE80::260:8FF:FE52:F9D8,它帶有首碼 FE80::/64 和介面標識符 02-60-08-FF-FE-52-F9-D8。
- 安裝了IPv6協議後,會自動設定fe80::/10 的本地鏈路地址,用於單一鏈路,可自動鄰機發現,相當於IPv4的區域網路,就可以做IPv6的研究實驗。
- Windows XP預設不支援IPv6協議,但是系統通過IPv6.sys檔案整合了IPv6功能模組,需要時可以安裝並啟用該功能。在Windows環境下安裝IPv6協議棧有兩種方法:命令列方式和視窗操作。
【實驗裝置】
雙重堆疊PC機(1台)、直連線(1根)
【實驗拓撲】
實驗步驟:
1在主機上安裝IPv6協議
在命令提示字元下輸入:c:> ipv6 install
2 各種IPv6的命令
ipv6 if ! 查看本地鏈路地址及其相應的介面號
ipconfig /all !顯示所有適配器的完整 TCP/IP 配置資訊
顯示資訊說明:
Ethernet adapter Network Lab:
Description . . . . . . . . . . . : Realtek RTL8168C(P)/8111C(P) Family PCI-E GBE NIC
Physical Address. . . . . . . . . : 00-25-64-E9-9E-8F
Dhcp Enabled. . . . . . . . . . . : No
。。。
IP Address. . . . . . . . . . . . : fe80::225:64ff:fee9:9e8f%5 !本地鏈路地址,介面ID為5
DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%2 !3個DNS 伺服器的已知單播地址
fec0:0:0:ffff::2%2
fec0:0:0:ffff::3%2
Ethernet adapter 本地串連 2:
Description . . . . . . . . . . . : Realtek RTL8139 Family PCI Fast Ethernet NIC
Physical Address. . . . . . . . . : 50-78-82-82-5F-D4
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.2.13
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . . . . : fe80::5278:82ff:fe82:5fd4%6 !本地鏈路地址,介面ID6
Default Gateway . . . . . . . . . : 192.168.2.254
DNS Servers . . . . . . . . . . . : 202.120.2.101
fec0:0:0:ffff::1%1
fec0:0:0:ffff::2%1
fec0:0:0:ffff::3%1
Tunnel adapter Teredo Tunneling Pseudo-Interface: !隧道適配器 Teredo 隧道虛擬介面
Teredo:通過網路位址轉譯器 (NAT) 發送 IPv4 封裝的 IPv6 資料包的 IPv6 轉換技術。對於該主機,Teredo 未處於活動狀態。只對隧道虛擬介面分配了本地鏈路地址 以及介面ID 4。
Description . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
Physical Address. . . . . . . . . : FF-FF-FF-FF-FF-FF-FF-FF
。。。
IP Address. . . . . . . . . . . . : fe80::ffff:ffff:fffd%4
Tunnel adapter Automatic Tunneling Pseudo-Interface: !隧道適配器自動隧道虛擬介面
ISATAP:通過 Intranet 發送 IPv4 封裝的 IPv6 資料包的 IPv6 轉換技術。 Description . . . . . . . . . . . : Automatic Tunneling Pseudo-Interfac
Physical Address. . . . . . . . . : C0-A8-A8-0D
。。。
IP Address. . . . . . . . . . . . : fe80::5efe:192.168.168.13%2 !本地鏈路地址,介面ID2
ping6 ::1 !確認本地迴環地址是否響應。
ipv6 nc !查看鄰居緩衝
ping6 FE80::225:xxxx:xxxx:xxxx%5 ! ping6同組主機的另一個本地鏈路地址,要加介面ID
ping6 FE80::5278:xxxx:xxxx:xxxx%6 !另一塊網卡
ipv6 rc ! 查看路由緩衝
【注意事項】
通常安裝IPv6協議棧後,一塊網卡預設網路介面有4個,interface 1 用於迴環介面,interface 2用於自動隧道虛擬介面,interface 3用於6to4隧道虛擬介面,interface 4用於正常的網路連接介面,即IPv6地址的單播介面。如有多塊網卡,後面還有其他介面。
1.啟用IPv6功能
預設情況下,Cisco裝置的IPv6流量轉寄功能是關閉的,需要使用IPv6,必須先開啟IPv6流量轉寄功能。
(1)開啟IPv6流量轉寄功能
r1(config)#ipv6 unicast-routing
2.配置正常的IPv6地址
(1)在介面下配置正常IPv6地址
r1(config)#int f0/0
r1(config-if)#ipv6 address 2011:1:2:3:1:1:1:1/64
說明:配置的地址前64位為網路地址,即2011:1:2:3;後64位為主機位,即1:1:1:1。
(2)查看介面的IPv6地址
r1#show ipv6 interface brief f0/0
FastEthernet0/0 [up/up]
FE80::C200:EFF:FEB0:0
2011:1:2:3:1:1:1:1
r1# r1#
說明:可以看到介面F0/0已經接受我們配置的地址2011:1:2:3:1:1:1:1。
3.使用EUI-64格式配置靜態地址:
(1)配置包含EUI-64的IPv6地址
r1(config)#int f0/1
r1(config-if)#ipv6 address 2022:2:2:22::/64 eui-64
(2)查看介面的IPv6地址
r1#show interfaces f0/0
FastEthernet0/0 is up, line protocol is up
Hardware is Gt96k FE, address is c000.0eb0.0000 (bia c000.0eb0.0000)
r1#show ipv6 interface brief f0/1
FastEthernet0/1 [up/up]
FE80::C200:EFF:FEB0:1
2022:2:2:22:C200:EFF:FEB0:1
r1#
說明:可以看到,F0/1成功使用介面上的MAC地址為EUI-64來填充後64位。
4.僅啟用介面IPv6功能
說明:一個介面上可以僅啟用IPv6功能,而不配置IPv6地址
(1)啟用介面IPv6功能
r1(config)#int s1/0
r1(config-if)#ipv6 enable
(2)查看介面IPv6狀態
r1#show ipv6 interface brief serial 1/0
Serial1/0 [up/up]
FE80::C200:EFF:FEB0:0
r1#
可以看到,介面S1/0可以只開啟IPv6功能而不配地址,但開了IPv6功能的介面也會自動產生一個鏈路本地地址。
5.配置無編號地址
當地址緊缺時,可以配置一個介面使用另外一個介面的地址,這樣的地址稱為無編號地址,即unnumbered地址,當從無編號介面產生資料包時,該介面使用借用的那個介面的地址作為源地址,配置這樣的地址,需要允許雙方不同網段協議的配合。
(1)為介面配置無編號地址
r1(config)#int s1/1
r1(config-if)#ipv6 unnumbered f0/0
(2)查看介面IPv6地址情況。
r1#show ipv6 interface brief serial 1/1
Serial1/1 [up/up]
FE80::C200:EFF:FEB0:0
unnumbered (FastEthernet0/0)
r1#
說明:可以看到結果顯示為介面S1/1借用F0/0的地址。