KVM中的宿主机网络配置

℡╲_俬逩灬. 提交于 2019-12-24 20:32:28

Kvm 虚拟化技术中,网络访问方式分为三种,分别是:

(1)虚拟网络'default':NAT  (默认方式,支持虚拟机上网但不支持互访)  

(2)主机设备  vnet0(根据实际情况而定):macvtap  (支持互访)  

(3)主机设备  vnet0 (桥接'br0') (bridge 方式,使虚拟机成为网络中具有独立IP的主机)

推荐采用 bridge 方式,要采用 bridge 方式,需要在宿主机网络上建立一个桥接器.

①启动kvm虚拟机,会多出一个vnet0网络设备,这是虚拟机启动后生成的。
查看:ifconfig
②kvm虚拟机启动后,vnet0默认桥接到了virbr0上,关闭后消失。
查看:brctl show
关机:virsh shutdown CentOS-7-x86_64
再查看:brctl show

③此时的kvm虚拟机出去的流量是桥接到virbr0上,然后经过宿主机的iptables的nat,再经过eth0出去。
这有网络瓶颈,而且依靠iptables,如果你把iptables关闭无法上网了。同时ip地址是地址池中分配的内网地址。
查看:iptables -t nat -vnL

④kvm获取的地址来源于下面。
ps aux | grep dns
cat /var/lib/libvirt/dnsmasq/default.conf

⑤生产中,网络的配置如下:
一般是添加一个网络设备桥,把宿主机的网卡桥接到这上面。
删除原先宿主机的IP地址,把宿主机的地址配置到这个网络设备桥上。
最后修改kvm配置文件,让kvm也桥接到这个网络设备桥上。

【命令配置】

1,查看网桥:brctl show
2,重新添加网桥:brctl addbr br0
3,查看网桥:brctl show

⑥下面操作过程中会断网。可以写成脚本形式执行。 
1,创建脚本edit-net.sh,如下:
brctl addif br0 eth0
ip addr del dev eth0 192.168.145.133/24
ifconfig br0 192.168.145.133/24 up
route add default gw 192.168.145.2

2,可以看到eth0上就没有ip地址了,同时eth0桥接到了br0上了。
查看:brctl show
查看:ifconfig

【对于既存的虚拟机,修改为桥接的方法如下:】

虚拟机配置文件(.xml)的路径:cd /etc/libvirt/qemu

3,修改虚拟机的配置文件,把kvm也桥接到br0上。
★interface这里原先配置如下:
<interface type='network'>
<mac address='52:54:00:83:f7:a0'/>
<source network='default'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

★修改配置如下:
修改命令:virsh edit CentOS-7-x86_64
<interface type='bridge'>
<mac address='52:54:00:83:f7:a0'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

4,此时,查看kvm虚拟机,可以看到IP已经和主机同一网段了。
-----------------------------------------------
●【修改桥接为永久生效】
上述桥接操作,让宿主机的eth0桥接到br0上是临时生效的,重启宿主机,就失效了。
★brctl命令来自于下面包:
①which brctl
显示:/usr/sbin/brctl
②查询包名:rpm -qf /usr/sbin/brctl
bridge-utils-1.5-9.el7.x86_64

③创建了一个ifcfg-br0文件,然后更改eth0的配置文件,桥接上去。
配置完成后,重启主机。

【手动配置】//不用上面命令配置法,直接执行手动配置法更方便。

★ ifcfg-eth0的配置文件如下:

TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0

★ ifcfg-br0的配置文件如下:
TYPE=Bridge
BOOTPROTO=static
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.145.133
NETMASK=255.255.255.0
GATEWAY=192.168.145.2
NAME=br0

-----------------------------------------------

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!