配置不接管辅助网卡以避免网络配置冲突

Alibaba Cloud Linux 3系统中,默认使用NetworkManager来管理所有的以太网卡。这种统一管理的方式提供了简单性和方便性,但在一些特定场景中(例如容器化场景),可能会导致主机网络配置与容器网络配置产生冲突。此时,您可以通过配置使NetworkManager只管理主网卡(如eth0),不管理辅助网卡(如eth1),以避免与主机网络与容器网络冲突问题。

使用限制

操作系统:Alibaba Cloud Linux 3。

查询网卡状态

执行以下命令,查询网卡状态。

nmcli device status

回显信息如下图所示,表示eth0eth1默认被NetworkManager 接管,lo未被接管。

image

配置NetworkManager不接管辅助网卡

您可以通过以下三种方法配置NetworkManager不接管辅助网卡,本文以配置NetworkManager不接管eth1为例进行说明。

方法一:通过编辑unmanaged.conf文件

该方法即时生效,且修改可以持久化。这意味着一旦系统重启,所做的修改仍然保留。

说明

该文件在升级或删除再安装NetworkManager RPM包时持久化存在。

  1. 执行以下命令,打开unmanaged.conf文件。

    sudo vim /etc/NetworkManager/conf.d/unmanaged.conf
  2. i键进入编辑模式。添加以下内容。

    [keyfile]
    unmanaged-devices=interface-name:eth1
  3. Esc 键,输入:wq后按Enter键,保存配置。

  4. 执行以下命令,使配置生效。

    sudo systemctl restart NetworkManager
  5. 执行以下命令,查看修改是否成功。

    nmcli device status

方法二:通过nmcli命令

该方法即时生效,但无法持久化

  1. 执行以下命令,设置辅助网卡eth1为未接管状态。

    sudo nmcli device set eth1 managed no
  2. 执行以下命令,查看修改是否成功。

    nmcli device status

方法三:修改ifcfg-eth1配置

该方法即时生效,但无法持久化。

  1. 执行以下命令,打开ifcfg-eth1文件。

    sudo vim /etc/sysconfig/network-scripts/ifcfg-eth1
  2. i键进入编辑模式。在文件末尾添加以下内容。

    NM_CONTROLLED=no
  3. Esc 键,输入:wq后按Enter键,保存配置。

  4. 执行以下命令,使配置生效。

    sudo systemctl restart NetworkManager
  5. 执行以下命令,查看修改是否成功。

    nmcli device status