我有两台机器 A 和 B。我想将 iperf 流量从 A 发送到 B,但首先让它通过 A 上的用户空间程序进行路由。我使用隧道设备完成了此操作:因此,我使用了命令ip route add *B address* dev tun77
。
但是,此命令阻止了从 B 到 A 的连接:例如,我无法从 SSH B 到 A。这给我的项目带来了问题,尤其是 TCP 流量。
我以为这ip route
只会影响离开机器 A 的数据包。但是,它似乎影响了从 B 到 A 的连接。这是因为传入的数据包正在被路由,还是从 A 到 B 的响应阻止了连接发生(如 SYNACK 消息)?您如何解决这个问题?
我尝试使用 iptable 在输出链上标记数据包,并为其创建路由此链接,但由于某些奇怪的原因,它无法工作。
任何帮助都将不胜感激,谢谢!
编辑:当我尝试在 A 和 B 上运行 tcpdumps 时,我看到的只是来自 B 的 ARP 数据包到达 A;此外,我没有看到任何来自 A 的响应这些数据包的流量。
`