節電のためにWake-On-Lanを使う

2011年7月5日(火)
sanonosa

Wake-On-Lanの設定方法

ここからは具体的なWake-On-Lanの設定方法を記していきます。なお本連載では便宜上サーバーOSとしてCentOSを用います。他のOSやLinuxディストリビューションでも基本的な考え方は同じです。

(1) BIOSの設定

お使いのマシンがWake-On-Lanに対応している場合、BIOS内に「Wake-On-Lan」もしくは「WOL」という記述がどこかに見られると思います。まずはそれを有効にします。

図2:wol BIOS画面

またマシンがシャットダウン状態でもNICに通電が行われていないといけません。BIOSの種類によっては、ひょっとするとそのための設定があるかもしれません。その場合はそれらも有効にします。

(2) OSでの設定

CentOSでWake-On-Lanを使う方法はいろいろありますが、ここではethtoolというツールを使ってみたいと思います。

  # yum -y install ethtool    <- ethtoolをインストールします
  # ethtool -s eth0 wol g     <- eth0というNICがマジックパケットを受け取れるように

ただし上記の方法だとサーバーを起動する度にマジックパケットを受け取れるよう設定しなければなりませんので、以下のいずれかの要領で設定ファイルを書き加えておくと良いでしょう。

  # vi /etc/sysconfig/network-scripts/ifcfg-eth0
  ETHTOOL_OPTS="wol g"

もしくは

  # vi /etc/rc.local
  ethtool -s eth0 wol g

の要領で追記します。

なお、設定が無事に行われたかどうかは以下のコマンドを実行することで判断することができます。

# ethtool eth0
Settings for eth0:
  Supported ports: [ TP MII ]
  Supported link modes:   10baseT/Half 10baseT/Full
                          100baseT/Half 100baseT/Full
                          1000baseT/Half 1000baseT/Full
  Supports auto-negotiation: Yes
  Advertised link modes:  10baseT/Half 10baseT/Full
                          100baseT/Half 100baseT/Full
                          1000baseT/Half 1000baseT/Full
  Advertised auto-negotiation: Yes
  Speed: 100Mb/s
  Duplex: Full
  Port: MII
  PHYAD: 0
  Transceiver: internal
  Auto-negotiation: on
  Supports Wake-on: pumbg
  Wake-on: g                 <-ここが「g」になっていればOK
  
  Current message level: 0x00000033 (51)
  Link detected: yes

問題なければマジックパケットを飛ばすNICのMACアドレスをメモしておきます。

# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:2F:C1:FB:DB:90  <- この部分にあるMAC
アドレスをメモします
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:63293164 errors:0 dropped:0 overruns:0 frame:0
          TX packets:25251966 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3115658524 (2.9 GiB)  TX bytes:2933678118 (2.7 GiB)
          Interrupt:217 Base address:0xa000

そしてマシンをシャットダウンします。

  # shutdown -h now           <- シャットダウン

次ページでいよいよWake-On-Lanを試してみます。

国内某有名ITベンチャー企業に創業メンバーとして携わる。国内最大規模のシステムを構築運用してきたほか、社内情報システム導入のプロジェクトマネジメント、韓国の交友関係が豊富なことから韓国関連で多数のシステムインテグレーションなども行ってきた。前職は富士通株式会社でSE。
個人blog:http://nosa.cocolog-nifty.com/

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています