kvm網絡管理

1、qemu-kvm支持的網絡vim

        1.虛擬機的網絡模式bash

                基於NAT(Network Address Translation)的虛擬網絡網絡

                基於網橋(Bridge)的虛擬網絡dom

                用戶自定義的隔離的虛擬網絡 命令行

                直接分配網絡設備(包括VT-d和SR-IOV)3d

         2.虛擬機的網卡:rest

               RTL813九、e1000、.....xml

               virtioblog

2、virsh命令查看網卡接口

virsh net-list

  

 

 

 

virsh net-info  default

  

 

 

 

virsh net-dumpxml default

  

 

 

 3、基於NAT的虛擬網絡

       1.KVM安裝時默認的網絡配置

        

 

 

      2.默認宿主機會有一個虛擬網卡virbr0,實際上是一個虛擬交換機

ifconfig virbr0

  

 

 

     3.會綁定一個網卡virbr0-nic

brctl show virbr0

  

 

    4.查看iptables的nat表,能夠看到作了SNAT

iptables -t nat -L

  

 

 

      5.能夠看到從virbr0接口進來的DNS報文和DHCP報文是容許的

iptables -nvL

  

 

 

       6.當有虛擬機啓動,若是採用的是默認NAT模式,那麼virbr0交換機下就會增長接口,能夠看 到有2個虛擬接口,表明有2個虛擬機接到了這個交換機上

brctl show virbr0

  

 

 

     7.以經過virsh命令查看虛擬機的網卡狀況

virsh domiflist testvm01

  

virsh domif-getlink testvm02 vnet0

  

 

 

virsh domifstat testvm02 vnet0

  

 

 

   8.向虛擬機添加虛擬機網絡

能夠經過xml文檔添加:
<interface type='network'>
   <mac address='52:54:00:aa:18:d1'/>
    <source network='default'/> //網絡模式
    <model type='virtio'/> //網卡類型
    <address type='pci' domain='0x0000' bus='0x00' slot='0x03'
    function='0x0'/>
</interface>

   9.  候主機就變成了一個路由器,能夠看到路由功能已經打開 

cat /proc/sys/net/ipv4/ip_forward

  

 

 

  注意 若是是0  那是由於ip_forward沒有開啓

 啓動ip_forward

vim  /etc/sysctl.conf 
net.ipv4.ip_forward = 1

  

 

 

 

4、基於網橋的虛擬網絡

            

 

 

      1.Redhat/CentOS配置網橋的經常使用方法:

          nmcli:

         1.添加網橋

nmcli connection add  con-name virbr1 type bridge ifname virbr1

  

 

 

        2./橋接物理網卡

nmcli connection add type bridge-slave con-name virbr1 ifname virbr1 master virbr1

  

 

 

       

 

 

  3.激活鏈接

nmcli connection up virbr1

  

 

 

   4.驗證

      ping真實主機    

     

 

 

       ping虛擬主機

          

   2. brctl (須要安裝bridge-utils包)

        1.建立網橋

brctl addbr br10

   2.鏈接網橋

brctl addif br10 ens34

 3.brctl命令對網橋的配置須要以文件形式保存下來,這樣系統再次啓動後全部配置仍能生效。(修改配置文件達到鏈接網橋的功能)

       1.複製網卡

cp ifcfg-ens33  ifcfg-virbr1

  2.修改網卡配置

ens33網卡配置

TYPE="Ethernet"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
BRIDGE=virbr1

  

橋接網卡配置

TYPE="Bridge"
BOOTPROTO="static"
NAME="virbr1"
DEVICE="virbr1"
ONBOOT="yes"
IPADDR=192.174.1.20
GATAWEY=192.174.1.2
DNS1=114.114.114.114

  3.重啓網卡

systemctl  restart  network

  4.附加到虛擬機  (這一步使用哪一種方法都得須要作這部)

 

virsh attach-interface testvm01 bridge virbr1 --mode virtio --current  (當即生效 可是下次啓動會失效)

virsh attach-interface testvm01 bridge virbr1 --model virtio --config (永久生效,是由於寫入配置文件)

  

 

 5、用戶自定義的隔離的虛擬網絡

           邏輯視圖:

     

 

     命令行添加網絡:

      下次啓動生效

virsh attach-interface domain --type bridge --source br1 --model virtio --config

          當即生效

virsh attach-interface domain --type bridge --source br1 --model virtio --current

         爲了讓每次開機都生效,新生成一次配置文件替換原來的配置文件

virsh dumpxml domain > domain.xml
相關文章
相關標籤/搜索