Dell Unity:如何从阵列捕获 TCP/IP 网络跟踪。(用户可纠正)
Summary: 本文提供用于捕获阵列前端端口上的网络数据的命令。本文也适用于 VNX2e 阵列。
Instructions
VNXe 和 Unity 阵列有一个集成的服务脚本,用于执行不需要 root 访问权限即可运行的 TCP/IP 网络跟踪。
以下步骤将指导您完成捕获过程。
准备
首先,您必须确定要从中捕获流量的接口。确定这一点的最简单方法是在命令中搜索 IP 地址 ip addr or ip a.
输出显示设备及其相关接口的列表。这些设备列为: mgmt/mgmt_vdev, eth#, lo 和 绑定 (LACP 接口)。(有关详细信息,请参阅 注释。)
请注意,其中一些设备虽然已列出,但其下没有列出 IPv4 接口 (inet)。对于本知识库文章,可以忽略这些设备。
找到要监视的 IP 地址,并记下它列出的设备。
例如,在实验框中,我们可以看到列出的管理端口及其 设备名称 和 接口:
5: mgmt_vdev: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:9e:af:69 brd ff:ff:ff:ff:ff:ff
inet 5.6.7.11/24 scope global mgmt_vdev
valid_lft forever preferred_lft forever
提醒:使用配置了 VLAN 的绑定在末尾显示点 VLAN ID。请务必捕获 VLAN 接口上的跟踪,因为使用非 VLAN 接口可能会导致空捕获。
找到设备后,我们就可以执行跟踪了。
为了获得 TCP/IP 数据包跟踪分析的最佳结果,建议也从主机或客户端进行并发跟踪。
这是使用 Wireshark 等免费跟踪软件完成的。
命令语法
命令的语法及其最低规格如下所示:
svc_tcpdump -i <DeviceName> -w <SaveName>
NOTE: 应保存文件的唯一位置是 /cores/service(或 /home/service - 同一位置)。
与其他选项一起,以下是一些可以使用该命令运行的有用选项:
-h|--help : Display usage information.
-p|--path [path] : Path for the output file storage
-W|--rotations [number] : Number of files for output use
-C|--size [size] : Size of each output file (in MB)
-s|--snaplen [bytes] : Capture this specified number of byte of data from each packet rather than the default 65535. 0 means the default value.
以下项的前缀: "vnxe-tcpdump-" or "unity-tcpdump-" 被添加到输出文件名中。
运行不带选项的命令默认为运行:
svc_tcpdump -i mgmt_vdev -w dump.out -p /home/service -C 500 -W 5
提醒:对于 Unity 代码 4.5.1,用于存储跟踪的路径应始终为 /home/service/user。
该命令需要 Ctrl + C 组合才能停止跟踪。因此,建议在进行跟踪时准备多个会话。一个用于跟踪,另一个用于测试。
进行跟踪
命令准备就绪后,是时候在重新创建问题的同时进行跟踪了。为获得最佳结果,请遵循以下过程:
- 在主机或客户端(使用任何网络跟踪软件)和阵列(使用上述命令)上启动跟踪。
- 使用修改后的 ping 从主机或客户端到阵列或从阵列到主机或客户端的 ping(使用第二个终端会话)。
- 尝试 访问共享并执行我们正在跟踪的失败任务。
- Ping 以及从主机或客户端到阵列或从阵列到主机或客户端的修改后的 ping。
- 停止 主机或客户端和阵列上的跟踪。
- 记录 上述每个作的时间戳。(至少包括步骤 Start 和 Stop、1 和 5。)
再次提醒:在 Unity 代码 4.5.1 及更高版本中,用于存储跟踪的路径应始终为 /home/service/user。
Additional Information
要确定要在其上捕获数据的以太网 (ethx) 接口,请运行命令: ip a
此命令提供有关分配给接口的以太网值的信息。
在管理上运行的跟踪示例:
apture mgmt_vdev, save 2 100MB files called vnxe-tcpdump-tcpdump.out[0-1] (or unity-tcpdump-tcpdump.out[0-1]) to /home/service (/home/service is the same as /cores/service):
svc_tcpdump -i mgmt_vdev -p /home/service -w tcpdump.out -W 2 -C 100
在数据接口上运行的跟踪示例:
svc_tcpdump -i eth2 -p /home/service -w tcpdump.out -W 2 -C 100
svc_tcpdump -i eth23 -p /cores/service -w tcpdump.out -W 2 -C 100 (ethernet I/O module ports)
存储处理器上的嵌入式以太网端口为个位数值,例如 eth2、eth3、eth4 等。
第一个以太网 I/O 模块上的以太网端口具有以 10 开始的两位数值,例如 eth10、eth11 等。
第二个以太网 I/O 模块上的以太网端口具有从 20 开始的两位数值(大多数单元没有第二个以太网 I/O 模块),例如 eth20、eth21 等。
在 LAG 组上运行的跟踪(绑定接口)的示例:
svc_tcpdump -i bond3 -p /cores/service -w tcpdump.out -W 2 -C 100
此命令仅在运行该命令的存储处理器上运行。如果您已连接到 SPA 并且必须在 SPB 上的接口上运行跟踪,则必须运行 "ssh peer" 转至 SPB,然后运行 svc_tcpdump 命令,将存储在节点日志中的数据写入移动到文件系统。