首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用tshark捕获openflow数据包

如何使用tshark捕获openflow数据包
EN

Stack Overflow用户
提问于 2017-08-18 19:12:44
回答 1查看 1.4K关注 0票数 1

我有一个使用arch linux运行OVS的系统。我还有一个控制器运行在同一个盒子里。我有以下设置:-

代码语言:javascript
复制
ovs-vsctl set-controller br-int tcp:192.168.1.201:6633

我希望使用t鲨(tSharge2.2.8)来使用以下命令捕获openflow:

代码语言:javascript
复制
 sudo tshark -i br-int -d tcp.port==6633,openflow -O openflow_v4

它转储系统中的所有流,但没有packetIn openflow消息。我确实确认了控制器收到了packetIn消息。(粘贴最后几行:-)

代码语言:javascript
复制
EVENT ofp_event->EventOFPPacketIn
packet in 1237689849893337 b8:27:xx:xx:yy:yy:zz ff:ff:ff:ff:ff:ff:3

我还从t鲨文档中了解到,默认情况下,它使用用于openflow的端口6653。

代码语言:javascript
复制
  tshark -G decodes | grep -i openflow
  tcp.port        6653    openflow

然而,我的印象是,我仍然可以使用以下捕获命令查找openflow流量:

https://wiki.wireshark.org/OpenFlow

代码语言:javascript
复制
 tshark tcp port 6633

这也不起作用,因为没有捕获任何事件,虽然我可以看到控制器接收了很多事件。

会非常感谢这里的任何帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-19 10:22:03

我猜你没有听到正确的界面。尝试以下几点:

代码语言:javascript
复制
sudo tshark -i any -d tcp.port==6633,openflow -O openflow_v4

如果这不起作用,您的控制器和交换机可能没有使用OpenFlow 1.3进行通信。为了确保你看到了一切,试着:

代码语言:javascript
复制
sudo tshark -i any -d tcp.port==6633

Details.,除非在您的设置中有什么特殊的东西,否则从Open到控制器和回车的数据包不会通过网桥。由于通信的两端位于同一主机上,数据包可能通过回送接口:

代码语言:javascript
复制
sudo tshark -i lo -d tcp.port==6633

我能够复制您的设置和发行,以确认我的答案开放vSwitch 2.5.2和泛光灯(master分支)。我可以看到包在tcpdumptshark的环回接口上传递。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45763616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档