查找你的 Raspberry Pi 的 MAC 地址

Jinku Hu 2023年1月30日 2022年5月18日
  1. 在 Raspberry Pi OS 上使用 ip 命令检索 MAC 地址
  2. 在 Raspberry Pi OS 上使用 ifconfig 命令检索 MAC 地址
查找你的 Raspberry Pi 的 MAC 地址

本文将介绍几种检索树莓派设备 MAC 地址的方法。

在 Raspberry Pi OS 上使用 ip 命令检索 MAC 地址

在 Raspberry Pi OS 上使用 ip 命令,你可以检索 MAC 地址。

通常,ip 命令预装在大多数 Linux 发行版上,可用于显示或操作网络接口、路由和其他相关参数。

在这种情况下,我们必须将 link 对象指定为命令参数以检索链路层信息。

由于 MAC 地址是 NIC(网络接口控制器)的唯一标识符,你会发现 ip link 命令返回多个条目。

在同时具有有线和无线网络接口的 Raspberry Pi 设备上,应该有两个名为 eth0wlan0 的条目(不考虑环回接口)。

ip link

输出:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:16:3e:e2:52:1c brd ff:ff:ff:ff:ff:ff

类似的输出,包括 MAC 地址,可以使用 ip a 命令打印,但它的输出对于初学者来说可能更复杂阅读。

ip a

输出:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
---
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:16:3e:e2:52:1c brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.12/24 brd 192.168.0.255 scope global 
---

但是,打印给定接口所需的 MAC 地址会很好。以下命令可用于从先前命令的输出中提取 MAC 地址行。

请注意,其中一个命令用于有线接口 MAC 地址(包括 eth0)和无线(包括 wlan0)。

ip link | grep -A 2 eth0 | grep link
// OR
ip link | grep -A 2 wlan0 | grep link

输出:

link/ether 00:16:3e:e2:52:1c brd ff:ff:ff:ff:ff:ff

在 Raspberry Pi OS 上使用 ifconfig 命令检索 MAC 地址

另一个用于列出 MAC 地址的有用命令行实用程序是 ifconfig。后者通常预装在最新的 Raspberry Pi OS 版本中。

ifconfig 命令还用于许多特定于网络的配置,因此我们将仅使用它来显示当前活动的网络接口。

输出通常应该包括几个带有有线和无线 NIC 的 Raspberry Pi 设备。我们使用 grep 命令来提取相关行,因为 ifconfig 输出可能很麻烦。

ifconfig | grep -A 4 eth0 | grep ether 
// OR
ifconfig | grep -A 4 wlan0 | grep ether 

输出:

ether 00:16:3e:e2:52:1c txqueuelen 1000 (Ethernet)
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

相关文章 - Raspberry Pi