当前位置:首页 > Linux > 正文

Linux如何查看MAC地址?

在Linux中查看MAC地址有两种常用方法: ,1. 使用 ifconfig 命令,在对应网卡信息中查找 ether 字段 ,2. 使用 ip link show 命令,在网卡详情中查看 link/ether 后的地址 , MAC地址通常以六组十六进制数表示(如 00:0a:95:9d:68:16)

Linux系统中,查看MAC地址(即网卡的物理地址)是网络配置和故障排查的常见操作,以下是多种可靠的方法,适用于不同发行版(如Ubuntu、CentOS、Debian等),所有命令均需在终端中执行:


方法1:使用 ip link 命令(推荐)

步骤:

Linux如何查看MAC地址?  第1张

ip link show
  • 输出示例
    1: lo: <LOOPBACK> ... 
    2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> ... link/ether 08:00:27:5a:3b:8c brd ff:ff:ff:ff:ff:ff
  • 关键说明
    • 找到网卡名称(如 enp0s3eth0),其下一行的 link/ether 后即为MAC地址(如 08:00:27:5a:3b:8c)。
    • 若需查看特定网卡(如 eth0):
      ip link show eth0

方法2:使用 ifconfig 命令(传统方式)

步骤:

ifconfig
  • 输出示例
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  ...
          ether 08:00:27:5a:3b:8c  txqueuelen 1000  (Ethernet)
  • 关键说明
    • 在网卡信息中查找 ether 字段(如 08:00:27:5a:3b:8c)。
    • 若未安装,可通过以下命令安装:
      • Ubuntu/Debian: sudo apt install net-tools
      • CentOS/RHEL: sudo yum install net-tools

方法3:通过系统文件直接读取

步骤:

cat /sys/class/net/网卡名/address
  • 操作示例(查看 eth0 的MAC地址):
    cat /sys/class/net/eth0/address
  • 输出:直接显示MAC地址(如 08:00:27:5a:3b:8c)。

方法4:使用 ethtool 命令(查询网卡详细信息)

步骤:

sudo ethtool -P eth0
  • 输出示例Permanent address: 08:00:27:5a:3b:8c
  • 说明:需先安装 ethtool(安装命令同 ifconfig)。

方法5:结合 dmesg 查看启动日志

步骤:

dmesg | grep -i mac
  • 输出示例eth0: MAC: 08:00:27:5a:3b:8c
  • 适用场景:快速定位系统启动时识别的网卡MAC地址。

注意事项

  1. 权限问题:部分命令需 sudo 权限(如 ethtool)。
  2. 临时与永久地址
    • ip linkifconfig 显示当前使用的MAC地址(可被临时修改)。
    • /sys/class/net/.../addressethtool -P 显示硬件固化的永久地址。
  3. 多网卡场景:使用 ip linkls /sys/class/net/ 先确认网卡名称。
  4. 安全提示:MAC地址是网络设备的唯一标识,避免随意公开。

总结建议

  • 推荐方法:优先使用 ip link(无需安装,信息准确)。
  • 快速查看:直接读取 /sys/class/net/eth0/address 文件。
  • 兼容性:老旧系统可使用 ifconfig

引用说明基于Linux内核文档(kernel.org/doc)及iproute2net-tools等官方工具手册,确保信息的准确性与权威性。

0