特集
» 2009年04月08日 00時00分 UPDATE

リモートでコンピュータの電源をオンにする:Wake-On-LAN入門 (2/3)

[井上孝司,著]

 前述したように、WOLはネットワーク経由で電源投入の指令を送る機能だ。そのため、WOLの対象になるPCは、ネットワークに接続されている必要がある。そのPCに対して、「マジック・パケット」と呼ばれる、特殊なイーサネット・フレームを送信する。このマジック・パケットは、一般に「AMD Magic Packet Format」と呼ばれる形式のフレームで、以下のような内容をUDPで送信することとなっている。

  • あて先アドレスが「FF:FF:FF:FF:FF:FF(ブロードキャスト・アドレス)」
  • 起動したいPCのLANアダプタに割り当てられているMACアドレス×16回

 あて先として用いられる「FF:FF:FF:FF:FF:FF」は、レイヤ2のネットワーク媒体、すなわちイーサネットで用いられるブロードキャスト・アドレスだ。従って、マジック・パケットは同一セグメント内のすべてのノードに対して送信される。

 それを受け取った側では、マジック・パケットで16回繰り返されているMACアドレスが自機のものでなければ無視して、電源は投入しない。しかし、MACアドレスが自機のものであれば、電源投入の指示が来たと判断して電源をオンにする。

wi-wol01.gif WOLの仕組み
管理コンソールからマジック・パケットを送信する。「FF:FF:FF:FF」のブロードキャスト・アドレスに続き、起動したいPCのLANアダプタに割り当てられたMACアドレスを16回以上続けて送信する。
 (1)MACアドレスが自機のものではないので無視する。
 (2)MACアドレスが自機のものなので電源投入の指示を行う。
 (3)電源をオンにする。

wi-wol02.gif マジック・パケットの例
これは「Microsoft Network Monitor」でマジック・パケットをキャプチャした例(このツールについてはTIPS「ネットワーク・モニタ3.1を使う(基本編)」参照)。右下に、キャプチャしたフレームの内容を表示している。ブロードキャスト・アドレスの「FF:FF:FF:FF:FF:FF」((1))に続き、起動したいPCのMACアドレスが16回(以上)繰り返されている((2))ことが分かる。

 WOLの利用に際して注意しなければならないのは、PCの電源を切った状態になっていても、LANアダプタだけは通電していなければならない点だ。LANアダプタに通電していなければ、イーサネット経由でマジック・パケットが送られてきても、それを知るすべがないからだ。また、PCのBIOSがWOLに対応しており、マジック・パケットを受け取って電源投入の指令を出せるようになっている必要がある。

 従って、すべてのPC、あるいはすべてのLANアダプタでWOLを利用できるわけではなく、WOLに対応した製品を使用する必要がある。

WOLを利用するために満たすべき条件

 WOLを利用するために必要な条件についてまとめておこう。以下に示す条件は、Windows XP以降のPCならばほぼ満たしているはずだ。そのため、逆にカタログなどを見ても、WOLに対応しているかどうかの記述がないことが多くなっている。購入時にベンダにWOLの対応を確認するなどした方がよい。

PC本体のハードウェア要件
 WOLを利用するにはACPI 2.0(Advanced Configuration and Power Interface 2.0)に対応した製品が必要だ。ACPI 2.0が規格化されたのは2000年のことであり、それ以後に販売されたWindows対応製品であれば、この条件は満たされていると考えてよい。Windowsの省電力機能、あるいはスタンバイや休止状態といった機能を利用するには、ACPIへの対応が必要だからだ。

 ただしWOLではそれに加えて、サスペンドの電源管理がS1ステートとS3ステートに対応していること、S5状態からの電源投入が可能になっていること、という条件がある。ACPIステートについては、以下に一覧表を示す。

ACPIステート 状態の説明
S0(On) 稼働中
S1(Stand-by) CPUクロック停止、メモリ保持、ハードディスクの回転停止
S2(Suspend) CPUオフ、メモリ保持、ハードディスクのオフ
S3(Suspend to RAM) CPUオフ、メモリ保持、ハードディスクのオフ
S4(Hibernation/Suspend to Disk) 休止状態
S5(Soft Off) 電源オフ(シャットダウン)。ただしデバイスへの給電は続ける
ACPIステートの一覧

 BIOS設定画面の「Power Management」の項目で、設定可能なACPIステートの選択肢を確認すれば、対応しているACPIステートを把握できる。それができない場合、ベンダに確認してみる方がよいだろう。

