Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用 DHCP 自动注销保存 IP 地址

DHCP 自动注销概述

本主题介绍 DHCP 自动注销功能,包含以下章节:

自动注销概述

DHCP 本地服务器和 DHCP 中继代理支持自动注销。当 DHCP 客户端不再使用地址时,它允许 IP 地址立即释放并返回到地址池,从而提高 DHCP IP 地址分配的效率。然后,DHCP 可以将地址分配给其他客户端。如果不使用自动注销,该 IP 地址将在整个租期内被阻止,并且 DHCP 必须等到地址租用时间到期后才能重复使用该地址。

当 DHCP 使用较长的租期时间进行 IP 地址分配时,自动注销功能特别有用,并且有助于避免为单个客户端分配重复的 IP 地址。

例如,您的环境可能包含经常升级或更换的机顶盒 (STB)。每次更改机顶盒时,新机顶盒都会重复 DHCP 发现过程,以获取客户端配置信息和 IP 地址。DHCP 将新机顶盒视为全新的客户端并分配一个新 IP 地址 — 之前分配给客户端的 IP 地址(旧机顶盒)将保持阻塞且不可用,直到租期到期。如果在这种情况下配置了自动注销,则 DHCP 会识别新 STB 实际上是同一客户端,然后立即释放原始 IP 地址。DHCP 中继代理充当自动注销的代理客户端,并向 DHCP 服务器发送 DHCP 释放消息。

DHCP 如何识别和释放客户端

自动注销功能要求 DHCP 显式识别客户端。默认情况下,DHCP 本地服务器和 DHCP 中继代理根据 MAC 地址或客户端标识符和子网识别客户端。但是,在某些情况下,这种类型的识别可能还不够。例如,在前面的机顶盒示例中,每个机顶盒都有不同的 MAC 地址,因此 DHCP 错误地将升级或更换的机顶盒视为新客户端。

为了显式识别客户端,当主识别方法不成功时,自动注销使用辅助识别方法 — 如果 MAC 地址或客户端标识符与现有客户端的 MAC 地址或客户端标识符不匹配,则主方法被视为不成功。订阅者管理支持两种辅助识别方法,您可以对其进行配置。

  • 传入接口方法 — DHCP在接口上查看新的客户端连接,就好像它来自同一客户端一样。在为新连接的设备创建绑定之前,DHCP 会删除现有客户端绑定。此方法仅允许在接口上连接一台客户端设备。

    注意:

    传入接口方法与 overrides interface-client-limit 1 语句不同,语句保留现有绑定并拒绝新连接的客户端。

  • 选项 60 和选项 82 方法 — 如果两个客户端具有相同的选项 60 和选项 82 信息,但子网不同,则 DHCP 会将其视为不同客户端。

当启用自动注销且辅助识别方法识别出重复的客户端(即发现数据包来自现有客户端)时,DHCP 本地服务器和 DHCP 中继代理会执行以下作。

  • DHCP 本地服务器会立即释放现有地址。

  • DHCP 中继代理会立即释放现有客户端,然后向 DHCP 服务器发送 DHCP 释放数据包。发送释放数据包可确保 DHCP 中继和 DHCP 服务器同步。

    如果 DHCP 中继收到来自现有客户端的发现消息,则 DHCP 中继会将发现消息转发至 DHCP 服务器。如果 DHCP 服务器返回客户端的现有 IP 地址,则 DHCP 中继将保留绑定。如果启用了代理模式覆盖或客户端发现匹配功能,则此行为不适用。

    注意:

    如果 DHCP 中继代理处于侦听模式,则 DHCP 中继会释放客户端,但如果发现数据包用于被动客户端(由于侦听数据包而添加的客户端),或者发现数据包是侦听数据包,则不会向 DHCP 服务器发送释放数据包。

选项 60 和选项 82 要求

DHCP 本地服务器要求收到的发现数据包同时包含 DHCP option 60 和 option 82。如果缺少任一选项,则 DHCP 本地服务器无法执行辅助识别方法,并且不会使用自动注销。

DHCP 中继代理要求收到的发现数据包包含 DHCP 选项 60。DHCP 中继根据 DHCP 中继代理 Option 82 自动注销值中提供的准则确定 Option 82 值。

自动注销 DHCP 客户端

您可以将扩展 DHCP 本地服务器和扩展 DHCP 中继配置为自动注销 DHCP 客户端。当 DHCP 收到来自身份与现有客户端匹配的客户端的发现数据包时,自动注销会立即释放现有客户端。然后,DHCP 会释放现有客户端 IP 地址,而无需等待正常的租期到期。

注意:

释放现有客户端时,新客户端将经历正常的身份验证过程。新客户端可能不会收到与原始客户端相同的 IP 地址。

