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
相关文章
相关标签/搜索