网卡调戏:当"ifdown"网卡遇上"nmcli"启网卡,配置文异常互飚!
区别:network和NetworkManager服务是两种不同的网络管理服务,它们在网络配置和管理方面有一些区别。"network"是传统的基于脚本的网络管理服务,而"NetworkManager"是现代化的自动化网络管理服务。
问题:为什么使用"ifdown"停止网卡后用"nmcli"启动网卡会导致网卡配置文件异常?
解答:这是因为"ifdown"直接停止了网卡,而不同步更新NetworkManager的配置状态。当尝试使用"nmcli"启动网卡时,NetworkManager可能会遇到已停止接口的配置文件冲突,导致配置文件异常。
建议:在使用NetworkManager的情况下,尽量使用"nmcli"命令或其他NetworkManager提供的工具来管理和配置网络接口,而不是直接使用"ifdown"和"ifup"命令。这样可以更好地与NetworkManager保持同步,避免配置文件的冲突和异常。
在 CentOS 上停止和禁用 NetworkManager 后,仍然可能会发现 NetworkManager 影响到某些端口的情况。为了避免这种情况,可以让 NetworkManager 不管理特定的网络接口。
以下是如何让 NetworkManager 不管理特定端口的步骤:
使用以下命令查看 NetworkManager 当前正在管理的接口:
nmcli device status
在输出中,将看到每个接口的状态和运行状态。
找到想要排除的接口,然后编辑该接口的配置文件,例如 ifcfg-eth0:
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
在该文件中,添加或更新 NM_CONTROLLED 参数的值,将其设置为 no,表示不由 NetworkManager 管理:
NM_CONTROLLED=no
保存并关闭文件。
重启 NetworkManager 服务:
sudo systemctl restart NetworkManager
再次使用上述命令检查 NetworkManager 接口的状态:
nmcli device status
应该会注意到受影响的接口的状态为 "unmanaged",表示 NetworkManager 不再管理该接口。
通过这种方式,可以将特定端口从 NetworkManager 的管理范围中排除,确保 NetworkManager 不会影响这些端口的运行状态。
请记住,在修改接口的配置文件后,确保重启 NetworkManager 服务以使更改生效。