Ubuntu qemu桥接

安装软件包


sudo apt-get install qemu-kvm uml-utilities bridge-utils

添加网桥接口


brctl addbr br0 # 增加一个虚拟网桥br0 brctl addif br0 eth0 # 在br0中添加一个接口eth0 brctl stp br0 off # 只有一个网桥,所以关闭生成树协议 brctl setfd br0 1 # 设置br0的转发延迟 brctl sethello br0 1 # 设置br0的hello时间 ifconfig br0 0.0.0.0 promisc up # 打开br0接口 ifconfig eth0 0.0.0.0 promisc up # 打开eth0接口 dhclient br0 # 从dhcp服务器获得br0的IP地址 brctl show br0 # 查看虚拟网桥列表 brctl showstp br0 # 查看br0的各接口信息

配置TAP设备


tunctl -t tap0 -u root # 创建一个tap0接口,只允许root用户访问 brctl addif br0 tap0 # 在虚拟网桥中增加一个tap0接口 ifconfig tap0 0.0.0.0 promisc up # 打开tap0接口 brctl showstp br0 # 查看br0接口生成树信息

=====================接口配置==============================


auto tap0 iface tap0 inet manual up ifconfig $IFACE 0.0.0.0 up down ifconfig $IFACE down tunctl_user frank auto br0 iface br0 inet manual bridge_ports eth0 tap0 bridge_stp off bridge_fd 0 bridge_maxwait 0

====================系统启动选项设置========================


qemu-img create -f qcow2 winxp.img 100G #建立硬盘镜像 qemu-system-x86_64 -m 512 -boot c -smp 2 -cdrom iso/winxp.iso -hda /opt/kvm/winxp.img -localtime -net nic,vlan=0,macaddr=00-00-00-00-00-01 -net tap,vlan=0,ifname=tap0,script=no

qemu 选项

-m 指定内存大小

-boot 从某个设备启动 c 硬盘启动 d 光盘启动

-smp 指定多内核(默认单核)

-cdrom 指定光盘镜像

-hda 指定硬盘镜像

-localtime 使用本地时间

-net 指定网卡选项

具体选项请查看帮助~~~~~

qemu-system-i386 –help