家庭实验室系列文章-电脑如何配置 络唤醒 (WOL)?

前言

其实这个专题很久很久之前就想写了,但是一直因为各种原因拖着没动笔。

因为没有资格,也没有钱在一线城市买房 (??????); 但是在要结婚之前,婚房又是刚需。 我和太太最终一起在一线城市周边的某二线城市买了房。 再之后,一起装修,她负责非电相关,我负责电 相关的装修。 家庭组 ,家庭实验室就这么一步一步随着家庭的组建而组建了起来:

  1. 家庭有线无线组
  2. 智能家居
  3. NAS
  4. 公 IP 和 IPv6
  5. Wake Online (WOL)
  6. 家庭 络安全 (??看了防火墙日志,才知道被攻击频率能有多高)
  7. 玩转树莓派
  8. 组建 Full Mesh VPN 络
  9. 手机 PAD 远程控制电脑

有了所谓的”家庭实验室”, 我的自身专业技能有了更多实验机会和试炼场,对新的技术了解不再浮于表面; 有了所谓的”家庭实验室”, 即使两地奔波,也能通过手机看到我们,以及小孩经历的每一个点点滴滴,幸福萦绕心头。..

理工男难得这么矫情一下,此为前言。..

系列文章:

  • 标签 – HomeLab – 东风微鸣技术博客 (ewhisper.cn)

Wake-on-LAN(WOL) 简介

LAN 唤醒(WoL 或 WOL)是以太 或令牌环计算机 络标准,允许通过 络消息打开或唤醒计算机。

消息通常由在连接到同一局域 的设备上执行的程序发送到目标计算机。

以太 连接(包括家庭和工作 络、无线数据 络和 Internet 本身)都基于计算机之间发送的帧。 WoL 是使用一种特殊设计的称为魔术包的帧来实现的,魔术包被发送到 络中的所有计算机,其中包括要被唤醒的计算机。 魔术分组包含目的地计算机的 MAC 地址、内置在计算机中的每个 络接口卡(“NIC”)或其它以太 设备中的标识 ,其使得它能够在 络上被唯一地识别和寻址。 具有 LAN 唤醒功能的已关机或关闭的计算机将包含能够在系统关机时以低功耗模式“侦听”传入数据包的 络设备。 如果接收到指向设备 MAC 地址的魔术包, 卡会向计算机的电源或主板发出信 ,以启动系统唤醒,其方式与按下电源按钮的方式相同。

魔术分组在数据链路层(OSI 模型中的第 2 层)上被发送,并且当被发送时,使用 络广播地址被广播到给定 络上的所有附接的设备;不使用 IP 地址(OSI 模型中的第 3 层)。

由于 LAN 唤醒是基于广播技术构建的,因此通常只能在当前 络子 内使用。 不过,也有一些例外情况,LAN 唤醒实际上可以在任何 络上运维,只要配置和硬件适当,包括通过互联 进行远程唤醒。

为了使 LAN 唤醒工作, 络接口的某些部分需要保持打开状态。这会消耗少量的待机功率,比正常工作功率少得多。 链路速度通常被降低到不浪费功率的最低可能速度(例如,千兆以太 NIC 仅维持** 10 Mbit/s 的链路**)。

络唤醒 (WOL) 的前提条件

硬件: (几乎现在的所有电脑都满足)

  • 电源:支持 ATX 2.01 标准
  • 主板:支持 PCIE 2.2 标准

主板 BIOS:

  • 启用 PCIE 设备唤醒(可能会有很多不同的名字,关键词:”wake” “wol” “PCIE” “Power On” 等)

电脑电源设置和状态:

  • S3(一般是睡眠)
  • S4(一般是休眠)
  • S5(一般是关机)

配置得当后,主板在这些状态下, 卡会处于待机 (standby) 状态。可以随时被魔术包唤醒。

有线 卡配置(必须是有线 卡):

启用如下配置:

WOL 完整配置

BIOS 配置

