標籤:
最近玩Hadoop需要幾個虛擬機器構成叢集,就在VirtualBox上安裝了CentOS,連網問題就出現了,具體就是兩個:
- 主機與虛擬機器的聯通
- 虛擬機器的上網問題
翻了不少部落格,最終解決了這個問題
環境介紹
我的主機是Ubuntu14.04,VirtualBox版本是4.3.28,安裝的虛擬機器是CentOS 6.3
外部環境是校園網,通過PPPoE
撥接
要實現兩個目標:
- 主機和虛擬機器能夠互相聯通(比如SSH登陸)
- 虛擬機器能夠上網,方便安裝軟體和升級
原理
虛擬一塊網卡,這塊網卡與主機是Host-Only,這樣就解決了問題1
;
虛擬機器設定為DHCP
方式獲得IP
地址,這樣只要主機能夠上網,虛擬機器也可以上網,解決了問題2
;
具體步驟
步驟1
首先,開啟管理
–>全域設定
–>網路
–>僅host-only網路
:
點擊建立,就可以看見建立了新的網卡vboxnet0
,點擊右鍵進行編輯,如下:
預設的地址是:
192.168.56.1
,我也就不準備改了,需要的自己手動編輯吧
點擊確認以後,回到咱們自己的主機Ubuntu上,輸入ifconfig
:
咱們指定的虛擬網卡就加上了,地址是預設的192.168.56.1
步驟2
虛擬機器的設定
為:
eth0:NAT方式
eth1:host-only
具體如下:
步驟3
啟動虛擬機器吧,接下來編輯幾個檔案就行了
(1)/etc/udev/rules.d/70-persistent-net.rules
這裡我們要看下虛擬網卡的MAC
地址,MAC
地址寫錯是啟動不起來的
標紅的地方就是MAC
地址,你的跟我的肯定不一樣不要照抄我的哈,大家將它記下來以後用得上:
(2)/etc/sysconfig/network-scripts/ifcfg-eth0
這個檔案是eth0
也就是第一塊網卡的設定檔,這裡我們需要改幾個地方,如標紅顯示:
(3)/etc/sysconfig/network-scripts/ifcfg-eth1
先別急,你的機器上暫時沒有這個檔案,先拷貝一份ifcfg-eth0
:
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1
這是eth1
也就是虛擬那塊網卡的設定檔:
你需要設定相應的IP地址(與主機聯通)和Netmask(子網路遮罩)和Gateway(網關),最後還有一點就是修改MAC
地址,還記得之前讓你記得地址嗎????對,就是它,寫上就可以了
我設定的地址是192.168.56.3
,地址一定要與你設定的子網(預設是192.168.56.1)在一個網段,你自己看著設吧,其他的參見我標紅的地方,都不用改,當然你的MAC
地址跟我是不一樣的哈
步驟4
重新啟動整個網路:
/etc/init.d/network restart
OK的
測試下能不能上網:
就安裝個openssh-clients
軟體試試吧
yum install openssh-clients
沒問題
測試下能不能夠串連主機(ssh方式):
ssh [email protected]
成功登陸
此時我們的虛擬機器地址是:
eth0:10.0.2.15
eth1:182.168.56.3
VirtualBox安裝CentOS連網問題