创建网卡、创建网桥并建立桥接
[root@kolla ~]# cat create.sh
create_br(){
tunctl -t storage -u root
brctl addbr virbr2
brctl addif virbr2 storage
ifconfig virbr2 10.10.1.1 netmask 255.255.255.0 up
brctl stp virbr2 on
}
delete_br(){
ifconfig virbr1 down
brctl delbr virbr1
tunctl -d manager
}
create_br
#delete_br
1. 确认内核是否支持tun/tap,确认内核是否有tun模块
[root@guanxiaojue]# modinfo tun
filename: /lib/modules/2.6.34.7-56.fc13.i686.PAE/kernel/drivers/net/tun.ko
alias: char-major-10-200
license: GPL
author: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
description: Universal TUN/TAP device driver
srcversion: 880DE258930FE60D765B735
depends:
vermagic: 2.6.34.7-56.fc13.i686.PAE SMP mod_unload 686
如上所示,则说明内核支持tun/tap虚拟网卡
2.加载内核模块
[root@guanxiaojue ~]# modprobe tun
[root@guanxiaojue ~]# lsmod | grep tun
tun 10548 1
//如上显示,则说明内核模块加载成功
3.添加centos7的tunctl源
(1)创建下面的文件: /etc/yum.repos.d/nux-misc.repo:
[nux-misc]
name=Nux Misc
baseurl=http://li.nux.ro/download/nux/misc/el7/x86_64/
enabled=0
gpgcheck=1
gpgkey=http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
(2)安装tunctl rpm包
# yum --enablerepo=nux-misc install tunctl
4.使用tunctl新建虚拟网卡
(1)创建网卡的设备文件:
[root@guanxiaojue ~]# tunctl -t tap0 -u root//如果是非root用户则需要sudo下
(2)设置虚拟网卡:
[root@guanxiaojue ~]# ifconfig tap0 192.168.0.1 netmask 255.255.255.0 promisc
经过如上操作后,虚拟网卡已经建立和配置好了。