第124篇:LLDP 与 CDP——邻居自动发现协议
关键词
LLDP、CDP、邻居发现、IEEE 802.1AB、T LV、网络拓扑
一、LLDP 简介
1.1 什么是 LLDP
LLDP(Link Layer Discovery Protocol)是 IEEE 802.1AB 标准定义的二层邻居发现协议。设备通过 LLDP 向直连邻居通告自己的信息,同时接收邻居的通告。
1.2 LLDP VS CDP
| 对比项 | LLDP | CDP(Cisco Discovery Protocol) |
|---|---|---|
| 标准 | IEEE 802.1AB | 思科私有 |
| 厂商支持 | 多厂商 | 仅思科 |
| 报文 | 基本 TLV + 组织自定义 TLV | 私有格式 |
| 端口类型 | Ethernet | 所有类型 |
注意:在华为、H3C、Juniper 等设备上,默认使用 LLDP。
二、LLDP 的工作原理
2.1 LLDP 报文
LLDP 使用 SNAP(Subnetwork Access Protocol) 封装,目的 MAC 地址为 01-80-C2-00-00-0E(IEEE 标准组播地址)。
| DA 组播 | SA 源 MAC | SNAP 协议头 | LLDPDU TLV 集 | FCS 校验 |
|---|---|---|---|---|
2.2 TLV(Type-Length-Value)
LLDP 信息以 TLV 格式组织:
| TLV 类型 | 名称 | 必选 | 内容 |
|---|---|---|---|
| Chassis ID | 设备标识 | 是 | 设备 MAC / 主机名 |
| Port ID | 端口标识 | 是 | 端口名 / MAC |
| TTL | 生存时间 | 是 | 信息有效时间 |
| Port Description | 端口描述 | 否 | 管理员配置的端口描述 |
| System Name | 系统名称 | 否 | 设备主机名 |
| System Description | 系统描述 | 否 | 厂商/型号/版本 |
| System Capabilities | 能力 | 否 | 路由器/交换机/AP 等 |
| Management Address | 管理地址 | 否 | IP 地址 |
| 802.1 VLAN Name | VLAN 名 | 否 | VLAN ID + 名称 |
| 802.3 MAC/PHY | 速率/双工 | 否 | 接口能力 |
2.3 LLDP 工作流程
设备每 30 秒发送一次 LLDP 报文(可配置)
收到邻居 LLDP 信息后缓存
缓存保持时间 = TTL(默认 120 秒)
超时后删除邻居信息
SW1 ──── LLDP ────► SW2
◄──── LLDP ────
三、LLDP 配置
3.1 基本配置
# ===== 全局启用 LLDP =====
lldp enable
# ===== 接口启用 LLDP =====
interface GigabitEthernet0/0/1
lldp enable
# ===== 查看 LLDP 邻居 =====
display lldp neighbor brief
-----------------------------------------------
Local Int Neighbor Neighbor Int System Name
GE0/0/1 SW2 GE0/0/24 Core-SW-01
GE0/0/2 SW3 GE0/0/1 Access-SW-05
3.2 查看 LLDP 详细信息
# 查看邻居详细信息
display lldp neighbor interface GigabitEthernet0/0/1 verbose
-----------------------------------------------
LLDP neighbor:
Chassis ID: 00e0-fc12-3456
Port ID: GigabitEthernet0/0/24
TTL: 120
System Name: Core-SW-01
System Description: Huawei S12708 ...
Port Description: Uplink to Access
Management Address: 10.254.1.1
VLAN ID: 100
Link Aggregation: Supported, Enabled
Link Aggregation Port ID: 1
3.3 查看本机 LLDP 信息
# 查看本机 LLDP 发送的信息
display lldp local interface GigabitEthernet0/0/1
-----------------------------------------------
LLDP local information:
Chassis ID: 00e0-fc12-7890
Port ID: GigabitEthernet0/0/1
Port Description: Access to Floor 3
System Name: Access-SW-05
Management Address: 10.254.10.5
...
3.4 配置参数
# 修改 LLDP 参数
lldp message-transmission interval 30 # 发送间隔(默认 30s)
lldp message-transmission hold-multiplier 4 # TTL 倍数(默认 4)
# TTL = interval × hold-multiplier = 120s
# 仅接收不发送
interface GigabitEthernet0/0/1
lldp receive-only
# 配置端口描述自动同步
lldp management-address 10.254.1.1
四、LLDP 的典型应用
4.1 自动拓扑发现
网络管理系统(如华为 eSight、SolarWinds)通过 LLDP 自动发现网络拓扑:
NMS 收集每台设备的 LLDP 信息:
SW1:邻居 SW2 (GE0/0/24)
SW2:邻居 SW1 (GE0/0/1), SW3 (GE0/0/2)
SW3:邻居 SW2 (GE0/0/1)
自动绘制拓扑:
SW1 ── GE0/0/1 ── GE0/0/24 ── SW2 ── GE0/0/2 ── GE0/0/1 ── SW3
4.2 端口连接验证
运维人员可以通过 LLDP 验证物理连接的准确性:
# 在接入交换机上查看上联端口连接了哪台设备
display lldp neighbor interface GigabitEthernet0/0/24
# 确认上联到了核心交换机
# 验证新部署的链路
# 新接光纤后,LLDP 自动发现邻居
# 不需要人工记录端口连接关系
4.3 故障定位
# 当某端口 Down 时,查看 LLDP 信息判断故障原因
# 如果 LLDP 邻居信息仍然存在(TTL 未超时)→ 可能是 STP 阻塞
# 如果 LLDP 邻居消失 → 物理链路故障
五、CDP 基础
5.1 CDP 简介
CDP 是思科的私有邻居发现协议,功能与 LLDP 类似,但仅思科设备支持。
# 思科 CDP 配置
cdp run # 全局启用
interface GigabitEthernet0/0/1
cdp enable # 接口启用
show cdp neighbors
# 查看 CDP 邻居
5.2 CDP 与 LLDP 共存
华为设备可以同时接收和发送 LLDP 和 CDP 报文:
# 华为交换机接收 CDP 报文(需要配置)
lldp dot1-tlv-support # 使能 CDP 兼容
六、LLDP 安全考虑
| 安全风险 | 说明 | 建议 |
|---|---|---|
| 信息泄露 | LLDP 暴露设备型号/版本/IP | 在接入端口关闭 LLDP |
| 伪造 LLDP | 伪造 LLDP 包误导网管 | 启用 LLDP 认证(部分设备支持) |
| 资源消耗 | 大量 LLDP 报文 | 控制发送间隔 |
# 在接入端口关闭 LLDP(连接终端)
interface GigabitEthernet0/0/1
undo lldp enable
七、总结
| 知识点 | 核心要点 |
|---|---|
| LLDP | IEEE 802.1AB 标准邻居发现协议 |
| 信息格式 | TLV(Type-Length-Value) |
| 应用 | 自动拓扑发现、端口验证、故障定位 |
| CDP | 思科私有,功能类似 |
| 安全 | 接入端口关闭 LLDP 防信息泄露 |
八、思考
- LLDP 报文的目的 MAC 地址是什么?
- LLDP TLV 中的 Chassis ID、Port ID、TTL 分别表示什么?
- LLDP 如何帮助网络管理系统发现拓扑?
- LLDP 和 CDP 的主要区别是什么?
- 为什么建议在连接 PC 的端口上关闭 LLDP?
下篇预告:第125篇《NTP 时间同步——网络设备的时钟校准》——讲解 NTP 的工作原理、分层体系以及配置方法,确保网络设备时间一致。