一个子网中的两个网卡和同一主机上的两个虚拟设备 - 路由

一个子网中的两个网卡和同一主机上的两个虚拟设备 - 路由

对于我的测试,我需要生成具有不同源 IP 地址的多个流,我认为虚拟设备可以完成这项工作。

我正在使用以下设置:在同一台 PC 上,我有两个 NIC,通过电缆背对背连接;我已经配置了策略路由,以便这两个接口之间的数据包通过电缆传输,没有环回接口:

$ ip rule sh
1:      from 192.168.2.101 to 192.168.2.100 iif eth1 lookup local 
2:      from 192.168.2.100 to 192.168.2.101 iif eth2 lookup local 
3:      from 192.168.2.101 to 192.168.2.100 lookup main 
4:      from 192.168.2.100 to 192.168.2.101 lookup main
100:    from all lookup local 
32766:  from all lookup main 
32767:  from all lookup default
$

现在我添加了两个虚拟设备 ( ip link add xx type dummy) dummy0 和 dummy1,IP 分别为 10.10.10.1 和 20.20.20.1。我现在想要实现的是,数据包离开dummy0dummy1例如ping -I 10.10.10.1 20.20.20.1),反之亦然,遵循以下路线:

虚拟0 <-> eth1 <-> eth2 <-> 虚拟1

我还需要在策略路由中做什么才能使其正常工作?如果使用 Linux 网络命名空间更容易实现,我也很乐意拥有该解决方案!谢谢。

相关内容