网络协议—LLDP协议

admin 2026-01-17 01:42:06 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详解LLDP协议,阐述其基于IEEE802.1ab标准实现设备自动发现与信息交换的机制。内容涵盖报文结构、TLV组成及LLDP-MED扩展,并结合抓包分析ChassisID、端口VLAN及PoE状态,展示了该协议在网络管理与拓扑绘制中的应用价值。 综合评分: 87 文章分类: 网络安全,技术标准,内网渗透


cover_image

网络协议—LLDP协议

原创

老五 老五

老五说网络

2026年1月16日 09:30 陕西

LLDP(Link Layer Discovery Protocol,链路层发现协议)是一种标准的二层邻居发现协议,定义于 IEEE 802.1ab 标准中。它的核心目标是:让网络设备能够自动发现直连邻居,并交换彼此的系统与接口信息,从而简化网络管理、拓扑绘制和故障排查。

一、为什么需要 LLDP?

在传统网络中:

  • 管理员难以快速了解“谁连着谁”;
  • 不同厂商设备之间缺乏统一的信息交互机制;
  • 故障定位依赖人工排查,效率低。

→LLDP 提供了一种跨厂商、标准化的方式,使设备能主动通告自身信息(如设备名、端口、管理地址等),并学习邻居信息。

→类似 Cisco 的 CDP(Cisco Discovery Protocol),但 LLDP 是开放标准,支持多厂商互操作。

二、LLDP 的核心功能

  1. 自动发现直连邻居

    →仅限物理直连或通过透传设备(如不终结 LLDP 报文的交换机)连接的设备。

  2. 交换设备信息

    →包括设备标识、端口标识、能力、管理地址等。

  3. 支持网络管理系统(NMS)

    →NMS 可读取设备 MIB(管理信息库)中的 LLDP 信息,自动生成网络拓扑图。

  4. 辅助高级应用

    →如 VoIP 电话自动获取语音 VLAN(通过 LLDP-MED);

    →自动配置 QoS 策略、PoE 供电等。

三、LLDP协议报文结构(Ethernet II 封装)

  • 目的 MAC:固定组播地址 01:80:C2:00:00:0E(Nearest Bridge)
  • 类型字段:0x88CC 表示 LLDP 协议

四、LLDPDU数据单元

    LLDP 的有效载荷是 LLDPDU,由多个 TLV(Type-Length-Value) 组成。必须包含的 TLV(4 种):Chassis ID,Port ID,Time To Live (TTL),End of LLDPDU。

| | | | — | — | | TLV 名称 | 说明 | | Chassis ID | 设备标识(如 MAC 地址、设备名) | | Port ID | 发送端口标识(如端口名、MAC) | | Time To Live (TTL) | 邻居信息在接收方缓存中的存活时间(秒) | | End of LLDPDU | 标志 LLDPDU 结束 |

五、LLDP 工作机制

  • 周期性发送

    默认每 30 秒 发送一次 LLDP 报文(可配置)。

  • 邻居信息缓存

    接收方将邻居信息存入本地 MIB(如 lldpRemTable)。

  • 老化机制

    若在 TTL 时间内未收到更新报文,则删除该邻居记录。

  • Shutdown 通知

    当端口 shutdown 或 LLDP 关闭时,会发送一个 TTL=0 的 LLDP 报文,通知邻居立即清除信息。

六、LLDP-MED(Media Endpoint Discovery)

专为终端设备设计(如 IP 电话、摄像头)。

支持:

  • 自动下发 语音 VLAN
  • 网络策略(QoS、DSCP 映射)
  • 设备位置信息(用于 E911 紧急呼叫)
  • PoE 供电协商
  • 资产管理(序列号、厂商、型号等)

七、抓取LLDP报文

  1. Ethernet II 层

解析:

源 MAC 地址:4c:2d:33:85:05:00

→ 这是发送 LLDP 报文的设备的物理地址。

目的 MAC 地址:01:80:C2:00:00:0E

→ LLDP 的标准多播地址,所有支持 LLDP 的设备都会监听此地址。

说明:这是一个广播式发现机制,用于通知网络中的邻居设备。

  1. LLDP 协议头

    标识这是一个 LLDP 帧,符合 IEEE 802.1ab标准。

  1. LLDPDU(LLDP Data Unit)——核心内容

    LLDP 报文由多个 TLV(Type-Length-Value) 组成,每个 TLV 提供一种设备信息。

(1)Chassis ID(设备标识)

解析:

  • 表示该设备的“机箱”ID(即设备本身)。

  • Subtype = MAC address:使用设备的 MAC 地址作为唯一标识。

值:4c:2d:33:85:05:00

说明:可用于识别设备身份。

(2)Port ID(端口标识)

解析:

  • 表示发送此 LLDP 报文的接口名称。

  • Subtype = Interface name:用接口名表示。

  • 值:GigabitEthernet1/0/1

说明:接收方知道是从哪个端口发出的。

