我是基於ChatGPT-turbo-3.5實現的AI助手,在此網站上負責整理和概括文章
這篇文章是以繁體中文寫成的。文章主要介紹了一種技術叫做 Wake On LAN(網路喚醒),能夠透過網路封包遠端開啟電腦。文章詳細說明了設定 Wake On LAN 的步驟,包括設定網路卡、路由器和 BIOS。最後還提供了一個 Python 小程式讓使用者可以方便地進行測試。文章也提到了一些常見問題和解決方法,以及一些使用建議。整篇文章除了介紹技術原理,還提供了操作步驟和注意事項,非常實用。
當你不在電腦前卻需要存取裡面的資料時,你會怎樣做?
很多朋友都會回答博主使用遠端連線解決,因為這是一個非常便捷的選擇
然而,試想一下,假如電腦沒有開機呢?又該怎樣做? (真的… 每次打開遠端桌面連接電腦時,卻發現電腦老是關機了 QAQ…)
這時候,Wake On LAN 便派上用場了!
所以今天就要來教大家如何設定 Wake On LAN(網路喚醒),讓您只要透過手機就能遠端開啟電腦!
# 什麼是 Wake On LAN?
Wake On LAN(簡稱 WOL)是一項允許您透過網路封包遠端開啟電腦的技術。簡單而言,就是發送一個特殊的「魔術封包」(Magic Packet)到目標電腦,讓其從關機狀態實時自動開機。
要讓 WOL 能夠正常運作,需要設定以下三個部分:
- 網路卡 (Network Interface Card)
- 路由器 (Router)
- BIOS
讓我們一步一步來看該怎麼設定。
# Step 1:設定網路卡 (NIC)
首先要確認您的網路卡支援 WOL 功能,並進行正確設定。
無線網路卡並不支援網絡喚醒 (WOL) 功能
以 Windows 為例:
- 首先於鍵盤按下
Windows鍵 + X
,並選擇「裝置管理員」(Device Manager)

- 展開「網路介面卡」(Network adapters)

- 找到您使用的網路卡,按右鍵選擇「內容」(Properties)。小弟這邊使用的是 "Intel (R) Ethernet Controller I226-V"。

- 接着應該會看到以下畫面:

- 移至「電源管理」(Power Management),啟用「允許電腦關閉這個裝置以節省電源」(Allow the computer to turn off this device to save power) 和「允許這個裝置喚醒電腦」(Allow this device to wake the computer),完成!

如果找不到這些選項,可能是您的網路卡不支援 WOL 功能喔!建議更換支援的網卡~
進階設定 (Optional)
可移至「進階」(Advanced) 找到以下選項並啟用 😃
- Wake on Magic Packet
- Wake on Pattern Match
# Step 2:設定路由器
要讓外網也能喚醒電腦,路由器設定是關鍵!
不同品牌的路由器的設定方式有所參差,但基本上其概念也大同小異~以下小弟以 TP-Link 路由器作示例:
- 開啟瀏覽器,輸入 192.168.0.1 / 192.168.1.1 或您的預設閘道進入管理介面
因為小弟已經更改預設閘道為 192.168.217.100,所以這邊輸入 192.168.217.100。


- 輸入您的管理員密碼

建議更改預設的路由器登入密碼,防止被他人入侵。
- 登入後會看到以下介面

- 進入 Advanced → Network → DHCP Server,在下面的 Address Reservation 按 + Add

- 輸入目標裝置的 IPv4 和 MAC,然後按 Save 保存

- 移至 Security → IP & MAC Binding 並啟用,於下方 Binding List 按 + Add

- 輸入目標裝置的 MAC 和 IPv4,然後按 Save 保存

- 移至 NAT Forwarding → Port Forwarding , 按 + Add

- 設定連接埠轉發:
- 協定:All
- 外部埠:您要使用的埠
- 內部埠:您要使用的埠
- 內部 IP:您要喚醒的電腦 IP
完成後按 Save 保存

# Step 3:主機板 BIOS 設定
這是最後但也是不可或缺的一步!下面小弟以 MSI 主機板為例:
進入 BIOS 的辦法有很多,以下是其中一種:
- 開機時瘋狂按 Delete / F2 / F12 鍵進入 BIOS
然而小弟啟用了快速啟動 (MSI Fast Boot),跳過了鍵盤偵測的程序,故需要從 Windows 的復原介面進入
- 於復原 / 恢復介面中,選擇疑難排解 (Troubleshooting) → 進階選項 (Advanced options)


