如何复制网络上的所有流量并将其转发到另一个 IP 地址?

如何复制网络上的所有流量并将其转发到另一个 IP 地址?

我正在尝试使用 iptables。

我正在用 Mininet 模拟网络。我目前有一个连接两个子网(10.0.1.1/24 和 10.0.2.1/24)的路由器。如果我在路由器上使用这两个 iptables 规则,我会看到创建了两个重复项,但在主机 10.0.2.180 上我只看到回显请求或回复数据包(在 icmp ping 的情况下)。看来不是双向的。路由器仅捕获从一个子网传输到另一个子网的流量,而不捕获内部流量。

我在路由器上写了这两条规则,但我只能捕获入站流量。我还需要获取传出流量。我正在使用这个 iptables 规则:

iptables -t mangle -A PREROUTING -i r1-eth1 -j TEE --gateway 10.0.2.180

iptables -t mangle -A POSTROUTING -o r1-eth1 -j TEE --gateway 10.0.2.180

答案1

路由器仅捕获从一个子网传输到另一个子网的流量,而不捕获内部流量

现代以太网网络大多是点对点的,因此您只会看到广播流量和定向到(通过)路由器的流量。通过将界面设置为“混杂”模式,您可能会看到比平常多一点的内容,

ip link set r1-eth1 promisc on

但交换机等设备会有意避免通过不需要的链路传输流量。您可以使用 ARP 中毒攻击来欺骗系统,例如可以使用 来实现arpspoof,但如果您打算这样做,您可能会发现您不需要TEE数据包,而只需通过监控设备路由原始数据包即可。

相关内容