カウンター

2013年9月25日水曜日

Wake on Lan

現在我が家では、自作パソコンのstation TVにてTV録画しております。

予約録画のためには、電源が入っている必要があり、
録画して撮りためておくのが好きなのでちょいちょい予約するのですが、
つけっぱなしにしておくと相方に怒られますwww

予約を入れてても、電源が入っていないと録画されず、
家に帰ったら、あーーー撮れてなかったー、ってのがちょいちょいあります。。。

時間になったら勝手に電源が入ればいいのになあ。
→誰か知っていたら教えてください。。。


時間になったら電源オン、は無理そうなので、

出先でiphoneから自宅のPCの電源をつける!!!

という目的とします。
そこで、(天下り的ですが)前から話を聞いていた「Wake on Lan」を試してみることに。
wake on lan(wol)とは、リモートでPCのスイッチをオンにする、という機能です。
この時起動命令用に送信されるパケットを、”マジックパケット”と言います。

幸い、録画PCではwolに対応していたので下記設定
をして利用できる状態にしました。

・BIOS設定
・デバイスマネージャでNICのプロパティ→WOLをオン

まずは同セグメント(LAN内)の端末から起動させてみます。
起動は、Wake up On Lan tool・MagicBoot等のツールをダウンロードして、

・IPアドレス
・サブネットマスク
・MACアドレス

を設定します。IPアドレスは起動したいPCのIPでもいいですが、LANのブロードキャストアドレス(例えば、192.168.0.255)にすると、確実にいけます。

iphoneでもできます。私は下記アプリをインストールしました。(どっちでもOKでした)
・RemoteBoot
・mWOL

結構サクッとできました!うれしいですね。


本題はここからです。
当初の目的は、インターネット経由で家のPCの電源をつける、ということでした。


元々LAN内を想定した技術のようなので、これが中々厄介です。

色々調べたのですが、下記4つの方法ができそうだとわかりました。

1.ルータからWOL(VPN経由)
2.ルータからWOL(直アクセス)
3.l同セグメントの別端末からWOL
4.ルータからポートフォワード


最初に書いておきますが、インターネット経由で家のネットワークにアクセスするには、
グローバルIPが必要です。
通常のプロバイダ契約の方もグローバルIPが当然あるのでできますが、
通常契約の場合グローバルIPは頻繁に変わりますので、別途グローバルIPを取得するか、ダイナミックDNSを利用するか、という方法があります。

ダイナミックDNSは、myDNS等が無料で利用できるので、おすすめです。




では、改めて1個ずつ見ていきます。

1.ルータからWOL(VPN経由)

うちのルータは、バッファローのWHR-G301Nなのですが、
WOL機能がありました!!!
ルータの管理画面から操作するようです。

同ルータのPTPPサーバ機能を利用してVPNでアクセスし、
そこで管理画面→WOL、でできました。


2.ルータからWOL(直アクセス)

こっちは、管理画面にアクセスするのにインターネットから直でアクセスする、
というものです。
他のルータは知りませんが、バッファローのルータの管理画面の認証は
ベーシック認証という、古びた認証でリスクが高いです。。。(ID,PWが暗号化されない)

やめましょう。。。


3.同セグメントの別端末からWOL

こちらは、同セグメントにつけっぱなしの別PCがいて、
そいつを操作してマジックパケットを送信してもらうものです。

色々やり方はあると思いますが、
Webサーバとして構築しておいて、外部ネットワークから

http://[グローバルIP]/wol.cgi

にアクセスしたらcgiがマジックパケットを送る、というやり方があるのかな、と思います。
家でPCをつけっぱなしにできないので、この選択肢は残念ながら取れません。。。

4.ルータからポートフォワード

今回、これをやりたくて色々試行錯誤しました。 
このやり方では、ルータでポートフォワードの設定をしておいて、
ルータ経由で当該PCにマジックパケットを送付する、というものです。

具体的には、ルータ上で「このポートに来たパケットは、あのIPのPCに送ってね!」
という設定をしておきます。














↑設定はこんな感じです。
192.168.11.2は、電源を付けたいPCのプライベートIPです。

ここで大きな問題が、、、

イーサネットでは、MACアドレスを見てパケットを対象PCに送信します。
もうちょっと言うと、LAN内ではIPアドレスからMACアドレスに変換し、当該MACアドレスにパケットを送信します。その変換を実行するためのMACアドレスとIPアドレスの紐づけである、「arpテーブル」ってのを各機器で持っています。

この場合はルータの持っているarpテーブルですが、対象のPCの電源が消えてしばらくすると(5分程度で)消えてしまいます。(仕様にもよりますが、このルータはそうっぽい)
つまり、電源が消えて時間が経ったPCは、ルータから見てどこにいるかわかんないわけです。

「あのPCに送ってね!」ではできないようですので、
じゃなく「すべてのPCに送ってね!」とします。

つまり、ブロードキャストです。
ポートフォワードの設定で、ブロードキャストアドレス(例えば192.168.0.255)にフォワードする設定を入れましょう!!!


ルータの管理画面にて設定しようとしたら、
「そのアドレスは設定できません。」















ちーん。

できるルータもあるみたいですね。(NEC製ルータ等)
残念です。。。

0 件のコメント:

コメントを投稿