Linux下如果未配置网关所在子网则添加路由

Linux下如果未配置网关所在子网则添加路由

我有一台 PC,其 192.168.1.1/24 配置为 eth0 接口。现在,如果我尝试通过 10.10.10.254 添加路由,ip实用程序会报告No such process

root@PC:~# ip neigh add 10.10.10.254 lladdr 00:01:02:03:04:05 dev eth0
root@PC:~# ip route add default via 10.10.10.254 dev eth0
RTNETLINK answers: No such process
root@PC:~# ip route add 172.16.0.1/32 via 10.10.10.254 dev eth0
RTNETLINK answers: No such process
root@PC:~# 

只要 PC 知道 10.10.10.254 的 MAC 地址,技术上就可以通过 10.10.10.254 发送数据,而 10/8 网络未配置到 PC 中的任何接口。根据我的示例,它将使用 PC 的 eth0 MAC 地址作为源 MAC,00:01:02:03:04:05 作为目标 MAC,192.168.1.1 作为源 IP 地址,目标地址将是我指定的任何地址。

如果网关所在的子网未配置到接口,是否可以强制 Linux 添加路由?

答案1

尝试这个:

ip route add 172.16.0.1/32 via 10.10.10.254 dev eth0 onlink

相关内容