virtualbox的四種網路連線方式的學習
在利用virtualbox建立虛擬機器的時候,會發現在設定網路的時候會有四種網路連線方式,如下圖:
a. NAT 網路地址轉換模式(Network Address Translation)
b. Bridged Adapter 橋接模式
c. Internal 內部網路模式
d. Host-only Adapter 主機模式
1.NAT的特點
Network Address Translation
Guest訪問網路的所有資料都是由主機提供的,Guest並不真實存在於網路中,主機與網路中的任何機器都不能檢視和訪問到Guest的存在。
Guest可以訪問主機能訪問到的所有網路,但是對於主機以及主機網路上的其他機器,Guest又是不可見的,甚至主機也訪問不到Guest
主機連上網,虛擬機器就可以上網;
虛擬機器能ping上主機的IP()
主機不能ping通虛擬機器
應用場景:
虛擬機器只要求可以上網,無其它特殊要求,滿足最一般需求
2 Bridged Adapter
特點:
1、如果主機可以上網,虛擬機器可以上網
2、虛擬機器之間可以ping通
3、虛擬機器可以ping通主機
4、主機可以ping通虛擬機器
以上各點基於一個前提:主機可以上網
5、如果主機不可以上網,所有1-4特點均無
在測試的時候發現虛擬機器ping主機ping不通,主機可以ping通虛擬機器
原因是主機開了防火牆,關閉防火牆就可以了
應用場景:
虛擬機器要求可以上網,且虛擬機器完全模擬一臺實體機
ip樣式:
ip 與本機ip在同一網段內
閘道器 與本機閘道器相同
原理:
通過主機網絡卡,架設一條橋,直接連入到網路中。它使得虛擬機器能被分配到一個網路中獨立的IP,所有網路功能完全和
在網路中的真實機器一樣。
(虛擬機器是通過主機所在網路中的DHCP服務得到ip地址的,所以按理來說,兩者是完全獨立的,但事實卻是虛擬機器是沒
有獨立硬體的,它還是要依靠主機的網絡卡,因此,主機要斷開網路,虛擬機器也就沒法拿到ip了,所以呵呵~~所有特點全
消失咯)
Bridged networking網路環境中的虛擬網絡卡與主機中的網絡卡屬於同一個等級,就像真實存在的網絡卡接入了你主機所在的網路中一樣。在這種網路環境中虛擬網絡卡獲得的引數由主機所在的網路環境分配,虛擬機器與主機之間是否能夠通過網路相互訪問也由主機所在的網路環境決定,當然,同時設定了Bridged networking網路環境的虛擬機器之間網路互訪也由主機所在的網路環境決定。
圖2 Bridged網路環境
3 Host-only Adapter模式
特點:
1、虛擬機器不可以上網
2、虛擬機器之間可以ping通
3、虛擬機器可以ping通主機(注意虛擬機器與主機通訊是通過主機的名為VirtualBox Host-Only Network的網絡卡,因此ip
是該網絡卡ip 192.168.56.1,而不是你現在正在上網所用的ip)
4、主機可以ping通虛擬機器
應用場景:
在主機無法上網的情況下(主機可以上網的情況下可以用host-only,也可以用橋接),需要搭建一個模擬區域網,所有機器可以互訪
配置方法:
連線方式 選擇 僅主機(Host-Only)介面卡
介面名稱 選擇 VirtualBox Host-Only Ethernet Adapter
高階-控制晶片 選擇 PCnet-FAST III
高階-混雜模式 拒絕
高階-接入網線 √
(虛擬機器ip自動獲取,也可以自己進行配置,閘道器配置為主機中虛擬網絡卡的地址【預設為192.168.56.1】,ip配置為與虛擬網絡卡地址同網段地址)
ip樣式:
ip 與本機VirtualBox Host-Only Network的網絡卡ip在同一網段內(預設192.168.56.*)
閘道器 本機VirtualBox Host-Only Network的網絡卡ip(預設192.168.56.1)
原理:
通過VirtualBox Host-Only Network網絡卡進行通訊,虛擬機器以此ip作為閘道器,因此模擬了一個本機與各個虛擬機器的區域網,如名稱所指,
應該是無法上網的(但是有人說可以通過對VirtualBox Host-Only Network網絡卡進行橋接等操作使虛擬機器可以上網,但如此就不如直接
採用橋接來的容易了,而且,呵呵,我沒試成功,有的人也說不可以,因為主機不提供路由服務,我也不好亂說到底行不行,你自己試吧~~)
Internal networking網路環境為設定了Internal networking網路環境的各個虛擬網絡卡提供了一個與主機隔絕的虛擬區域網。在Internal networking中的網絡卡不能自動獲得任何引數,除非手動設定或者在Internal networking網路環境中的另一臺虛擬機器中架設DHCP伺服器。在Internal networking中,各個設定為Internal networking網路環境的虛擬機器之間可以任意訪問(虛擬機器防火牆允許條件下),但不能訪問主機的網路服務甚至internet。
圖3 Internal網路環境
四、Internal模式(內網模式)
特點:
1、虛擬機器不可以上網
2、虛擬機器之間可以ping通
3、虛擬機器不能ping通主機
4、主機不能ping通虛擬機器
應用場景:
讓各臺虛擬機器處於隔離的區域網內,只讓它們相互通訊,與外界(包括主機)隔絕
配置方法:
連線方式 選擇 內部網路
介面名稱 選擇 intnet(可以重新命名,所有放在同一區域網內的虛擬機器此名稱相同)
高階-控制晶片 選擇 PCnet-FAST III
高階-混雜模式 拒絕
高階-接入網線 √
(虛擬機器ip:對於XP自動獲取ip即可,但對於linux,必須手動配置ip和子網掩碼,手動配置時需保證各個虛擬機器ip在同一網段)
ip樣式:
ip 169.254.147.9
子網掩碼 255.255.0.0
預設閘道器 無
原理:
各個虛擬機器利用VirtualBox內建的DHCP伺服器得到ip,資料包傳遞不經過主機所在網路,因此安全性高,防止外部抓包~
預設情況下Host-only networking網路環境利用VirtualBox虛擬出的DHCP伺服器,為在Host-only networking中的虛擬網絡卡分配引數:
IP地址 192.168.56.101 --- 254
子網掩碼 255.255.255.0
廣播地址 192.168.56.255
預設閘道器 無
DNS伺服器 無
DHCP伺服器 192.168.56.100
其中192.168.56.1分配給主機,主機能ping通各個Host-only networking下的虛擬機器,但虛擬機器不能ping通主機。在Host-only networking網路環境中,主機網絡卡與各個Host-only networking虛擬網絡卡構成一個區域網,主機能訪問各個虛擬機器(虛擬機器防火牆允許條件下),各個虛擬機器之間也能相互訪問,但各個虛擬機器都不能訪問internet。
圖4 Host-only網路環境
圖5 VirtualBox網路環境綜合應用
五、NAT模式+埠對映
將虛擬機器某埠對映到主機某埠,可以使主機和外部機器訪問虛擬機器提供的服務哦~~
命令如下:
(在命令列模式下,先到VirtualBox的安裝目錄下面,否則找不到命令)
vboxmanage setextradata "VBoxInternal/Devices/pcnet/0/LUN#0/Config//Protocol" TCP
vboxmanage setextradata "VBoxInternal/Devices/pcnet/0/LUN#0/Config//GuestPort" 80
vboxmanage setextradata "VBoxInternal/Devices/pcnet/0/LUN#0/Config//HostPort" 8000
NAT網路環境下主機訪問虛擬機器埠轉接:
cd %VBOX_INSTALL_PATH%
將主機8080埠的tcp連線轉接到指定虛擬機器的8000埠
VboxManagemodifyvm"VMname"—natpf1"linkName,tcp,,8080,,8000"
[參]:VirtualBox® User Manual Version 3.2.10 Edition