服务器实现链路层发现协议
概述:
链路层发现协议(Link Layer Discovery Protocol,LLDP)是一种由 IEEE 802.1AB 标准定义的链路层协议,旨在帮助局域网(LAN)中的设备自动发现彼此,并交换各自的相关信息。LLDP 工作在数据链路层,无需网络层协议的支持,因此可以在各种类型的网络设备之间使用。
工作机制:
发送:支持 LLDP 的设备会周期性地在每个启用 LLDP 的端口上发送 LLDP 报文,默认发送间隔通常为 30 秒。这些报文以组播方式发送,目的 MAC 地址是01:80:C2:00:00:0E。
接收:相邻设备在接收到 LLDP 报文后,会对其进行解析,并将提取的信息存储在本地的 LLDP 数据库中。设备可以根据这些信息了解相邻设备的情况。
更新与老化:设备会定期更新自己的 LLDP 数据库。如果在一定时间内(通常是发送间隔的 3 倍,即 90 秒)没有收到某个邻居的 LLDP 报文,设备会认为该邻居已离线,并从数据库中删除相应的信息。
实现:
LLDP 的实现主要有 lldpd 和 lldpad(注意:lldpd 与 lldpad 是两款不同的软件)。
1.安装lldpad服务
yum install -y lldpad
2.启动并设置开机自启
systemctl enable lldpad --now
3.启动网卡脚本
#!/bin/bash
for i in $(ls /sys/class/net/ | grep -E "ens|em|eth|p"); do # 设置需要配置的网卡
echo "enabling lldp for interface: $i";
lldptool set-lldp -i $i adminStatus=rxtx;
lldptool -T -i $i -V sysName enableTx=yes;
lldptool -T -i $i -V portDesc enableTx=yes ;
lldptool -T -i $i -V sysDesc enableTx=yes;
lldptool -T -i $i -V sysCap enableTx=yes;
lldptool -T -i em1 -V mngAddr ipv4='hostname -I';
lldptool -T -i $i -V mngAddr enableTx=yes;
done
4.查看接口信息
lldptool -t -n -i ens33 # 查看所有属性
lldptool -t -n -i ens33 -V portDesc # 只查看端口属性
注:需要在交换机上开启lldp协议
命令解释:
lldptool set-lldp -i $i adminStatus=rxtx # 配置LLDP模式
TxRx:既发送也接收LLDP报文。
Tx:只发送不接收LLDP报文。
Rx:只接收不发送LLDP报文。
Disable:既不发送也不接收LLDP报文。
lldptool -T -i $i -V sysName enableTx=yes; # 启用系统名称标识符
lldptool -T -i $i -V portDesc enableTx=yes ; # 启用端口描述标识符
lldptool -T -i $i -V sysDesc enableTx=yes; # 启用系统描述标识符
TLV:(Type/Length/Value)
portDesc :Port Description TLV
sysName:System Name TLV
sysDesc :System Description TLV
网卡 LLDP 功能
有的网卡已经实现了 LLDP 功能并默认开启状态,相关命令如下:
ethtool --show-priv-flags eth0
ethtool --set-priv-flags eth0 lldp on
ethtool --set-priv-flags eth0 lldp off
lldpd 有关 MAC 地址抖动的问题:
https://packetpushers.net/blog/linux-bonding-lldp-and-mac-flapping/
lldpcli
configure system bond-slave-src-mac-type real
systemctl restart lldpd
echo "configure system bond-slave-src-mac-type real" > /etc/lldpd.d/bond_real.conf
systemctl restart lldpd
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)