1. 程式人生 > >KVM 虛擬機器的網路模式學習及配置

KVM 虛擬機器的網路模式學習及配置

                        KVM 虛擬化環境中的網路模式     最近學習了KVM,對它的網路模式設定不是很清晰,就找了資料來看,大部分都表述的不是很清晰,下面是根據幾篇部落格整理的,並且通過實驗驗證。以前系統學習過Vmware的網路模式,KVM的網路模式多少和它有些相似,還比較容易理解。
KVM 客戶機網路連線有三種方式:   -host-only:看網上說也叫隔離模式,個人理解就類似於Vmware的僅主機模式,意思就是將所有的虛擬機器組成一個區域網,不能和外界通訊,不能訪問Internet,其他主機也不能訪問虛擬主機,安全性高。   -NAT方式:     - 使用者網路(User Networking):讓虛擬機器訪問主機、網際網路或本地網路上的資源的簡單方法,但是不能從網路或其他的客戶機訪問客戶機,效能上也需要大的調整。   -Bridge方式:
    - 虛擬網橋(Virtual Bridge):這網路模式下客戶機與宿主機處於同一網路環境,類似於一臺真實的宿主機,直接訪問網路資源,設定好後客戶機與網際網路,客戶機與主機之間的通訊都很容易。 -------------------------------------------------------------------------------------------- host-only:
僅(虛擬)主機模式比較簡單,拓撲圖如下:
                橋接網路介紹及配置步驟     Bridge方式,即客戶機通過網橋連線到宿主機網路環境中,可以使客戶機成為網路中具有獨立IP的主機。      注: 客戶機,即用KVM安裝在linux宿主機中的虛擬機器。     橋接網路,也叫物理裝置共享,被用作把一個物理裝置複製到一臺虛擬機器。                      

    網橋的基本原理就是建立一個橋接介面,並把物理主機的eth0繫結到網橋上,客戶機的網路模式需要配置為橋接模式,這可以在安裝的時候用 
--network bridge=br0 選項指定,也可在虛擬機器xml配置檔案中定義。
 - 宿主機   1.編輯修改網路裝置指令碼檔案,增加網橋裝置br0
  1. vi /etc/sysconfig/network-scripts/ifcfg-br0
  2. DEVICE=br0
  3. TYPE=Bridge
  4. ONBOOT=yes
  5. NM_CONTROLLED=no
  6. BOOTPROTO=static
  7. IPADDR=192.168.8.112
  8. NETMASK=255.255.255.0
  9. GATEWAY=192.168.8.2
  10. DNS1=192.168.8.2
  11. DNS2=8.8.8.8
  2.編輯修改網路裝置指令碼檔案,修改網絡卡裝置eth0
  1. [[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
  2. DEVICE=eth0
  3. HWADDR=00:0C:29:2B:3F:66
  4. TYPE=Ethernet
  5. UUID=dfd0c3de-5954-4c81-abe6-e7958f31549d
  6. ONBOOT=yes
  7. NM_CONTROLLED=no
  8. BOOTPROTO=none
  9. #IPADDR=192.168.8.112
  10. #NETMASK=255.255.255.0
  11. #GATEWAY=192.168.8.2
  12. #DNS1=192.168.8.2
  13. #DNS2=8.8.8.8
  14. BRIDGE=br0 // 將 eth0 繫結到網橋介面 br0 上
  3.重啟網路服務
  1. service network restart
  4.校驗橋接介面
  1. [[email protected] ~]# brctl show
  2. bridge name bridge id STP enabled interfaces
  3. br0 8000.000c292b3f66 no eth0
  4. vnet0
  5. vnet1
  6. virbr0 8000.5254000d29b0 yes virbr0-nic
 - 客戶機      客戶機安裝時注意,網路要選擇用br0橋接方式。 (1)安裝客戶機時指定:
  1. virt-install \
  2. --name CentOS6.8 \
  3. --ram 512 \
  4. --disk path=/kvm_data/CentOS6.8.img,size=30 \
  5. --vcpus 1 \
  6. --os-type linux \
  7. --os-variant rhel6 \
  8. --network bridge=br0 \ //橋接網路
  9. --graphics none \
  10. --console pty,target_type=serial \
  11. --location 'http://mirrors.aliyun.com/centos/6/os/x86_64/' \ //這裡使用網路映象
  12. --extra-args 'console=ttyS0,115200n8 serial'
(2)若客戶機已經安裝好,想修改其網路模式為橋接,則在其xml配置檔案中有定義,可以修改:   virsh edit coohx
  1. .....
  2. .....
  3. <interface type='bridge'>
  4. <mac address='52:54:00:ad:4c:86'/>
  5. <source bridge='br0'/>
  6. <model type='virtio'/>
  7. <address type='pci' domain='0x0000' bus='0x00' slot='0x03'function='0x0'/>
  8. </interface>
  9. <interface type='bridge'>
  10. <mac address='52:54:00:d5:0d:34'/>
  11. <source bridge='br0'/>
  12. <model type='virtio'/>
  13. <address type='pci' domain='0x0000' bus='0x00' slot='0x07'function='0x0'/>
  14. </interface>
  15. .....
  16. .....
這裡虛擬機器coohx的兩個網絡卡都是橋接網路。 - 登入客戶機,配置網絡卡ip  這裡我給虛擬機器添加了2塊網絡卡,eth0/1,分別對應宿主機的virnet0/virnet1,虛擬機器配置如下: vi /etc/sysconfig/network-scripts/ifcfg-eth0  // 橋接模式,連線到網橋br0.
  1. DEVICE="eth0"
  2. BOOTPROTO="static"
  3. BROADCAST="192.168.8.255"
  4. DNS1="192.168.8.2"
  5. GATEWAY="192.168.8.2" // 閘道器為宿主機所在區域網的閘道器
  6. HWADDR="52:54:00:AD:4C:86"
  7. IPADDR="192.168.8.16" // 與宿主機處於同一區域網
  8. IPV6INIT="yes"
  9. IPV6_AUTOCONF="yes"
  10. NETMASK="255.255.255.0"
  11. NM_CONTROLLED="yes"
  12. ONBOOT="yes"
  13. TYPE="Ethernet"
  14. #UUID="a3b35d6a-c4b2-49e2-b35b-999c3bf3243e"
=============================================================================================  NAT網路簡介及配置步驟
 NAT方式是kvm安裝後的預設方式。它支援主機與虛擬機器的互訪,同時也支援虛擬機器訪問網際網路,但不支援外界訪問虛擬機器。
列出linux宿主機當前KVM的所有網路模式:
  1. [[email protected] ~]# virsh net-list --all
  2. 名稱狀態自動開始Persistent
  3. --------------------------------------------------
  4. default 活動 yes yes
default網路(virbr0上)是宿主機安裝kvm虛擬機器自動安裝的。
檢視網路介面:
  1. [[email protected] ~]# ifconfig -a |grep -A5 vir*
  2. virbr0 Link encap:EthernetHWaddr52:54:00:0D:29:B0
  3. inet addr:192.168.122.1Bcast:192.168.122.255Mask:255.255.255.0
  4. UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1
  5. RX packets:0 errors:0 dropped:0 overruns:0 frame:0
  6. TX packets:6 errors:0 dropped