看了一下網上別人寫的文章:http://www.it165.net/os/html/201401/7063.html
文章里面使用的是Debian,我這里配置的虛擬機系統一個是Ubuntu 14.10,另一個是Red Hat 5.0 ,虛擬機軟件是VitualBox
按照那篇文章的步驟可以完成Ubuntu的配置,但是Red Hat的有點不一樣。
簡要總結一下,先把虛擬機都關了,然后點擊設置->網絡,原本會開一張網卡用NAT給虛擬機上網,現在再開一張,選擇Host-only,兩個虛擬機都這樣設置,然后打開虛擬機。用ifconfig檢查是不是多了一張網卡。在Ubuntu里面,用管理員權限打開/etc/network/interfaces修改,追加:
1 auto eth1 2 iface eth1 inet dhcp
然后重啟一下服務(當然,如果覺得麻煩可以直接重啟虛擬機→_→):
/etc/init.d/networking restart
然后再確認一下網卡的配置。
接着就是配置Red Hat,紅帽跟Ubuntu有點不一樣它把每個網卡的配置都單獨放在一個文件里面,不是統一放在一個文件里面。這些文件位於:
/etc/sysconfig/network-scripts/ifcfg-ethN
其中N代表網卡編號。
打開ifcfg-eth1(如果新網卡是eth1)然后做一次跟Ubuntu一樣的配置,重啟服務。
用ifconfig看一下兩台虛擬機的網卡配置,這是應該th1的IP地址應該是不一樣了。
Ping一下,對方,應該可以Ping得通,Ping宿主機IP應該也可以Ping得通。
這里順便記下怎樣配靜態IP(雖然我沒有配靜態的IP),做實驗的時候,如果覺得用動態麻煩可以設成靜態。
兩台虛擬機A,B
主機與虛擬機通信(單向,虛擬機guest到主機host,可以上外網)
一般情況下,當你安裝了VBox並裝上guest os(debian6.0.7)后,guest os就是NAT直接可以上外網的,並且是通過dhcp獲取ip地址的。參考地址中說的很詳細,user manual中也有說明。
這里我們可以改成靜態ip地址。打開Guest A
設置如下:
vi /etc/network/interfaces
1 # The loopback network interface 2 auto lo 3 iface lo inet loopback 4 # The primary network interface 5 auto eth0 6 #allow-hotplug eth0 7 iface eth0 inet static 8 address 10.0.2.10 9 netmask 255.255.255.0 10 gateway 10.0.2.2
同樣可以設置Guest B,只是address一行改為10.0.2.20(這里ip地址可以設為10.0.2.4-10.0.2.254之間,2.2為網關,2.3為dns)。
重啟網絡:/etc/init.d/networking restart。
這里如果直接使用原來的dhcp,發現guest的ip地址都是一樣的(一般為10.0.2.15)。不過貌似也沒關系,因為主機Host是無法訪問虛擬機的。這時兩台虛擬機之間也是無法ping通的(即使它們看起來在一個網段,這就與NAT的原理有關了)。一開始我以為能夠ping通,才有了配置靜態ip這么一段。配置完這一步可以保證虛擬機能夠訪問外網。
這時:
Guest A:
eth0 10.0.2.10
Guest B:
eth0 10.0.2.20