使用 RYU 控制器在 WireShark 中监控 Mininet OpenFLow 流量

Monitor Mininet OpenFLow Traffic in WireShark with RYU Controller

我正在使用 RYU 控制器进行 SDN 设置。我想监控基本的 openflow 握手消息,但我没有这样做..

这是我在安装 mininet、wireshark 和 ryu 后执行的步骤。

./bin/ryu-manager --verbose ryu/app/simple_switch_13.py

第 2 步:启动虚拟网络

sudo mn --top single,3 --man --controller remote --switch ovsk,Protocols=OpenFLow13

现在我的 wireshark 中没有流量显示。我使用的是 wireshark 1.12 版,其中安装了 openflow 解析器。

当我使用捕获循环时,它会显示请求和回复数据包,但我想查看 "Feature Request" 来自 wireshark 中的 ryu 控制器

简而言之 => 你不能。

Feature request/replyopenflow 的一部分,而不是 IP 堆栈的一部分。因此,它嵌入在 TCP/IP 模型的数据包中。

这是我所做的:

确保 "openvswitch-testcontroller" 已关闭:

yavuz@ubuntu:/tmp$ service --status-all | grep openv
 [ + ]  openvswitch-switch
 [ - ]  openvswitch-testcontroller

运行 申请:

yavuz@ubuntu:~/ryu$ pwd
/home/yavuz/ryu
yavuz@ubuntu:~/ryu$ sudo ryu-manager --verbose ryu/app/example_switch_13.py
lzma module is not available
Registered VCS backend: git
Registered VCS backend: hg
Registered VCS backend: svn
Registered VCS backend: bzr
loading app ryu/app/example_switch_13.py

在 mininet 之前 运行 lo 的 tcpdump(不是 eth0 或类似的)

sudo tcpdump -i lo -w ryu-local.cap

运行 迷你网:

yavuz@ubuntu:/tmp$ sudo mn --topo single,3 --controller=remote --mac
*** Creating network
*** Adding controller
Connecting to remote controller at 127.0.0.1:6653
*** Adding hosts:
h1 h2 h3
*** Adding switches:
s1
*** Adding links:
(h1, s1) (h2, s1) (h3, s1)
*** Configuring hosts
h1 h2 h3
*** Starting controller
c0
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet> h1 ping h2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=8.38 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.228 ms

停止跟踪并打开它。

希望对您有所帮助。