dpctl 命令实践

简介: dpctl 命令实践dpctl 程序是一个命令行工具用来检测和管理 OpenFlow 数据通路,它能够显示当前的状态数据通路,包括功能配置和表中的条目,以及合适使用 OpenFlow 的内核模块,可以用来添加,删除,修改和监视 datapaths。

dpctl 命令实践

dpctl 程序是一个命令行工具用来检测和管理 OpenFlow 数据通路,它能够显示当前的状态数据通路,包括功能配置和表中的条目,以及合适使用 OpenFlow 的内核模块,可以用来添加,删除,修改和监视 datapaths。

查看交换机端口信息基本情况(TCP 端口 6634 是默认交换机监听端口)。

1
2
3
4
5
6
7
8
9
10
# dpctl show tcp:9.123.137.25:6634
features_reply (xid=0x94af8117): ver:0x1, dpid:1
n_tables:255, n_buffers:256
features: capabilities:0xc7, actions:0xfff
  1(s1-eth1): addr:2e:d1:ca:aa:af:67, config: 0, state:0
      current:    10GB-FD COPPER
  2(s1-eth2): addr:66:93:32:1e:9b:9e, config: 0, state:0
      current:    10GB-FD COPPER
  LOCAL(s1): addr:5e:bc:ab:cc:dc:43, config: 0x1, state:0x1
get_config_reply (xid=0x92fc9e48): miss_send_len=0

查看流表信息:

1
2
# dpctl dump-flows tcp:9.123.137.25:6634
stats_reply (xid=0xe2c7ea1e): flags=none type=1(flow)

此时,流表为空,执行 h1 ping h2 无法得到响应。因此我们需要通过 dpctl 手动添加流表项,实现转发。

手动添加流表项:

1
2
3
4
5
6
7
8
# dpctl add-flow tcp:9.123.137.25:6634 in_port=1,actions=output:2
# dpctl add-flow tcp:9.123.137.25:6634 in_port=2,actions=output:1
# dpctl dump-flows tcp:9.123.137.25:6634     
   stats_reply (xid=0x131ed782): flags=none type=1(flow)
   cookie=0, duration_sec=13s, duration_nsec=401000000s, table_id=0, priority=32768, \
   n_packets=0, n_bytes=0,idle_timeout=60,hard_timeout=0,in_port=1,actions=output:2
   cookie=0, duration_sec=5s, duration_nsec=908000000s, table_id=0, priority=32768, \
   n_packets=0, n_bytes=0,idle_timeout=60,hard_timeout=0,in_port=2,actions=output:1

此时查看流表可以看到新的转发信息,同时可以在 h1 和 h2 之间可以相互连通。

dpctl 其他常用操作

创建 datapath 编号为 0

1
#dpctl adddp n1:0

增加两个网络设备到新的 datapath

1
2
#dpctl adddp n1:0 eth0
#dpctl adddp n1:0 eth1

检测数据通路接收的流量

1
#dpctl monitor n1:0

在数据通路中删除网络设备

1
#dpctl delif nl:0 eth0

 

目录
相关文章
|
8月前
|
域名解析 运维 网络协议
Linux命令行全景指南:从入门到实践,掌握命令行的力量
Linux命令行全景指南:从入门到实践,掌握命令行的力量
187 0
|
Shell 测试技术
Shell编程实战的命令测试
Shell编程实战的命令测试
63 1
|
8月前
|
监控 Linux Shell
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!
95 0
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
|
6月前
|
监控 安全 Linux
Linux命令ssltap的深入解析与应用实践
`ssltap`是一个假想的Linux命令,用于模拟SSL/TLS流量分析。它捕获、解密(如果有密钥)并分析加密流量,提供实时监控、协议解析和安全审计。特点包括实时性、灵活性、可扩展性和安全性。示例用法包括捕获特定端口流量和实时监控会话状态。在实际操作中应注意私钥安全、性能影响及合规性,建议定期审计和自动化监控。
|
7月前
|
Unix Shell Linux
技术经验分享:Bash脚本命令使用详解
技术经验分享:Bash脚本命令使用详解
57 0
|
8月前
|
监控 关系型数据库 Shell
Shell脚本入门:从基础到实践,轻松掌握Shell编程
Shell脚本入门:从基础到实践,轻松掌握Shell编程
139 3
|
8月前
|
Shell Perl
sed的在脚本中的实践案例
sed的在脚本中的实践案例
50 2
|
安全 Linux Windows
命令执行之文件落地利用总结
命令执行之文件落地利用总结
158 0
|
Shell PHP Perl
小白必看--Shell脚本基础及应用!| 更文挑战
小白必看--Shell脚本基础及应用!|更文挑战
149 0
|
Linux 开发工具 开发者
Dockerfile 案例-ONBUILD 命令案例 | 学习笔记
快速学习 Dockerfile案例-ONBUILD 命令案例
Dockerfile 案例-ONBUILD 命令案例 | 学习笔记