CentOS7配置LLDP服务

CentOS7源码安装 lldpd 并附查询脚本 源码安装 lldpd 查询交换机端口的 lldpd 脚本 查询交换机端口的 lldpad 脚本 阅读详情
AI摘要

本文对比了lldpad和lldpd两种LLDP工具,详细介绍了它们的安装、配置过程及如何抓取交换机端口信息。lldpd因其更新频繁且支持JSON输出而被推荐。

作者:su-sys

官方链接: https://vincentbernat.github.io/lldpd/usage.html

官方图片:
来源官网

什么是lldpd

LLDP 可以让你准确的知道服务器所连接的交换机端口号。

LLDP是一种工业标准协议,用于取代EDP或CDP等专用链路层协议。LLDP的目标是提供一个inter-vendor兼容机制,向相邻网络设备发送链路层通知。

lldpd是一个LLDP协议的一种实现,给各种Unixes使用。除此之外,它还支持一些专有协议。

lldpd和lldpad的比较

实现交换机端口的抓取,目前我知道的有两种工具,一种是lldpad,另一种是lldpd。

这两个工具做了一下对比,最终选择了lldpd。原因如下:

1.lldpd比较新

lldpad:https://github.com/jrfastab/lldpad

lldpd:https://github.com/vincentbernat/lldpd

通过对比可以看到lldpad最近一次更新,已经是5年前了。而lldpd的最近一次更新在本月。

2.lldpd使用方便

lldpd可以将输出的信息转化为json格式,非常方便使用。

操作前的准备

1、查看网卡类型

lspci |grep -i ether

网卡类型包括:82599ES 10-Gigabit,Broadcom,Intel Corporation I350,Mellanox,Intel X710 for 10GbE,……

其中需要注意的是X710网卡,因为网卡设置问题,会丢弃LLDP包,造成收集不到相关信息,因此需要做相应的配置,配置方式如下:

mount -t debugfs none /sys/kernel/debug

echo “lldp stop” > /sys/kernel/debug/i40e/xxxx:xx:xx:.x/command

umount /sys/kernel/debug

例:
来源BK测试机
测试机器是有一块X710网卡,按照命令分别设置两个端口的lldp stop ,关闭网卡的lldp包处理。

第一种方式:lldpd

1、软件lldpd和lldpcli

yum install lldpd -y

2、默认lldpad服务不需要再配置,默认配置可以满足需求

启动lldpd服务,并设置为开机启动

systemctl start lldpd.service

systemctl enable lldpd.service

3、服务启动后,相关信息可以通过如下命令获取

lldpcli show neighbors
来源BK测试机
将结果处理成json格式,只需要在命令后加上:lldpcli show neighbors -f json
来源BK测试机

4、输出的信息基本已经可以满足日常运维需求

第二种方式:lldpad

1、安装相关服务软件和工具

##软件lldpad和lldptool

yum install lldpad -y

2、默认lldpad服务不需要再配置,默认配置可以满足需求

启动lldpad服务,并设置为开机启动

systemctl start lldpad.service

systemctl enable lldpad.service

3、配置服务器端口用于接收和发送相关LLDP信息,包括端口,主机名,mac地址和ip地址

(1)查看系统本地网卡设备:

##因为网卡设备名称包含eth,eno,em,p1p1 ……,默认都是以e或者p开头

ls /sys/class/net/ |egrep ‘e|p’
来源BK测试机

(2)分别配置每个端口,以eno1为例,如下:

lldptool set-lldp -i eno1 adminStatus=rxtx

lldptool -T -i eno1 -V sysName enableTx=yes

lldptool -T -i eno1 -V portDesc enableTx=yes

lldptool -T -i eno1 -V sysDesc enableTx=yes

lldptool -T -i eno1 -V mngAddr enableTx=yes

##每个端口都配置的原因是防止已经down的端口遗漏掉,新部署服务器可以只配置up状态的接口,具体配置请根据实际需求配置。

4、完成端口配置后,相关信息可以通过如下命令获取

lldptool -t -n -i eno1
来源BK测试机

5、输出的信息基本已经可以满足日常运维需求

6、相关脚本

#!/bin/bash

function ins_lldp(){
#installation lldpad and lldptool
yum install -y lldpad & >/dev/null

#Start service
systemctl start lldpad.service

systemctl enable lldpad.service

#set dev
for dev in `ls /sys/class/net/ |egrep 'e|p'`
do
    echo "enabling lldp for interface: $dev"
    lldptool set-lldp -i $dev adminStatus=rxtx
    lldptool -T -i $dev -V sysName enableTx=yes
    lldptool -T -i $dev -V portDesc enableTx=yes
    lldptool -T -i $dev -V sysDesc enableTx=yes
    lldptool -T -i $dev -V mngAddr enableTx=yes
done
}

#show SW info
function show_info() {
    local se_dev=$1
    local ld_tool="lldptool -t -n -i $se_dev"
    local sw_mac=`$ld_tool |grep 'MAC:' |awk -F ': ' '{print $NF}'`
    local sw_If=`$ld_tool |grep 'Ifname:' |awk -F ': ' '{print $NF}'`
    local sw_name=`$ld_tool |grep 'System Name TLV' -A1 |tail -n1 |sed 's/\t//g'`
    local sw_ip=`$ld_tool |grep 'Management Address TLV' -A1 |tail -n1 |awk -F ': ' '{print $NF}' |sed 's/\t//g'`
    echo "se_dev: $se_dev
sw_name: $sw_name
sw_ip: $sw_ip
sw_mac: $sw_mac
sw_If: $sw_If"
}

function get_info() {
for up_dev in `ip a |grep 'state UP' |awk -F ': ' '{print $2}'`
do
    show_info $up_dev
done
}

function check_lldp() {
if [[ -n `lldptool -p` ]]; then
    echo "lldp install success"
fi
}

function main() {
if [[ $1 == "install" ]]; then
    if [[ -f "/var/lib/lldpad/lldpad.conf" ]]; then
        echo "lldp installed,exit!"
    else
        ins_lldp
        check_lldp
    fi
elif [[ $1 == "get" ]]; then
    get_info
else
    echo "install:install lldp
get:get lldp info"
fi
}
main "$@"

7、执行结果
来源BK测试机

文章引用

lldpad:https://github.com/jrfastab/lldpad
lldpd:https://github.com/vincentbernat/lldpd
官方链接: https://vincentbernat.github.io/lldpd/usage.html

网络:LLDP centos 网口抓包报文 【代码】网络:LLDP centos 网口抓包报文。 阅读详情

相关推荐

CentOS 7 内核升级与无线网卡驱动安装全攻略

本文详细介绍了在CentOS 7上升级内核并安装无线网卡驱动的完整流程。通过启用ELRepo仓库获取新内核,配置GRUB引导加载程序,并解决常见驱动安装问题,帮助用户顺利实现无线网络连接。特别针对内核版本过旧导致的驱动兼容性问题提供了专业解决方案。

weixin_29218963的博客 392

服务器安装配置lldp协议

服务器安装配置lldp协议 1.安装lldp:yum install –y lldpad 2.启动lldpad服务:systemctl start lldpad | 开机启动:systemctl enable lldpad 3.启动网卡脚本: #!/bin/bash for i in ls /sys/class/net/ | grep "em\|eth\|p"; do echo “enabling...

weixin_42383409的博客 1万+

开源监控LibreNMS:全功能网络监控

一、LibreNMS简单介绍 LibreNMS是一个功能齐全的开源网络监控系统,它使用SNMP来获取来自不同设备的数据,LibreNMS支持各种设备如Cisco Linux FreeBSD Juniper Brocade Foundry HP等,它支持多种身份验证机制,并支持双因素身份验证。它有一个可定制的警报系统,可以通过电子邮件,IRC或slack通知网络管理员。 二、LibreNMS特点: 1、它使用这些协议自动发现整个网络:CDP,FDP,LLDP,OSPF,BGP,SNMP和ARP。 2、它有一个

qq_40907977的博客 1万+

LDDP 工具

LLDP是Link Layer Discovery Protocol 链路层发现协议的简称,几乎所有的以太网交换机都内置了这个功能。在我们日常debug过程中,我们需要知道物理网卡喝交换机接口对应的信息的时候,我们就可以在服务器上直接查看,而不需要去机房现场查看。很nice。

m0_60154718的博客 968

深入理解LLDP协议与lldpad工具

本博客文章详细介绍了LLDP协议及其在Linux环境下的lldpad工具的使用方法。文章首先概述了LLDP协议的定义和功能,随后列举了lldpad工具支持的各种TLV以及其在实际网络接口中的应用。接着,文章深入探讨了lldpad的配置选项和操作细节,并对IEEE DCBX协议和边缘虚拟桥接(EVB)的支持进行了阐述。最后,通过命令行选项的介绍,帮助读者更好地理解和运用lldpad工具进行网络配置和管理。

weixin_36464343的博客 837

从涡流求解器到瞬态场:Maxwell 3D里无线充电仿真,选对求解器能省一半计算时间

本文深入探讨了Maxwell 3D在无线充电仿真中涡流求解器与瞬态求解器的选择策略,帮助工程师优化计算效率与精度。通过对比分析两种求解器的适用场景、性能差异及实战技巧,揭示如何根据频率特性、材料非线性和动态过程需求做出精准选择,可节省高达50%的计算时间。特别针对3D线圈模型的无线充电系统设计提供了专业建议。

weixin_26861329的博客 230

【lldptool】LLDP工具|lldptool命令

在eth3上设置一个 管理地址的TLV 以携带IPv4地址192.168.10.10(Set a Management Address TLV on eth3 to carry IPv6 address ::192.168.10.10)#在eth3上设置一个 管理地址的TLV 以携带IPv4地址192.168.10.10(Set a Management Address TLV on eth3 to carry IPv4 address 192.168.10.10)

我的笔记本 1万+

工业级越界行为识别数据集:YOLOv8/v9直接训练的围栏异常检测资源

越界行为识别是智能安防与工业安全中的基础视觉任务,其核心在于对人员、车辆等目标跨越物理边界(如围栏、警戒线、作业禁区)的精准检测与分割。该技术依赖于高质量实例分割标注、归一化坐标格式及场景鲁棒性设计,具备低延迟、高召回、强泛化等工程价值,广泛应用于智慧工地电子围栏、化工厂禁区告警、物流园区越界监控及变电站安全巡检等真实工业场景。本数据集以YOLOv8/v9为基准构建,提供万张实拍+合成图像、像素级Segmentation标注、分层划分与完备元数据,开箱即用,直击工业落地中数据清洗、格式转换与标注不一致等关键

weixin_30080745的博客 316

lldpad

[root@localhost ]# systemctl status lldpad lldpad.service - Link Layer Discovery Protocol Agent Daemon. Loaded: loaded (/usr/lib/systemd/system/lldpad.service; enabled) Active: failed (Result: e...

jiaoyangzheng的博客 1404

ANSYS Fluent 2023R2实战:用欧拉多相流模型搞定流化床模拟(附详细参数避坑)

本文详细解析了ANSYS Fluent 2023R2中欧拉多相流模型在流化床模拟中的应用,包括模型选择、材料属性设置、相间作用力配置及初始化技巧。特别针对高颗粒浓度工况提供参数优化方案,帮助工程师提升模拟精度与效率,适用于化工、能源等领域的流化床反应器设计。

weixin_30938149的博客 268

XGBoost调参新姿势:Bayesian优化实战指南(附完整代码)

本文详细介绍了如何使用Bayesian优化方法高效调优XGBoost模型参数。通过解析Bayesian优化核心原理和XGBoost关键参数,提供完整的实战代码示例,帮助读者掌握这一智能调参技术,显著提升模型性能。文章特别适合机器学习工程师和数据科学家阅读。