要配置 DHCP 客户端自动注销:

  1. 指定要配置覆盖选项。
    • 对于 DHCP 本地服务器:

    • 对于 DHCP 中继代理:

  2. 启用自动注销,并指定在主要识别方法不成功时要使用的辅助识别方法。
    • 例如,要将 DHCP 本地服务器配置为使用传入接口方法:

    • 例如,要将 DHCP 中继代理配置为使用选项 60 和选项 82 方法:

注意:

如果更改自动注销配置,则现有客户端将继续使用登录时配置的自动注销设置。新客户端使用新设置。

DHCP 中继代理如何使用 Option 82 进行自动注销

表 1 显示了 DHCP 中继代理如何确定用于客户端自动注销功能的 option 82 值。根据配置设置,DHCP 中继代理会执行“已采取的作”列中指示的作。

表 1:自动注销的 DHCP 中继代理 Option 82 值

DHCP 中继代理配置设置

   

使用 Option 82 配置的 DHCP 中继

发现数据包包含选项 82

覆盖 “trust-option- 82”

覆盖“always-write- option-82”

非侦听数据包中的 giaddr

采取的行动

不进行二次检索

是的

是的

使用数据包中的选项 82

是的

丢包

是的

非零

使用数据包中的选项 82

是的

使用配置的选项 82

是的

是的

丢包

是的

是的

非零

使用数据包中的选项 82

是的

是的

是的

非零

覆盖配置的选项 82

是的

是的

是的

使用数据包中的选项 82

是的

是的

是的

是的

覆盖配置的选项 82

用于识别 DHCPv6 订阅者的 DHCPv6 匹配标准

默认情况下,DHCPv6 本地服务器和 DHCPv6 中继代理会根据客户端标识符识别客户端。DHCPv6 本地服务器和 DHCPv6 中继代理也可以通过传入接口识别 DHCPv6 客户端。您可以将该选项与 incoming-interface 语句一起使用 client-negotiation-match ,以便只有一台客户端设备在接口上连接。如果客户端设备发生变化,路由器将删除现有客户端绑定,并为新连接的设备创建绑定。

例如,考虑一个环境,该环境包括机顶盒 (STB) 或任何其他此类客户端设备 (CPE) 设备,该设备配置为从 DHCPv6 服务器获取配置信息。在网络配置中,一个接口支持一个 CPE 设备。DHCPv6 服务器配置为为 CPE 设备提供较长的租期计时器。如果 CPE 设备因维修或升级而断开连接,则新 CPE 设备将通过 DHCPv6 请求流程从 DHCPv6 服务器接收配置信息。由于客户端标识符与之前设备的客户端标识符不同,DHCPv6 本地服务器或 DHCPv6 中继代理会将 DHCPv6 请求消息视为新客户端并添加新绑定。由于旧设备可能无法正常注销,因此在租约到期之前不会释放旧 IP 地址。

如果配置了该 client-negotiation-match incoming-interface 语句,则在收到 DHCPv6 请求消息时,将根据客户端标识符和传入接口选项搜索 DHCPv6 客户端。如果根据匹配标准找到现有 DHCPv6 客户端绑定,则会删除绑定并处理新客户端。如果旧 CPE 设备断开连接,并且收到新 CPE 设备的 DHCPv6 请求消息,则该功能使用传入接口来识别客户端并移除旧 CPE 设备的绑定,从而允许释放旧 IP 地址。新 CPE 设备的绑定将替换旧绑定。

自动注销 DHCPv6 客户端

您可以将扩展 DHCPv6 本地服务器和扩展 DHCPv6 中继代理配置为,以便根据 DHCPv6 订阅者匹配标准自动注销 DHCPv6 客户端。当 DHCPv6 收到来自客户端的请求数据包时,自动注销功能会立即释放现有客户端,而该客户端的传入接口与现有客户端的接口相匹配。然后,DHCPv6 会释放现有客户端 IP 地址,而无需等待正常的租期到期。

注意:

释放现有客户端时,新客户端将经历正常的身份验证过程。新客户端可能不会收到与原始客户端相同的 IP 地址。

要配置 DHCPv6 客户端的自动注销:

  1. 指定要配置覆盖选项以覆盖默认配置设置。
    • 对于 DHCPv6 本地服务器:

    • 对于 DHCPv6 中继代理:

  2. 启用自动注销,并将传入接口指定为要使用的辅助识别方法。
    • 对于 DHCPv6 本地服务器:

    • 对于 DHCPv6 中继代理:

注意:

如果更改自动注销配置,则现有客户端将继续使用登录时配置的自动注销设置。新客户端使用新设置。