VMWare + Dynamips 構建虛擬局域網模擬P2P打洞過程

前言:
    最近一直對於P2P的技術有一點興趣,在網上也看了一些關於這方面的資料。主要是因爲看了shootingstars寫的一篇網文P2P 之 UDP穿透NAT的原理與實現(附源代碼)》(呵呵,這篇文章挺老的)才萌生出用VMware和cisco路由器模擬器Dynamips構建虛擬局域網模擬P2P打洞過程的想法。總的來說技術性不是很強,但是想到將vmware和dynamips聯合使用就覺得挺有趣的,所以就有寫這篇文章的想法。在51cto的blog羣上我曾參考過關於介紹vmware和Dynamips聯合使用的文章,標題是:Dynamips和VMware的結合使用》作者是piaolang。我從這篇文章中收穫不少,自己寫的文章前半部將和它大同小異,不過會更加清晰透徹。如果大家在閱讀過程中有什麼困惑的地方可以向我反應,我會酌情修改文章。
 
正文:
    先把文章的脈絡講一下,整個試驗分爲:實驗準備、虛擬機安裝配置、虛擬局域網搭建、P2P打洞模擬四個階段。試驗準備階段是介紹一下一些需要安裝的系統以及軟件,機器需要的配置以及實驗人員需要的一些技能。虛擬機安裝配置階段介紹操作系統的安裝,所需軟件安裝。虛擬局域網搭建階段將涉及網絡拓撲構建,cisco IOS(internetworking operation system)命令操作。命令正文附帶在附件中。P2P打洞模擬階段是完全的網絡編程,只是需要在三臺虛擬機之間切換而已。源碼附帶在附件中(源碼相當簡單,將不做解釋說明)。
    1. 實驗準備:
    整個試驗需要用到的軟件如下所示:
    VMware 6.0.4-93057                          虛擬機
    Dynamips Cisco路由器模擬器                  我使用上培訓班時用的路由器模擬器,網上應該有。
    Ubuntu 8.04 Server Edition                  這個試驗中的P2P服務器所在的操作系統。官網下載。
    Windows 2003 Enterprise Edition             鑑於這個操作系統在不加載服務的情況下相當節約內存,在這個實驗中將作爲P2P客戶端所在的操作系統。
    Visual Studio C++ 2005 Express Edition      安裝在Windows 2003上的IDE。在官網上可以永久免費下載。
    Windows Server 2003 SDK R2                  安裝在Windows 2003上,其中有編譯網絡程序所要用到的頭文件以及包。
    Eclipse                                     安裝在ubuntu上的IDE
    SecureCRT 5.1.3                             終端仿真程序,輸入IOS命令時使用。
   
    PS:由於VMware和Dynamips都是內存消耗大戶,如果物理機沒有2G的內存,這個實驗是沒有辦法順利進行的。
 
    這篇文章實爲拋磚引玉,實驗人員如果有一定的CCNA基礎的話,完全可以根據自己的需要構建另外一個實驗環境做其他實驗。VMware和Dynamips的組合可以輕鬆地模擬任何小型局域網。
 
    2. 虛擬機安裝配置:
    虛擬機的安裝主要是安裝一個Ubuntu服務器以及兩個Windows 2003客戶端。Ubuntu使用的版本是8.0.4LTS(long term support 約5年)。虛擬機安裝Ubuntu的過程將不贅述,因爲使用的是Server版本,是不帶有界面的。Linux上編程我比較習慣在Eclipse IDE下進行,所以又額外花了一點時間裝了ubuntu-desktop。Eclipse下載下的壓縮包(eclipse-cpp-ganymede-SR1-linux-gtk.tar.gz)解壓就可以用(先要裝jre環境)。兩個客戶端使用的都是Windows 2003,兩個一樣的系統一個一個裝有些累,比較討巧的方法是將一臺機器裝好(包括安裝VS2005 Express和Windows Server SDK R2,SDK安裝好以後需要將其Include文件夾和Lib文件夾加入VS2005 Express的環境下。)後使用Clone的方式克隆出第二個客戶端。第二個客戶端和第一個一樣所有的工具都已經安裝完畢,唯一會出現的網絡名同名問題也可以輕鬆解決。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章