OpenVSwitch 仅镜像 layer2 流量

OpenVSwitch mirroring only layer2 traffic

出于测试目的,我使用 Open vswitch 将流量从 2 个接口 eth1 和 eth2 镜像到 eth3。

已将 eth1、eth2 和 eth3 添加到网桥

我正在使用以下命令设置镜像:

ovs-vsctl -- set Bridge br0 mirrors=@m \
 -- --id=@eth1 get Port eth1 \
 -- --id=@eth2 get Port eth2 \
 -- --id=@eth3 get Port eth3 \
 -- --id=@m create Mirror name=e1e2toe3 select-dst-port=@eth1 select-src-port=@eth1 output-port=@eth3

带有 tcpdump 的节点已连接到 eth3。

tcpdump 仅显示第 2 层流量:ARP、CDP(连接到 eth1 和 eth2 的思科设备)连接到 eth1 和 eth2 的设备之间的对话,但没有上层: 例如:ping、ssh、telnet 不可见。

有什么提示吗?

确保您的接口设置为混杂模式,因为默认情况下交换机将忽略发送给它们的流量,除非它们的端口设置为混杂模式:

ifconfig eth1 up

ifconfig eth1 promisc

来源:

http://www.tcpdump.org/faq.html#q6

https://askubuntu.com/questions/430355/configure-a-network-interface-into-promiscuous-mode

否则,使用 tcprewrite 更改重放流量的目标 MAC/IP 地址,假设您正在重放 .pcap 文件。 (我想你可能只需要更改两者之一,但我不记得是哪一个)

以下指南告诉您如何执行此操作:

http://xmodulo.com/how-to-capture-and-replay-network-traffic-on-linux.html