網路喚醒全攻略(Wake On LAN)

家裡組了台伺服器存放資料,或者作為開發伺服器,遠程登陸成為剛性需求,由於機器需要的時候才用到,所以如果經常開機的話很費電,按需開機是最佳辦法;網上教程很多,但是比較雜亂,表達累贅;還是自己總結一篇簡單好用的;

前提條件

  • 主板支持,現在的主板基本都支持,所以基本不用擔心,很舊的主板好像是2000年左右的,還是需要插網卡(PCI2.1標準)需要3針WOL線連接主板;
  • 關機時候為主板通電(600mA以上電流),把電源切斷是不行的,網卡帶電才可以;
  • 非正常關機可能會喚醒失敗,所以里如果斷電導致關機的話可能需要手工開啟機器;
  • 被喚醒的電腦必須連接網路,或者路由器,並且有一台手機或者電腦可以發送喚醒包;

實現步驟

首先現在喚醒客戶端

  • PC端可以使用(Aquila Technolgy)

    wol.aquilatech.com/
  • 安卓端(極致工具箱-網路喚醒

    sj.qq.com/myapp/detail. play.google.com/store/a

  • 蘋果(RemoteBoot WOL)

    itunes.apple.com/CN/app

客戶端參數設置

以安卓為例子,極致工具箱安裝好後打開網路喚醒,按+添加參數;

  • Name:填寫一個別名就可以,例如:HomePC
  • Mac Address:填寫電腦網卡MAC地址(注意是主板上有線網卡),這個要填寫正確,如何獲得? 進入命令行運行:ipconfig /all,然後查看對應的物理地址即可,共6組2位元組十六進位字元;

  • Broadcast IP/Hostname/FQDN
    • Broadcast IP/Hostname 是電腦所在的區域網的廣播地址:如果你的電腦分配到192.168.1.100則填寫192.168.1.255,將喚醒包廣播到1網段下面所有電腦,Hostname:則是你電腦的主機名.
    • FQDN:是廣域網喚醒,例如你的手機在公網(4g上網),不在區域網,則需要填寫路由器的DDNS域名,如:homepc.router.net
  • Port 埠默認是9,這裡默認就可以

被喚醒電腦設置

  • BIOS打開喚醒設置

    在BIOS電源相關選項尋找Resume By LAN,Enable Wake ON LAN 類似選項開啟
  • 網卡設置

    知道對應的網卡,打開可喚醒選項:

防火牆設置

  • 添加入站規則,允許埠9通過:

作用域選「公用」

IP地址選所有

路由器設置

  • 靜態IP(區域網喚醒)

    建議設置靜態的IP地址,那內網的話你要喚醒的電腦就固定IP了,否則的話每次都不一樣,以我的華碩AC68U路由器為例:

  • 外圍埠映射(廣域網喚醒,如果你沒有廣域網喚醒需求可以跳過)

埠映射的意思是在公網的時候將數據包通過域名(路由器通過DDNS和域名綁定)發送到路由器IP,路由器會將相應的包轉發到指定IP的電腦上。

  • ARP綁定(廣域網喚醒,如果你沒有廣域網喚醒需求可以跳過)

假如你的路由有ARP綁定功能,直接設置就可以了,

我的路由器沒有ARP綁定,是可以刷梅林固件,支持開機腳本配置,所以設置腳本就可以了:新建一個腳本arp_b85m.sh,名字自己定義,放入命令:

arp -s 192.168.2.200 XX:XX:XX:XX:XX:XX

喚醒測試

現在要被喚醒的PC上安裝Aquila Technolgy WOL

wol.aquilatech.com/

打開封包監控診斷:

  • 區域網喚醒

    確保同一區域網並且能互通(WiFi或者有線網路)

    然後喚醒
  • 廣域網喚醒

    斷開WiFi,連接數據網路

    然後喚醒

    如圖能看到數據包的表示喚醒包能發到網卡
  • 最後

    正常關掉電腦,進行喚醒測試,一般情況下都能成功

詳細原理

網路喚醒原理淺析(Wake On LAN)

總結

網路喚醒的關鍵之處

  • 硬體支持並打開相應的設置
  • 網卡設置可接受喚醒數據包
  • MAC地址和靜態IP
  • 如果廣域網的埠轉發和ARP綁定很重要

推薦閱讀:

QQ 相冊後台存儲架構重構與跨 IDC 容災實踐
用43p140實現最簡單的hacmp環境(二)
高德地圖基於阿里雲MaxCompute的最佳實踐

TAG:運維 | 計算機網路 |