这里以 MSI B450 迫击炮 主板为例,开机后按 键进入 BIOS 设置,BIOS 界面左上角有个 ?? 样式的搜索按钮,直接搜索关键词 “PCIE” 即可找到:”PCIE 设备唤醒” 选项,将其设置为 允许. 如下图:

另外提一句,休眠可以开启,休眠状态下是可以被唤醒的。

详细说明如下:

??Reference:

System Power States – Win32 apps | Microsoft Learn

快速启动是一种使用休眠文件来加快后续启动速度的关机类型。

当使用快速启动时,即使系统实际上已经属于 S4 状态,系统对用户来说也好像发生了完全关机(S5)。 系统此时不会响应设备唤醒。

?? 备注:

从 Windows 8 开始,当请求系统关机时,快速启动是默认选项。

这也是为什么建议关闭

一般情况下,我们都是可以从休眠状态 络唤醒设备的,如果主板支持,甚至可以在 关机 (S5) 状态 络唤醒设备。

具体说明如下:

??Reference:

WOL 在软关闭(S5)时不受 (windows) 正式支持。 但是,某些系统上的 BIOS 可能支持配置 NIC 以进行唤醒,即使该过程中不涉及 Windows。

这里以 MSI B450 迫击炮 主板为例,相关的设置如下:

这里以 Realtek PCIe 系列为例,配置如下:

控制面板 -> 络连接 -> 选择对应的有线 卡, 右键 -> 属性 -> 配置, 如下图:

详细说明如下:

Q: 为什么勾选 只允许幻数据包唤醒计算机: 如不勾选,可能会被时不时误唤醒

实战 WOL

以上主板 BIOS 系统电源选项 卡配置 都设置好之后,就可以进行 WOL 了。

WOL 客户端前提

  • 需要和被唤醒设备在同一局域 内
  • 需要安装 WOL Client 相关软件(安卓,Linux, Windows 等版本都有)
  • 需要知道被唤醒设备的 MAC 地址(能知道 IP 地址更好,且 IP 地址固定更更好)

步骤

??Notes:

这里以 Linux 或类似(树莓派或路由器) 和 安卓为例。

Linux 端实战 WOL

安装 WOL Client: (这里也有好几种 WOL Client, 这里以这一款为例)

安装后,在被唤醒设备处于休眠状态下,执行唤醒:

说明:

    ??MAC 地址必填,其他非必填

    保存后,点击这一条,会出现摇晃??的过渡动画,然后就可以成功唤醒,如下图:

    ??????

    我的 WOL 用法

    对于 Home Lab 来说,主要的用法都是这样的场景:

    • 人在外地
    • 家里高配台式机在休眠
    • 希望通过互联 WOL 家里的台式机

    这里主要有 2 种思路:

    1. 将家里台式机的 络唤醒端口映射到互联 上
      1. 这样直接通过 WOL Client 访问互联 指定端口,WOL Client –互联 –> 互联 对应的 WOL 端口 —-> 相当于局域 关去唤醒指定设备
      2. 但是有前提:有公 IP
      3. 也有一定的劣势:暴露在公 ,不太安全
    2. 家里放一台 Always On 的小设备(如:软路由,树莓派,NAS 等), 再将人带在外地的设备(如手机或 pad) 和家里的设备组建一个 Full Mesh VPN 内 (或者家里某一台可以内 穿透连接到也行)
      1. 通过 VPN 登录到 Always On 的小设备上
      2. 再通过该设备执行 WOL
      3. 这样会更加安全。

    我用的就是第二种,理由如下:

    1. 此前曾开放到公 上,被 Hack 的频率太高了,吓到我了,我可不想成为肉鸡;
    2. 联系电信运营商要了个公 IPv4, 用了一段时间,突然被悄悄滴收回去了??
    3. IPv6 吧,在外地的环境不可能永远都有 IPv6 地址可以使用。
    4. 最后:安全,安全,还是安全!

    总结

    1. 主板 BIOS
    2. Windows 系统电源选项
    3. 有线 卡配置

    以及 WOL Client 的使用。

    文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树首页概览8767 人正在系统学习中

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月15日
下一篇 2022年10月15日

相关推荐