2010年9月20日 星期一

關於VirtualBox安裝ubuntu時的網路設定

由於每個人的網路環境不同,但大致上都是使用ADSL撥接或是直接設定固定IP(或連接IP分享器,使用DHCP配置IP)。然而再網路搜尋如何設定ubuntu的網路芳鄰及上網設定,很多人都遇到不少問題,而且設定方式都不相同;我想這是因為沒有考慮到VirtualBox的版本問題才會這樣。因此要設定網路分享必須安裝samba,這部分的介紹很多,我就不提,然而3.0之前的版本必須在virtualbox先安裝Host only adapter的Driver,並且還要到控制台/網路連線去設定橋接。其實說麻煩倒是還好,但是有時還是會失敗,失敗原因我們現在也不考究;因為我們今天要說明的是virtualbox3.0以後的版本。或許有些人會使用2.x版的作法來設定3.x版;其實這樣不是很正確。這也是我之前常犯的錯誤。首先我們先來了解其網路設定提供了哪些function:
VirtualBox 提供五種網路模式:
1.not attached----未附掛網路,就是沒有網路。
2.NAT (network address translation)----將本機 (HOST) 當作是 gateway。這是預設值,特性是 VM 能上網,但是別人不能跟他溝通。
3.Bridged Adapter----橋接器。直接透過實體網卡連外,也就是說可上網而 HOST 和其他 VM 都能跟他對連。
4.internal networking----內部網路。把 HOST 當作 hub,VM 有內網可以互相溝通但不能跟 HOST 溝通。當然也不能連外網路。
5.Host-only Adapter。顧名思義只能跟 HOST 互通,其他 VM 和對外網路都不行。
看到這裡我想大家都已經知道要選擇第3項,但是別急;一開始我就說畢竟每個網路環境不同;因此,若是你用ADSL撥接,那麼你可能還要作別的事。
首先我們先來確定需求:
1連上網際網路(Internet) 2透過網路芳鄰讓所有電腦不管是host還是guest都可以共享資料。
現在說明如何設定:
Virtualbox 在 3.0 版後簡化了網路設定,要設定 bridge adapter只需在網路設定頁面 Attached to: 選擇 Bridged Adapter,Name: 選擇要和 VM 作 bridge 的實體網卡即可。(若你是固定ip或ip分享器使用者,那麼你已經完成了virtualbox的設定,只剩下ubuntu的設定就可以了:這部分包括samba及將你在ubuntu的etnx設成和host同業的網段,等一下會舉例)。現在是針對ADSL撥接使用者的說明,雖然Bridge Adapter可以連上網,但是當透過adsl連線時,Bridge是無法與其對應的,這時你我們就可以新增一張NAT網卡,我們知道NAT就是將本機 (HOST) 當作是 gateway,若是HOST可以上網,那麼VM就可以上網。但是設定時有一點要注意:首先移除既有的Bridge網卡,然後新增NAT網卡,此時在只有一張NAT網卡的狀況下,先將ubuntu開機,並連上internet測試是否連線正常,若確定正常上網就先關機,然後再新增第二張Bridge Adapter網卡;為了能順利在ubuntu區別這兩張網卡,請先記錄其MAC Address。再此開機進入ubuntu時,進入網路的編輯,並對Bridge網卡從DHCP選項改成手動選項,假設HOST目前網路設定如下IP:192.168.1.12 MASK:255.255.255.0 Gateway:None DNS:None;那麼我們就將這張Bridge手動設定為IP:192.168.1.13 MASK:255.255.255.0 Gateway:192.168.1.12 DNS:None;此時設定完成請重新開機;因為不保證以下指令有效sudo /etc/init.d/networking restart;重開機後若是你的samba已設定完成,則網路芳鄰應該就可以使用了。請切記一定要先在單一NAT網卡先測試能正常連internet,再去新增bridge網卡,否則順序相反會造成網路芳鄰有效,但連internet失敗。