ovs学习自用
ovs框架

当前最新代码包主要包括以下模块和特性:
ovs-vswitchd: 主要模块,实现switch的daemon,包括一个支持流交换的Linux内核模块; ovsdb-server: 轻量级数据库服务器,提供ovs-vswitchd获取配置信息,例如vlan、port等信息; ovs-brcompatd: 让ovs-vswitch替换linux bridge,包括获取bridge ioctls的Linux内核模块; ovs-dpctl:用来配置switch内核模块; ovs-vsctl: 查询和更新ovs-vswitchd的配置; ovs-appctl: 发送命令消息,运行相关daemon; ovs-ofctl: 查询和控制OpenFlow交换机和控制器; ovs-openflowd:一个简单的OpenFlow交换机; ovs-controller:一个简单的OpenFlow控制器; ovs-pki:OpenFlow交换机创建和管理公钥框架; ovs-tcpundump:tcpdump的补丁,解析OpenFlow的消息; ovs-bugtool:管理openvswitch的bug信息。
ovs的port



SDN控制器
6. SDN - SDN控制器 - 《SDN网络指南》 - 书栈网 · BookStack



ovs-vsctl 命令详解
网桥Bridge
创建 Bridge
ovs-vsctl add-br br0
删除 Bridge
ovs-vsctl del-br br0
列出 Bridge
ovs-vsctl list-br
显示详情
ovs-vsctl show
端口 Port
添加端口
ovs-vsctl add-port br0 p1
其中br0 为上面添加的bridge
p1可以是物理端口或者vNic,
添加虚拟网卡可以使用ip tuntap add mod tap p1 详见ip tuntap命令
移除端口
ovs-vsctl del-port p1
列出端口
ovs-vsctl list-ports br0
查看端口详细数据
ovs-vsctl list interface p1
OF控制器
添加控制器
# ovs-vsctl set-controller <bridge> <target...>
ovs-vsctl set-controller br0 tcp:1.2.3.4:6653
ovs-vsctl set-controller br0 tcp:1.2.3.4:6633 tcp:4.3.2.1:6633
移除控制器
ovs-vsctl del-controller br0
查询控制器
ovs-vsctl get-controller br0
注:命令ovs-vsctl show会显示is_connected状态显示连接控制器是否成功
Vlan相关
配置端口为Access口
ovs-vsctl set port eth0 tag=10
设置br0中的端口eth0为VLAN 10的access口
添加eth1到指定bridge br0中,同时将其配置成指定VLAN 10的access端口
ovs-svctl add-port br0 eth1 tag=10
配置端口为Trunk口
在br0上添加port eth1为VLAN 10,11的trunk
ovs-vsctl add-port br0 eth1 trunk=10,11
在bridge ovs0中添加远端IP为10.10.10.1的VXLAN endpoint端口vxlan0
其他
一条命令创建bridge br0的,并添加eth0到br0中
ovs-vsctl add-br br0 -- add-port br0 eth0
设置OpenFlow版本
ovs-vsctl set bridge br0 protocols=OpenFlow10,OpenFlow13
————————————————
Panta rhei
原文链接:https://blog.csdn.net/m0_63624418/article/details/130435793
实验
test_bg是ovs网桥
test和test2是netns
netns_test是虚拟网卡




流表实验,把本地的命名空间的网卡和vxlan端的ip改成一致,此时会有IP冲突,ping会断开




浙公网安备 33010602011771号