当前位置: 首页 > news >正文

OVS配置CookBook

Hello World

目录
  • Hello World
    • 用于控制 ovs-db --- ovs-vsctl
    • 用于管理OpenFlow switch 的flow --- ovs-ofctl
    • 用于管理ovs的datapath --- ovs-dpctl
    • 用于查询和管理ovs daemon --- ovs-appctl
    • 用于在OVS中抓包 --- ovs-tcpdump
    • 其他
    • 参考网址

用于控制 ovs-db --- ovs-vsctl

用于管理OpenFlow switch 的flow --- ovs-ofctl

在 Open vSwitch (OVS) 中,传统的流表匹配是基于 12 元组(12-tuple) 的字段组合,这些字段通常用于定义数据包的匹配规则(match fields),并基于这些匹配执行相应的动作(actions)。以下是 OVS 中常用的 12 元组 字段:# 12 元组(12-tuple)匹配字段
1. 入端口(in_port): 数据包进入的交换机端口(物理端口或虚拟端口)。
2. 源 MAC 地址(dl_src) : 数据包的源以太网地址(Layer 2)。
3. 目的 MAC 地址(dl_dst): 数据包的目的以太网地址(Layer 2)。
4. 以太网类型(dl_type): 以太网帧的类型(如 0x0800 表示 IPv4,0x86DD 表示 IPv6,0x0806 表示 ARP)。
5. VLAN ID(dl_vlan)数据包的 VLAN 标签(如果存在)。
6. VLAN 优先级(dl_vlan_pcp):VLAN 优先级(802.1p 优先级,3 bits)。
7. 源 IP 地址(nw_src):数据包的源 IP 地址(IPv4 或 IPv6,取决于 dl_type)。
8. 目的 IP 地址(nw_dst): 数据包的目的 IP 地址(IPv4 或 IPv6)。
9. IP 协议类型(nw_proto): IP 协议号(如 6 表示 TCP,17 表示 UDP,1 表示 ICMP)。
10. IP ToS/DSCP(nw_tos): IP 头部中的服务类型(Type of Service)或 DSCP(Differentiated Services Code Point)字段。
11. 源传输层端口(tp_src): TCP/UDP/SCTP 源端口号(如果 nw_proto 是传输层协议)。
12. 目的传输层端口(tp_dst): TCP/UDP/SCTP 目的端口号(如果 nw_proto 是传输层协议)。# 补充说明
这些 12 元组字段可以组合使用,形成精细的匹配规则(如匹配特定 TCP 流)。
在 OpenFlow(OVS 使用的协议)中,这些字段通常用于 OFPMatch 结构,定义流表项的匹配条件。
现代 OVS 还支持更多扩展匹配字段(如 MPLS 标签、隧道 ID、Conntrack 状态等),但传统上最核心的是这 12 元组。# 示例 OVS 流表规则
ovs-ofctl add-flow br0 \
"in_port=1,dl_src=00:11:22:33:44:55,dl_dst=66:77:88:99:aa:bb,dl_type=0x0800,\
nw_src=192.168.1.1,nw_dst=10.0.0.1,nw_proto=6,tp_src=1234,tp_dst=80,actions=output:2"
这条规则匹配了一个 TCP 数据包(从 192.168.1.1:1234 到 10.0.0.1:80),并转发到端口 2。# 配置流表
ovs-ofctl del-flows br-int
ovs-ofctl add-flow br-int "table=0,in_port=rep-eth0,actions=output:rep-pf0vf9"
ovs-ofctl add-flow br-int "table=0,in_port=rep-pf0vf9,actions=output:rep-eth0"
ovs-ofctl add-flow br-int "table=0,in_port=rep-eth1,actions=output:rep-pf0vf10"
ovs-ofctl add-flow br-int "table=0,in_port=rep-pf0vf10,actions=output:rep-eth1"
ovs-ofctl dump-flows br-int# 添加 normal 流表
ovs-ofctl del-flows br-int
ovs-ofctl add-flow br-int "table=0,actions=NORMAL"

用于管理ovs的datapath --- ovs-dpctl

用于查询和管理ovs daemon --- ovs-appctl

# 查看流表卸载 
ovs-appctl dpctl/dump-flows -m
https://www.cnblogs.com/JCpeng/p/15153902.html

用于在OVS中抓包 --- ovs-tcpdump

# ovs 抓包
ovs-tcpdump -i <name> -c num 

其他

# OVS 默认日志文件 
vi /var/log/nebulamatrix/openvswitch/ovs-vswitchd.log

参考网址

  • Open vSwitch中有多个命令 001
http://www.aitangshan.cn/news/507.html

相关文章:

  • 推荐7本书《MLIR编译器原理与实践》、《ONNX人工智能技术与开发实践》、《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》
  • 打开手机 设置:搜索快应用管理--打开,删除其中不是自己安装的APP,可能有好多不是自己安装的
  • 递归因果发现算法与Python实现
  • 镜像地址相关
  • 军用警用无线电加密算法存在严重漏洞,可被轻易破解
  • Mybatis-Plus的InnerInterceptor插件之beforeQuery方法
  • 第二十一天
  • 有限状态自动机理论
  • Mybatis-Plus的InnerInterceptor插件之beforeQuery()
  • xz pixz 的多线程解压缩方法 - tsunchi
  • 苹果容器Apple container是做什么用的?
  • kubernetes-1.32高可用集群部署(kubeadm)
  • 安装pandas和openpyxl
  • pandas用法
  • 第三章 训练初步深入(3)
  • 安装pandas
  • 奥林匹克小丛书小蓝本习题另解或加强(数论卷)(一)
  • 关于磁盘io性能的命令
  • 房屋防水是建筑工程中非常重要的一部分,通常需要根据不同的环境、建筑结构和使用需求来采取相应的防水措施。国家标准对防水工程的要求有详细规定,以下是常见的防水相关国家标准和要求:
  • Hulo 编程语言开发 —— 从源代码到 AST 的魔法转换
  • python中enumerate的作用
  • ly-容斥杂题选讲
  • 前向传播 反向传播
  • Attention 显存计算 推理训练复杂度
  • NLP随记
  • RL 随记
  • top命令详解
  • 2025杭电暑期(8) 最努力的活着 推式子
  • 从输入网址到看到页面:一段看不见的旅程
  • 牛客周赛109补题