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

 

目录
相关文章
|
Shell 测试技术
Shell编程实战的命令测试
Shell编程实战的命令测试
55 1
|
7月前
|
Linux Shell 文件存储
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
192 1
|
5月前
|
监控 安全 Linux
Linux命令ssltap的深入解析与应用实践
`ssltap`是一个假想的Linux命令,用于模拟SSL/TLS流量分析。它捕获、解密(如果有密钥)并分析加密流量,提供实时监控、协议解析和安全审计。特点包括实时性、灵活性、可扩展性和安全性。示例用法包括捕获特定端口流量和实时监控会话状态。在实际操作中应注意私钥安全、性能影响及合规性,建议定期审计和自动化监控。
|
7月前
|
监控 Linux Shell
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!
82 0
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
|
6月前
|
Unix Shell Linux
技术经验分享:Bash脚本命令使用详解
技术经验分享:Bash脚本命令使用详解
47 0
|
6月前
|
Web App开发 Linux 数据处理
深入理解Linux命令pkill:功能、原理与最佳实践
**pkill命令详解:在Linux中,pkill用于按进程名终止进程,简化了通过PID管理进程的步骤。它利用正则匹配支持模糊查找,可发送不同信号如SIGTERM或SIGKILL。常用示例包括:终止指定进程名、按用户或终端终止进程,以及使用-f进行模糊匹配。注意谨慎使用,避免误杀重要进程,先发送SIGTERM,无效再用SIGKILL。了解其权限需求和配合ps命令使用,能提升系统管理效率。**
|
7月前
|
关系型数据库 Linux Shell
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(文件处理指令-上)
在当今的数字化时代,Linux已成为服务器、云计算、物联网等众多领域的核心操作系统。对于技术从业者、开发者以及系统管理员来说,掌握Linux指令不仅是一项基本技能,更是打开专业领域大门的关键。
90 3
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(文件处理指令-上)
|
7月前
|
Shell Perl
sed的在脚本中的实践案例
sed的在脚本中的实践案例
44 2
|
12月前
|
搜索推荐 Linux Shell
小白带你进一步学习linux的命令和基础操作
小白带你进一步学习linux的命令和基础操作
58 0
|
Linux Perl
实用的基础linux命令操作
实用的基础linux命令操作
下一篇
无影云桌面