- 選擇 UEFI 韌體設定 (UEFI Firmware Settings) → 然後按重新啟動 (Restart)


進入 BIOS 後,進行如下設定:
- 於主選單中,移至 SETTINGS → Advanced


- 選擇 Wake Up Event Setup

- 在 Resume By PCI-E/Networking Device 中,將設定更改為 Enable。



- 大功告成!請按 X 儲存設定並重新開機
同樣地,不同品牌的主機板的設定方式有所參差,但基本上都能在進階選項中找到 WOL 設定。
# 實際測試
設定完成後,建議先在區網內測試:
- 關閉目標電腦
- 使用手機下載 WOL App(Android 推薦 Wake On LAN, iOS 推薦 Wolow - Wake on LAN)
- 輸入電腦的 MAC 和 IPv4 廣播位址
什麼是廣播位址?
廣播位址 (Broadcast Address) 是專門用來同時傳送到網路中所有工作站的一個位址。在使用 TCP/IP 協定的網路中,主機識別段 host ID 為全 1 的 IP 位址為廣播位址… (背後原理由於較複雜,在此並不詳述)
一般而言,廣播位址通常為路由器網段中的最後一個 IP 位置
例如: 若網段為 192.168.217.0 ~ 192.168.217.255,廣播位址為 192.168.217.255
- 發送喚醒訊號
如果電腦能成功開機,就代表設定成功了!
附送一個 Python 小程式供各位方便食用。祝用餐愉快 😄
import socket | |
import struct | |
class Computer: | |
def __init__(self, mac_address, hostname) -> None: | |
self.mac_address = mac_address | |
self.hostname = hostname | |
def wake(self, port=9): | |
# Create a socket for sending the magic packet | |
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) | |
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) | |
# Bind the socket to a local address and port | |
sock.bind(('', 0)) | |
# Construct the magic packet | |
mac_bytes_list = self.mac_address.split(':') | |
mac_bytes = struct.pack('BBBBBB', int(mac_bytes_list[0],16), | |
int(mac_bytes_list[1],16), | |
int(mac_bytes_list[2],16), | |
int(mac_bytes_list[3],16), | |
int(mac_bytes_list[4],16), | |
int(mac_bytes_list[5],16)) | |
magic_packet = b'\xff' * 6 + mac_bytes * 16 | |
# Send the magic packet to the IP address and port | |
sock.sendto(magic_packet, (self.hostname, port)) | |
sock.close() | |
return |
食用方法:
from <your-script-name> import Computer | |
# Specify the MAC address, and the public IP address or domain name that points to your router of your PC | |
# e.g. | |
computer1 = Computer(mac_address1, ip_address1) | |
computer2 = Computer(mac_address2, ip_address2) | |
# ... | |
# Wake up the PC(s) | |
computer1.wake() | |
computer2.wake() | |
# ... |
# 常見問題 Q&A
Q: 為什麼設定都正確但還是無法喚醒?
A: 最常見的原因是:
- 網路線沒接好
- 電源供應器沒有支援
- 防火牆 / 殺毒軟件擋住了喚醒封包
- 快速啟動功能已啟用。移至「控制台」 → 「電源管理」 → 「選擇按下電源按鈕時的行為」, 關閉「快速啟動」。
Q: 筆電可以用 WOL 嗎?
A: 大部份筆電以使用無線網絡為主。新款筆電甚至不提供網絡線插口,故並不支援 LAN 網絡喚醒。
少部份舊款機型可以,但需要確保 BIOS 內有支援,其次需要特別注意電源管理設定,且最好使用原廠電源適配器。
# 總結
WOL 的功能設定可謂繁複,但設定好之後真的非常方便!再也不用擔心忘了開電腦而無法遠端工作了⋯⋯
不過要提醒大家,使用 WOL 時還是要注意資安問題,建議:
- 定期更新韌體
- 更改預設密碼
- 必要時才開啟 WOL 功能
您也打算設定 WOL 嗎?歡迎在下方留言分享您的使用經驗!
如果本文對您有幫助,歡迎分享給更多朋友!