我尝试在命令行上更改我的一台服务器的静态 IP 地址 - 但失败了!
原来/etc/network/interfaces
看起来像这样
auto enp2s0f0
iface enp2s0f0 inet static
address 192.168.0.57
netmask 255.255.255.0
gateway 192.168.0.1
auto enp2s0f1
iface enp2s0f1 inet static
address 192.168.1.57
netmask 255.255.255.0
当我启动系统时,配置正常。现在我尝试将第二个接口的子网更改为192.168.10
。我编辑 /etc/network/interfaces
并尝试让接口接受这个新配置。
但没有组合
$ sudo systemctl restart networking.service
$ sudo ifdown enp2s0f1 && sudo ifup enp2s0f1
$ sudo ifconfig enp2s0f1 down && sudo ifconfig enp2s0f1 up
更改该接口的 IP 地址。
我不确定这是否与这个错误或者如果我误解了systemctl
重新启动服务的新方法。
在 ubuntu 12.04 上,一切运行正常。
只需重新启动机器就可以了。但必须能够重新加载并应用信息/etc/network/interfaces
(我甚至尝试ifup
使用该标志-i /etc/network/interfaces
- 但无济于事)。
更新:
如所述这个尚未解答的问题:这有效(但似乎非常笨拙):
$ sudo ifdown enp2s0f1
$ sudo ip addr flush dev enp2s0f1
$ sudo ifup enp2s0f1
在 ubuntu 16.04 中真的没有更简单的方法吗?