Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

了解 DHCP 侦听 (ELS)

注意:

本主题包含有关在使用支持增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机的 Junos OS 时启用动态主机配置协议 (DHCP) 侦听的信息。如果交换机运行的 Junos OS 软件不支持 ELS,请参阅 了解 DHCP 侦听(非 ELS)。有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件 CLI

DHCP 侦听使交换设备(可以是交换机或路由器)能够监控从连接到交换设备的不受信任设备接收的 DHCP 消息。在 VLAN 上启用 DHCP 侦听后,系统会检查从与该 VLAN 关联的不受信任主机发送的 DHCP 消息,并提取其 IP 地址和租约信息。此信息用于构建和维护 DHCP 侦听数据库。仅允许可使用此数据库进行验证的主机访问网络。

DHCP 侦听基础知识

DHCP 动态分配 IP 地址,将地址 租赁 给设备,以便在分配它们的设备不再需要这些地址时可以重复使用这些地址。需要通过 DHCP 获取 IP 地址的主机和终端设备必须通过 LAN 与 DHCP 服务器通信。

DHCP 侦听通过跟踪受信任的 DHCP 服务器(服务器连接到受信任的网络端口)分配给下游网络设备的有效 IP 地址,充当网络安全的守护者。

默认情况下,交换机上的所有中继端口都是受信任的,而所有接入端口对于 DHCP 侦听都是不受信任的。

从 Junos OS 18.4R1 版开始,以下瞻博网络系列交换机(EX2300、EX4600 和 QFX5K)的可信端口上会发生 DHCP 侦听。在 Junos OS 18.4R1 版之前,对于这些设备,仅对 DHCPv6 侦听适用。此外,运行 Junos OS 19.1R1 及更高版本的 EX9200 系列交换机和 Fusion Enterprise 的可信端口上会发生 DHCP 侦听。

您可以使用带有可信不受信任选项的覆盖配置语句,将访问端口配置为受信任,或将中继端口配置为不受信任。

启用 DHCP 侦听后,来自服务器的租约信息将用于创建 DHCP 侦听表,也称为 DHCP 绑定表。下表显示了当前的 IP-MAC 地址绑定、租用时间、绑定类型、关联 VLAN 和接口的名称。

DHCP 侦听表中的条目将在以下事件中更新:

  • 当网络设备释放 IP 地址时(发送 DHCP 释放消息)。在这种情况下,将从数据库中删除关联的映射条目。

  • 将网络设备从一个 VLAN 移动到另一个 VLAN 时。在这种情况下,设备通常需要获取新的 IP 地址。因此,将更新其在数据库中的条目,包括 VLAN 名称。

  • DHCP 服务器分配的租用时间(超时值)到期时。在这种情况下,将从数据库中删除关联的条目。

  • 当网络设备通过发送单播 DHCPREQUEST 消息并从 DHCP 服务器接收肯定响应来续订其租约时。在这种情况下,将在数据库中更新租用时间。

  • 如果网络设备无法访问最初授予租约的 DHCP 服务器,它将发送广播 DHCPREQUEST 消息并重新绑定到响应的 DHCP 服务器。在这种情况下,客户端会收到一个新的 IP 地址,并在 DHCP 侦听表中更新绑定。

  • 从 Junos OS 版本 14.1X53-D35 开始,如果将具有来自 DHCP 服务器的固定 IP 分配的网络设备替换为具有不同 MAC 地址的新设备,则会存储新的 IP-MAC 地址绑定,直到服务器发送 DHCPACK 消息;然后,将使用新的地址绑定更新 DHCP 侦听表中的条目。

提示:

默认情况下,交换机重新启动时 IP-MAC 绑定将丢失,DHCP 客户端(网络设备或主机)必须重新获取绑定。但是,可以通过将语句设置为 dhcp-snooping-file 在本地或远程存储数据库文件,将绑定配置为持久化。

您可以将交换机配置为仅侦听来自特定 VLAN 的 DHCP 服务器响应。这样做可以防止欺骗 DHCP 服务器消息。

启用 DHCP 侦听

使用 DHCP 侦听功能时,了解如何启用 DHCP 侦听功能非常重要。

在 Junos OS 设备上,不能将 DHCP 侦听功能配置为独立功能。每当为设备的特定 VLAN 配置 DHCP 安全时,都会在该 VLAN 上自动启用 DHCP 侦听以执行其任务。

