使用 LLDP 的设备发现
链路层发现协议 (LLDP) 是一种行业标准、供应商中立的方法,允许联网设备在 LAN 上通告功能、身份和其他信息。它还提供了额外的类型、长度和值 (TLV),用于功能发现、网络策略、以太网供电 (PoE) 和库存管理。有关更多信息,请阅读本主题。
了解 LLDP
设备使用 LLDP 来学习和分发网络链路上的设备信息。设备使用这些信息来快速识别各种设备。这种快速识别可实现互操作平稳高效的 LAN。
支持 LLDP 的设备将类型、长度和值 (TLV) 消息中的信息传输到邻居设备。设备信息可以包括具体信息,例如机箱标识、端口标识、系统名称和系统功能。TLV 利用 Junos OS 中已配置的参数中的此信息。
设备支持以下基本 TLV:
-
机箱标识符 — 与本地系统关联的 MAC 地址。
-
端口标识符 — 本地系统中指定端口的端口标识。
-
端口描述 — 用户配置的端口描述。端口描述最多可以包含 256 个字符。
-
系统名称 — 用户配置的本地系统名称。系统名称最多可以包含 256 个字符。
-
系统说明 — 包含有关系统上运行的软件和当前映像的信息的系统说明。此信息取自软件。您无法配置此信息。
-
系统功能 — 由系统执行的主要功能,例如网桥或路由器。此信息无法配置,但基于产品型号。
-
管理地址 — 本地系统的 IP 管理地址。
设备支持以下 802.3 TLV:
-
通过 MDI 供电 — 一种 TLV,用于通告媒体相关接口 (MDI) 电源支持、电源设备 (PSE) 电源对和电源等级信息。
-
MAC/PHY 配置状态 — 一种 TLV,用于通告有关物理接口的信息,例如自动协商状态和支持以及 MAU 类型。这些信息基于物理接口结构。您无法配置此信息。
-
链路聚合 — 一种 TLV,用于通告端口是否已聚合及其聚合端口 ID。
-
最大帧大小 — 播发发送 LLDP 帧的接口的最大传输单元 (MTU) 的 TLV。
-
端口 VLAN — 播发接口上配置的 VLAN 名称的 TLV。
配置 LLDP(CLI 过程)
请按照以下步骤在您的设备上配置 LLDP。
- 在接口上启用 LLDP
- 调整 LLDP 播发设置
- 调整 LLDP 更改的 SNMP 通知设置
- 为 LLDP 管理 TLV 指定管理地址
- 为 LLDP 管理 TLV 指定管理接口
- 配置 LLDP 电源协商
- 禁用 LLDP TLV
在接口上启用 LLDP
默认情况下,LLDP 在所有接口上启用。如果禁用该功能,则可以通过在所有接口或特定接口上配置 LLDP 来重新启用它。
-
要在所有接口上配置 LLDP:
[edit protocols lldp] user@device# set interface all
-
要在特定接口上配置 LLDP:
[edit protocols lldp] user@device# set interface interface-name
调整 LLDP 播发设置
您可以调整 LLDP 播发的以下设置,以进行故障排除或验证。LLDP 在启用时使用默认值。对于正常操作,我们建议您不要更改默认值。
-
要指定 LLDP 播发的发送频率(以秒为单位):
[edit protocols lldp] user@device# set advertisement-interval seconds
例如,使用默认值 30 秒:
[edit protocols lldp] user@device# set advertisement-interval 30
-
要指定 LLDP 信息在被丢弃之前保留的秒数:
[edit protocols lldp] user@device# set hold-multiplier number
例如,使用默认值 4:
[edit protocols lldp] user@device# set hold-multiplier 4
该
hold-multiplier值与advertisement-interval该值结合使用。使用默认值advertisement-interval意味着值 30 将乘以hold-multiplier值 4,导致 LLDP 保持时间为 120 秒。 -
设置传输延迟以指定在 TLV(LLDP 或本地系统状态中的元素)中进行更改后,设备向邻接方发送播发之前等待的秒数。本地系统状态的更改包括主机名或管理地址的更改。默认情况下,传输延迟处于启用状态,以减少通知邻接方本地系统更改的延迟。如果将该值设置为小于 8 秒,则
advertisement-interval默认传输延迟为 1 秒。如果将值设置为 8 秒或更长时间,则advertisement-interval默认值为 2 秒。[edit protocols lldp] user@device# set transmit-delay seconds
例如:
[edit protocols lldp] user@device# set transmit-delay 2
注意:该
advertisement-interval值必须大于或等于 transmit-delay 值的四倍;否则,当您尝试提交配置时,将返回错误。
调整 LLDP 更改的 SNMP 通知设置
您可以调整 LLDP 更改的 SNMP 通知的以下设置。如果未指定这些值或间隔值设置为 0,则禁用通知。
-
要指定发送 LLDP 数据库更改的频率(以秒为单位):
[edit protocols lldp] user@device# set lldp-configuration-notification-interval seconds
例如:
[edit protocols lldp] user@device# set lldp-configuration-notification-interval 600
-
要配置 SNMP 陷阱通知等待拓扑更改的时间(以秒为单位):
[edit protocols lldp] user@device# set ptopo-configuration-trap-interval seconds
例如:
[edit protocols lldp] user@device# set ptopo-configuration-trap-interval 600
-
要指定保持时间(与
ptopo-configuration-trap-interval值结合使用)以维护动态拓扑条目(以秒为单位):[edit protocols lldp] user@device# set ptopo-configuration-maximum-hold-time seconds
例如:
[edit protocols lldp] user@device# set ptopo-configuration-maximum-hold-time 2147483647
为 LLDP 管理 TLV 指定管理地址
您可以配置要用于 LLDP 管理地址 TLV 消息的 IPv4 或 IPv6 管理地址。必须将带外管理地址用作语句的 management-address 值。
要配置管理地址,请执行以下操作:
[edit protocols lldp] user@device# set management-address ip-address
使用命令确保 set protocols lldp interface 具有配置管理地址的接口已启用 LLDP。如果在禁用了 LLDP 的接口上为 LLDP 配置自定义管理地址, show lldp local-information 则命令输出不会显示正确的接口信息。
为 LLDP 管理 TLV 指定管理接口
您可以配置要用于 LLDP 管理地址 TLV 消息的接口。
您不能同时配置管理地址和管理接口。
要配置管理接口,请执行以下操作:
[edit protocols lldp] user@device# set management-interface interface-name
如果接口没有 IP 地址,则使用默认管理接口的 IP 地址。
配置 LLDP 电源协商
LLDP 电源协商使设备的以太网供电 (PoE) 控制器能够根据受电设备的需求,通过与支持 LLDP 的受电设备协商,将 PoE 功率动态分配给 PoE 接口。
EX3200 或 EX4200 交换机(EX4200-PX 型号除外)不支持 LLDP 电源协商。
运行 PoE 控制器软件版本 4.04 或更高版本的设备支持 LLDP 电源协商。
当 PoE 管理模式设置为以下内容 class时,LLDP 电源协商将自动启用:
-
[edit poe] user@device# set management class
要禁用 LLDP 电源协商:
-
在所有设备接口上:
[edit protocols lldp interface all power-negotiation] user@device# set disable
-
在特定接口上:
[edit protocols lldp interface interface-name power-negotiation] user@device# set disable
禁用 LLDP TLV
默认情况下,LLDP 会发送 TLV 消息。您可以配置 LLDP 以禁用非强制 TLV。强制性 TLV 包括:机箱 ID、端口 ID 和生存时间。在此过程中,任何对禁用所有 TLV 的引用都意味着禁用所有非强制 TLV。
禁用 TLV 有两种选择:
-
tlv-select— 选择LLDP允许播发哪些TLV。如果您只想允许几个 TLV,而不允许其他任何内容,则此方法很有用。 -
tlv-filter— 过滤 LLDP 不应通告的 TLV。如果只想过滤几个 TLV 并允许其他所有内容,请使用此选项。
tlv-select和tlv-filter选项是互斥的,不能同时用于同一配置部分。
您可以在特定接口或所有接口上禁用 TLV。接口配置部分下的配置优先于全局配置。
要选择允许 LLDP 播发哪些 TLV:
-
在所有接口上:
[edit protocols lldp] user@device# set tlv-select tlv-name
-
在特定接口上:
[edit protocols lldp] user@device# set interface interface-name tlv-select tlv-name
要过滤不应由 LLDP 通告的 TLV,请执行以下操作:
-
在所有接口上:
[edit protocols lldp] user@device# set tlv-filter tlv-name
-
在特定接口上:
[edit protocols lldp] user@device# set interface interface-name tlv-filter tlv-name
以下示例禁用除端口说明以外的所有 TLV:
[edit protocols lldp] user@device# set tlv-select port-description
以下示例禁用 ge-2/1/1 接口上的系统描述 TLV:
[edit protocols lldp] user@device# set interface ge-2/1/1 tlv-filter system-description
以下示例禁用除 ge-0/0/1 接口以外的所有接口上的所有 TLV,端口描述和系统描述除外,其中仅禁用系统名称 TLV:
[edit protocols lldp] user@device# set tlv-select [port-description system-description] user@device# set interface ge-0/0/1 tlv-filter system-name
配置 LLDP(J-Web 过程)
本主题仅适用于 J-Web 应用程序包。
使用 LLDP 配置页面,在 J-Web 界面上为 EX 系列交换机配置 LLDP 全局和端口设置。
要配置 LLDP:
| 字段 |
功能 |
您的操作 |
|---|---|---|
| 广告间隔 |
指定出站 LLDP 播发的频率。您可以增加或减少此间隔。 |
键入秒数。 |
| 保持乘数 |
指定支持 LLDP 的交换机用于计算其生成并传输给 LLDP 邻接方的 LLDP 播发的生存时间 (TTL) 值的乘数系数。 |
在字段中键入所需的编号。 |
| 快速启动计数 |
指定设备连接后第一秒内发送的 LLDP 播发数。默认值为 3。增加此数字会导致端口最初在有限的时间内以更快的速度播发 LLDP–MED。 |
键入快速启动计数。 |
| 字段 |
功能 |
您的操作 |
|---|---|---|
| LLDP 状态 |
指定端口上是否已启用 LLDP。 |
选择其中一项:“ 已启用”、“ 禁用”或“ 无”。 |
| LLDP-MED 状态 |
指定端口上是否已启用 LLDP-MED。 |
从列表中选择 “启用” 。 |
了解 EX 系列交换机上的 LLDP 和 LLDP-MED
EX 系列以太网交换机使用链路层发现协议 (LLDP) 和链路层发现协议-媒体端点发现 (LLDP-MED) 来学习和分发网络链路上的设备信息。这些信息使交换机能够快速识别各种设备,从而实现平稳高效的互操作 LAN。
LLDP 和 LLDP-MED 的优势
-
使交换机能够快速识别各种设备。
-
提供 PoE 电源管理功能。
-
确保语音流量在源本身使用正确的值进行标记和优先级排序。
LLDP 和 LLDP-MED 概述
支持 LLDP 的设备将类型、长度和值 (TLV) 消息中的信息传输到邻居设备。设备信息可以包括机箱和端口标识、系统名称和系统功能等信息。TLV 利用 Junos 操作系统 (Junos OS) 中已配置的参数中的此信息。
LLDP-MED 比 LLDP 更进一步,在交换机和 IP 电话之间交换 IP 电话消息。
如果 IP 电话配置为 VoIP (VoIP),交换机会自动检测配置,并将电话分配给语音 VLAN。IP 电话上语音 VLAN 的实施因供应商而异。有关配置语音 VLAN 的说明,请参阅 IP 电话随附的文档。例如,在 Avaya 电话上,即使没有 LLDP-MED,也可以通过启用 DHCP 选项 176 来确保电话获得正确的 VoIP VLAN ID。
LLDP 和 LLDP-MED 还提供 PoE 电源管理功能。LLDP 电源协商允许交换机通过与支持 LLDP 的受电设备协商来管理 PoE 功率,从而根据需要动态分配 PoE 功率。LLDP 电源优先级允许启用 LLDP 的受电设备在其连接的交换机接口上设置 PoE 电源优先级。
交换机还使用这些协议来确保语音流量在源本身使用正确的值进行标记和优先级排序。例如,可以将 802.1p CoS 和 802.1Q 标记信息发送至 IP 电话。
支持的 LLDP TLV
EX 系列交换机和 QFX5100 交换机支持以下基本管理 TLV:
-
机箱 ID — 与本地系统关联的 MAC 地址。
注意:机箱 ID TLV 具有网络地址族的子类型。仅当此子类型的值为 1 (IPv4) 或 2 (IPv6) 时,才会验证 LLDP 帧。对于任何其他值,LLDP 会将传输设备检测为邻居,并显示在命令输出
show lldp neighbors中,但不会分配给 VLAN。 -
端口 ID — 本地系统中指定端口的端口标识。
-
生存时间 - 收到的信息应保持有效的时间长度。
-
端口描述 — 接口或逻辑单元的文本说明。使用逻辑单元的说明(如果可用);否则,端口描述 TLV 将包含在物理接口上配置的说明。例如,LAG 成员接口不包含逻辑单元;因此,只能使用物理接口上配置的说明。
-
系统名称 — 用户配置的本地系统名称。系统名称最多可以包含 256 个字符。系统名称字段包含主机名和域名,格式如下: host-name。domain-name.
-
系统说明 — 包含有关系统上运行的软件和当前映像的信息的系统说明。此信息不可配置,而是从软件中获取。
-
系统功能 (System Capabilities) - 系统执行的主要功能。系统支持的功能,例如网桥或路由器。此信息不可配置,但基于产品型号。
-
管理地址 — 本地系统的 IPv4 或 IPv6 管理地址。
EX 系列交换机和 QFX5100 交换机支持以下组织定义的 TLV:
-
通过 MDI 供电 — 一种 TLV,用于通告 MDI(介质相关接口)电源支持、PSE(电源设备)、电源对和电源等级信息。
-
MAC/PHY 配置状态 — 一种 TLV,用于通告有关物理接口的信息,例如自动协商状态和支持以及 MAU(介质连接单元)类型。这些信息不可配置,但基于物理接口结构。
注意:MAC/PHY 配置状态 TLV 具有 PMD 自动协商播发功能字段的子类型。此字段包含
otherunknown如果 LLDP 数据包是从 10 千兆 SFP+ 端口传输的。 -
链路聚合 — 一种 TLV,用于通告端口是否已聚合及其聚合端口 ID。
-
最大帧大小 — 播发发送 LLDP 帧的接口的最大传输单元 (MTU) 的 TLV。
-
端口 VLAN — 播发接口上配置的 VLAN 名称的 TLV。
支持的 LLDP-MED TLV
EX 系列交换机和 QFX5100 交换机支持以下 LLDP-MED TLV:
-
LLDP-MED 功能 — 通告端口主要功能的 TLV。功能值的范围为 0 到 15:
-
0 - 功能
-
1—网络策略
-
2—位置识别
-
3 — 通过 MDI-PSE 扩展功耗
-
4—库存
-
5-15 - 保留
-
-
LLDP-MED 设备类值 — 将媒体端点设备分类为以下类:
-
0 — 未定义类
-
1 - 类 1(通用端点)。此类定义适用于需要基本 LLDP 发现服务的所有端点。
-
2 — 类 2(媒体端点)。此类包括具有 IP 媒体功能的端点。
-
3 — 第 3 类(通信端点)。充当最终用户通信设备的设备
-
4—网络连接设备
-
5-255 - 保留
-
-
网络策略 — 通告端口 VLAN 配置以及关联的第 2 层和第 3 层属性的 TLV。属性包括策略标识符、应用类型(例如语音或流视频)、802.1Q VLAN 标记以及 802.1p 优先级位和 Diffserv 代码点。
-
端点位置 — 通告端点物理位置的 TLV。
-
通过 MDI 扩展电源 — 通告端口的电源类型、电源、电源优先级和电源值的 TLV。PSE 设备(网络连接设备)负责在端口上通告电源优先级。
禁用 TLV
在多供应商网络中,可能不希望发送 TLV 消息,因为它们可能包含有关网络设备的敏感信息。您可以配置 LLDP 或 LLDP-MED 以禁用任何非必需 TLV 消息。强制性 TLV 包括:机箱 ID、端口 ID 和生存时间。可以在特定接口上或全局禁用所有其他 TLV。更多信息,请参阅配置 LLDP(CLI 过程)和配置 LLDP-MED(CLI 过程)。
也可以看看
配置 LLDP-MED(CLI 过程)
链路层发现协议-媒体端点发现 (LLDP-MED) 是 LLDP 的扩展。EX 系列交换机使用 LLDP-MED 来支持 VoIP 电话的设备发现,并为这些电话位置创建位置数据库。
默认情况下,EX 系列交换机会启用 LLDP-MED。
本主题将介绍如下内容:
在接口上启用 LLDP-MED
默认情况下,LLDP-MED 在所有接口上启用。如果已禁用,则可以通过在所有接口或特定接口上配置 LLDP-MED 来启用 LLDP-MED。
如果交换机运行的 Junos OS for EX 系列交换机支持增强型第 2 层软件 (ELS) 配置样式,则在物理接口上配置 LLDP-MED,例如在 ge-0/0/2 上。有关 ELS 的更多信息,请参阅 使用增强型第 2 层软件 CLI。
要在所有接口或特定接口上配置 LLDP-MED:
[edit protocols lldp-med] user@switch# set interface interface-name
配置交换机播发的位置信息
您可以配置从交换机播发到 LLDP-MED 设备的位置信息。您可以指定基于市政的位置(地理位置)或基于 ELIN(紧急位置识别号)的位置:
-
要按地理位置指定位置:
[edit protocols lldp-med] user@switch# set interface ge-0/0/2.0 location civic-based country-code country-code user@switch# set interface ge-0/0/2.0 location civic-based ca-type ca-type ca-value ca-value
-
要使用
elin字符串指定位置,请执行以下操作:[edit protocols lldp-med] user@switch# set interface ge-0/0/2.0 location elin 4085551212
为 LLDP-MED 配置快速入门
当交换机检测到支持 LLDP-MED 的设备时,它会开始从连接到设备的端口发送 LLDP 播发。快速启动计数表示交换机检测到 LLDP-MED 设备后的第一秒内将发送多少播发。默认值为 3;要将其设置为其他值:
[edit protocols lldp-med] user@switch# set fast-start seconds
例如:
[edit protocols lldp-med] user@switch# set fast-start 6
如果将接口配置为 VoIP 接口,则交换机不会等待连接的电话将自身标识为 LLDP-MED 设备,然后再在平滑路由引擎切换 (GRES) 或重新启动后执行 LLDP-MED 快速启动。相反,它会在 GRES 或重新启动后立即执行 LLDP-MED 快速启动。此行为可防止某些型号的 IP 电话在 GRES 之后重置。
禁用 LLDP-MED TLV
默认情况下,LLDP-MED 会发送 TLV 消息。您可以配置 LLDP-MED 以禁用非必需 TLV。必需 TLV 包括:机箱 ID、端口 ID 和生存时间。在此过程中,任何对禁用所有 TLV 的引用都意味着禁用所有非强制 TLV。
禁用 TLV 有两种选择:
-
tlv-select— 选择LLDP允许播发哪些TLV。如果您只想允许几个 TLV,而不允许其他任何内容,则此方法很有用。 -
tlv-filter— 过滤 LLDP 不应通告的 TLV。如果您只想过滤少数 TLV 并允许其他所有内容,则此方法非常有用。
和tlv-selecttlv-filter是互斥的,不能同时在同一配置节上使用。
您可以在特定接口或所有接口上禁用 TLV。接口配置部分下的配置优先于全局全局配置。
要选择 LLDP-MED 允许播发哪些 TLV:
-
在所有接口上:
[edit protocols lldp-med] user@switch# set tlv-select tlv-name
-
在特定接口上:
[edit protocols lldp-med] user@switch# set interface interface-name tlv-select tlv-name
要过滤不应由 LLDP-MED 通告的 TLV:
-
在所有接口上:
[edit protocols lldp-med] user@switch# set tlv-filter tlv-name
-
在特定接口上:
[edit protocols lldp-med] user@switch# set interface interface-name tlv-filter tlv-name
以下示例禁用除位置 ID 之外的所有 TLV:
[edit protocols lldp-med] user@switch# set tlv-select location-id
以下示例禁用 ge-2/1/1 接口上的 ext-power-via-mdi TLV:
[edit protocols lldp-med] user@switch# set interface ge-2/1/1 tlv-filter ext-power-via-mdi
以下示例在除 ge-0/0/1 接口外的所有接口上禁用除 location-id 和 ext-power-via-mdi 之外的所有 TLV,其中仅禁用网络策略 TLV:
[edit protocols lldp-med] user@switch# set tlv-select [location-id ext-power-via-mdi] user@switch# set interface ge-0/0/1 tlv-filter network-policy
您还可以禁用 LLDP 协议的 TLV。更多信息,请参阅配置 LLDP(CLI 过程)。