■root権限でWOLサービス(ethtool)を設定する
「/usr/sbin/ethtool -s eth0 wol g」が起動時に読み込まれるように設定します。
g はマジックパケットで起動することを意味します。
$ sudo apt-get install ethtool
$ man ethtool 2> /dev/null | grep "Wake on Magic" -B 9 -A 4 2> /dev/null
wol p|u|m|b|a|g|s|d...
Sets Wake-on-LAN options. Not all devices support this. The
argument to this option is a string of characters specifying
which options to enable.
p Wake on phy activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
a Wake on ARP
g Wake on MagicPacket(tm)
s Enable SecureOn(tm) password for MagicPacket(tm)
d Disable (wake on nothing). This option clears all previous
options.
■WOLサービスが動作するサーバの物理ネットワークのMACアドレスを確認する
「00:ff:ff:ff:ff:ff」の形式のMACアドレスを準備します。
$ dmesg | grep eth | grep "MAC addr"
※該当のMACアドレスのブロードキャストも確認しておきます。
$ ip addr
$ LANG=C;/sbin/ifconfig | grep HWaddr
■テストを行う
マニュアルの確認は以下のようにします。
$ sudo ethtool -h
$ sudo ethtool eth1 | grep Wake
Supports Wake-on: g
Wake-on: d
$ sudo ethtool -t eth1 | head -1
The test result is PASS
■ネットワークインターフェイス設定
Debianの場合は不要です。
リンクの通り、「/etc/init.d」以下のサービスとして環境変数を読み込むRedhat系の場合に設定します。
http://www.cyberciti.biz/tips/howto-linux-add-ethtool-duplex-settings-permanent.html
■WOLクライアントを設定し、起動確認を行う
ethtoolをインストールしたサーバ側で以下のようにtcpdumpで待ち受けて、
指定のMACアドレスが確認出来るかテストします。
$ sudo tcpdump -X -vvv -i eth1 src client-pc
wakeonlanクライアントをインストールしたPCから、
上記で確認したMACアドレスを指定します。
$ sudo apt-get install wakeonlan
$ wakeonlan 00:ff:ff:ff:ff:ff
tcpdumpでマジックパケットを受け取れることを確認したらサーバを電源OFFし、
wakeonlanクライアントから起動できるかを確認します。