【服务器】关于lspci指令查看网卡数量的小坑

这篇具有很好参考价值的文章主要介绍了【服务器】关于lspci指令查看网卡数量的小坑。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

准备用lspci指令查看服务器上有多少个网卡,但是由于对lspci的输出结果不了解,导致得到了错误的结果,折腾了好几周 T_T

一、什么是lspci指令?如何使用?

1、lspci指令用来查看当前系统连接的所有PCI/PCIe设备

2、使用lspci命令最简单的方式就是直接输入lspci,然后按下回车键即可。这时候会列出当前系统中所有PCI设备的相关信息。如下图:
【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

3、参数选项
除了基本用法以外,lspci命令还支持多种参数选项,可以更方便地查看和筛选设备信息。下面是常用的参数选项:
–v:显示详细信息
–s:指定设备的PCI地址
–n:显示设备的PCI ID
–vv:显示更加详细的信息

4、常见应用场景

(1)检测PCI设备是否正常工作 在Linux系统中,如果PCI设备无法正常工作linux lspci命令详解,就可以使用lspci命令来检测该设备是否被识别。如果lspci命令能够列出该设备的相关信息,则说明该设备已经被识别并且正常工作。
(2)查看硬件配置信息lspci命令可以列出所有PCI总线上连接的设备信息,这些信息对于了解硬件配置非常有帮助。例如,在安装Linux系统时,需要了解计算机上的硬件配置,以便正确地安装和配置相关驱动程序。
(3)查找特定类型的设备 通过使用lspci命令的参数选项,可以查找特定类型的设备。例如,使用-l参数可以列出所有网络相关的设备,而使用-v参数则可以显示更加详细的信息。

二、lspci输出的一些解释
首先很简单,看看不加参数直接调用lspci命令的输出结果

【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

首先让人不好理解的地方就是最左边的一系列编号类似00:19.0这些,毕竟右边的设备名字供应商什么的还是很容易看懂的。那么最左边的这些编号代表什么意思呢?

PCI或者说PCIe里,每个设备有三个编号:(即BDF地址)

总线编号(Bus Number)
设备编号(Device Number)
功能编号(Function Number)

那么对应上面的00:19.0来说:这个设备的BusNumber是00,DeviceNumber是19,FunctionNumber是0,需要说明的是这三个都是16进制表示,有些配置里需要填十进制数的,需要做下转换。

其实呢,在linux里还有一个编号,叫做DomainNumber,不过上面的输出中没有,因为都是0,所以就忽略了,理论上,一个Segment可以有256Bus,每个Bus可以有32Device,每个Device可以有8Function,在一些场景下,比如设备特别多,是会有多个Domain的,在硬件层面对应多个PCI Segment,在这种情况下,或者使用lspci -D命令,输出就会带上DomainNumber,比如我们一台服务器的输出:

【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

在前面多了一列,多出来的就是DomainNumber了。

明白了前面的编号之后,还有一个疑问,就是lspci命令是怎么能知道00:19.0这个设备就是个Ethernet controller,并且是Intel Corporation Ethernet Connection (3) I218-LM (rev 03)的呢?

这时可以使用lspci -nn命令,附加上原始的信息:

【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

可以看到和上面不同的是多了两个方括号括起来的编号,其中前面的[0200]表示了当前设备的DeviceClass,也就是设备类型,而后面的[8086:15a2]代表的就是设备的VendorIDDeviceIDlspci命令会默认尝试读取/usr/share/hwdata/pci.ids.gz/usr/share/hwdata/pci.ids文件,利用DeviceClassVendorID:DeviceID去匹配相应的设备,这个设备清单是由https://pci-ids.ucw.cz/维护的,我们也可以直接去网站上去查询。

三,使用lspci查看服务器网卡数量的坑

在服务器使用lspci指令输出结果如下:
【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

也可以使用 lspci -v | grep -i ethernet过滤网卡相关的信息:
【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

我之前犯的错误是以为输出为4行表示有4个网卡,但是事实并不是这样的。。。

该输出表示该服务器使用的是Intel I350网卡,搜索发现该网卡是一个四端口的以太网控制器
【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

那么,输出的4个结果如何解释呢?
lspci输出中确实显示了4个相似的条目,但这些实际上是同一个网卡的不同端口

根据前面的数字也可以判断出这一点:

11: 表示总线号(Bus Number) 00: 表示设备号(Device Number) .0, .1, .2, .3 表示功能号(Function Number)

当多个条目具有相同的总线号和设备号时,这通常意味着这些条目是同一个物理设备的不同功能部分。在上述输出中,所有四个以太网控制器都位于总线号为11、设备号为00的位置,仅功能号不同,表明这是一个多端口网卡的不同接口。

综上,这是最近碰到的一个令人头疼的问题,对于不会用linux的人来说,不熟悉掌握并看懂指令的输出结果是一个致命的问题,可能导致花费大量的时间陷入怪圈。

ps:ip a指令输出结果:
【服务器】关于lspci指令查看网卡数量的小坑,服务器技术,服务器,运维

参考文章:
Linux指令大全
深入了解 Linux 网卡和网口:揭秘网络接口的奥秘
lspci命令输出的一些解释文章来源地址https://www.toymoban.com/news/detail-823778.html

到了这里,关于【服务器】关于lspci指令查看网卡数量的小坑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【华为OD统一考试B卷 | 200分】服务器广播、需要广播的服务器数量( C++ Java JavaScript )

    华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方已经将的 2022/0223Q(1/2/3/4)统一修改为OD统一考试(A卷)和OD统一考试(B卷)。 你收到的链接上面会标注A卷还是B卷。请注意:根据反馈,目前大部分收到的都是B卷。但是仍有概率抽到A卷。 A卷对应2023的新题库(2022Q4 2

    2024年02月10日
    浏览(24)
  • 【华为OD机试真题 Java语言】306、服务器广播、需要广播的服务器数量 | 机试真题+思路参考+代码分析

    🍂个人博客首页: KJ.JK   🍂专栏介绍: 华为OD机试真题汇总,定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用Java语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习 🎃题目描述

    2024年02月08日
    浏览(19)
  • 银河麒麟服务器操作系统设置网卡自启动

    操作环境:虚拟机 系统版本:Kylin-Server-10-SP2-x86-Release-Build09-20210524 问题现象 新安装的银河麒麟服务器操作系统,开机网卡不自启动,需要手动点击一下,才能启动网卡 现象图如下所示 解决方案 注:网卡名需要提前确认好,可以点击网络图标查看自己使用的是哪块网卡,以

    2024年02月06日
    浏览(59)
  • ubuntu 22.04 服务器网卡无IP地址

    ssh连接服务器连接不上,提示如下; 连接显示器 ,ip addr ls 命令查看IP地址,有网卡但没有IP地址 用于通过 DHCP 协议获取网络配置信息并为名为 enp10s0 的网络接口分配 IP 地址,enp10s0替换为本机网络接口名称 但是一旦重启 ,又没了IP地址 。目前为止暂未找到解决办法 偶然的机

    2024年02月22日
    浏览(25)
  • 银河麒麟V10服务器操作系统网卡自启动配置

    背景:公司因为项目变更,使用国产服务器。因为第一次使用,在其中遇到的问题,与诸君分享。 问题现象:         服务器重启开机网卡不自动启动问题。需要手动点击一下,才能启动网卡。 现象图:   解决方案:  修改网卡配置文件,设置为开机自启动就可以解决

    2024年03月16日
    浏览(47)
  • ubuntu网卡驱动安装流程、手机为服务器提供临时网络

    服务器重装系统之后一开始是没有网卡的,也就没有网络。使用 ip a 发现,如图只有图片上面的 lo ,而没有 enp12s0 这时候就需要下载网卡才能连上网,运行网卡的时候有需要在线安装make。那么死穴就这样产生了:因为没网所以安装网卡,网卡安装过程中需要网。那么接下来

    2024年02月08日
    浏览(21)
  • ubuntu22.04配置双网卡双静态ip不通网段访问服务器的相同服务

    ubuntu22.04配置双网卡双静态ip不通网段访问服务器的相同服务 技术博客 http://idea.coderyj.com/ 1.需求 南方电网网段(假如)是 192.168.3.1的网段 机器人服务器在隧道ip是 172.16.1.1网段 要求这2个网段都能访问到服务器上的服务 2.解决方案 服务器上配置双网卡 双ip 以ubuntu22.04为例 vim /e

    2024年02月12日
    浏览(24)
  • 【云服务器 ECS 实战】专有网络 VPC、弹性网卡的概述与配置

    阿里云在早期使用的是一种传统的网络模式,将所有的 ECS 云服务直接建立在传统网络层之上,这也就是 传统经典网络 模式,这种模式并未实现安全性隔离,存在一定的安全性隐患。于是出现了最新的 专有网络VPC 模式,在传统基础上加入了一层逻辑隔离的私有网络,不仅可

    2024年02月03日
    浏览(18)
  • 交换机端口灯常亮 端口up状态 服务器设置ip交换机获取不到服务器网卡mac地址 不能通信

    深信服防火墙 8.0.75 AF-2000-FH2130B-SC S6520X-24ST-SI交换机 version 7.1.070, Release 6530P02 交换机一个vlan下有3台服务器,连接端口2、3、4,2和3连接的服务器正常,交换机3端口灯常亮 端口up状态 服务器自动获取不了地址,改为手动设置ip后,交换机查看arp表,获取不到服务器网卡mac地址

    2024年02月02日
    浏览(25)
  • Ubuntu 23.10 服务器版本 ifconfig 查不到网卡 ip(已解决)

    服务器:ubuntu 23.10 经常会遇到虚拟机添加仅主机网卡后,通过 ifconfig 无法获取其网卡 ip 修改网卡配置文件: 如图新增网卡信息: 最后重启服务器即可。

    2024年01月23日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包