我可以将去往本地接口的stream量路由到另一个接口吗?

我试图设置一个透明设备的testing平台(从现在开始称为TD)。 目标是确保它转发并正确logging。 我只需要在testing台上使用1台机器+ TD。 是的,两台机器会比较容易,但是我被要求只使用一台机器。 像这样的东西:

+–––––––––––––––––––––––––+ | Linux | +––––––––––––+––––––––––––+ | eth1 | eth2 | | 10.0.0.1 | 11.0.0.1 | +–––––––+–-––+–––-+–––––––+ | | | | +––+-–––––––-+––+ | Transparent | | Device | +–––––––––––––––+ 

我不确定这是甚至可能的,但目标是这样的:在Linux上,我可以发送任何IPstream量到11.0.0.1,并将其路由出eth1,在TD上login,并接收eth2。 同样的方向。 我希望我的testing脚本通过打开10.0.0.1和11.0.0.1上的套接字来使用正常的Linux IP协议栈,将testing数据发送到下一个,看看它是否被另一个接收。

我已经看过这些,没有成功:

  • https://stackoverflow.com/a/8539870/375735
    • 我可以得到它的一半工作。 如果我从本地路由表中删除10.0.0.2,重新添加它作为一个单播,并添加ARP条目我可以然后ping 10.0.0.2,并看到回声请求去我想要他们的地方。 虽然没有答复。 当我尝试执行另一半(本地表中没有本地条目)时,ping失败,并显示“connect:invalid argument”。
  • https://serverfault.com/a/586347/216716
    • linux盒子没有networking命名空间。
  • https://serverfault.com/a/128680
    • 还在玩这个,但还没有成功呢。 当然,这个设置有点不同,因为TD不是路由器。