我正在使用 Ubuntu 服务器 16.04 并设置了一些网络接口,我希望在 /etc/network/interfaces 更改其地址后重新加载静态 IP,而无需重新启动:
auto ens6
iface ens6 inet static
address 192.168.0.41
netmask 255.255.255.0
broadcast 192.168.0.255
我尝试了以下操作:
sudo systemctl restart networking
sudo ifconfig ens6 down (and afterwards up)
sudo ifdown ens6 (and afterwards up)
并尝试了这些命令的一些组合,
但是,如果我在 /etc/network/interfaces 中更改我的“地址”,则只有在我重新启动机器后,它才会更新(在 ifconfig 中)
无需重启即可执行此操作的正确方法是什么?
编辑-也根据评论尝试了此方法
sudo /etc/init.d/networking restart
答案1
如果 ifdown+ifup 方法不起作用,请尝试:
sudo ifdown <network interface> && sudo ip addr flush <network interface> && sudo ifup <network interface>
答案2
ip addr flush enp0s3 && systemctl restart networking.service
enp0s3
您的网卡名称在哪里?
答案3
要在不重启系统的情况下更改 IP 地址,请运行以下几行来执行此任务。/etc/network/interfaces
在运行以下步骤之前,请确保已完成对文件的更改:
编辑:
您可以尝试通过添加以下内容来关闭预测网络命名/etc/default/grub
:
GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0"
然后运行grub
更新:
sudo update-grub
重新启动系统:
sudo reboot
先关闭接口:
sudo ifdown <network interface>
然后恢复所有接口:
sudo ifup -a
希望这可以帮助!