Red Hat Training

A Red Hat training course is available for RHEL 8

2.16. 配置 NetworkManager 连接的 DHCP 行为

DHCP 客户端在每次连接到网络时都从 DHCP 服务器请求动态 IP 地址和对应配置信息。

当您将连接配置为从 DHCP 服务器检索 IP 地址时,网络管理器(NetworkManager)从 DHCP 服务器请求 IP 地址。默认情况下,客户端会等待 45 秒时间完成此请求。当 DHCP 连接启动时,dhcp 客户端会从 DHCP 服务器请求 IP 地址。

先决条件

  • 在主机上配置了使用 DHCP 的连接。

步骤

  1. 设置 ipv4.dhcp-timeoutipv6.dhcp-timeout 属性。例如,要将这两个选项都设为 30 秒,请输入:

    # nmcli connection modify connection_name ipv4.dhcp-timeout 30 ipv6.dhcp-timeout 30

    另外,将参数设置为 infinity 以配置网络管理器(NetworkManager)不会停止尝试请求和续订 IP 地址,直到成功为止。

  2. 可选:配置如果网络管理器(NetworkManager)在超时前没有接收 IPv4 地址时的行为:

    # nmcli connection modify connection_name ipv4.may-fail value

    如果将 ipv4.may-fail 选项设为:

    • yes,连接的状态取决于 IPv6 配置:

      • 如果启用了 IPv6 配置并成功,NetworkManager 会激活 IPv6 连接,不再尝试激活 IPv4 连接。
      • 如果禁用或未配置 IPv6 配置,连接会失败。
    • no,连接会被停止。在这种情况下:

      • 如果启用了连接的 autoconnect 属性,NetworkManager 会根据 autoconnect-retries 属性中设置的值尝试多次激活连接。默认值为 4
      • 如果连接仍然无法获得 DHCP 地址,则自动激活会失败。请注意,5 分钟后,自动连接过程会再次启动,从 DHCP 服务器获取 IP 地址。
  3. 可选:配置如果网络管理器(NetworkManager)在超时前没有接收 IPv6 地址时的行为:

    # nmcli connection modify connection_name ipv6.may-fail value

其他资源

  • nm-settings(5) 手册页