OVS搭建宿主机与KVM的桥接网络 常见命令

加载TUN模块: /sbin/modprobe tun

查看系统模块:lsmod | grep tun 

查看tun设备:ll /dev/net/tun


创建桥后查看路由表项route   #参看路由表是否正常配置

Kernel IP routing table

Destination  Gateway         Genmask     Flags Metric Ref    Use Iface

192.168.0.0  *               255.255.0.0     U     0      0        0 br0

default    192.168.99.1   0.0.0.0         UG    0      0        0 br0

注意修改默认路由的网络接口为桥br0,而非eth0


查询网卡模式: dmesg | grep eht0

建立bridge后的状态是让网络接口eth0进入混杂模式(promiscuous mode,接收网络中所有数据包),网桥br0进入转发状态(forwarding state),而且br0和eth0有相同的MAC地址,一般也会得到和eth0相同的IP。


打开br0的STP协议: brctl stp br0 on

STP是生成树协议(Spanning Tree Protocol),它主要是为了避免在建有bridge的以太网LAN中出现桥回路(bridge loop)。如果不打开STP,则可能出现回路从而导致建有bridge的主机网络不畅通。


设置br0 ip: 需要将bridge设置为与其绑定的物理网络接口一样的IP和MAC地址,并让默认路由使用bridge(而不是ethX)来连通。这个步骤可能导致宿主机的网络断掉,之后重新通过bridge建立网络连接,所以建立bridge这个步骤最好不要通过SSH连接远程(或VNC)配置。


查看tap设备:ls /sys/devices/virtual/net/

lo  br0  tap1

由上面信息可知,创建客户机后,添加了一个名为tap1的TAP虚拟网络设备,它被绑定在br0这个bridge上。Centos上默认虚拟网卡设备名为vnet0(1....)。


编译、安装qemu-kvm用户空间工具:

除了在内核空间的KVM模块之外,在用户空间需要QEMU来模拟所需要CPU和设备模型以及用于启动客户机进程,这样才有了一个完整的KVM运行环境。而qemu-kvm是为了针对KVM专门做了修改和优化的QEMU分支。

由于qemu-kvm是用户空间的程序,安装之后不用重启系统,直接用qemu-system-x86_64、qemu-img这样的命令行工具即可使用qemu-kvm了。

有关KVM与Qemu的关系参见:http://blog.csdn.net/lianliange85/article/details/10542497


QEMU/KVM的网络中,网桥(bridge)模式可以让客户机和宿主机共享一个物理网络设备连接网络,客户机有自己的独立IP地址。客户机可以访问外部网络,外部网络也可以直接访问客户机(就像访问普通物理主机一样)。即使宿主机只有一个网卡设备,使用bridge的方式也可知让多个客户机与宿主机共享网络设备,其使用非常方便。

在qemu-kvm的命令行中,关于bridge模式的网络参数如下:

-net tap[,vlan=n][,name=str][,fd=h][,ifname=name][,script=file][,downscript=dfile][,helper=helper][,sndbuf=nbytes][,vnet_hdr=on|off][,vhost=on|off][,vhostfd=h][,vhostforce=on|off]




你可能感兴趣的:(kvm,ovs)