数据包捕获
vifdump 在 Argo 数据平面的虚拟接口上捕获数据包。共五条命令,均为 F5 所有,均不属于 debug API。
本页无输出的具体原因
Section titled “本页无输出的具体原因”Site CLI 上的参数数量可通过不带参数运行命令来探测——此时命令会返回 not sufficient args for command <name>。对于只读命令而言,这是安全的。在本次文档编写过程中,将此方法应用于 vifdump 时,在一个仍处于注册状态的节点上未返回任何错误。捕获是否已启动不得而知,因为该节点在检查之前就已被销毁并重建。
这正是采集程序设计的全部依据:执行策略为默认拒绝,而非黑名单拒绝。vifdump 未出现在任何黑名单中,因为没有人事先想到它。只有显式白名单才能拒绝那些没有人预先想到的命令。
vifdump
Section titled “vifdump”在指定的 vif 上捕获数据包。
execcli vifdump <vif-id> [options]vif id 可从 vif --list 获取。
vifdump-d
Section titled “vifdump-d”捕获丢弃的数据包,可针对单个 vif 或全部 vif。
execcli vifdump-d <vif-id|all>与 dropstats 配合使用:dropstats 告知您丢包正在发生及哪个计数器在递增,vifdump-d 则展示具体的数据包。
vifdump-stop
Section titled “vifdump-stop”停止由上次运行遗留下来的捕获。
execcli vifdump-stop设备自身的描述为”若上次运行异常结束,则停止 vifdump 命令”,这说明该故障模式是预期中的:捕获的生命周期可能超过启动它的会话。如果您已运行过 vifdump 且不确定其是否仍在运行,请执行此命令。
vifdump-file-cp
Section titled “vifdump-file-cp”将捕获文件从 Argo 容器复制到宿主机的 /tmp/vifdump/ 目录。
execcli vifdump-file-cp等同于 docker cp $(argo):/tmp/. /tmp/vifdump/。由于捕获文件写入在容器内部,因此此步骤不可或缺。
vifdump-file-rm
Section titled “vifdump-file-rm”从 Argo 容器中删除 .pcap 文件。
execcli vifdump-file-rm完成捕获后请执行此命令。 它与 vifdump-stop 共同构成任何捕获操作的清理步骤,也是当您接手一个可能被他人遗留有捕获进程的节点时,应首先执行的两条命令。