Alibaba Cloud Linux 3系統中,預設使用NetworkManager來管理所有的乙太網路卡。這種統一管理的方式提供了簡單性和方便性,但在一些特定情境中(例如容器化情境),可能會導致主機網路設定與容器網路設定產生衝突。此時,您可以通過配置使NetworkManager只管理主網卡(如eth0),不管理輔助網卡(如eth1),以避免與主機網路與容器網路衝突問題。
使用限制
作業系統:Alibaba Cloud Linux 3。
查詢網卡狀態
執行以下命令,查詢網卡狀態。
nmcli device status回顯資訊如下圖所示,表示eth0和eth1預設被NetworkManager 接管,lo未被接管。

配置NetworkManager不接管輔助網卡
您可以通過以下三種方法配置NetworkManager不接管輔助網卡,本文以配置NetworkManager不接管eth1為例進行說明。
方法一:通過編輯unmanaged.conf檔案
該方法即時生效,且修改可以持久化。這意味著一旦系統重啟,所做的修改仍然保留。
說明
該檔案在升級或刪除再安裝NetworkManager RPM包時持久化存在。
執行以下命令,開啟
unmanaged.conf檔案。sudo vim /etc/NetworkManager/conf.d/unmanaged.conf按
i鍵進入編輯模式。添加以下內容。[keyfile] unmanaged-devices=interface-name:eth1按
Esc鍵,輸入:wq後按Enter鍵,儲存配置。執行以下命令,使配置生效。
sudo systemctl restart NetworkManager執行以下命令,查看修改是否成功。
nmcli device status
方法二:通過nmcli命令
該方法即時生效,但無法持久化。
執行以下命令,設定輔助網卡
eth1為未接管狀態。sudo nmcli device set eth1 managed no執行以下命令,查看修改是否成功。
nmcli device status
方法三:修改ifcfg-eth1配置
該方法即時生效,但無法持久化。
執行以下命令,開啟
ifcfg-eth1檔案。sudo vim /etc/sysconfig/network-scripts/ifcfg-eth1按
i鍵進入編輯模式。在檔案末尾添加以下內容。NM_CONTROLLED=no按
Esc鍵,輸入:wq後按Enter鍵,儲存配置。執行以下命令,使配置生效。
sudo systemctl restart NetworkManager執行以下命令,查看修改是否成功。
nmcli device status