NetworkManager是2004年RedHat啟動的項目,皆在能夠讓Linux用戶更輕松的處理現代網絡需求,尤其是無線網絡,能夠自動發現網卡並配置IP地址。
但是在RHEL 8/Centos 8上已廢棄network.service(默認不安裝),只能通過NetworkManager進行網絡配置。
NetworkManager主要管理2個對象: Connection(網卡連接配置) 和 Device(網卡設備),他們之間是多對一的關系,但是同一時刻只能有一個Connection對於Device才生效。
在RHEL 8/Centos 8有三種方法配置網絡:
-
通過nmcli connection add命令配置,會自動生成ifcfg文件。
-
手動配置ifcfg文件,通過nmcli connection reload來加載生效。
-
手動配置ifcfg文件,通過傳統network.service來加載生效。
NetworkManager 命令
nmcli connection 網絡連接管理
$ nmcli connection show # 查看所有網卡配置 $ nmcli connection reload # 重新加載網卡配置,不會立即生效 $ nmcli connection down ens160 && nmcli connection up ens160 # 立即生效Connection配置 $ nmcli connection add type ethernet con-name ens160-con ifname ens160 ipv4.addr 1.1.1.2/24 ipv4.gateway 1.1.1.1 ipv4.method manual # 為device創建connection $ nmcli connection add type ethernet con-name ens160-con ifname ens160 ipv.method auto # dhcp $ nmcli connection modify ens160-con ipv.addr 1.1.1.3/24 && nmcli connection up ens160-con # 修改IP地址並立即生效 交互方式修改IP $ nmcli connection edit ens160-con nmcli device 網卡設備管理 $ nmcli device status # 查看所有網卡設備狀態 $ nmcli device show ens160 # 查看網卡配置 $ nmcli device reapply ens160 # 立即生效網卡配置