Appearance
Appearance
LLDP(Link Layer Discovery Protocol,IEEE 802.1AB)是一种厂商中立的二层邻居发现协议。设备用 LLDP 在本地链路上通告自己的身份、端口、系统能力、管理地址等信息,也接收相邻设备发来的同类信息。
什么时候用:排查交换机端口接错、识别相邻设备、核对语音 VLAN/LLDP-MED 信息、检查设备是否在二层通告管理地址和系统能力时,用 LLDP。
不要混淆:LLDP 只描述同一链路上的邻居发现,不是路由协议,不负责转发业务流量;它与 Cisco CDP 等厂商协议用途相近,但 LLDP 是开放标准。
| 项目 | 值 / 行为 |
|---|---|
| 标准 | IEEE 802.1AB |
| 常见承载 | Ethernet |
| EtherType | 0x88cc |
| 目的 MAC | 01:80:c2:00:00:0e |
| 转发范围 | 限制在本地 LAN 链路,符合 802.1D 的网桥通常不会转发 LLDPDU |
| 编码方式 | LLDPDU 由一组 TLV 顺序组成 |
LLDPDU 可以直接使用 EtherType 0x88cc 编码,也可以封装在 SNAP-encoded LLC frame 中;SNAP 情况下会在 LLDP EtherType 前出现 aa:aa:03:00:00:00。
LLDP 信息以 TLV(Type-Length-Value)形式出现。每个 TLV 都有类型、长度和值;接收端按顺序解析这些 TLV。
合规 LLDPDU 至少包含以下 mandatory TLV,并按此顺序出现:
| 顺序 | TLV | Type | 用途 |
|---|---|---|---|
| 1 | Chassis ID | 1 | 标识设备本体 |
| 2 | Port ID | 2 | 标识发送 LLDPDU 的端口 |
| 3 | Time To Live | 3 | 告诉邻居该信息可保留多久 |
| 4 | End of LLDPDU | 0 | 标记 LLDPDU 结束 |
Optional TLV 位于 Time To Live TLV 和 End of LLDPDU TLV 之间。常见 Basic TLV:
| TLV | Type | 用途 |
|---|---|---|
| Port Description | 4 | 描述端口 |
| System Name | 5 | 设备名称 |
| System Description | 6 | 系统描述 |
| System Capabilities | 7 | 设备能力,例如 bridge、router、telephone 等 |
| Management Address | 8 | 管理地址 |
组织自定义 TLV 使用 Type 127。其 value 中包含 3 字节 OUI 和 1 字节 subtype,用于区分组织和具体扩展。
| OUI | 组织 / 扩展 |
|---|---|
00-80-c2 | IEEE 802.1 |
00-12-0f | IEEE 802.3 |
00-12-bb | TIA LLDP-MED |
00-0e-cf | PROFIBUS / PROFINET discovery information |
30-b2-16 | Hytec 扩展 |
常见扩展示例:
| 扩展 | 示例 TLV |
|---|---|
| IEEE 802.1 | Port VLAN ID、VLAN Name、Link Aggregation、Priority-based Flow Control |
| IEEE 802.3 | MAC/PHY Configuration/Status、Power Via MDI、Maximum Frame Size |
| LLDP-MED | Network Policy、Location Identification、Extended Power-via-MDI、Inventory 信息 |
Wireshark 从 0.10.13 起支持 LLDP,并支持 TIA 的 LLDP-MED extensions。
首选项设置:N/A。
原页面提到以下示例抓包:
SampleCaptures/lldp.minimal.pcap:只包含一个最小 LLDP frame,含必需 TLV。SampleCaptures/lldp.detailed.pcap:只包含一个 LLDP frame,含多个可选 TLV。SampleCaptures/lldpmed_civicloc.pcap:包含 LLDP-MED TLV,例如 civic address location ID、network policy、extended power-via-MDI。只显示 LLDP 流量:
lldp按字段排查时,可在 Wireshark 的 display filter reference 中查看当前版本支持的 lldp.* 字段。常见任务包括:查看 Chassis ID、Port ID、System Name、System Capabilities、Management Address,以及 LLDP-MED 相关字段。
只捕获 LLDP 流量:
ether proto 0x88cc也可以按目的 MAC 抓取本地链路 LLDP 帧:
ether dst 01:80:c2:00:00:0e| 概念 | 说明 | 与 LLDP 的关系 |
|---|---|---|
| CDP | Cisco Discovery Protocol | 用途类似,但为厂商协议 |
| EDP | Extreme Discovery Protocol | 用途类似,但为厂商协议 |
| LLDP-MED | Media Endpoint Discovery 扩展 | LLDP 的组织扩展,常用于语音终端、位置和供电信息 |
| STP/RSTP | 二层环路控制协议 | 也使用本地链路控制帧,但目的和解析字段不同 |
| 路由协议 | 交换三层可达性信息 | LLDP 不计算路由,也不转发业务路径 |
Imported from https://wiki.wireshark.org/LinkLayerDiscoveryProtocol on 2020-08-11 23:16:00 UTC