百度
360搜索
搜狗搜索

linux如何获取mac地址详细介绍

在 Linux 系统中,获取 MAC 地址(网卡物理地址)的方法有多种,以下是常用的几种方式:

方法 1:使用 ip 命令(推荐,现代 Linux 通用)

ip 是新一代网络配置工具,功能强大且无需额外安装(系统默认自带)。

命令格式:

bash

  show 接口名称

示例:

  • 查看所有接口的 MAC 地址
    bash
      show

    输出中 ether 后面的字符串即为 MAC 地址,例如:
    plaintext

    2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000

    link/ether **00:1a:2b:3c:4d:5e** brd ff:ff:ff:ff:ff:ff

  • 查看指定接口(如 eth0enp0s3)的 MAC 地址
    bash
      show dev eth0

    show dev eth0 ether

方法 2:使用 ifconfig 命令(经典工具,需安装 net-tools 包)

ifconfig 是传统网络工具,部分新系统(如 Ubuntu 20.04+)可能未默认安装,需手动安装。

安装命令(以 Debian/Ubuntu 为例):

bash

   net-tools

使用方法:

  • 查看所有接口的 MAC 地址
    bash
     

    输出中 HWaddrether 后面的字符串即为 MAC 地址,例如:
    plaintext

    enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

    ether **00:1a:2b:3c:4d:5e** txqueuelen 1000 (Ethernet)

  • 查看指定接口(如 eth0)的 MAC 地址
    bash
     eth0

方法 3:通过系统文件直接读取(适用于所有 Linux)

Linux 将网卡信息存储在 /sys/class/net/ 目录下,可直接读取 address 文件。

命令格式:

bash

 /sys/class/net/接口名称/address

示例:

  • 先查看所有接口名称(确定目标接口,如 enp3s0):bash
     /sys/class/net/

  • 读取指定接口的 MAC 地址:bash
     /sys/class/net/enp3s0/address

方法 4:使用 nmcli 命令(适用于 NetworkManager 管理的系统)

若系统使用 NetworkManager(如桌面版 Linux),可通过 nmcli 查看。

命令格式:

bash

nmcli dev show 接口名称

示例:

  • 查看所有设备的详细信息(包含 MAC 地址)
    bash
    nmcli dev show

    输出中 GENERAL.HWADDR 即为 MAC 地址。

  • 查看指定接口(如 enp3s0)的 MAC 地址
    bash
    nmcli dev show dev enp3s0   

注意事项

  1. 接口名称
    现代 Linux 的接口名称通常为 enpXsY(有线)或 wlpXsY(无线),而非传统的 eth0/wlan0,可通过 ip linkls /sys/class/net/ 确认实际名称。

  2. 权限
    上述命令均无需管理员权限(sudo),普通用户即可读取 MAC 地址(公开信息)。

  3. 过滤输出
    若只需提取 MAC 地址,可结合 grepawk 简化输出,例如:
    bash
      show dev enp3s0   

    912ip link show dev enp3s0 |

根据需求选择合适的方法即可,推荐优先使用 ip link 或系统文件读取方式,兼容性和通用性最佳。

阅读更多 >>>  云服务器怎么配置linux服务器配置

网站数据信息

"linux如何获取mac地址"浏览人数已经达到19次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux如何获取mac地址的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!