治肾虚不含糖,专注内核性能优化二十年。 https://github.com/KnightKu
分类: LINUX
2012-12-17 09:31:23
CentOS5上配置kvm的tap网络,总体来说还是比较直观的,但是每次配置都要搜索相关文档,这里做个CentOS配置kvm虚拟机TAP网络的笔记。
1. 安装bridge-utils和tunctl
yum install bridge-utils yum install tunctl |
其中,tunctl也就只有一个文件,从其他机器拷贝也行,位置在/usr/sbin/tunctl。安装完成后应该可以执行brctl和tunctl两个命令。
2. 配置桥接网络(bridged network)
创建/etc/sysconfig/network-scripts/ifcfg-br1文件,其中br1指定桥设备名称,可以通过ifconfig br1命令配置。文件内容如下:
1 2 3 4 5 6 7 8 | DEVICE=br1 TYPE=Bridge BOOTPROTO=static BROADCAST=192.168.20.255 IPADDR=192.168.20.91 NETMASK=255.255.255.0 GATEWAY= ONBOOT=yes |
3. 将eth1网卡绑定到桥br1上(网卡和桥可根据自己需要选择)
修改/etc/sysconfig/network-scripts/ifcfg-eth1文件,为以下内容:
1 2 3 4 5 6 7 8 9 10 | # Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) DEVICE=eth1 #BOOTPROTO=static #BROADCAST=192.168.20.255 HWADDR=00:30:48:D9:8B:4B #IPADDR=192.168.20.91 #NETMASK=255.255.255.0 #NETWORK=192.168.20.0 ONBOOT=yes BRIDGE=br1 |
4. 使网桥设备生效
service network restart |
5. 创建用于Qemu的TAP启动脚本
创建/etc/qemu-ifup脚本,并将该脚本设置为可执行:
touch /etc/qemu-ifup chmod +x /etc/qemu-ifup |
修改该脚本内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #!/bin/sh #set -x switch=br1 if [ -n "$1" ];then /usr/bin/sudo /usr/sbin/tunctl -u `whoami` -t $1 /usr/bin/sudo /sbin/ip link set $1 up sleep 0.5s /usr/bin/sudo /usr/sbin/brctl addif $switch $1 exit 0 else echo "Error: no interface specified" exit 1 fi |
6. 创建用于Qemu的TAP关闭脚本
这个文件可以不做任何事情,目的是为了消除Qemu关闭时的警告,创建并修改权限如下:
touch /etc/qemu-ifup chmod +x /etc/qemu-ifup |
修改其内容为(只有一行文件头,不做任何操作):
1 | #!/bin/sh |
完成后即可在Qemu中调用“-net tap”参数来创建TAP网络了。