虚拟化-ovs-常用命令集合

整理常用的ovs命令集合

基于Openvswitch 2.11
ovs-vsctl
1
2
3
4
5
6
显示主机已有网桥以及端口port信息,以及vxlan隧道信息
#ovs-vsctl show

添加网桥
#ovs-vsctl add-br br-test

ovs-ofctl
1
2
3
4
5
6
7
8
9
10
11
输出交换机信息,输出交换机上的网卡以及端口port信息
#ovs-ofctl show br-int

输出交换机的端口统计信息,包括收发包、丢包、错误包等数量
#ovs-ofctl dump-ports br-int -O openFlow13

查看交换机流表信息
#ovs-ofctl dump-flows br-int

添加交换机流表
#ovs-ofctl add-flow br-int ********
ovs-dpctl
1
2
3
显示所有datapath基本信息
#ovs-dpctl show

ovs-appctl
1
2
查询虚机mac fa:16:3e:ac:21:48 到 虚机 fa:16:3e:b0:bf:cc的流表trace路径
#ovs-appctl ofproto/trace br-int in_port=27,dl_src=fa:16:3e:ac:21:48,dl_dst=fa:16:3e:b0:bf:cc
例 : 查询虚机 test01 (宿主机 hyper123) 到虚机 test02(宿主机hyper09)的路径
1
2
3
4
5
6
7
8
9
10
1. 查询虚机test01 (tapa6df2bfb-e5)的 port id以及mac 
#ovs-ofctl show br-int -O openFlow13|grep tapa6df2bfb-e5 #查出是8号,mac fa:16:3e:f6:b8:81
2. 查询虚机test02 (tapf9689b0e-e4)的 port id
#ovs-ofctl show br-int -O openFlow13|grep tapf9689b0e-e4 查出是13号,mac是fa:16:3e:5a:35:74
3. 查询虚机test01到test02的icmp流表路径
#docker exec -it -uroot openvswitch_vswitchd bash
#ovs-appctl ofproto/trace br-int in_port=8,dl_src=fa:16:3e:f6:b8:81,dl_dst=fa:16:3e:5a:35:74

如果能在br-tun上送到 kernel tunnel代表正常