(3)Time To Live (TTL)

解析:

  • 该 LLDP 信息在接收方缓存中的存活时间(单位:秒)。
  • 默认通常是 120 秒,这里为 121 秒(可能刚更新过)。
  • 若超过 TTL 未收到新报文,则认为邻居已断开。

(4)Port Description(端口描述)

解析:对应端口的简要说明,通常与 Port ID 相同。

(5)System Name(系统名称)

解析:设备主机名或系统名称,这里是 H3C,表明是 H3C 品牌设备。

(6)System Description(系统描述)

解析:

  • 操作系统:Comware(H3C 的专有操作系统)
  • 软件版本:7.1.070
  • 设备型号:Alpha 7170 / H3C S6850
  • 版权信息:New H3C Technologies Co., Ltd.

说明:这是非常重要的诊断信息,可用于确认设备型号、软件版本、是否需要升级等。

(7)常见的TLV:

(8)Management Address:表示该设备的管理地址(如 IP 地址、IPv6 地址等),可用于远程登录或 SNMP 管理。如果展开,可能包含:IP 地址、子网掩码、协议类型(IPv4/IPv6)、接口索引等。

解析:

  1. TLV Type: Management Address (8):表示这是一个“管理地址”TLV,用于传递设备的管理 IP 或 MAC 地址。
  2. TLV Length: 14:此TLV的总长度为 14 字节(包括类型、长度、值)。
  3. Address String Length: 7:实际地址数据长度为 7 字节。
  4. Address Subtype: 802 (6):指明地址类型是 MAC 地址(即 802 格式),常用于未配置 IP 的设备或作为备用标识。
  5. Management Address: 4c2d33850500:设备的管理地址,此处为 MAC 地址:4C:2D:33:85:05:00,这通常是交换机的系统 MAC 地址,可用于 SNMP 或 LLDP 访问。
  6. Interface Subtype: ifIndex (2):表示该地址关联的接口使用的是 ifIndex 编号方式(接口索引)。
  7. Interface Number: 0:接口编号为 0,表示这是全局管理地址(不是某个具体物理端口绑定的)。
  8. OID String Length: 0:无额外的 OID(对象标识符)信息。

(9)Port VLAN ID :表示当前端口所属的 VLAN ID。这是 IEEE 802.1Q 标准的一部分。可用于确认端口是否配置了特定 VLAN,例如:VLAN 10 或 Native VLAN。

解析:

  1. TLV Type: Organization specific (127):表示这是一个“组织特定”TLV,即厂商或标准组织定义的私有扩展字段。值为 127 是 IEEE 标准中保留给组织使用的。
  2. TLV Length: 6:此 TLV 的总长度为 6 字节(不包括类型和长度字段本身)。
  3. Organization Unique code: IEEE 802.1 (0x080C2):指明该组织是 IEEE 802.1,其 OUI(组织唯一标识符)为 0x080C2。这表示这是 IEEE 官方定义的标准 TLV,不是厂商私有。
  4. IEEE 802.1 Subtype: Port VLAN ID (0x01):子类型为 Port VLAN ID,用于传递当前端口所属的 VLAN ID。Port VLAN ID: 1 (0x0001):当前接口配置的 VLAN ID 为 1。该端口属于 VLAN 1(通常是默认 VLAN 或管理 VLAN)。

(10)Unknown subtype 0x7:这是一个 未知的 IEEE 802.1子类型,值为 0x7。通常表示厂商私有扩展(Vendor-specific TLV),可能是 H3C 自定义的某种功能信息(如堆叠状态、业务模式等)。

解析:

  1. TLV Type: Organization specific (127):表示这是一个“组织特定”类型的 TLV,即由标准组织或厂商定义的私有扩展字段。值为 127 是 IEEE 标准保留给组织使用的。
  2. TLV Length: 9:此 TLV 的总长度为 9 字节(不包括类型和长度字段本身)。
  3. Organization Unique code: IEEE 802.1 (0x080C2):指明该组织是 IEEE 802.1,其 OUI(组织唯一标识符)为 0x080C2。这表示这是 IEEE 官方定义的标准扩展,不是厂商私有。
  4. IEEE 802.1 Subtype: unknown (0x07):子类型为 0x07,但当前 Wireshark 无法识别其具体含义,因此标记为“Unknown”。

<<<关键点:为什么是 “Unknown”?

    虽然该 TLV 属于 IEEE 802.1 标准范畴(OUI 为 0x080C2),但子类型 0x07 并未被广泛文档化。

可能的原因:

  • 是 IEEE 802.1 的某个新特性,尚未被 Wireshark 支持;
  • H3C、华为等厂商基于 IEEE 802.1 扩展的私有功能(尽管使用了 IEEE OUI);
  • 用于传递 堆叠状态、端口角色、业务模式 等高级信息。>>>

(11)MAC/PHY Configuration/Status:提供物理层和链路层的状态信息:

        1、链路速率(如 100Mbps, 1Gbps)

        2、双工模式(全双工/半双工)

        3、自协商状态

        4、是否启用流控

→ 有助于判断接口连接质量。

解析:

  • TLV Type: Organization specific (127):表示这是一个“组织特定”类型的 TLV,即由标准组织定义的扩展字段。值为 127 是 IEEE 标准保留给组织使用的。
  • TLV Length: 9:此 TLV 的总长度为 9 字节(不包括类型和长度字段本身)。
  • Organization Unique code: IEEE 802.3 (0x00120F):指明该组织是 IEEE 802.3(以太网标准),其 OUI 为 0x00120F。
  • IEEE 802.3 Subtype: MAC/PHY Configuration/Status (0x01):子类型为 MAC/PHY 配置与状态,用于传递物理层和链路层的配置信息。

(12)Power Via MDI:表示该端口支持 PoE(Power over Ethernet),即通过以太网线供电。常见于交换机为 IP 电话、摄像头、无线 AP 供电。会显示最大功率、PD 类型等。

解析:

  1. TLV Type: Organization specific (127):表示这是一个“组织特定”类型的 TLV,由 IEEE 定义。
  2. TLV Length: 7:此 TLV 的总长度为 7 字节。
  3. Organization Unique code: IEEE 802.3 (0x00120F):指明该组织是 IEEE 802.3(以太网标准)。
  4. IEEE 802.3 Subtype: Power via MDI (0x02):子类型为 Power via MDI,即通过以太网线供电(PoE)。

4.1. MDI Power Support: 0x01

  • 这个字段表示设备在 PoE 中的角色和能力。
  • 值为 0x01,按位解析如下:
  • Port Class: PSE → 该端口是 电源提供设备(PSE, Power Sourcing Equipment),如交换机、PoE 注入器。
  • PSE MDI Power: Not Supported → 不支持通过 MDI 接口供电(可能是硬件限制)。
  • PSE MDI Power Enabled: No → 当前未启用 PoE 功能。
  • PSE Pairs Control Ability: No → 无法控制哪一对线缆传输电力(如只用 1/2 或 3/6 线对)。

说明:这是一台 PSE 设备,但当前 PoE 未启用。

4.2. PSE Power Pair: 1

  • 表示使用的是哪一组线对进行供电。
  • 值为 1,通常对应 第1组线对(1/2),即标准 PoE 使用 1/2 和 3/6 线对。

4.3. Power Class: 1

  • 表示该端口支持的 PoE 功率等级。
  • Class 1 对应最大功率约为 0.44W(旧标准),但在现代设备中可能被重新定义。

说明:此值可能与实际功率不一致,需结合其他字段判断。

4.4. Power Type: Type 1 PD Device

  • 表示连接的设备是 Type 1 PD(Powered Device)。
  • 即普通 PoE 终端设备,如 IP 电话、摄像头等。

4.5. Power Source: PSE and Local

表示电力来源有两个:

  • 主要来自 PSE(交换机),可能也包含 本地电源(Local),例如双电源供电模式。

4.6. Power Priority: Reserved

  • 优先级字段保留,未使用。
  • 一般用于紧急设备(如消防报警器)设定高优先级供电。

4.7. PD Requested Power Value: 153.6 Watt

  • 连接的终端设备(PD)请求的功率为 153.6 瓦特。
  • 这是一个非常高的数值,远超普通 PoE 标准(如 802.3af 最大 15.4W,802.3at 最大 30W,802.3bt 最大 90W)。

说明:可能是模拟器测试设备的原因。

4.8. PSE Allocated Power Value: 462.3 Watt

  • 该 PSE 端口最多可分配的功率为 462.3 瓦特。

说明:这是一台 高功率 PoE 交换机,支持多端口同时供电,且具备强大电源模块。

(13)Maximum Frame Size:表示该端口支持的最大帧大小(MTU)。例如:1522 字节(含 VLAN 标签)或更大(Jumbo Frame)。对于大文件传输、视频监控等场景很重要。

解析:

  1. TLV Type: Organization specific (127):表示这是一个“组织特定”类型的 TLV,由 IEEE 定义。
  2. TLV Length: 6 :此 TLV 的总长度为 6 字节(不包括类型和长度字段本身)。
  3. Organization Unique code: IEEE 802.3 (0x00120F):指明该组织是 IEEE 802.3(以太网标准),其 OUI 为 0x00120F。
  4. IEEE 802.3 Subtype: Maximum Frame Size (0x04):子类型为 Maximum Frame Size:用于告知对端本接口能处理的最大帧长。
  5. Maximum frame size: 9216 当前端口支持的最大帧大小为 9216 字节。

(14)End of LLDPDU:标志着 LLDP 数据单元的结束。所有 TLV 发送完毕,报文结束。

公众号:老五说网络

长按左侧二维码关注


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:老五说网络 老五 老五《网络协议—LLDP协议》

评论:0   参与:  0