NetworkManager 自动以太网连接

NetworkManager 自动以太网连接

我最近开始使用 Rocky Linux 9.1,并尝试使用 netplan 和 networkmanager 使基本网络正常运行。这里肯定缺少一些简单的东西……

我有一个非常简单的 NetPlan yaml:

network:
  version: 2
  renderer: NetworkManager
    eno5:
      dhcp4: true

很简单 - 只需要在插入 eno5 时自动获得 DHCP IP 地址。如果在启动时插入网线,或者我手动运行以下命令,它就可以工作。

sudo netplan generate
sudo nmcli conn reload

但是,如果我拔掉以太网电缆并将其插入我的第二个家庭网络,我不会在第二个网络上获得新的 DHCP 地址。NIC 链接断开并重新连接,但没有新连接,并且现有连接没有关闭 - 它仍然显示旧的 IP 地址等... 电缆拔出时。

如何让链接启动以触发新连接?我找到了一些有关 NetworkManager Dispatcher 的信息,但没有找到有关基本连接的简单答案。

即使全新安装了 Rocky 9.1,并且在安装过程中配置了以太网连接并正常工作 - 它怎么不能做像断开和重新连接网络这样基本的事情呢?

答案1

我能够让它工作 - 它看起来就像是多种事物的组合。

  1. 禁用 SELinux(或者这里可能有更多有限的允许选项)。
  2. 删除 /etc/NetworkManager/system-connections/* 中的通用 NetworkManager 端口描述。新的端口描述将在步骤 3 中生成。
  3. 添加 netplan yaml 来描述所需的端口配置 - 问题中上述示例。运行sudo netplan generate以在 /run/NetworkManager/system-connections/* 中生成端口配置。
  4. 在 /etc/NetworkManager/conf.d/99-carrier.conf 中添加以下内容,并重新启动 NetworkManager 使其生效:
[main]
ignore-carrier=no

[device]
match-device=interface-name:en*
carrier-wait-timeout=1000

第一部分告诉 NetworkManager 监控端口载体的连接/断开情况。如果没有这个,它甚至不会在拔出电缆时禁用连接。第二部分来自之前的答案。

答案2

我如何让链接触发新的连接?

连接电缆前请等待更长时间。NetworkManager 会在链路断开后故意延迟 5 秒,然后才开始取消配置接口。

可以通过以下方式进行调整NetworkManager.conf

[device]
match-device=interface-name:en*
carrier-wait-timeout=1000

相关内容