Gil*_*il' 10 linux networking ip ethernet
在 Linux 下,如果您将数据包发送到其网络接口之一的地址,则该数据包将在内部路由,永远不会通过网络发送。这在 99.99% 的情况下都是正确的。
有时,在测试网络配置时,从机器本身通过本地链接发送数据包很有用,机器本身作为目标。我怎样才能做到这一点?如果不是点对点链接,至少对于总线类型的链接,例如以太网。我只对 IP 数据包(IPv4 和 IPv6)感兴趣。
linux 上的每个网络适配器都有一个 sysctl 布尔参数accept_local
( /proc/sys/net/ipv4/conf/eth0/accept_local
)。尝试将所有涉及的适配器设置为 0(此外,您可能需要修改路由表以适合您的测试设置)。
此外,请确保rp_filter
( /proc/sys/net/ipv4/conf/eth0/rp_filter
) 已启用(不是 0)。
参考:http : //code.metager.de/source/xref/linux/stable/Documentation/networking/ip-sysctl.txt