有時候明明不在電腦前面,卻需要存取電腦裡的東西,這時候使用遠端連線就很方便了。但要是該電腦沒有開機呢?這時候就需要網路喚醒的功能了!

WOL

前言

iGene 大大最近幫 Noob 組了一台電腦,因為離網路有一段距離,為了讓這台電腦有網路,我可是費了不少功夫呢。起先拿了另外一台 AP 做 WDS,但明明就設定都正確,網路卻還是斷斷續續的。最後遷了一條 10 米長的網路線才成功…

好,這不是重點,重點是要如何設定 WOL (Wake-On-Lan)呢?

延伸閱讀:升上 Windows 10 後無法使用遠端喚醒,或無法正常關機、異常重新開機?

WOL 原理

究竟是如何 Wake-On-Lan 呢?Wake-On-Lan 透過一個奇妙的 Magic Packet 封包,裡面的內容是 6 個 Bytes 的 255 加上 16 次要喚醒的電腦的網卡的 MAC 位址,比方說要喚醒的目標電腦網卡位址為 00-12-34-56-78-AB,那麼 Magic Packet 封包就會長這樣:

FF FF FF FF FF FF 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB 00 12 34 56 78 AB

看不懂嗎?沒關係,接下來讓我們來實作吧。到時候不會要你打這樣的封包的 XD

設定網卡,接收到 Magic Packet 後開啟電腦

首先打開控制台網路和共用中心變更介面卡設定,並找到連線用的網卡。
網路介面卡
點選設定進階頁面,找到收到 Magic 封包時喚醒,並設定為已啟用

每個網路卡設定不大一樣,可以找找看 Wake、WOL、喚醒、Magic 封包…等關鍵字。

收到 Magic 封包時喚醒
這樣就完成設定網路卡了!

設定 BIOS,啟用 Wake On Lan 選項

接著這是很關鍵的一步,到 BIOS 裡設定,讓主機板支持 Wake On Lan。

一般來說會在 Power Management 裡面找到 Wake On Lan 選項,設為 Enabled 即可。

這裡一樣會因為廠商設定而不同,也有可能是 Remote Wake Up 之類的。

要是你的 BIOS 裡沒有這個設定選項,那很有可能是你的主機板不支援遠端開機了…

沒關係,繼續往下走,因為 Noob 的 BIOS 也沒有這個選項 XDDDD

如果你看到這裡,恭喜你已經設定完 Wake-On-Lan 的前置動作了。接下來看看要如何換醒電腦吧。

由於今天的主題是透過 Android 手機喚醒電腦,所以以下使用 Auto WOL 這款 App 來傳送 Magic Packet。若是要使用電腦傳送 Magic 封包,可以參考 mc-wol 這支程式。

下載 Auto WOL

設定 Auto WOL

還記得剛剛說的 Magic Packet 格式嗎?有沒有想起什麼?沒錯,我們要先取得電腦上網卡的 MAC 位址。首先請打開命令提示字元。

不知道怎麼打開的話可以按住鍵盤上的 Windows 按鍵 + R 鍵,輸入 cmd,按下 Enter。

接著在命令提示字元裡輸入 ipconfig /all。就能找到網卡的資訊了。我們要的是實體位址IPv4 位址,把它抄下來吧。
ipconfig
再來打開手機的 Auto WOL 吧,我們要開始做設定了。

新增一個設定檔,Name 填入電腦名稱,不過這裡是填給自己看的,就是說如果你有多的設定檔的話,方便區別(?)

再來 MAC address 填入我們剛剛抄下來的實體位址。

Broadcast IP address 要填什麼呢?這裡要再解釋一下。由於電腦的 IP 位址不一定,而且 Magic Packet 裡面也沒有指定 IP 位址,而是 Mac 位址。所以要把 Magic Packet 交給路由器,再由路由器統一廣播給區網下的裝置。廣播位址一般來說是 192.168.X.255,至於 X 是多少就要從電腦的 IP 位址來判斷了。

以 Buffalo 的 AP 來說,預設分配給電腦的 IP 可能會是 192.168.11.101,那就廣播位址就會是 192.168.11.255;再舉個例子,若電腦的 IP 是 192.168.16.200,那廣播位址就會是 192.168.16.255。

AutoWOL
那 port 要填什麼呢?保持預設值就可以了。若要從區網外開機的話,可以在 AP 裡設定 Port Forwarding 轉到廣播位址。不過也有可能某些 AP 並不允許這麼做,像 Noob 就是以 VPN 的方式連回區網,再從區網做 WOL 喚醒。不過這不在今天的討論範圍,有機會的話再討論吧 XD

**更新:**其實真的有機會 XD

WOL 不夠看,出門在外也要喚醒電腦才行 (Wake-On-Wan)!

好,既然都設定好了,那就把電腦關機來喚醒看看吧。

拿出手機,開個 Wi-Fi 連線到區域網路內,並點選 AutoWOL 的設定檔。如果手機設定沒有錯誤的話,就會顯示 Wake-on-Lan packet sent.

還記得我說 Noob 的 BIOS 裡沒有 Wake On LAN 這個選項嗎?我想說我都做到這裡了,不試白不試,就來試試看吧?沒想到封包送出去之後電腦真的開機了 XD!

至於電腦喚醒之後還能做什麼呢?有空再來分享一些東西吧 XD!