例如:

  • 在特定 VLAN 上启用 DHCP 安全后,系统会自动在该 VLAN 上启用 DHCP 侦听功能。

Junos OS 在交换机上启用 DHCP 侦听:

  • 为任何端口安全功能配置以下选项时:

    • dhcp-security [edit vlans vlan-name forwarding-options] 层次结构级别的语句。

在 Junos OS 17.1 版之前,如果在 [edit vlans vlan-name forwarding-options] 层次结构中配置以下任何端口安全功能,Junos OS 会自动启用 DHCP 侦听:

  • 动态 ARP 检测 (DAI
  • IP 源保护
  • DHCP 选项 82
  • 静态 IP

从 Junos OS 17.1R1 版开始,您可以在 VLAN 上配置 DHCP 侦听或 DHCPv6 侦听,而无需启用其他端口安全功能。使用以下配置语句启用 DHCP 侦听:

[set vlans vlan-name forwarding-options dhcp-security]。

有关启用 DHCP 侦听的其他信息,请参阅 配置端口安全性 (ELS)
注意:

要禁用 DHCP 侦听,必须从配置中删除该 dhcp-security 语句。禁用其他端口安全功能时,不会自动禁用 DHCP 侦听。

DHCP 侦听进程

DHCP 侦听过程包括以下步骤:

注意:

为 VLAN 启用 DHCP 侦听后,从该 VLAN 中的网络设备发送的所有 DHCP 数据包都将受到 DHCP 侦听。当 DHCP 服务器向 DHCP 客户端发送 DHCPACK 数据包时,将发生最终的 IP-MAC 绑定。

  1. 网络设备发送 DHCP 发现数据包以请求 IP 地址。

  2. 交换机将数据包转发到 DHCP 服务器。

  3. 服务器发送 DHCPOFFER 数据包以提供地址。如果 DHCPOFFER 数据包来自可信接换机会将数据包转发到网络设备。

  4. 网络设备发送 DHCPREQUEST 数据包以接受 IP 地址。交换机会将 IP-MAC 占位符绑定添加到 DHCP 侦听表。在从服务器收到 DHCPACK 数据包之前,该条目被视为占位符。在此之前,IP 地址仍然可以分配给其他主机。

  5. 服务器发送 DHCPACK 数据包来分配 IP 地址,或发送 DHCPNAK 数据包来拒绝地址请求。

  6. 交换机会根据收到的数据包类型更新 DHCP 数据库:

    • 如果交换机收到 DHCPACK 数据包,则会更新其数据库中 IP-MAC 地址绑定的租约信息。

    • 如果交换机收到 DHCPNACK 数据包,则会删除占位符。

注意:

只有在发送 DHCPREQUEST 数据包后,才会更新 DHCP 数据库。

有关 DHCP 客户端和 DHCP 服务器在为客户端分配 IP 地址期间交换的消息的一般信息,请参阅 Junos OS 系统基础知识配置指南

DHCPv6 侦听

从 Junos OS 版本 14.1X53-D10 开始,EX 9200 交换机上的 IPv6 数据包支持 DHCP 侦听。IPv6 数据包也支持 DHCP 侦听。DHCPv6 侦听的过程与 DHCP 侦听的过程类似,但对客户端和服务器之间交换的消息使用不同的名称来分配 IPv6 地址。 表 1 显示了 DHCPv6 消息及其等效的 DHCPv4。

表 1:DHCPv6 消息和 DHCPv4 等效消息

发送方

DHCPv6 消息

DHCPv4 等效消息

客户

征求

DHCP发现

服务器

做广告

DHCPOFFER

客户

请求、续订、重新绑定

DHCPREQUEST

服务器

DHCPACK/DHCPNAK

客户

释放

DHCPRELEASE

客户

信息请求

DHCPINFORM

客户

下降

DHCP下降

客户

确认

没有

服务器

配置

DHCPFORCE更新

客户

RELAY-FORW, RELAY-REPLY

没有

DHCPv6 的快速提交

DHCPv6 快速提交选项可以缩短客户端和服务器之间的消息交换。当服务器支持并由客户端设置时,此选项可将交换从四向中继缩短为双消息握手。有关启用快速提交选项的详细信息,请参阅配置 DHCPv6 快速提交(MX 系列、EX 系列)。

启用“快速提交”选项后,消息交换如下所示:

  1. DHCPv6 客户端发出一条 SOLICIT 消息,其中包含一个请求,即首选快速分配地址、前缀和其他配置参数。

  2. 如果 DHCPv6 服务器支持快速分配,它将使用 REPLY 消息进行响应,其中包含分配的 IPv6 地址和前缀以及其他配置参数。

DHCP 服务器访问

交换机对 DHCP 服务器的访问可以通过三种方式进行配置:

交换机、DHCP 客户端和 DHCP 服务器都位于同一 VLAN 上

当交换机、DHCP 客户端和 DHCP 服务器 都是同一 VLAN 的成员时, DHCP 服务器可以通过以下两种方式之一连接到交换机:

注意:

要在 VLAN 上启用 DHCP 侦听,请在层次结构中[edit vlans vlan-name forwarding-options]配置 DHCP 安全语句。

  • (请参阅 图 1。服务器与连接到 DHCP 客户端(从服务器请求 IP 地址的主机或网络设备)的交换机直接连接到同一交换机。VLAN 已启用 DHCP 侦听以保护不受信任的访问端口。默认情况下,中继端口配置为受信任端口。

  • (请参阅 图 2。服务器连接到中间交换机(交换机 2),中间交换机通过中继端口连接到 DHCP 客户端连接到的交换机(交换机 1)。交换机 2 用作中转交换机。VLAN 已启用 DHCP 侦听,以保护交换机 1 的不受信任接入端口。默认情况下,中继端口配置为受信任端口。 在图 2 中,ge-0/0/11 是受信任的中继端口。

图1:直接连接到交换机 DHCP Server Connected Directly to a Switch的DHCP服务器
图 2:DHCP 服务器直接连接到交换机 2,交换机 2 通过可信中继端口 DHCP Server Connected Directly to Switch 2, with Switch 2 Connected to Switch 1 Through a Trusted Trunk Port连接到交换机 1

交换机充当 DHCP 服务器

您可以在交换机上配置 DHCP 本地服务器选项,使交换机能够充当扩展的 DHCP 本地服务器。 在图 3 中,DHCP 客户端通过不受信任的访问端口连接到扩展的 DHCP 本地服务器。

图3:交换机是DHCP服务器 Switch Is the DHCP Server

交换机充当中继代理

当 DHCP 客户端或 DHCP 服务器通过第 3 层接口(在交换机或路由器上)连接到交换机时,交换机将充当中继代理。交换机上的第 3 层接口配置为路由 VLAN 接口 (RVI),也称为集成路由和桥接 (IRB) 接口。默认情况下,中继接口是受信任的。

交换机可在以下两种情况下充当中继代理:

  • DHCP 服务器和客户端位于不同的 VLAN 中。

  • 交换机连接到路由器,而路由器又连接到 DHCP 服务器。参见 图 4

图 4:通过路由器将中继代理切换到 DHCP 服务器 Switch Acting as a Relay Agent Through a Router to the DHCP Server

向 DHCP 侦听数据库添加静态 IP 地址

您可以添加静态(固定)IP 地址,并将其绑定到 DHCP 侦听数据库中的固定 MAC 地址。这些绑定在数据库中标记为静态,而通过 DHCP 侦听过程添加的那些绑定标记为动态。静态 IPv6 地址分配也可用于 DHCPv6。有关配置详细信息,请参阅 为 DHCP 侦听配置静态 DHCP IP 地址

更改历史记录表

功能支持由您使用的平台和版本决定。使用 功能资源管理器 确定您的平台是否支持某个功能。

释放
描述
14.1X53-D35
从 Junos OS 14.1X53-D35 版开始,具有来自 DHCP 服务器的固定 IP 分配的网络设备将替换为具有不同 MAC 地址的新设备。
14.1X53-D10
从 Junos OS 版本 14.1X53-D10 开始,EX 9200 交换机上的 IPv6 数据包支持 DHCP 侦听。
13.2X51-D20
从 Junos OS 17.1R1 版开始,您可以在 VLAN 上配置 DHCP 侦听或 DHCPv6 侦听,而无需启用其他端口安全功能 dhcp-security ,方法是在 [edit vlans vlan-name forwarding-options dhcp-security].