Wake-on-LAN 也叫 WoL,指通過網絡消息打開或喚醒計算機。
網絡喚醒功能在遠端辦公環境下顯得十分必要,比如位于家中或公司的計算機,出于經濟和環保的目的,不使用時一般也會進入低功耗狀态,睡眠、休眠甚至是關機。一旦進入低功耗狀态,就需要适當的外部刺激才能讓其重新恢複至工作模式。
這時借助 WoL 通過特定網絡信号進行「喚醒」便是一個不錯的選擇。
一般情況下,WoL 需要由另一台「同區域網路」裝置發送網絡信号,任意有能力發送 WoL 信号 的裝置都可以充當此角色;在遠端辦公場景中,則最好由「帶有線網卡的低功耗裝置」來執行,一般路由器都有自帶的WOL功能。
配置網絡喚醒
系統設定
在 Windows 10 中,運作 > ncpa.cpl 打開「網絡連接配接」設定,然後找到目前在使用的有線網卡,右鍵點選「屬性」:
然後選擇「配置」:
在随後彈出的面闆中找到「電源管理」,這裡我們就能勾選「允許此裝置喚醒計算機」以及「隻允許幻資料包喚醒計算機」了。
BIOS
除此之外,我們可能還需要啟用适當的 BIOS 設定才能使用 WoL 功能,具體方法視廠商而定,進入 BIOS 後注意選項附加的說明即可,可以參考的關鍵詞包括:
- Automatic Power On
- Wake on LAN/WLAN
- Power Management
- Power On by Onboard LAN
- Power On by PCI-E Devices
如果你找到了相關選項,也可以在評論區分享對應的品牌裝置及選項名稱。
使用 Fing 進行測試
配置好系統和 BIOS 後,接下來我們不妨通過 Fing 這款圖形化軟體來測試喚醒已經配置好 WoL 的主機。
安裝啟動應用後,打開并掃描目前網絡,然後在裝置清單中找到需要喚醒的機器:
在目标裝置關機或休眠時,通過 Fing 的裝置詳細資訊面闆點選「LAN 喚醒」,此時 Fing 已自動填充需要的資訊。此處主要起作用的參數是「MAC 位址」:
如果目标主機被成功喚醒則一切順利,如果遇到問題,請重新檢查系統設定和 BIOS 設定。
接下來我們就可以在内網布設網絡裝置,結合「定時任務」每天上班前自動喚醒位于家裡或公司的電腦,做到即到即用了。
一些常見問題
如何準确擷取實體網卡位址?
如果你像本文開頭提到的那樣,嘗試借助帶有線網卡的低功耗裝置來作為發送喚醒信号,在實際配置過程中則需要一些額外的網絡資訊。比如:
檢視網絡參數
位于網絡連接配接(運作 > ncpa.cpl)中。
網絡掃描工具
各平台都能找到類似的工具,包括:
- Windows - Softperfect Network Scanner
- Linux - arp-scan
- Android / iOS - Fing / PingTools
如何借助幻資料包防止意外喚醒?
此處稍作區分,如果未勾選「隻允許幻資料包喚醒計算機」,情況要簡單得多,隻要有任意網絡信号請求與該實體網卡通信,都會觸發喚醒操作。适用于網絡中機器不多,服務簡單的場景。
但如果僅允許幻資料包(Magic Packet)才能喚醒,則需要借助喚醒工具;這樣做的好處是可以防止誤觸發。
可以使用的幻資料包喚醒工具有:
平台 | 工具 | 特點 |
Windows | wol.exe | 免安裝,指令行,跨網段 |
Linux | etherwake | 指令行,同網段 |
Android / iOS | Fing / PingTools | 可掃描 |
請注意,WoL 屬于無狀态協定,僅發送、不确認。
如何實作「網絡開機」?
除了喚醒,我們也可以使用網絡信号來将已經關機的裝置喚醒,方法和工具與網絡喚醒原理一樣,但需要主機闆和 BIOS 支援,一般多見于桌上型電腦。
小結
WoL 協定本身不支援跨網段,在網絡可達的前提下,但可以通過端口轉發、代理等方式實作手機任何網絡下遠端喚醒計算機;不過出于安全和穩定服務的考慮,不推薦此場景下使用。
最後也歡迎讀者就此部分寫下自己的想法或疑惑,如果條件合适,我們可以在另外的篇幅進行讨論。