KVM网络配置

四种网络

  1. NAT default方式:支持主机与虚拟机互访,虚拟机访问外界网络,但不支持外界访问虚拟机
  2. isolated隔离,vmware--host-only:仅主机模式。外网不能访问虚拟机,虚拟机也不能访问外网
  3. bridge ----桥接模式属于桥接口
  4. 路由模式

NAT网络

桥接网络

隔离网络

  • 查看管理接口对应的网卡

    [root@kvm-server ~]# brctl show 
    bridge name	bridge id		STP enabled	interfaces
    virbr0		8000.525400831963	yes		virbr0-nic
    							           vnet0
    							           vnet1
    
    注意:这里vnet网卡,是每台启动的虚拟机正在使用的网卡设备,每台虚拟机使用的不同			
    
  • 从交换机上把vnet网卡删除

    [root@kvm-server ~]# brctl delif virbr0 vnet0
    
    来到vm2的虚拟机,ping不通百度
    

    添加vnet网卡添加到交换机上:
    [root@kvm-server ~]# brctl addif virbr0 vnet0
    
    来到vm2的虚拟机,恢复正常
    

配置文件方式配置桥接:在宿主机上

先将kvm虚拟机关闭

配置文件方式配置桥接:在宿主机上
[root@kvm-server ~]# ip a   #先找出宿主机用的哪个网卡设备,我的是enp0s25
[root@kvm-server ~]# cd /etc/sysconfig/network-scripts/
1.定义网卡配置文件
[root@kvm-server network-scripts]# vim ifcfg-br0    #创建该桥接网卡,默认没有此文件需要新建
[root@kvm-server network-scripts]# cat ifcfg-br0
TYPE=Bridge  #定义类型
NAME=br0  #设备的名字
DEVICE=br0
ONBOOT="yes"
BOOTPROTO=static
IPADDR=10.0.111.182   #要和宿主机在一个网络,这里我用的是宿主机的ip
GATEWAY=10.0.111.1    #宿主的网关,nat的是.2,桥接是.1
NETMASK=255.255.255.0
DNS1=114.144.144.144
DNS2=8.8.8.8

然后看清楚宿主机正在使用的网卡,修改配置文件,(将物理机网卡桥到桥接网卡)
[root@kvm-server network-scripts]# cp ifcfg-enp0s25 ifcfg-enp0s25.back
[root@kvm-server network-scripts]# vim ifcfg-enp0s25
NAME=enp0s25   #定义网卡设备名称
DEVICE=enp0s25   #宿主机正在使用的网卡设备
ONBOOT=yes
BRIDGE=br0     #和ifcfg-br0文件里面的设备对应,新添加
  
2.重启libvirtd服务
[root@kvm-server network-scripts]# systemctl restart libvirtd 
3.重启network服务 
[root@kvm-server network-scripts]# systemctl restart network     

然后去查看有没有新设备生成

添加完成后

运行虚拟机查看IP地址

就可以看到添加的桥接网卡了

  • 移除网卡操作

删除桥接网卡步骤:
1.删除br0的配置文件
2.修改正常网卡的配置文件
3.重启系统

[root@kvm-server network-scripts]# mv ifcfg-br0 ifcfg-br0.bak
[root@kvm-server network-scripts]# mv ifcfg-enp0s25 ifcfg-enp0s25.bak
[root@kvm-server network-scripts]# mv ifcfg-enp0s25.back ifcfg-enp0s25
[root@kvm-server network-scripts]# systemctl restart libvirtd
[root@kvm-server network-scripts]# systemctl restart network
[root@kvm-server network-scripts]# ping www.baidu.com
PING www.a.shifen.com (39.156.66.14) 56(84) bytes of data.
64 bytes from 39.156.66.14 (39.156.66.14): icmp_seq=1 ttl=52 time=13.3 ms

配置文件方式创建NAT网络

配置文件方式创建nat网络:
1.首先需要一个模板文件,通过这个模板文件创建自定义的nat网络。
[root@kvm-server ~]# cd /etc/libvirt/qemu/networks
[root@kvm-server networks]# ls
autostar default.xml
[root@kvm-server networks]# cp default.xml nat1.xml
[root@kvm-server networks] # vim nat1.xml  

重启服务

[root@kvm-server netwoeks]# systemctl  restart libvirtd

在某个(比如vm3)虚拟机去添加此设备测试

配置文件方式创建isolated网络隔离网络

[root@kvm-server networks]# cp default.xml isolated200.xml
[root@kvm-server networks]# vim isolated200.xml

启动:
[root@kvm-server networks]# systemctl restart libvirtd
开机自启动:
[root@kvm-server networks]# virsh net-autostart  isolated200

查看所有的网络:
[root@kvm-server networks]# virsh net-list