【发布时间】:2016-02-25 04:18:19
【问题描述】:
我想通过特定的网络接口发送数据包(icmp 或其他),绕过路由表。
上下文:我通过多个接口连接到各个端点。如果我向他们添加路由,他们中的一些人能够将我的流量路由到互联网。 我不想碰路由表(因为它是一个全局系统功能,并且出于速度原因我正在并行测试这些设备)。
最初,我认为一个简单的ping -I DEVICE -r ANY_IP_ONINTERNET 就可以解决问题。但它没有:数据包没有像我预期的那样发送到所选设备并且命令失败......另一端的tcpdump没有捕获任何数据包:数据包似乎没有 甚至首先被发送到界面,尽管我有明确的命令。
当我在 ping 之前添加路由时,一切正常。但我想避免这种情况......然后,不再需要-I DEVICE -r。
- 谁能解释一下为什么它不起作用?和
- 在什么情况下使用
-I DEVICE或-r确实有效且有用?
注意:我正在使用 tapX 和 tunX 设备的不同 VPN 对此进行测试。
编辑:我尝试使用/不使用-r 并使用-I DEVICE 或-I IP_ADDR_DEVICE。没有更多的成功。
【问题讨论】:
标签: linux bash ping network-interface