weixin_42536058的博客 366

centos开启lldp

1.正常安装lldpad的rpm包 rpm -ivh libconfig-1.4.9-5.el7.x86_64.rpm rpm -ivh lldpad-0.9.46-10.el7.x86_64.rpm rpm -ivh lldpad-devel-0.9.46-10.el7.x86_64.rpm 2.开启lldp服务 lldpad -d lldptool set-lldp -i $i a...

派@@森先生的博客 3467

2026年数学建模国赛B题无线电干扰源的快速自动定位与清除 论文详细解析

数学建模竞赛论文无线电干扰源的快速自动定位与清除2026 年高教社杯全国大学生数学建模竞赛 B 题完整求解论文交会定位、极大极小测点优化、自适应多频道搜索与定向源恢复的统一建模模型、算法、代码、图表与验证一体化交付本文研究圆形目标区域中多个未知无线电干扰源的快速检测、定位与清除问题,建立了由误差楔交会模型、角度观测信息模型、分层勘测模型、鲁棒射线交会模型和定向覆盖反馈模型组成的统一求解框架。模型同时覆盖题目中的四个子问题:多测向射线形成的多边形定位区域及直径、第二个测点的极大极小优选、全向源自动搜索清除策略

YOLO 357

centos配置lldp与交换机建立邻居关系

centos 上开启lldp的程序为lldpad,ubuntu上为lldpd 首先安装运行 #yum install lldpad #lldpad -d 在所有接口开启 for i in `ls /sys/class/net/ | grep "em\|eth"` ; do echo "enabling lldp for interface: $i" ;

achejq的专栏 1万+

AD9914数字斜坡模式使用

类似的,如果DRG输出处于负斜率斜坡中间,DRCTL引脚由逻辑0变为逻辑1,那么DRG会立即切换成正斜率参数,恢复在两个限值之间振荡输出。当两个非驻留位同时设置时,每次DRG输出达到编程设定的上限值或下限值后(假定DRG过输出使能位(0x01[13])已设置),DROVER信号会产生一个正脉冲(两个DDS时钟周期)。不过,在非驻留操作中,DRG输出不一定保持在上下限值。例如,设置数字斜坡非驻留高位,则当达到上限值时,DRG会自动(立即)跳到下限值(这一过程并非以斜坡方式返回下限值,而是直接跳至下限值)。

wangjie36的博客 3864

github创建账号第一步始终出错

github创建账号总结:第一次注册GitHub,填好用户名邮箱密码后进入下一步就卡在哪里,上面还提示Unable to verify your captcha response等,进入网址的解决办法以及下载其他的浏览器也无法解决,用手机浏览器抱着试一试的心态竟然成功了,分享给大家。手机下载谷歌浏览器,进入GitHub正常注册,能向下继续,邮箱验证完以后再用电脑登陆就ok啦

计算机毕业论文源码,学生个人网页制作html源码。贴近用户做网络推广和互联网优化。 4376

lldpd新手入门:从安装到配置的完整教程

lldpd是一款实现IEEE 802.1ab标准的链路层发现协议(LLDP)工具,它能帮助网络设备自动发现并交换相邻设备信息。本教程将带你从零基础开始,完成lldpd的安装、基础配置与日常使用,让你快速掌握这一网络管理利器。 ## 一、认识lldpd:为什么它是网络管理的必备工具? 在现代网络中,设备间的自动发现与信息交换至关重要。lldpd作为开源LLDP协议的实现,能够让交换机、路由器、服

gitblog_00935的博客 430

PVE虚拟机运行不流畅,出现卡顿。

🏆本文收录于《优快云问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

**My Coding Family** 3063

centos7配置 console口_探宝之交换机上行口查询

第1章探宝之路1.1宝藏是什么某客户机房有台24网口千兆以太网交换机,交换机可console口管理但无任何配置,交换机23个网口接入23台普通PC(普通PC自动获取IP地址)、1个网口作为上联口,24个接口都是点亮正常状态。如何挖取“交换机上行口”的宝藏呢?1.2探宝之路宝藏就在那里,寻找宝藏的路径却有很多条,以下是我绘制的藏宝图,各位看好探宝了。1、与客户沟通确认,PC设置地址的方式,静态配置o...

