我有一个带有以太网接口的嵌入式系统,需要接受 IP 为 127.xxxx 的外部数据包。有没有办法强制 Linux 接受具有此环回地址的外部数据包并将这些数据包视为“正常”IP 数据包?此外,有没有办法在接口的 IP 为 127.xxx 时强制 Linux 发送 ping 数据包?
先感谢您。
答案1
Linux 的弱点主机模型网络堆栈实际上并不关心 TCP/IP 数据包到达哪个接口。如果数据包到达的是已配置的 IP 地址,则会被接受。
这没有考虑 ARP、防火墙规则和路由。
答案2
从RFC 1812:
(e){127,}
Internal host loopback address. Addresses of this form MUST
NOT appear outside a host.
内核用于net.ipv4.conf.<interface>.route_localnet
确定 127.0.0.0/8 是否可路由(实际上是否将这种类型的源/目标 IP 地址视为火星数据包)。
我完全不鼓励你玩这个,你必须重新考虑你的设置。