SIOCDELRT 和 SIOCADDRT 错误是什么意思?

SIOCDELRT 和 SIOCADDRT 错误是什么意思?

我正在尝试在 Ubuntu 10.04 服务器上从使用 dhcp 切换到使用静态 IP。

在 /etc/network/interfaces 中我更改了

auto eth0
iface eth0 inet dhcp

auto eth0
iface eth0 inet static
address 210.4.211.xxx
netmask 255.255.255.xxx
gateway 210.4.211.xxx

并在 /etc/hosts 中添加一行

210.4.211.xxx servername.example.com servername

现在,当我从 SSH 连接内部重新启动网络时,我得到

user@servername:~$ sudo /etc/init.d/networking restart
 * Reconfiguring network interfaces...
SIOCDELRT: No such process

并且网络仍在使用 DHCP 地址运行。

更糟糕的是,如果我从虚拟服务器控制台重新启动网络(或者重新启动服务器),它就无法启动 eth0,并且服务器无法访问。

user@servername:~$ sudo /etc/init.d/networking restart
 * Reconfiguring network interfaces...
SIOCADDRT: No such process
Failed to bring up eth0

这些错误是什么意思?我该如何修复它们?

答案1

啊,我真傻。经过进一步搜索,发现 SIOCADDRT 和 SIOCDELRT 至少与 ADDing 和 DELeting 路线有关。

因为我使用的是 255.255.255.192 这个花哨的子网掩码,所以我没有注意到我已将网关设置为子网的基地址,而不是默认路由(在本例中使用 .64 而不是 .65)。

所以如果其他人也遇到这个错误,那可能是因为你设置了错误的网关。不过我不明白为什么会出现“没有这样的进程”的错误。

相关内容