weixin_39982236的博客 617

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

CentOS 7上部署LibreNMS:开源网络监控平台完整搭建指南

在运维场景中,网络设备数量增长后,高效、自动化的监控方案成为刚需。开源监控系统LibreNMS基于PHP与RRDtool,通过SNMP协议自动发现设备并采集CPU、内存、端口流量等指标,同时提供丰富的图表与告警功能,尤其适合网络设备与基础服务器的统一纳管。相比Zabbix、Cacti等传统工具,LibreNMS具备更强的设备自动发现能力和开箱即用的图形展示,帮助企业快速构建可视化监控体系。本文围绕CentOS 7环境,详细梳理了部署LibreNMS的关键环节,包括PHP 8.2与MariaDB的版本升级、S

weixin_34332905的博客 473

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

lldp 嵌入式linux,Linux 3.10 kernel bridge 转发逻辑

前分析过linux kernel 2.6.32的bridge转发逻辑,下面分析一下linux kernel 3.10的bridge转发逻辑。这样正是CentOS 5和CentOS 7对应的内核。3.10 kernel中bridge逻辑的最大改变就是增加了vlan处理逻辑以及brdige入口函数的设置。1. netdev_rx_handler_register在分析之前首先要介绍一个重要函数:net...

weixin_39935654的博客 491

Linux之(27)networkctl实战:从基础查询到高级网络管理

本文详细介绍了Linux系统中networkctl工具的基础查询与高级网络管理技巧。作为systemd-networkd服务的命令行前端,networkctl提供结构化网络状态展示、设备生命周期管理和深度诊断功能,适用于Ubuntu、CentOS等现代Linux发行版。通过实战案例解析,帮助管理员高效排查网络故障并优化性能。

u8v9w0x1y的博客 154

无网络安装CentOS7及Oracle11g【不定期更新】

我是菜鸟,很笨很笨,从未接触过Linux,某些命令我只知道用,不知道啥意思,也是第一次写教程,不能算是教程吧,应该算是我掉过的坑。记录下学习的过程。全程无图,也不太会用这个编辑器。各位大神看了还请高抬贵手,轻拍。 注意U盘格式!!! Fat32 本教程以戴尔PowerEdge R720为例。装系统过程可先安装中文版,熟练之后安装英文版。由于各翻译不同及中文乱码问题,建议生产环境以英文版为主。 在实...

Chen729485450的博客 1258

在Linux上学习跳舞

1.httpd Httpd(即HTTP Daemon,超文本传输协议守护程序的简称)是一款运行于网页服务器后台,等待传入服务器请求的软件。HTTP守护程序能自动回应服务器请求,并使用HTTP协议传送超文本及多媒体内容。 2.Daemon 在一个多任务的电脑操作系统中,守护进程(英语:daemon,/ˈdiːmən/或/ˈdeɪmən/)是一种在后台执行的电脑程序。此类程序会被以进程的形式初始化。守护进程程序的名称通常以字母“d”结尾:例如,syslogd就是指管理系统日志的守护进程。 ...

https://tiaoc.github.io/ 774

linux bond mac 地址都是0,Centos系统配置bond0

版权声明:本文为博主原创文章,支持原创,转载请附上原文出处链接和本声明。1.查看网卡信息:ip a2.修改网卡文件cd /etc/sysconfig/network-scripts/修改网卡文件ifcfg-ens32(根据自己实际的网卡名字) ,保证以下内容正确:DEVICE=ens32(根据自己实际的网卡名字)TYPE=EthernetBOOTPROTO=noneONBOOT=yesMASTER...

weixin_31293841的博客 999
下一篇: EXT4与XFS文件系统对I/O的影响
su_sys
博客等级 码龄8年 37粉丝 6原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值