VirtualBox常用的網絡配置如下:
連接方式 | 主機訪問虛擬機 | 虛擬機訪問主機 | 虛擬機訪問虛擬機 | 虛擬機訪問外網 | 說明 |
網絡地址轉換(NAT) | 不支持 | 支持 | 不支持 | 支持 | 默認連接方式,虛擬IP,VirtualBox內部進行網絡轉換 |
橋接網卡 | 支持 | 支持 | 支持 | 支持 | 此方式相當於真實電腦,真實IP,會占用真實的網絡IP資源 |
僅主機(Host-Only)網絡 | 支持 | 支持 | 支持 | 支持 | 此方式使用VirtualBox的虛擬網卡,半真實IP,通過共享上網可以實現外網訪問 |
1.默認的NAT方式,比較簡單,但是有局限性,如果你希望主機能訪問虛擬機,虛擬機互相能訪問,則不能使用這種方式
2.橋接網卡是我個人比較推薦的方式,它的模擬度最高,相當於網絡中的真實電腦,也無需什么特殊配置。但這種方式網絡中其他人也能訪問到你的虛擬機,而且會占用IP資源,如果你希望虛擬機僅在自己電腦訪問,則不推薦這種方式
3.僅主機(Host-Only)網絡,這種方式使用VirtualBox虛擬出來的一張網卡(網絡連接中就能看到),虛擬機需要配置靜態IP才能實現和主機的互相訪問,這種方式默認情況是無法訪問外網的,但是可以通過主機的Internet連接共享來實現訪問外網
本篇文章我們就來講解下第3中Host-Only方式如何完美實現4通訪問
VirtualBox配置,修改網絡配置為:僅主機(Host-Only)網絡,選擇VirtualBox虛擬出來的網卡,如下:
啟動CentOS虛擬機,默認情況下無法上網,無法訪問主機
修改虛擬機網絡配置,Linux的網絡配置都在/etc/sysconfig/network-scripts這個目錄下,cd過去然后使用ls命令查看:
ifcfg-xx即為網絡配置文件,后面的eth0表示網卡設備名稱,每張網卡一個配置文件,使用vi ifcfg-eth0命令修改配置
增加/修改配置如下:
IPADDR=192.168.56.2
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
DNS1=192.168.1.1
BOOTPROTO=static
說明:
IPADDR為IP地址,NETMASK為子網掩碼,GATEWAY為網關,DNS1為首選DNS,BOOTPROTO=static表示使用靜態IP
IP地址的設置要跟VirtualBox虛擬網卡的IP在一個網段,網關設置為虛擬網卡的IP,如下:
設置完之后:wq保存並退出,然后使用service network restart重啟網絡服務:
此時已經可以ping通主機了,如下:
但是還不能訪問外網,此時我們可以使用Internet連接共享來使VirtualBox的虛擬網卡可以訪問外網,配置如下:
此時VirtualBox虛擬網卡的IP會被改變為192.168.137.1,我們手動修改回192.168.56.1
回到虛擬機,curl www.baidu.com,此時已經可以訪問外網: