Wake on LANでPCをリモート起動

RaspberryPi

遠隔地から自宅のPCにアクセスしたとか思ったことはないでしょうか。
リモートデスクトップなりすればいいのですが、問題はPCの電源をつけっぱなしにしなければならない点ですよね。

そんな時に役立つのが、Wake on LANという技術です。

Wake on LANとは

コンピュータネットワーク(主にLAN)に繋がっているコンピュータの電源を遠隔で投入する技術あるいはその行為を指す。

https://ja.wikipedia.org/wiki/Wake-on-LAN Wake-on-LAN – ウィキペディアより

wikiがきれいにまとめてくれていたので引用します。
Wake on LANを使えばリモートでPCの電源を入れることができます。

Wake on LANに必要なもの

今回Wake on LANをするための環境は以下の通りです。今回は有線接続のみの検証した結果を記述します。無線接続はできたら検証します。

・ Wake on LANの実行用端末(今回はRaspberryPi)
 ※WANからもWake on LANを実行したい場合はラズパイがおすすめです。

・ Wake on LANでの電源投入先 (今回はWindows10マシン)

Wake on LAN対応のマザーボードが必須

Windows10側のPCのマザーボードはWake on LANに対応している必要があります。対応していても、BIOS側で有効にする必要がある場合があります。最近のマザーなら大体対応していると思いますがWake on LANのマザーボード設定はメーカーなどによって変わってくるので、取説やメーカーのページを確認しましょう。
それでもわからないときは以下のサイトを確認することをお勧めします。

WOL(Wake On LAN)でハマりそうなポイント - Qiita
## はじめに WOLというのは、遠隔からマジックパケットを送って、パソコンの電源をONにする機能のことです。別にWindowsでなくてもできるし、どのOSにも対応しています。これは、パソコンのハード機能なので。 どのような仕組み...

※最近発売したマザーボードは3種類くらい試しましたが、初期設定で有効になっていました。
メーカーや発売時期によってデフォルトで有効になっているかもしれません。

また、ソフトウェア側でも設定が必要ですが、Windows10に関しては初期で有効になっていることは確認済みです(バージョン1809)。
Linuxに関してはCentOS7.6のみ検証しましたが、ハードウェア側の設定が必要でした。

※2019/10/06追記
Windows10であれば初期設定wakeonlanが有効と書きましたが、間違えです。
電源オプションのシャットダウン設定内の、『高速スタートアップを有効にする(推奨)』のチェックを外す必要があります。
高速スタートップを有効にするのチェックボックスを外すには『現在利用可能ではない設定を変更します』をクリックすれば編集することができます。

RaspberryPiにWake On Lan環境を構築

それではRaspberryPiにWake On Lanを構築していきます。

Wake on LANのインストール

以下コマンドを実行して、Wake On Lanをインストールしていきます。

$ sudo apt-get install wakeonlan

送信側の必要なソフトウェアはこれだけです。インストールが完了したらあとは対象のマシンにマジックパケットと呼ばれるものを送信すれば電源Onとなります。続いてマジックパケットの送り先と、送り方です。

Wake on LANの実行(マジックパケットの送信)

マジックパケットを送信するには、電源を投入するPCのMACアドレスが必要です。
Windows系であれば、コマンドプロンプトで以下のコマンドを実行すすれば知ることができます。
対象のアダプターの物理アドレスがMACアドレスになります。

>ipconfig /all

MACアドレスが分かれば後は実行するだけです。
ラズパイのコンソールより、以下のコマンドを実行することで電源を投入することができます。

$ wakeonlan  xx:xx:xx:xx (←電源を入れるPCのMACアドレス)

もしここで電源が入らない場合には、「Wake on LAN対応のマザーボードが必要」で説明した通り、マザーボードやOS側などの設定を見直しましょう。

Wake on LANの活用例

私個人が使っている活用例を紹介します。

外出先からのリモート操作

私は現在、一人暮らしをしているのですが、長期休暇などでは実家に帰ることもあります。夜など時間が空いたタイミングで作業したいな、と思ったときにWake on LANなら実家にいながら自宅の環境で作業をすることができます。

外出先ではなく自宅内でも、バックアップサーバなどからデータを確認したといった場合でも、一歩も動かずに電源を入れることだってできます。

自動バックアップ

毎週決まった時間にバックアップを取得するようにしているのですが、電源がOFFだとこれもできません。
ということで、指定した時間に起動してバックアップを実行するようにしています。
※定時起動はBIOSの設定でできた気がしますが、Wake on LANのほうが設定が楽だと思います。

一応タスクスケジューラーでバックアップコマンドを実行して、イベントに特定のIDを吐き出すことでシャットダウンまで行ってくれるようにしています。自動バックアップについても別記事で囲うと思います。

Wake on LANの問題点

Wikiにも書いてありますが、Wake on LANにも弱点があります。

1つは冒頭でも言った通り、ハードウェア側で対応していないと使うことができない点です。

もう1つはルータ越えができない点です。できない事もないのでしょうが、セキュリティ面からあまりお勧めできないためローカルネットを想定しているようです。

しかしラズパイがあれば解決します。
ラズパイ側にWANからSSH接続をして、そこからコマンドを実行してローカルのマシンを起動するという流れです。

ラズパイを推す理由は、消費電力が低いため常時起動していても電気代が気にならないという理由でおすすめというだけであって、別にラズパイにこだわる必要はありません。

しかし、こういった常時スタンバイ状態でないと不便だというものはラズパイに向いていると思います。
今後もこう言った記事を更新していこうと思います。

スポンサーリンク

コメント

タイトルとURLをコピーしました