tcpdump 将捕获目标 mac 地址与网卡的 mac 地址不匹配的数据包



我通过使用IPER通过IPER通过VM发送UDP数据包来运行一些数据吞吐量测试,该VM在这些数据包上进行某种处理。

我的应用程序以滥交模式运行,因此它将拾取所有数据包。

我看到我的应用程序丢弃了一些数据包,但是我的应用程序计数器表明这不是由于任何放缓或失败。

我在我的应用程序中放了一些日志,他们建议以太网框架本身可能被损坏。

我还在IPERF机器和数据包处理器的VNIC上运行TCPDUMP,但是这些数据包从未在轨迹中显示。我希望看到痕迹出现在痕迹中。命令看起来像这样:

tcpdump -i vnet11 -C 100 -w iperf.pcap

tcpdump -i vnet7 -C 100 -w sgi.pcap

我的疑问是,如果以太网框架本身已损坏,并且目标Mac本身与VNET7或VNET11的MAC地址不匹配,TCPDUMP是否会捕获这些数据包?

编辑:让我感到震惊的是,如果以太网框架本身被损坏,这会导致目标MAC不匹配,那么Linuxbridge首先不会将该数据包发送到我的数据包处理器的VNET接口。因此,TCPDUMP在这里没有任何捕获。请忽略此问题。

实际上,如果问题是损坏的以太网框架,您将根本看不到它。您的网卡将丢弃框架,而您的嗅探器将永远不会看到。

在混杂模式下运行通常会禁用网卡上的MAC过滤,因此无论目标Mac如何,嗅探器都会看到所有数据包。但是,您看不到未发送到NIC的数据包(显然),因此在交换环境中,除非您采取其他步骤来攻击开关或配置跨度或镜像端口,否则您只会看到广播和帧注定系统上的Mac。

虚拟机可以使它更复杂。不同的虚拟化解决方案以不同的方式处理这一点。例如,在某些情况下,管理员可以选择配置不匹配主机地址的帧是否已传递到VM,从而有效地使混杂模式moot。

最新更新