ovs-vsctl

666 阅读2分钟

ovs-vsctl

OpenvSwitch中常用的命令:

  • ovs-vsctl用于控制ovs db
  • ovs-ofctl用于管理OpenFlow switch 的flow
  • ovs-dpctl用于管理ovs的datapath
  • ovs-appctl用于查询和管理ovs daemon

桥相关

查询主机上的网桥和端口:

ovs-vsctl show

创建一个网桥

使用选项--may-exist后,若欲创建的bridge已存在,该命令什么也不做,也不报错。

ovs-vsctl add-br br0 ovs-vsctl set bridge br0 datapath_type=netdev

删除网桥

使用选项--if-exists后,若欲删除bridge不存在,该命令什么也不做,也不能报错。

ovs-vsctl [--if-exists] del-br br0

查询已有的bridge

ovs-vsctl list-br

端口相关命令

添加端口

ovs-vsctl add-port br0 eth1

移除端口

从br0上移除端口eth1

ovs-vsctl [--if-exsits] del-port br0 eth1

列出端口

列出br0上的端口(不包括internal port)

ovs-vsctl list-ports br0

查看端口详细数据

ovs-vsctl list interface eth1

OpenFlow 控制器相关

ovs-vsctl set-controller br0 tcp:1.2.3.4:6633

设置多个控制器

controller ovs-vsctl set-controller br0 tcp:1.2.3.4:6633 tcp:4.3.2.1:6633

添加使用unix socket通信的

controller ovs-vsctl set-controller br0 unix:/var/run/xx/xx.sock

移除控制器

ovs-vsctl del-controller br0

查询brige上已配置的控制器

ovs-vsctl get-controller br0

VLAN相关

配置端口为Access口

设置(br0中的端口)eth0为VLAN 10的access口

ovs-vsctl set port eth0 tag=10

添加eth1到指定brigdge br0中,同时将其配置成指定VALN 10的access端口

ovs-vsctl add-port br0 eth1 tag=10

配置端口为Trunk口

在br0上添加port eth1 为VLAN 1,10,11的trunk

ovs-vsctl add-port br0 eth1 trunk=9,10,11

VXLAN相关

key=100表示设置vni为100,不设置默认为0 在bridge ovs0中添加远端IP 为10.10.10.1的VXLAN endpoint端口vxlan0

ovs-vsctl add-port ovs0 vxlan0 --set interface vxlan0 type=vxlan options:remote_ip=10.10.10.1 options:key=100

一条命令创建bridge br0,并添加eth0到br0中

ovs-vsctl add-br br0 -- add-port br0 eth0

创建internal port

OVS internal port 可以配置IP地址,普通port上配置的IP地址是不起作用的,在br0上创建一个internal port in0. ovs-vsctl add-br br0 in0 --set interface in0 type=internal ip addr add 10.10.10.10/24 dev in0

设置 OpenFlow port id

将已在ovs中的端口veth1的OpenFlow端口设置成100

ovs-vsctl set interface veth1 ofport_request=100

将端口veth1添加到bridge br0中,并将veth1的OpenFlow端口设置成200

ovs-vsctl add-port br0 veth1 -- set interface veth1 ofport_request=200

设置 OpenFlow版本

ovs-vsctl set bridge br0 protocols=OpenFlow10,OpenFlow12,OpenFolw13 转载链接:www.cnblogs.com/wangjq19920…