基本思路
1、给QEMU虚拟机添加网卡
2、将QEMU虚拟机网卡和宿主机网卡绑定到一起,以此实现将虚拟机和宿主机网络打通。
虚拟机配置
启动QEMU时添加-net nic -net tap,这样,虚拟机网络将以TAP的方式和宿主机通信
添加/etc/qemu-ifup和/etc/qemu-ifdown。
在QEMU启动和关闭时将调用这2个脚本。
在这里完全对宿主机的配置
/etc/qemu-ifup
QEMU添加-net nic -net tap之后,在启动时默认会调用,并且会将TAP设备名传递过来。
所以脚本就可以这么写。
ip tuntap add dev $1 mode tap #添加一个tap网卡
ip link set dev $1 master br0 #在此之前需要创建一个bridge设备
ip link set dev $1 up #将网卡IP起来
/etc/qemu-ifdown
ip link set dev $1 down
ip link set dev $1 nomaster
ip tuntap del dev $1 mode tap
宿主机网桥创建
ip link add br0 type bridge
ip link dev br0 up
配置网桥网络
ip addr add xxx.xxx.xxx.xxx/24 broadcast xxx.xxx.xxx.xxx dev br0
ip route add default via xxx.xxx.xxx.xxx dev br0
通过以上配置之后,所有在br0中的设备都将与QEMU虚拟机网络相通。