實例解析:搭建IPv6網(wǎng)絡環(huán)境
原創(chuàng)從事計算機網(wǎng)絡工作,是萬萬不能少了各種各樣的實踐操作。但現(xiàn)實中真實網(wǎng)絡環(huán)境的稀缺,限制了很多想深入學習網(wǎng)絡知識的同志。更別說在現(xiàn)實的IPv6網(wǎng)絡環(huán)境中學習IPv6知識了。本文就是通過使用DynamipsGUI和VMware兩個軟件,為那些想深入學習IPv6知識的同志,搭建起幾乎和現(xiàn)實IPv6網(wǎng)絡一樣的實驗環(huán)境??梢噪S意大膽的在搭建起來的網(wǎng)絡環(huán)境中進行各種各樣的測試和操作,能夠很好的提高學習IPv6知識的效率。而且本文中使用的軟件在網(wǎng)上都可以找到,在電腦上安裝完軟件后,完全可以對照下面的步驟一步一步把IPv6的網(wǎng)絡環(huán)境搭建成功。
一、網(wǎng)絡結構拓撲圖和所使用的軟件。
1、網(wǎng)絡拓撲介紹。如圖1所示,是搭建的純IPv6網(wǎng)絡環(huán)境。最終要實現(xiàn)的功能是從電腦PC上,通過路由器,能ping通服務器Server。反之,也要實現(xiàn)從Server上ping通電腦PC。關于圖1中具體的參數(shù)配置,會在下面進行詳細的介紹。
2、使用軟件介紹。圖1網(wǎng)絡環(huán)境的搭建都是在一臺裝有Win 7操作系統(tǒng)電腦上完成的。也就是說在單臺電腦上,通過使用軟件搭建起了和現(xiàn)實IPv6環(huán)境一樣的網(wǎng)絡。在Win 7操作系統(tǒng)中主要安裝了兩個軟件,一個是小凡的DynamipsGUI,版本為2.8;另一個軟件為VMware,版本為7.1.3 build-324285,而且在VMware的虛擬機中安裝的還是Win 7的操作系統(tǒng)。因為Win7對IPv6的支持比較好,所以就沒有選擇在VMware中安裝Windows XP系統(tǒng)。
3、有關上面兩個軟件的安裝和使用,在網(wǎng)上有很多相關的文章,在此就不再一一介紹。只是在虛擬機VMware中安裝Win 7系統(tǒng)時可能要注意的事項多一些。
#p#
二、DynamipsGUI中的配置步驟。
1、在VMware中安裝完Win 7操作系統(tǒng)后,就會在本地電腦(也就是圖1中的PC)的"控制面板"---->"網(wǎng)絡和Internet"---->"網(wǎng)絡連接"中出現(xiàn)兩個VMware Network Adapter連接,"VMnet1"和"VMnet8"。因為本實例中只會用到"VMnet1"和"本地連接",所以就在網(wǎng)絡連接"VMnet8"上點擊右鍵,選擇"禁用"后就變成了如圖2所示的灰色的不可用狀態(tài)。
圖3 DynamipsGUI設備選型界面
2、打開DynamipsGUI 2.8,對照圖3所示,選擇好各個參數(shù):
在"路由器個數(shù)"中選擇1;
在"設備類型"中選擇2600;在"2600"一欄中的各個參數(shù)對照圖3選擇。
在"IOS文件"中使用的是c2600-ik9o3s3-mz.123-13a.BIN,當然也可以使用其它的IOS,只要能保證它支持IPv6的各個功能即可。此處還有一個"idle-pc值",只要選擇好IOS,點擊"計算idle"就可以計算出它的值,具體的方法網(wǎng)上都有,不再一一陳述。
在"PC橋接參數(shù)配置"中,要計算"VMnet1"和"本地連接"二者的橋接參數(shù)。點擊"計算橋接參數(shù)"按鈕,就可得出兩個網(wǎng)絡連接的橋接參數(shù):
NIC_0(對應圖2中的"本地連接")的橋接參數(shù)為"\Device\NPF_{093B5BB6-F57D-4210-8BAF-6F98D3237BA5}"。
NIC_1(對應圖2中的"VMware Network Adapter VMnet1")的橋接參數(shù)為"\Device\NPF_{A0002202-4768-4522-91CF-455D8AFB68A3}"。選擇好兩個橋接參數(shù)后點擊"確定橋接參數(shù)"。
3、在圖3中設置好各個參數(shù)后,點擊"下一步"進入到圖4所示的界面。這里主要是選擇路由器2621使用的模塊類型,對照圖4所示選擇好后點擊"確定Router1配置",再點擊"下一步"。
圖5 DynamipsGUI連接設置界面
4、進入到"Dynamips-連接設置"界面,如圖5所示。在此要建立了兩個連接,"Router1 F0/0 <----> XPC P0/1"和"Router1 F1/0 <----> XPC P0/0"。這里有幾個關鍵點:兩個連接中的Router1 F0/0端口和F1/0端口,就是圖1所示的兩個路由器端口;XPC P0/0接口就是圖1中的"本地連接"的接口,也就是圖2中的"本地連接";XPC P0/1接口就是圖1中的"PC(VMnet1)"的接口,也就是圖2中的"VMware Network Adapter VMnet1"網(wǎng)絡連接。
在圖5中建立好連接后,再點擊"生成.BAT文件"(此按鈕在圖5中沒有截出,位于右下方)按鈕,即可在設定好的目錄下生成可執(zhí)行文件"Router1.bat"。在文件"Router1.bat"上點擊右鍵選擇"編輯",就會顯示出文件的內(nèi)容,如下所示:
REM ----------Created by Xiaofan----------
@echo off
title Router1-----Created by Xiaofan
mkdir Router1
cd Router1
:reload
..\dynamips-wxp.exe -T 2001 -P 2600 -r 128 -t 2621 -c 0x2102 -p 0:CISCO2600-MB-2FE -p 1:NM-1FE-TX -s 0:0:gen_eth:"\Device\NPF_{A0002202-4768-4522-91CF-455D8AFB68A3}" -s 1:0:gen_eth:"\Device\NPF_{093B5BB6-F57D-4210-8BAF-6F98D3237BA5}" ..\c2600-ik9o3s3-mz.123-13a.BIN --idle-pc=0x80394bfc
goto reload
綜上所述,圖1中所示拓撲圖的內(nèi)部連接情況為:
Router F0/0<---->VMnet1<---->{A0002202-4768-4522-91CF-455D8AFB68A3}(圖3中計算得出的橋接參數(shù))<---->NIC_1(圖3中所示的參數(shù))<---->XPC P0/1(圖5中所示的設備接口);
Router F1/0<---->本地連接<---->{093B5BB6-F57D-4210-8BAF-6F98D3237BA5}<---->NIC_0<---->XPC P0/0。
圖6 VMware網(wǎng)絡適配器設置界面
#p#
三、在VMware虛擬機中的配置。
打開VMware虛擬機后,再啟動其中的Win 7操作系統(tǒng),啟動完成后,選擇"VM"菜單中的"Settings"選項,就會出現(xiàn)如圖6所示的配置界面。在"Hardware"頁面中,選擇"Network Adapter"選項,然后在頁面右邊的"Network connection"中選擇"Bridged"選項。最后點擊"OK"按鈕。然后,在VMware虛擬機中再重新啟動Win 7操作系統(tǒng)。
虛擬機中的Win 7操作系統(tǒng),就相當于圖1中的"Server"服務器。在虛擬機中安裝完Win 7系統(tǒng)后,在其中的"控制面板"---->"網(wǎng)絡和Internet"---->"網(wǎng)絡連接"中會自動生成一個虛擬的網(wǎng)絡連接。
在圖6中,選擇"Bridged"橋接模式后,就相當于把圖1中的"本地連接"網(wǎng)卡,和"Server(VMware)"上自動生成的虛擬網(wǎng)卡連接到了同一個網(wǎng)段中。這樣圖1中的"Server(VMware)"也就和路由器Router的F1/0位于同一個網(wǎng)段中。
#p#
四、終端和路由器上網(wǎng)絡參數(shù)配置。
要實現(xiàn)圖1中PC和Server之見的互聯(lián)互通,就必須在路由器、PC和Server上進行相應的網(wǎng)絡配置。
圖7 在VMware的Win 7系統(tǒng)中配置IPv6地址
1、終端網(wǎng)絡參數(shù)配置。其中Server上IPv6地址的配置,如圖7所示,直接在虛擬機的Win7操作系統(tǒng)中的"Internet協(xié)議版本6(TCP/IPv6)屬性"配置,地址為2000::2/64。同理,圖2中"VMware Network Adapter VMnet1"和"本地連接"兩個連接的IPv6參數(shù)配置,也和在圖7中配置的類似。PC(VMnet1)的IPv6地址為2001::1/64,"本地連接"的IPv6地址為2000::1/64。
2、路由器上網(wǎng)絡參數(shù)配置。主要包括三個方面的配置:一是啟用Router的IPv6路由,命令為"Router(config)#ipv6 unicast-routing";二是在接口F0/0上配置IPv6地址,命令如下所示:
interface FastEthernet0/0
no ip address
duplex auto
speed auto
ipv6 address 2001::2/64
上面的命令也表示端口FastEthernet0/0位于IPv6的子網(wǎng)2001::/64中。三是在接口F1/0上配置IPv6地址,命令如下所示:
interface FastEthernet1/0
no ip address
duplex auto
speed auto
ipv6 address 2000::3/64
同樣,上面的命令也表示端口FastEthernet1/0位于IPv6的子網(wǎng)2000::/64中。配置完成后可以使用如下所示命令查看配置結果:
Router#show ipv6 interface brief
FastEthernet0/0 [up/up]
FE80::CA00:17FF:FE94:0
2001::2
FastEthernet1/0 [up/up]
FE80::CA00:17FF:FE94:10
2000::3
上面輸出中的"[up/up]"表示端口的物理狀態(tài)和協(xié)議狀態(tài)都是打開的。同時,在每個端口上都會自動生成一個"本地鏈路"地址,如FastEthernet 0/0端口上的"FE80::CA00:17FF:FE94:0"地址。
#p#
五、網(wǎng)絡環(huán)境運行和測試。
1、在PC(VMnet1)端測試。在圖1的PC本機的Win 7系統(tǒng)中打開一"命令行CMD"窗口。在其中執(zhí)行命令"ping -S 2001::1 2000::2"得到如下所示的輸出結果:
C:\Users\Administrator>ping -S 2001::1 2000::2
正在 Ping 2000::2 從 2001::1 具有 32 字節(jié)的數(shù)據(jù):
來自 2000::2 的回復: 時間=371ms
來自 2000::2 的回復: 時間=5ms
來自 2000::2 的回復: 時間=215ms
來自 2000::2 的回復: 時間=5ms
2000::2 的 Ping 統(tǒng)計信息:
數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
最短 = 5ms,最長 = 371ms,平均 = 149ms
注意,上面的ping命令中使用了一個"-S"的參數(shù),后面緊跟的"2001::1"的地址,是VMnet1的IPv6地址,命令最后一個地址"2000::2"才是要ping的目標地址。Win 7系統(tǒng)對ping命令中"-S"參數(shù)的解釋為"要使用的源地址",也就是指定ping的數(shù)據(jù)包從網(wǎng)卡VMnet1發(fā)送出去,而不是從其它的網(wǎng)卡把數(shù)據(jù)傳輸出去。為了追蹤ping數(shù)據(jù)包的路徑,再在"命令行CMD"中執(zhí)行命令"tracert -S 2001::1 2000::2",得到如下所示的輸出結果:
C:\Users\Administrator>tracert -S 2001::1 2000::2
通過最多 30 個躍點跟蹤
到 Server [2000::2] 的路由:
1 5 ms 2 ms 2 ms 2001::2
2 4 ms 4 ms 5 ms Server [2000::2]
跟蹤完成。
從上面的輸出結果可以看出,命令"ping -S 2001::1 2000::2"的數(shù)據(jù)包的傳輸路徑確實是通過路由器Router,再到達Server的。其中,Win 7系統(tǒng)對tracert命令中"-S"參數(shù)的解釋為"要使用的源地址(僅適用于 IPv6)"。若是在ping的命令中不使用"-S"的參數(shù),ping命令也能執(zhí)行成功,但它傳輸?shù)穆窂骄筒煌ㄟ^路由器,而是從"本地連接"的網(wǎng)卡上直接把數(shù)據(jù)包發(fā)送出去,然后到達Server。
為了驗證上面的推斷,在"命令行CMD"中執(zhí)行命令"tracert 2000::2",它的輸出和執(zhí)行命令"tracert -S 2001::1 2000::2"的輸出結果是不一致的,這也就進一步說明了參數(shù)"-S"的用途,如下所示:
C:\Users\Administrator>tracert 2000::2
通過最多 30 個躍點跟蹤
到 Server [2000::2] 的路由:
1 <1 毫秒 <1 毫秒 <1 毫秒 Server [2000::2]
跟蹤完成。
2、在Server(VMware)端測試。同樣也可以在服務器端進行測試,在虛擬機VMware中的Win 7系統(tǒng)的"命令行CMD"中,執(zhí)行如下命令:
C:\Users\Server>ping 2001::1
正在 Ping 2001::1 具有 32 字節(jié)的數(shù)據(jù):
來自 2001::1 的回復: 時間=255ms
來自 2001::1 的回復: 時間=5ms
來自 2001::1 的回復: 時間=5ms
來自 2001::1 的回復: 時間=4ms
2001::1 的 Ping 統(tǒng)計信息:
數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
最短 = 4ms,最長 = 255ms,平均 = 67ms
從上面的的輸出結果可以看出,從服務器端到PC端的網(wǎng)絡是通的。為了進一步驗證ping數(shù)據(jù)包的傳輸路徑,再在"命令行CMD"中執(zhí)行如下命令:
C:\Users\Server>tracert 2001::1
通過最多 30 個躍點跟蹤到 2001::1 的路由
1 2 ms 2 ms 1 ms 2000::3
2 7 ms 94 ms 20 ms 2001::1
跟蹤完成。
從上面的輸出結果可以看出,從Server端發(fā)出的ping數(shù)據(jù)包確實是通過路由器Router,最后再到達PC的。
圖8 XAMPP控制面板圖
3、在Web服務器中的測試。為了進一步驗證網(wǎng)絡環(huán)境的可用性,在圖1的PC(VMnet1)端的Win 7系統(tǒng)中安裝了Xampp軟件包,此軟件中包含有Tomcat的Web服務器,在XAMPP的控制面板中可以直接啟用Web服務器,如圖8所示,是在控制面板中啟用了Tomcat服務器的狀態(tài)。其中Tomcat使用的端口號共有三個:8005、8009和8080。啟用Web服務器后在PC(VMnet1)端的Win 7系統(tǒng)中的瀏覽器地址欄中輸入地址"http://[2001::1]:8080"就可以進入到Tomcat服務器的歡迎界面。
圖9 在VMware的Win 7系統(tǒng)中訪問本機PC上的IPv6 Web服務器
為了驗證圖1中的IPv6的網(wǎng)絡狀況,可以在圖1中的Server端,也就是在虛擬機VMware中的Win 7系統(tǒng)的瀏覽器地址欄中輸入地址"http://[2001::1]:8080",回車后也能進入到Tomcat服務器的歡迎界面,如圖9所示。注意圖9中瀏覽器地址欄中的地址為IPv6的地址。
在IPv4中,對于一個URL地址,當需要通過直接使用"IP地址+端口號"的方式來訪問時,可以表示成"http://202.121.23.11:8080"。但是如果IPv6地址中含有":",為了避免歧義,在URL地址含有IPv6地址時,用"[]"將IPv6地址包含起來。
#p#
六、總結。
1、如圖1所示的IPv6的網(wǎng)絡環(huán)境,只是一個非常簡單的網(wǎng)絡。讀者可以根據(jù)自己的實際情況把它復雜化,以滿足各種各樣的網(wǎng)絡測試需求。利用DynamipsGUI軟件是可以很方便的把幾臺或多臺路由器、交換機和防火墻互聯(lián)起來,但要用它模擬現(xiàn)實網(wǎng)絡中復雜的客戶端和服務器端就有些難度。圖1網(wǎng)絡結構雖然簡單,也只是把基本的框架搭建起來,但它搭建的客戶端和服務器端已經(jīng)很接近現(xiàn)實了,實現(xiàn)了在上面"五"的第3點中進行Web服務測試的需求。另外,也可以把圖1中的一臺路由器變成三臺、五臺,或更多的路由器互聯(lián),在它們上面運行RIP、OSPF或者EIGRP協(xié)議,以便進行更復雜的網(wǎng)絡實驗。
2、本例中各個設備之間的內(nèi)在邏輯連接關系比較復雜,但只要對照步驟一步步做下來就能明白其中的原理。主要是因為DynamipsGUI和VMware兩個軟件和本地電腦建立的連接都是虛擬連接,不像現(xiàn)實中電腦都是通過網(wǎng)線連接到交換機上,看得見摸得著比較容易理解。所以一定要搞清楚兩個軟件具備的功能和使用方法,這樣才好理解使用它們搭建起來的網(wǎng)絡環(huán)境。
3、實踐是檢驗網(wǎng)絡搭建和配置是否正確的唯一標準。從我自己開始參加CCNA培訓,到后期的CCIE的培訓,幾乎每一堂課都有實踐操作,都有實驗。甚至在CCIE的培訓中,絕大部分的時間和精力放在"CCIE集訓營"、"CCIE LAB實驗室"等這些實實在在的實驗上。這是因為我們學到的每一個知識點,最終都要在實踐中驗證,通過做實驗來說明它是正確的還是錯誤的。
包括平時在書本上,或網(wǎng)上看到一些知識點,可能在原理上都能明白,知道它們運行的機制和過程。但即使是這樣,也只有通過把這些知識點涉及到的一些命令在交換機、路由器等設備上操作一遍,看看它們到底符合不符合書上所講的結果。這樣心底才能"踏實"的接受這個知識點,因為它經(jīng)過了實踐的檢驗!
所有從事網(wǎng)絡工作者,一定要不斷的給自己創(chuàng)造參與實踐的機會。如果在工作中能接觸到現(xiàn)成的網(wǎng)絡設備更好,這樣學習起來更方便。要是達不到這種條件的話,可以參加一些培訓班,它們多多少少都能提供一些操作實驗。實在不行,就使用一些模擬器。它們所搭建起來的實驗環(huán)境也很接近真實的網(wǎng)絡環(huán)境??傊磺芯W(wǎng)絡知識,只有經(jīng)過實踐的檢驗,才能算它是正確的,也才能算自己真正掌握了它。