使用 Wireshark 插件在 pkt0 接口上分析 vRouter 和 vRouter Agent 之间的数据包
Wireshark是一款分析来自网络的数据包并详细显示数据包信息的应用程序。
Contrail 网络版本 2008 及更高版本支持 Wireshark agent_header.lua 插件,该插件使您能够捕获和分析 vRouter 数据平面与 vRouter 代理之间交换的数据包。您可以通过分别在 DPDK 模式和内核模式下执行vifdump -i 2
tcpdump -i pkt0
和命令来捕获数据包。在 2008 版中,Wireshark agent_header.lua 插件仅在 Macintosh OS 计算机上受支持。.从2011年发布开始,Macintosh OS和Windows OS计算机都支持Wireshark agent_header.lua插件。Wireshark 还允许您将代理标头信息添加到捕获的数据包中。
Before you begin
您必须确保在您的计算机上安装了Wireshark应用程序。您可以从下载 Wireshark 页面下载 Wireshark 。
Configuration
请按照以下步骤配置 Wireshark 插件并剖析数据包中的代理标头信息:
请按照以下步骤在 Windows 操作系统计算机中配置 Wireshark 插件,并在数据包中剖析代理标头信息:
从 GitHub: https://github.com/tungstenfabric/tf-vrouter/tree/master/utils/agent_hdr_plugin 下载 Wireshark 插件。
如果您使用的是 Windows 32 位操作系统,请将插件复制到计算机上的以下 Wireshark 目录中: C:\Program Files (x86)\Wireshark\。
如果您使用的是 Windows 64 位操作系统,请将插件复制到计算机上的以下 Wireshark 目录中: C:\Program Files\Wireshark\plugins\。
验证 agent_hdr.lua 插件是否已在 Wireshark 中成功加载。重新启动 Wireshark 并导航到关于 Wireshark >插件的帮助>,以验证插件是否已加载到插件部分。
在 Run as administrator 模式下打开命令提示符并导航到 C:\Program Files\Wireshark 以使用 editcap。通过 editcap 传递 pcap 文件,为数据包添加自定义封装类型:
editcap -T user0 <pcap-file-to-be-read> <output.pcap>
在 Wireshark 中,导航到编辑>首选项>协议>DLT_USER>编辑封装表。
在 编辑封装表中,添加 as
agent_hdr
数据包的有效负载协议。看到。-
使用 Wireshark,打开您在步骤 4 中生成的修改后的 pcap 文件。Wireshark 显示解析的数据包。
agent_header.lua 插件也可以在 contrail-tools 容器中使用。您必须执行以下步骤才能使用 Contrail 工具容器中的插件:
以根用户身份登录到虚拟路由器。
使用以下命令查看 pcap 文件中每个数据包的摘要:
tshark3_2 -nr <pcap file> -o "uat:user_dlts:\"User 0(DLT=147)\",\"ag_hdr\",\"0\",\"\",\"0\",\"\"" -t ad
使用以下命令查看 pcap 文件中数据包的详细信息:
tshark3_2 -nr <pcap file> -o "uat:user_dlts:\"User0 (DLT=147)\",\"ag_hdr\",\"0\",\"\",\"0\",\"\"" -T pdml