ovs常用命令

本文提供了OpenvSwitch(OVS)的基本操作指令,包括网桥和端口的增删改查、连接控制器、查看网络状态及流表等。适用于快速上手OVS进行网络虚拟化配置。

 

 

  1. 添加网桥

     ovs-vsctl add-br 交换机名
    
  2. 删除网桥

     ovs-vsctl del-br 交换机名
    
  3. 添加端口

     ovs-vsctl add-port 交换机名 端口名(网卡名)
    
  4. 删除端口

     ovs-vsctl del-port 交换机名 端口名(网卡名)
    
  5. 连接控制器

     ovs-vsctl set-controller 交换机名 tcp:IP地址:端口号
    
  6. 断开控制器

     ovs-vsctl del-controller 交换机名
    
  7. 列出所有网桥

     ovs-vsctl list-br
    
  8. 列出网桥中的所有端口

     ovs-vsctl list-ports 交换机名
    
  9. 列出所有挂接到网卡的网桥

     ovs-vsctl port-to-br 端口名(网卡名)
    
  10. 查看open vswitch的网络状态

    ovs-vsctl show
    
  11. 查看 Open vSwitch 中的端口信息

    (交换机对应的 dpid,
    以及每个端口的 OpenFlow 端口编号,
    端口名称,
    当前状态等等)
    ovs-ofctl show 交换机名
    
  12. 修改dpid

    ovs-vsctl set bridge 交换机名 other_config:datapath-id=新DPID
    
  13. 修改端口号

    ovs-vsctl set Interface 端口名 ofport_request=新端口号
    
  14. 查看交换机中的所有 Table

    ovs-ofctl dump-tables ovs-switch
    
  15. 查看交换机中的所有流表项

    ovs−ofctl dump−flows ovs-switch
    
  16. 删除编号为 100 的端口上的所有流表项

    ovs-ofctl del-flows ovs-switch "in_port=100"
    
  17. 添加流表项

    以“添加新的 OpenFlow 条目,
    修改从端口 p0 收到的数据包的源地址为 9.181.137.1”为例:
    ovs-ofctl add-flow ovs-switch "priority=1 idle_timeout=0,in_port=100,actions=mod_nw_src:9.181.137.1,normal"
    更多说明请查阅:[《基于 Open vSwitch 的 OpenFlow 实践》
    
  18. 查看 OVS 的版本信息

    ovs-appctl --version
    
  19. 查看 OVS 支持的 OpenFlow 协议的版本

    ovs-ofctl --version
    
<think>好的,用户想查找检查Open vSwitchOVS)虚拟交换机状态的常用命令。我需要根据提供的引用资料整理相关命令,并确保符合用户的需求。 首先,回顾引用内容。引用[1]、[2]、[3]、[5]提到了OVS的主要组件,比如ovs-vswitchd、ovsdb-server等。引用[4]和[5]提到了一些具体的命令,例如ovs-vsctl、ovs-ofctl、ovs-dpctl等。用户需要的是状态检查命令,所以应该关注这些工具的使用方法。 接下来,需要确定哪些命令用于状态检查。常见的状态包括桥接状态、端口信息、流表内容、数据库状态等。根据引用资料中的信息: - ovs-vsctl show:显示OVS的配置信息,包括桥、端口、VLAN设置等,引用[1][2]提到ovs-vsctl用于查询配置。 - ovs-ofctl show [bridge]:查看OpenFlow交换机的信息,如端口状态和流表统计,引用[1]提到ovs-ofctl是OpenFlow管理工具。 - ovs-dpctl show:显示内核Datapath的信息,引用[1][2]指出ovs-dpctl用于管理Datapath。 - ovs-appctl fdb/show [bridge]:查看MAC学习表,引用[3]提到vswitchd支持MAC地址学习。 - ovsdb-client dump:导出数据库内容,引用[1][2]提到ovsdb-server是数据库,需要检查其状态。 - ovs-vsctl list Interface:查看接口详细状态,比如统计信息。 - 日志查看和流表跟踪命令如ovsdb-tool show-log和ovs-appctl ofproto/trace,引用[4]有示例。 此外,需要确保命令格式正确,使用中文解释,并生成相关问题。还要注意引用标记,比如每个命令对应的引用来源。例如,ovs-vsctl show在引用[1][2]中提到,ovs-ofctl在引用[1][5]有涉及。 最后,整理这些命令,分点说明用途和示例,并附上相关引用。然后生成相关问题,如检查流表、查看日志的方法等。确保回答结构清晰,符合用户要求。</think>Open vSwitch (OVS) 常用状态检查命令整理如下,按功能分类说明: ### 一、基础配置与桥接状态 1. **查看所有虚拟交换机及其端口信息** ```bash $ ovs-vsctl show ``` 显示桥接器、端口、VLAN配置及接口物理状态,适用于快速查看拓扑结构[^1][^2] 2. **检查内核数据路径状态** ```bash $ ovs-dpctl show ``` 输出内核模块 datapath 的统计信息,包括缓存流表数量和丢包统计[^1][^4] ### 二、流表与转发规则 3. **查看 OpenFlow 流表** ```bash $ ovs-ofctl dump-flows br0 ``` 显示指定桥接器的所有流表条目及匹配统计,支持过滤条件如 `table=0`[^4][^5] 4. **跟踪流表匹配过程** ```bash $ ovs-appctl ofproto/trace br-tun dl_vlan=1 ``` 模拟特定流量(如 VLAN=1)的流表匹配路径,用于调试复杂流规则[^4] ### 三、网络状态与统计 5. **查看接口统计信息** ```bash $ ovs-vsctl list Interface eth0 ``` 显示指定接口的收发包统计、错误计数、MTU等详细信息[^3] 6. **检查 MAC 学习表** ```bash $ ovs-appctl fdb/show br0 ``` 输出二层交换的 MAC 地址学习表,包含 VLAN 关联信息[^3] ### 四、数据库与日志 7. **导出数据库配置** ```bash $ ovsdb-client dump ``` 以易读格式输出 OVSDB 全部配置信息,包含QoS策略、端口绑定等[^2][^5] 8. **查看数据库操作日志** ```bash $ ovsdb-tool show-log -m /etc/openvswitch/conf.db ``` 检查数据库变更历史记录,用于审计配置变更[^4] ### 五、高级诊断 9. **端口镜像抓包** ```bash $ ovs-vsctl -- set Bridge br0 mirrors=@m \ -- --id=@snooper0 get Port snooper0 \ -- --id=@m create Mirror name=mymirror output-port=@snooper0 ``` 创建镜像端口后使用 tcpdump 抓包,用于流量分析[^4] 10. **检查守护进程状态** ```bash $ systemctl status openvswitch-switch ``` 验证 ovs-vswitchd 和 ovsdb-server 服务运行状态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lincy521

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值