WOL Wakeonlan 指南:无需物理访问即可远程打开服务器

举报
Tiamo_T 发表于 2021/11/25 06:41:21 2021/11/25
【摘要】 Wakeonlan (wol) 使您无需物理访问即可打开远程服务器。Wakeonlan 将数据包发送到支持 LAN 唤醒的以太网适配器和主板,以打开远程计算机。 错误的是,当您关闭系统而不是重新启动时,您可以使用 Wakeonlan 远程打开服务器电源。此外,如果您的服务器不需要 24×7 全天候运行,您可以随时远程关闭和打开服务器。

Wakeonlan (wol) 使您无需物理访问即可打开远程服务器。Wakeonlan 将数据包发送到支持 LAN 唤醒的以太网适配器和主板,以打开远程计算机。

错误的是,当您关闭系统而不是重新启动时,您可以使用 Wakeonlan 远程打开服务器电源。此外,如果您的服务器不需要 24×7 全天候运行,您可以随时远程关闭和打开服务器。

本文简要概述了 Wake-On-LAN 以及设置 Wakeonlan 功能的说明。

局域网唤醒概述

  • 当一台机器连接到 LAN 时,您可以使用 Wakeonlan,并且您知道该机器的 MAC 地址。
  • 您的网卡应该支持wakeonlan 功能,并且应该在
    关机前启用。在大多数情况下,默认情况下,在 NIC 上启用了wakeonlan。
  • 您需要从连接到同一网络( LAN )的另一台机器发送魔法数据包。您需要 root 访问权限才能发送魔术包。机器上应该安装了wakeonlan 包。
  • 当系统因电源故障而崩溃时,您第一次无法使用此功能打开您的机器。但是在第一次启动后,如果服务器由于某种原因关闭,您可以使用wakeonlan 将其打开。
  • WakeonLan 也被称为 wol。

检查网卡是否支持wol

在要从远程位置打开的服务器中执行以下 ethtool 命令。

# ethtool eth0
Settings for eth0:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg  [ Note: check whether flag g is present ]
        Wake-on: g [ Note: g mean enabled. d means disabled ]
        Current message level: 0x00000001 (1)
        Link detected: yes

如果  Supports Wake-on为 g,则表示 NIC 卡上启用了对 wol 功能的支持。

在以太网卡上启用 wol 选项

默认情况下,大多数机器中的 Wake-on 将设置为 g。如果没有,请使用 ethtool 将 g 标志设置为网卡的 wol 选项,如下所示。

# ethtool -s eth0 wol g

注意:您应该以 root 身份执行 ethtool,否则您可能会收到以下错误消息。

$ /sbin/ethtool eth0
Settings for eth0:
Cannot get device settings: Operation not permitted
Cannot get wake-on-lan settings: Operation not permitted
        Current message level: 0x000000ff (255)
Cannot get link status: Operation not permitted

在另一台机器上安装wakeonlan包

在您需要发送魔术包以打开服务器的机器中安装wakeonlan 包。

# apt-get install wakeonlan

记下远程服务器的 MAC 地址

记下您希望远程打开的服务器的 MAC 地址。


# ifconfig
eth0     Link encap:Ethernet  HWaddr 00:16:k5:64:A9:68  [ Mac address ]
          inet addr:192.168.6.56  Bcast:192.168.6.255  Mask:255.255.255.0
          inet6 addr: fe80::216:17ff:fe6b:289/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3179855 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2170162 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3832534893 (3.5 GB)  TX bytes:390304845 (372.2 MB)
          Interrupt:17

最后,无需物理访问即可远程打开机器

当服务器没有启动时,从连接到同一局域网的另一台机器上执行以下命令。一旦发送了魔法数据包,远程系统将开始启动。

# wakeonlan 00:16:k5:64:A9:68
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。