iperf交通发电机通过2个NIC使用Dispatch Proxy

时间:2017-09-26 14:06:20

标签: proxy dispatch nic iperf iperf3

我正在尝试在运行连接到接入点的Windows 7的两台计算机之间运行测试(与任何其他网络隔离)。

我需要在连接到同一AP的2个网络接口(WIFI)之间分割来自Iperf3等流量生成器的流量。我试图使用Dispatch Proxy分割流量。我在localhost上设置了一个socks代理:1080

所有设备都有固定的IP:

AP: 192.168.1.10

Device One: - Client
    NIC 1: 192.168.1.3
    NIC 2: 192.168.1.4

Device Two: - Server: 192.168.1.5

到目前为止,我已经设法让iperf从设备1到设备2生成数据,但是流量不会在两个NIC之间分配,而是仅通过一个发送。 任何帮助或建议都会有用。

由于 桂

1 个答案:

答案 0 :(得分:0)

我认为你必须启动两个iperf流并将它们绑定到输出NIC。在iperf 2中它将是:

  • iperf -c 192.168.1.5 -B 192.168.1.3
  • iperf -c 192.168.1.5 -B 192.168.1.4

this may not be enough因为数据包中的-B only binds the src IP地址并不一定设置src输出设备(或NIC)。要让运行Linux的计算机使用适当的网卡,例如{{3 }} 是必须的。 (不确定Windows 7)

  • ip rule add from 192.168.1.3 table 101
  • ip rule add from 192.168.1.4 table 102
  • ip route replace 192.168.1.5/32 dev nic1 table 101
  • ip route replace 192.168.1.5/32 dev nic2 table 102
  • ip route flush cache
  • ip rule list

此外,需要考虑arp,尤其是policy routing

然后一些更高级别的代码需要支持两个iperf会话的求和。  arp_filter and arp_ignore.目录中有一些更高级别的python代码。此代码确实需要使用ssh并假定iperf2 flows操作。

注意:ipv6通过以下方式支持链接本地和设备绑定:

  • iperf -c fe80 :: d03a:d127:75d2:4112%eno1

如果您可以使用v6并链接本地寻址,那么这将是一种更简单的方法。

鲍勃