这是我的/etc/network/interfaces
文件内容
只有系统重新启动时此功能才会生效。
我正在尝试手动实现它。我的尝试如下。
auto eth0
iface eth0 inet static
address 192.168.1.57
netmask 255.255.255.0
gateway 192.168.1.1
up ip addr add 192.168.0.57/24 dev eth0 label eth0:1
down ip addr del 192.168.0.57/24 dev eth0 label eth0:1
up ip route add 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
down ip route del 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
首先尝试运行sudo ifup eth0
我收到了
RTNETLINK answers: File exists
Failed to bring up eth0.
只有/etc/network/interfaces
在我重启系统时才有效
除此之外我还尝试过
sudo /etc/init.d/networking restart
sudo service network-manager restart
sudo service networking restart
但它们都不会带来interfaces
文件中的更改
我唯一的选择是sudo ifup eth0
,但这会导致上述错误。
怎么了?
答案1
编辑配置文件以删除节前的缩进,iface
使其看起来像这样,
auto eth0
iface eth0 inet static
address 192.168.1.57
netmask 255.255.255.0
gateway 192.168.1.1
up ip addr add 192.168.0.57/24 dev eth0 label eth0:1
down ip addr del 192.168.0.57/24 dev eth0 label eth0:1
up ip route add 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
down ip route del 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
您收到的消息只是表明接口已启动,因此您需要ifdown
在执行 之前执行ifup
。但是,如果您通过 ssh 连接,则需要小心 - 您可能会将自己锁定。这是执行此操作的一种方法:
sudo ifdown eth0 && sudo ifup eth0
注意,这两个命令是在同一行执行的。另外,作为预防措施,请确保您可以访问服务器控制台,或者在出现问题时能够重新启动服务器。
答案2
我刚刚遇到了这个问题,上面的解决方案都对我不起作用。我无法更改,/run/network/ifstate
因为它立即被重置为以前的状态。也sudo ifdown eth0 && sudo ifup eth0
没有用。
然后我发现了以下命令:
sudo ip addr flush dev eth0
解决了这个问题。
答案3
尝试查找 /run/network/ifstate,如果在那里没有看到所需的 eth,则通过添加 eth(n)=eth(0) 来修改它。
前任:
$ cat /run/network/ifstate
eth0=eth0
lo=lo
eth3=eth3
eth1=eth1
之后使用命令 sudo ifdown eth(n),然后使用 sudo ifup eth(n)。
答案4
我刚刚花了一天时间解决 pi 的这个问题。我什么都没做,只是物理上移动了盒子。我的 pi 通过 WIFI 加密狗 Realtek RTL8188CUS 建立了 wifi 连接。是的,我已经修复了一些内核模块参数的掉线问题,主要是文件 /etc/modprobe.d/8192cu.conf 中的“options 8192cu rtw_power_mgnt=0 rtw_enusbss=1 rtw_ips_mode=1”,但 pi 仍然偶尔会掉线。现在我移动了它,它似乎无法连接到静态 IP 192.168.1.60。那么问题是什么?对我来说,“RTNETLINK 文件存在”是我在无线路由器中设置的一个问题。我在路由器中为 192.168.1.60 输入了一个 DNS 条目,但错误地使用了较低的 TTL 值。我使用的是 TTL=12,而不是 TTL=1200。我删除了路由器和 WIFI 中的错误条目,然后在重启后连接。因此,如果您同时使用 Pi 和路由器的静态路由,请注意您可能在路由器中设置了错误。这并不总是 PI 网络故障。