Linux虛擬機的三種網絡連接方式
Linux虛擬機的三種網絡連接方式
虛擬機網絡模式
無論是vmware,virtual box,virtual pc等虛擬機軟件,一般來說,虛擬機有三種網絡模式:
1.橋接
2.NAT
3.Host-Only
橋接
橋接網絡是指本地物理網卡和虛擬網卡通過VMnet0虛擬交換機進行橋接,物理網卡和虛擬網卡在拓撲圖上處於同等地位,那麽物理網卡和虛擬網卡就相當於處於同一個網段,虛擬交換機就相當於一臺現實網絡中的交換機,所以兩個網卡的IP地址也要設置為同一網段。
所以當我們要在局域網使用虛擬機,對局域網其他pc提供服務時,例如提供ftp,提供ssh,提供http服務,那麽就要選擇橋接模式。
例如大學宿舍裏有一個路由器,宿舍裏四個人連接這個路由器,路由器的wanip就不理會了,這個ip是動態獲取的,而lanip默認是192.168.1.1,子網掩碼是255.255.255.0。而其他四個人是自動獲取ip,假設四個人的ip是:
A:192.168.1.100/255.255.255.0, B:192.168.1.101/255.255.255.0, C:192.168.1.102/255.255.255.0, D:192.168.1.103/255.255.255.0
那麽虛擬機的ip可以設置的ip地址是192.168.1.2-192.168.1.99,192.168.1.104-192.168.1.254(
那麽虛擬機的ip地址可以設置為192.168.1.98/255.255.255.0,設置了這個ip地址,ABCD這四個人就可以通過192.168.1.98訪問虛擬機了,如果虛擬機需要上外網,那麽還需要配置虛擬機的路由地址,就是192.168.1.1了,這樣,虛擬機就可以上外網了,但是,上網我們一般是通過域名去訪問外網的,所以我們還需要為虛擬機配置一個dns服務器,我們可以簡單點,把dns服務器地址配置為google的dns服務器:8.8.8.8,到此,虛擬機就可以上網了。
NAT
NAT模式中,就是讓虛擬機借助NAT(網絡地址轉換)功能,通過宿主機器所在的網絡來訪問公網
NAT模式中,虛擬機的網卡和物理網卡的網絡,不在同一個網絡,虛擬機的網卡,是在vmware提供的一個虛擬網絡。
NAT和橋接的比較:
(1) NAT模式和橋接模式虛擬機都可以上外網。
(2) 由於NAT的網絡在vmware提供的一個虛擬網絡裏,所以局域網其他主機是無法訪問虛擬機的,而宿主機可以訪問虛擬機,虛擬機可以訪問局域網的所有主機,因為真實的局域網相對於NAT的虛擬網絡,就是NAT的虛擬網絡的外網,不懂的人可以查查NAT的相關知識。
(3) 橋接模式下,多個虛擬機之間可以互相訪問;NAT模式下,多個虛擬機之間也可以相互訪問。
如果你建一個虛擬機,只是給自己用,不需要給局域網其他人用,那麽可以選擇NAT,畢竟NAT模式下的虛擬系統的TCP/IP配置信息是由VMnet8(NAT)虛擬網絡的DHCP服務器提供的,只要虛擬機的網路配置是DHCP,那麽你不需要進行任何其他的配置,只需要宿主機器能訪問互聯網即可,就可以讓虛擬機聯網了。
例如你想建多個虛擬機集群,作為測試使用,而宿主機可能是一個筆記本,ip不固定。這種應用場景,我們需要采用nat模式了,但是我們要考慮一個問題,虛擬機之間是需要互訪的,默認采用dhcp,虛擬機的ip每次重啟,ip都是不固定的,所以我們需要手工設置虛擬機的ip地址。
但是我們對虛擬機網卡所在的虛擬網絡的信息還一無所知,例如虛擬機網絡的路由地址,子網掩碼,所以我們需要先查下nat虛擬網絡的信息。
使用vmware,在Edit->Virtual Network Editor中配置好虛擬網絡信息後看到下圖所示,註意VMnet8,VMnet8相當於是本機的一個路由,虛擬機設置NAT後就通過這個路由進行上網的,可以查看其網絡地址,路由地址,子網掩碼。
選擇VMnet8->NAT設置,可以看到子網ip顯示為192.168.233.0,子網掩碼是255.255.255.0,那路由地址呢,其實就是網關IP了,都是同個東西,這裏是192.168.233.2。
接下來就好辦了,在對應的虛擬機設置好ip,子網掩碼,路由地址就可以上外網了,至於dns可以設置為8.8.8.8.
Host-Only
在Host-Only模式下,虛擬網絡是一個全封閉的網絡,它唯一能夠訪問的就是主機。其實Host-Only網絡和NAT網絡很相似,不同的地方就是Host-Only網絡沒有NAT服務,所以虛擬網絡不能連接到Internet。主機和虛擬機之間的通信是通過VMware Network Adepter VMnet1虛擬網卡來實現的。
Host-Only的宗旨就是建立一個與外界隔絕的內部網絡,來提高內網的安全性。這個功能或許對普通用戶來說沒有多大意義,但大型服務商會常常利用這個功能。如果你想為VMnet1網段提供路由功能,那就需要使用RRAS,而不能使用XP或2000的ICS,因為ICS會把內網的IP地址改為192.168.0.1,但虛擬機是不會給VMnet1虛擬網卡分配這個地址的,那麽主機和虛擬機之間就不能通信了。
綜述
在VMware的3中網絡模式中,NAT模式是最簡單的,基本不需要手動配置IP地址等相關參數。至於橋接模式則需要額外的IP地址,如果是在內網環境中還很容易,如果是ADSL寬帶就比較麻煩了,ISP一般是不會大方的多提供一個公網IP的
橋接
首先我們需要確定本地電腦可以連接外網,然後打開安裝的虛擬機。
執行命令ifconfig 查看當前虛擬機的IP,默認系統是自動獲取的。
因為本地電腦是配置的靜態地址上網,所以需要修改網卡的IP地址,可以使用命令: vi /etc/sysconfig/network-scripts/ifcfg-eth0。打開此界面。
因為系統默認是自動獲取。需要修改地址和本地電腦為同一網段的IP。
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.130
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
網卡配置好後,重啟網卡,執行命令: /etc/init.d/network restart 。
重啟後查看ip地址,命令 ifconfig 查看當前服務器所有網卡的IP。
要上網我們還需要配置DNS,執行命令,vi /etc/resolv.conf 打開所在目錄:
在裏面添加如下兩條服務器地址:
nameserver 202.106.0.20
nameserver 8.8.8.8
配置完成後, 我們來測試一下網絡的連通性,ping www.baidu.com,網絡已通,這樣就配置完成了。
END
註意事項
配置之前需要把虛擬機的連接方式改為橋接。
都配置完成後如果不通,可以關閉防火墻再測試網絡連通性。
Linux虛擬機的三種網絡連接方式