WOLに対応した有線LANアダプタが必要
 先述のように、WOLが機能するためには、PC本体が停止していてもLANアダプタには電源を供給し続ける必要がある。また、BIOSの指令によって電源を投入できるようになっていなければならない。

 最近はマザーボード上にLANアダプタを組み込んだPCが大半を占めているが、そのLANアダプタがWOLに対応していなければ、別途、WOLに対応したLANアダプタを追加装備する必要がある。もっとも企業向けのクライアントとして販売されているPCであれば、WOLに対応したLANアダプタをオンボードで装備している可能性が高い。

 LANアダプタを増設する場合、アダプタを拡張スロットに取り付けるだけでなく、WOLによる電源投入指示の信号を伝達するためのケーブルを、LANアダプタとマザーボードの専用コネクタを結ぶ形で取り付けなければならない。

wi-wol03.jpg WOL用のコネクタを持つマザーボードの例
LANアダプタを装備していないマザーボードでは、拡張スロットに取り付けたLANアダプタからWOLの起動指示を受け取るために、専用のケーブルを接続するためのコネクタを備えたものがある。LANアダプタについても、同じコネクタを備えた製品が必要になる。
 (1)隠れていて少々見えにくいが、中央の「WOL」と書かれた3ピンコネクタがWOL用のコネクタである。

 なお無線LANアダプタでは、通信を確立するためにOSによる設定が必要になる。そのため、通電するだけでリンクを確立できるイーサネットと異なり、無線LAN経由でWOLを利用することはできない。

BIOSとLANアダプタ、OSによる設定が必要
 BIOSやLANアダプタがWOLに対応しているだけでは不十分で、後述のようにBIOSセットアップ画面でWOLを有効にしておく必要がある。製品によっては、既定値ではWOLが無効になっている場合もあるので注意が必要だ。WOLに対応したコンピュータでは、BIOSセットアップ画面に関連する設定項目が存在するはずだ。電源管理(Power Management)関連の設定項目に、WOLの設定が含まれていることが多い。

 また、PC本体のBIOSセットアップ画面では、起動デバイスの優先順位に注意する必要がある。フロッピーディスク・ドライブ、CD-ROMやDVD-ROMといった光学ドライブ、あるいはUSBデバイスに高い優先度を設定していると、WOLによって電源を投入できても、ハードディスクからOSを起動できない可能性があるからだ。そのため、確実を期するためには、ハードディスクを最優先の起動デバイスに指定する必要がある。

 このほか、意外と見落としがちなのがOSの設定だ。Windowsの場合、デバイス・マネージャでLANアダプタのプロパティ画面を表示させて、WOLを有効にし、LANアダプタによる電源投入指示が可能な設定にしておく必要がある。設定方法の詳細については後述する。

MACアドレスの登録が必要
 WOLを使って電源投入の指令を送るには、対象となるPCが使用しているLANアダプタのMACアドレスを把握しておく必要がある。いちいちMACアドレスを手作業で調べて回ると手間がかかり過ぎるため、この作業を簡単にするための方法についても、本稿の最後に解説する。

WOLに関する制約と注意点

 続いて、すでに述べた内容と重複しない範囲で、WOLの利用に関する制約についてまとめておこう。

セグメント越えができない
 WOLで電源投入の指令を送るために使用するマジック・パケットは、レイヤ2、すなわちイーサネットのブロードキャスト・フレームとして送信している。そのため、マジック・パケットの送信元となるPCとあて先となるPCは、同じブロードキャスト・ドメインの範囲内に配置していなければならない。

 例えば、ルータを介してネットワークを分割していた場合、あるいはWANやVPNを通じて接続した遠隔地のネットワークでは、WOLの利用ができない可能性が高い。ただし、マジック・パケット送信に使用するソフトウェアの中には、ブロードキャストだけでなく、IPアドレスによるあて先指定が可能なものもある。これなら特定のPCを対象に指定してWOLを作動させることができ、ルータやレイヤ3スイッチをまたぐこともできる。その代わり、対象となるPCには固定的にIPアドレスを割り当てておく必要がある。

相手PCの動作確認ができない可能性がある
 ネットワーク経由で電源投入の指令を送るため、管理者が対象となるPCの画面を見ることはない。すると、ハードウェア障害、あるいはOSのトラブルといった事情から相手のPCが正常に起動できなかった場合、管理者がそのことを把握できない可能性がある。

 そのため、WOLによって電源を投入できたかどうかだけでなく、相手PCが正常に起動できたかどうかを確認する手段がある方が望ましい。

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。