在CentOS 7上配置KVM桥接网络,可以按照以下步骤进行:
一、前期准备
1、检查CPU和内核支持:通过egrep '(vmx|svm)' color=always /proc/cpuinfo
命令查看CPU是否支持虚拟化技术,有输出表示支持,再使用lsmod | grep kvm
命令检查内核模块是否已加载kvm
。

2、关闭SELinux:若SELinux处于启动状态,需将其关闭,编辑/etc/sysconfig/selinux
文件,将SELINUX
设置为disabled
,然后重启系统。
3、安装KVM相关软件包:执行yum install y qemukvm qemukvmtools libvirt virtinstall virtviewer tunctl bridgeutils avahi dmidecode qemukvmtools virtmanager qemuimg virtinstall nettools libguestfstools
命令来安装所需软件包。
二、配置桥接网络
1、创建网桥:使用brctl addbr br0
命令创建名为br0
的网桥。
2、绑定物理网卡到网桥:假设物理网卡为eth0
,执行brctl addif br0 eth0
命令将其绑定到br0
网桥。
3、配置网桥的IP地址等参数:编辑/etc/sysconfig/networkscripts/ifcfgbr0
文件,添加如下内容(根据实际情况修改IP地址、网关、DNS等参数):
- DEVICE=br0
- TYPE=Bridge
- BOOTPROTO=static
- IPADDR=192.168.1.108
- NETMASK=255.255.255.0
- GATEWAY=192.168.12.2
- DNS1=192.168.211.103
- ONBOOT=yes
4、修改物理网卡配置文件:编辑/etc/sysconfig/networkscripts/ifcfgeth0
文件,追加BRIDGE=br0
以及修改BOOTPROTO=none
:

- DEVICE=eth0
- TYPE=Ethernet
- BOOTPROTO=none
- ONBOOT=yes
- BRIDGE=br0
5、重启网络服务:执行service network restart
命令使网络配置生效。
三、验证配置
1、查看网桥信息:使用brctl show
命令查看网桥的配置信息,确认物理网卡是否已成功绑定到网桥。
2、检查网络连接:使用ifconfig
或ip addr show
命令查看网络接口的IP地址等信息,确保配置正确。
四、创建虚拟机并配置网络
1、创建虚拟机磁盘:例如使用qemuimg create f qcow2 /var/lib/libvirt/images/centos7bridge.qcow2 10G
命令创建一个10G大小的磁盘镜像文件。
2、安装虚拟机:通过virtinstall
命令安装虚拟机,指定相关参数,如名称、内存、CPU核心数、光盘镜像、磁盘文件、网络连接方式为桥接等。
3、启动虚拟机并测试网络:启动虚拟机后,在虚拟机中测试网络连接,看是否能够正常访问外部网络以及其他主机。

五、常见问题及解决方法
1、问题:按照上述步骤配置后,虚拟机无法获取到IP地址。
解答:检查虚拟机的网络配置是否正确,确保虚拟机的网卡连接到桥接网络;检查DHCP服务器是否正常工作,若没有DHCP服务器,需手动为虚拟机配置静态IP地址;检查宿主机与虚拟机之间的网络连接是否正常,可通过ping命令测试连通性。
2、问题:配置完成后,宿主机无法访问外部网络。
解答:检查宿主机的网关配置是否正确,确保网关地址与物理网络中的网关一致;检查宿主机的防火墙设置,是否有规则阻止了网络访问;检查网络线路是否正常连接。