如何在 Mac OS 中查找和更改 MAC 地址

⚡ 智能摘要

查找和更改 MAC 地址 macOS 使用内置工具:系统偏好设置、Wi-Fi 工具栏和终端可以显示硬件地址,而 ifconfig 命令可以临时分配一个新的硬件地址。

  • 🔍 查找(系统偏好设置): 打开系统偏好设置,然后依次选择网络、高级和硬件,即可查看 MAC 地址。
  • ⌨️ 查找(终端): 在终端中运行 ifconfig 以显示适配器的 MAC 地址。
  • 📶 查找(工具栏): 按住 Option 键并单击 Wi-Fi 图标,即可显示 Wi-Fi 地址。
  • 🔧 更改: 使用 sudo ifconfig en0 ether 命令并传入一个新值来伪造 MAC 地址。
  • 临时: 每次重启后,更改后的地址都会重置为硬件默认值。
  • ⚠️ 先决条件: 更改地址前请断开 Wi-Fi 连接,否则界面将拒绝新地址。

如何查找和更改 MAC 地址 macOS

如何查找 MAC 地址 macOS

每个网络适配器都有一个 MAC地址和 macOS 提供了三种简便的查找方法:系统偏好设置、终端和 Wi-Fi 工具栏。每种方法如下所示。

使用系统偏好设置

步骤 1)打开系统偏好设置,点击网络。

打开“网络”窗格 macOS 系统偏好设定

步骤 2)在“网络”菜单中,单击“高级”按钮。

点击“高级”按钮 macOS 网络设置

步骤 3)转到“硬件”选项卡,您可以在那里看到 Mac 的 MAC 地址。

在“硬件”选项卡上查看 MAC 地址 macOS

On macOS 从 Ventura 开始,布局发生了变化:打开系统设置,选择 Wi-Fi,点击网络旁边的详细信息,然后阅读 Wi-Fi 地址条目。

使用终端

步骤 1)从 Launchpad 打开终端应用程序,输入 ifconfig,然后从输出中读取您的 MAC 地址。

在运行 ifconfig macOS 终端显示 MAC 地址

使用 Wi-Fi 工具栏

步骤 1)按住 Option (Alt) 键,然后单击工具栏中的 Wi-Fi 图标;菜单将显示 Wi-Fi 地址。

Rev从 Wi-Fi 设备中窃取 MAC 地址 macOS 带有 Option 键的菜单栏

为什么要更改 MAC 地址?

更改或欺骗 MAC 地址是常见的网络操作,有诸多实际用途。由于 MAC 地址会在您加入的每个本地网络中广播,因此可以被记录并用于识别您的设备,所以替换 MAC 地址显然具有隐私保护和测试用途。

  • 隐私保护: 轮换地址使网络和广告商更难…… tracka 设备在不同地点运行。
  • 访问控制: 有些公共网络或企业网络会根据 MA​​C 地址限制设备或施加时间限制,而新的地址可以恢复对旧地址被阻止的访问。
  • 测试: 网络工程师更改 MAC 地址是为了在不交换数据的情况下测试防火墙、DHCP 保留地址或基于 MAC 地址的规则。ping 硬件。
  • 替换: 当适配器发生故障时,克隆旧的 MAC 地址可以让替换适配器继承任何基于地址的权限。

无论出于何种原因,请记住,欺骗只会改变操作系统显示的地址;硬件中固定的地址保持不变。

如何更改 MAC 地址 macOS

以下是如何更改 MAC 地址的方法 macOS请按以下步骤操作:

步骤 1)按住 Option 键并单击 Wi-Fi 图标以查看接口名称。在下图所示的示例中,该名称为“en0”。

检查 Wi-Fi 接口名称 en0 macOS 菜单栏

步骤 2)打开终端并运行以下命令以生成随机地址:

openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/.$//'

它返回一个新的十六进制数,可用作 MAC 地址。

openssl 命令的输出在终端中显示了一个随机生成的 MAC 地址。

步骤 3)按住 Option 键,点击菜单栏中的 Wi-Fi 图标,然后选择“断开连接”,断开当前 Wi-Fi 网络。

正在断开与当前 Wi-Fi 网络的连接 macOS 更改 MAC 地址之前

步骤 4)返回终端并运行:

sudo ifconfig en0 ether  <MAC address>

步骤5)您已更改MAC地址。请重新连接到您的Wi-Fi网络并再次验证您的MAC地址。

使用 sudo ifconfig 应用新的 MAC 地址并进行验证 macOS 终端

更改 MAC 地址 macOS 永恒的?

On macOS使用 ifconfig 命令更改 MAC 地址是临时的。操作系统只会显示新地址,直到下次重启,届时接口会重新加载其原始的、已写入硬件的地址。没有内置设置可以使 ifconfig 的更改永久生效。

这种行为是故意的。 macOS 系统会将硬件地址视为默认值,并在启动时重新应用,因此重启是撤销任何更改的最简单方法。如果需要使新地址永久生效,则必须在每次登录后重新应用该命令,通常通过启动脚本或 LaunchDaemon 来实现。

  • 默认为临时状态: 重启或 Wi-Fi 接口重置后,伪造的地址就会消失。
  • 没有原生持久化功能: 苹果没有提供菜单开关来锁定自定义 MAC 地址。
  • 手动持久化: 启动脚本运行 ifconfig 命令会自动重新应用地址。

更改 MAC 地址时常见的错误 macOS

一些常见的问题会导致 MAC 地址更改无法生效。按顺序解决这些问题通常可以解决问题:

  • 仍连接至 Wi-Fi: 当接口连接到网络时,无法更改地址。请先断开 Wi-Fi 连接,然后再运行命令。
  • 接口名称错误: 该命令的目标是 en0,但在某些 Mac 电脑上,Wi-Fi 接口是 en1。请运行 networksetup -listallhardwareports 命令来确认正确的接口。
  • MAC地址格式无效: 新值必须是有效的 48 位十六进制地址;本地管理的单播地址最安全。
  • 缺少 sudo: 更改接口需要管理员权限,因此命令必须以 sudo 开头,并提示输入密码。
  • 改变并未持续下去: 由于此更改是暂时的,请在重新连接之前立即使用 ifconfig en0 进行验证。

常见问题

在 iPhone 或 iPad 上,打开“设置”,然后依次点击“通用”、“关于本机”,滚动找到“Wi-Fi 地址”,这里显示的是设备的 MAC 地址。除非您为该网络禁用“专用 Wi-Fi 地址”,否则 iOS 可能会显示一个私有的、特定于某个网络的地址。

MAC地址是一个永久性的48位硬件标识符,工作在数据链路层。 IP地址 是在网络层分配的逻辑地址,用于在网络之间路由流量。

在终端运行 `networksetup -listallhardwareports` 命令,列出每个接口及其设备名称。笔记本电脑上的 Wi-Fi 接口通常是 en0,但如果连接了以太网,则可能是 en1,因此在运行 `ifconfig` 命令之前请确认。

苹果的私有 Wi-Fi 地址功能在最新的 iOS 系统中会为每个网络分配一个不同的随机 MAC 地址。 macOS 发布新版本,提升隐私保护。如果接入点依赖稳定的 MAC 地址进行过滤,请在该网络的设置中禁用此功能。

出于隐私保护、测试或故障排除的目的,更改设备的 MAC 地址通常是合法的。但在大多数司法管辖区,使用伪造的 MAC 地址绕过访问控制、冒充其他设备或实施欺诈都是违法的。

MAC 地址由六组十六进制数字组成,每组包含 12 位数字,例如 00:1A:2B:3C:4D:5E。前三组数字是 OUI(运营商识别码),用于识别厂商;后三组数字用于识别具体的网络适配器。

机器学习模型会学习每个设备的正常信号和流量模式,然后标记 MAC 地址不匹配的帧,从而比静态规则更快地识别出伪造或恶意适配器。分析人员在阻止主机之前仍然会确认警报。

GitHub 副驾驶 草稿外壳或 Python 用于执行诸如使用 ifconfig 读取 en0、生成随机 MAC 或验证更改等任务的脚本。 Rev在用 sudo 运行命令之前,请先查看并测试生成的命令。

总结一下这篇文章: