You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过编程获取网络中多厂商路由器设备列表?

多厂商网络路由器设备发现方案

协议选择优先级

你的环境是多厂商路由器,LLDP是首选——它是IEEE标准化的跨厂商协议,几乎所有主流厂商(思科、华为、H3C、锐捷等)的设备都原生支持,兼容性远高于私有协议。

你提到的其他协议适用范围(帮你理清困惑)

  • CDP:思科私有协议,仅能发现思科系设备,多厂商场景不适用
  • MNDP:MikroTik私有协议,仅对该品牌设备有效
  • IRDP:仅用于发现默认网关,无法获取全量路由器列表,不是通用设备发现协议

编程实现的请求逻辑

LLDP工作在数据链路层,需要发送**LLDPDU(LLDP数据单元)**广播帧,具体要求:

  1. 目的MAC地址固定为01:80:C2:00:00:0E(LLDP组播地址)
  2. 以太网类型字段设为0x88CC
  3. 数据部分需包含基础TLV结构:
    • Chassis ID TLV:设备唯一标识(通常是MAC地址)
    • Port ID TLV:发送端口标识
    • Time to Live TLV:信息有效期(比如120秒)
  4. 发送后监听同一广播域内的响应,解析响应中的TLV字段(如System Name、System Description、Management Address)即可提取路由器信息

编程注意点

  • 必须使用原始套接字操作,因为LLDP帧属于数据链路层,普通TCP/UDP套接字无法处理
  • 部分厂商会扩展LLDP的自定义TLV,解析时需兼容这些非标准字段
  • 跨VLAN场景下,需确保LLDP帧能通过Trunk端口转发,或在每个VLAN单独发送请求

内容的提问来源于stack exchange,提问作者itsesc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 21:20:23