macos 本身不直接支持跨局域网 wake-on-lan 唤醒,因其依赖二层广播包,而路由器默认阻止跨网段广播;但可通过启用“唤醒以供网络访问”、固定mac与ip、并借助支持wol中继的路由器或局域网内常在线中继机(如树莓派)转发magic packet来实现类跨网段唤醒。
macos 本身不直接支持跨局域网(即跨子网或外网)的 wake-on-lan 唤醒,因为标准 wol 依赖二层广播(magic packet),而路由器默认会阻止广播包跨网段转发。但通过合理组合配置和中继手段,可以实现“类跨网段唤醒”效果——本质是让 magic packet 最终能抵达目标 mac 所在的本地子网。以下是可行路径与关键设置:
一、确认并启用 macOS 本机 WOL 基础能力
这是所有后续操作的前提,缺一不可:
- 确保 Mac 连接电源适配器(电池供电的 MacBook 通常不支持关机态 WOL,仅支持睡眠态唤醒)
- 进入系统设置 → 电池 → 电源适配器(或旧版系统中的系统偏好设置 → 节能器 → 电源适配器),勾选“唤醒以供网络访问”
- 进入系统设置 → 通用 → 共享,开启“远程登录”(SSH 服务,部分唤醒工具或脚本需此通道验证状态)
- 打开终端,运行 sudo pmset -g | grep womp,输出为 womp 1 表示已启用网络唤醒;若为 0,可手动启用:sudo pmset womp 1
二、获取并固定目标 Mac 的网络标识
跨网段唤醒必须精准定位设备,需稳定地址与硬件标识:
- 查看 MAC 地址:终端执行 networksetup -listallhardwareports | grep -A2 "Wi-Fi\|Ethernet",找到对应接口的 Hardware Port 和下方的 MAC Address(如 ac:de:48:xx:xx:xx)
- 为该 Mac 分配静态 IP 或 DHCP 预留:登录你家/办公室路由器后台,在 DHCP 设置中将该 MAC 地址绑定一个固定局域网 IP(例如 192.168.1.105),避免 IP 变动导致中继失败
三、构建跨网段 Magic Packet 投递通路
这是最核心也最易出错的环节。常见可靠方式有两种:
部署和使用军舰的 macOS Automator 自动化服务集合。包含 5 个实用工作流:PDF转JPG、PNG重命名并转JPG、图像拼接、解压RAR、顺序命名图像文件。一键安装所有服务到 ~/Library/Services/ 目录。使用场景:(1) "安装我的自动化服务",(2) "部署所有 Automato...
- 方案 A:利用支持 WoL 中继的路由器(推荐) 部分企业级或 OpenWrt/Padavan 固件路由器支持“WOL 广播转发”或“IP Directed Broadcast”。启用后,在路由器管理页填入目标 Mac 的 MAC + 局域网 IP,再从外网发起唤醒请求(如通过路由器 Web 界面或 API),路由器自动将其转换为本地广播包
- 方案 B:部署一台常在线的局域网中继机 在目标 Mac 所在局域网内,放一台始终开机的小型设备(如树莓派、老笔记本、甚至另一台 Mac),安装 wakeonlan 工具。从外网 SSH 登录这台中继机,再执行 wakeonlan ac:de:48:xx:xx:xx。中继机与目标 Mac 同网段,Magic Packet 可直达
四、外网触发唤醒的实际操作方式
不能直接从手机或异地电脑发 Magic Packet,需借助上述中继:
- 若用方案 A(智能路由器),多数支持在手机 App 或网页端点击“远程唤醒”,输入 MAC 即可
- 若用方案 B(中继机),需确保中继机开放 SSH 外网访问(建议用非默认端口 + 密钥认证),再用手机 Termius 或电脑终端执行:ssh user@your-domain.com -p 2222 'wakeonlan ac:de:48:xx:xx:xx'
- 也可搭配 IFTTT、Home Assistant 或自建轻量 Web API,把唤醒动作封装成一次 HTTPS 请求,更安全易用
注意:Mac 关机后仅部分型号支持真正关机态唤醒(如 Intel iMac、Mac mini),M1/M2/M3 Mac 默认只支持睡眠态唤醒;若需关机后唤醒,需确认主板固件与电源管理兼容性,并在 BIOS/UEFI(如有)中检查 AC Back 功能是否启用。










