如何查看Linux系统的MAC地址?

在Linux系统中,MAC地址(Media Access Control Address)是网卡的物理地址,用于在局域网中唯一标识网络接口设备,查看Linux系统的MAC地址有多种方法,可通过命令行工具或系统文件直接获取,以下是详细操作步骤及不同方法的对比分析。

如何查看linux的mac

使用ifconfig命令查看MAC地址

ifconfig是传统的网络配置工具,可显示或配置网络接口信息,若系统中未安装,需先根据发行版安装(如Debian/Ubuntu使用sudo apt install net-tools,CentOS/RHEL使用sudo yum install net-tools)。

操作步骤

  1. 打开终端,输入以下命令列出所有网络接口:

    ifconfig

    输出中会显示eth0(有线网卡)、wlan0(无线网卡)等接口信息。

  2. 定位目标接口,在HWaddr(部分系统显示为ether)字段后即为MAC地址,

    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
          ether 00:1a:2b:3c:4d:5e  txqueuelen 1000  (Ethernet)

    其中00:1a:2b:3c:4d:5e即为该网卡的MAC地址。

使用ip命令查看MAC地址

ip是现代Linux系统推荐的网络配置工具,功能比ifconfig更全面,默认已安装在大多数发行版中。

操作步骤

  1. 输入以下命令显示所有网络接口的详细信息:

    ip addr show

    或简化为:

    如何查看linux的mac

    ip a
  2. 在输出中找到目标接口,link/ether字段后即为MAC地址,

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
        link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff

    若需仅查看MAC地址,可结合grep过滤:

    ip a | grep -E "link/ether|ether" | awk '{print $2}'

读取/sys文件系统查看MAC地址

Linux内核通过/sys/class/net/目录暴露网络接口信息,直接读取对应接口的address文件可获取MAC地址,适合脚本编程或无命令行工具的环境。

操作步骤

  1. 列出所有网络接口:

    ls /sys/class/net/
  2. 读取目标接口的address文件,例如eth0

    cat /sys/class/net/eth0/address

    输出为小写无冒号格式(如001a2b3c4d5e),可通过sed添加冒号:

    cat /sys/class/net/eth0/address | sed 's/(..)/1:/g; s/:$//'

使用nmcli工具查看MAC地址

nmcli是NetworkManager的命令行工具,适用于使用NetworkManager管理网络的系统(如Ubuntu、Fedora默认启用)。

操作步骤

  1. 查看所有网络设备的详细信息:

    如何查看linux的mac

    nmcli device show
  2. 在输出中找到目标设备(如eth0),GENERAL.MAC-ADDRESS字段即为MAC地址,

    GENERAL.DEVICE:                         eth0
    GENERAL.TYPE:                           ethernet
    GENERAL.MAC-ADDRESS:                    00:1a:2b:3c:4d:5e

使用ethtool工具查看MAC地址

ethtool可查看和配置网卡参数,需先安装(sudo apt install ethtoolsudo yum install ethtool)。

操作步骤

  1. 查看网卡的永久MAC地址(避免虚拟接口临时MAC的干扰):
    ethtool -P eth0

    输出示例:

    Permanent address: 00:1a:2b:3c:4d:5e

不同方法对比

方法 核心命令 优点 缺点 适用场景
ifconfig ifconfig 直观,兼容旧系统 逐渐被淘汰,需额外安装 传统Linux系统
ip ip addr show 现代系统默认,功能全面 输出信息较多,需过滤 通用Linux系统
/sys文件系统 cat /sys/class/net/... 无需工具,适合脚本 输出格式需处理 自动化脚本、无命令行环境
nmcli nmcli device show 结合NetworkManager管理 依赖NetworkManager服务 NetworkManager管理的系统
ethtool ethtool -P 可查看永久MAC地址 需安装工具 需区分临时/永久MAC场景

注意事项

  1. 虚拟接口:Docker、虚拟机等创建的虚拟接口(如docker0veth123)也会有MAC地址,可通过ip addr查看。
  2. 多网卡场景:若需快速查看所有网卡MAC地址,可使用:
    ip a | grep "link/ether" | awk '{print $2, $7}'
  3. MAC地址格式:标准MAC地址为6组2位十六进制数,组间用冒号或连字符分隔,大小写不敏感。

相关问答FAQs

问题1:为什么同一个网卡在ifconfigip addr中显示的MAC地址格式不同?
解答:ifconfig默认显示为大写带冒号格式(如00:1A:2B:3C:4D:5E),而ip addr默认显示为小写带冒号格式(如00:1a:2b:3c:4d:5e),本质是同一地址,仅格式差异,可通过tr '[:lower:]' '[:upper:]'转换为大写,或sed 's/://g'去除冒号。

问题2:如何查看所有网卡的MAC地址(包括虚拟网卡)?
解答:使用ip addr show命令可显示所有接口(物理和虚拟)的MAC地址,或通过遍历/sys/class/net/目录获取:

ls /sys/class/net/ | while read interface; do
  echo "$interface: $(cat /sys/class/net/$interface/address)"
done

此命令会列出所有接口及其对应的MAC地址,格式为接口名: MAC地址

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/23848.html

(0)
酷番叔酷番叔
上一篇 2025年9月16日 08:57
下一篇 2025年9月16日 09:09

相关推荐

  • Linux系统装机如何操作?新手必学的详细步骤有哪些?

    Linux系统装机是许多开发者和爱好者必备的技能,整个过程从准备工作到系统配置可分为多个步骤,本文将详细介绍Linux系统的完整装机流程,帮助用户顺利完成安装,装机准备工作在开始安装前,需做好充分的准备工作,确保装机过程顺利:选择Linux发行版:根据需求选择合适的发行版,新手推荐Ubuntu(桌面环境友好,社……

    2025年10月8日
    19900
  • 如何快速掌握Linux下的C语言开发?

    环境准备:安装必备工具安装GCC编译器GCC是Linux默认的C语言编译器,通过终端安装:sudo apt update && sudo apt install gcc # Debian/Ubuntusudo dnf install gcc # Fedora/CentOS验证安装:gcc –v……

    2025年7月24日
    18100
  • 为什么这个技巧能引爆流量?

    在Linux系统中,将PNG格式的位图转换为EPS(Encapsulated PostScript)格式是常见的需求,尤其在学术出版或LaTeX文档排版中,以下是几种可靠、高效且易于操作的方法,均基于开源工具,符合Linux社区的最佳实践:步骤:安装ImageMagick(若未安装):sudo apt inst……

    2025年7月20日
    17000
  • 为什么必须卸载分区?

    在Linux系统中修复分区是系统管理中的关键操作,需谨慎执行,以下是详细步骤和工具指南,强调数据安全优先原则:修复前的关键准备备份数据立即使用dd或rsync备份受损分区(如:dd if=/dev/sda1 of=backup.img),若系统无法启动,通过Live USB(Ubuntu、GParted Liv……

    2025年7月28日
    16400
  • Linux下如何彻底卸载OpenOffice并清理所有残留文件?

    在Linux系统中,卸载OpenOffice通常涉及使用包管理器命令移除软件包、清理配置文件及残留数据,具体步骤会因Linux发行版的不同(如基于Debian/Ubuntu的系统或基于Red Hat/CentOS的系统)而有所差异,以下是详细的卸载流程及注意事项,帮助用户彻底移除OpenOffice及相关组件……

    2025年8月30日
    15600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信