ホーム › 記事一覧 › Wake on LANで自宅サーバーを24時間稼働から卒業する:BIOS・NIC設定とスマホからの起動

Wake on LAN

Wake on LANで自宅サーバーを24時間稼働から卒業する:BIOS・NIC設定とスマホからの起動

公開 2026-10-28読了 5 分

Photo: Brett Sayles / Pexels

この記事でわかること
検証用のミニPCやサブのサーバーを使うときだけ起動するために、Wake on LANをBIOS・Linux側のNIC設定・送信側の3か所で設定する手順と、外出先のスマホから起こす構成をまとめます。

先に結論です。Wake on LAN(WoL)は、電源が切れたPCのNICに「マジックパケット」を送って起動させる仕組みです。設定する場所は BIOS・OS 側の NIC 設定・送る側の機器 の 3 か所で、どれか 1 つでも抜けると起きません。外出先から起こしたいときは、スマホから直接パケットを送るのではなく、自宅 LAN 内で常時動いている機器から送る 構成にするのが確実です。

常時動かす必要があるのは NAS や Home Assistant くらいで、Proxmox の検証機やバックアップ先のサブ機は「使うときだけ起動」で十分、という人は多いはずです。この記事では、その切り替えに必要な設定を順番に整理します。

Wake on LANの仕組みと前提

マジックパケットは、起こしたい機器の MAC アドレスを 16 回繰り返したデータを、LAN 内にブロードキャストで送るものです。電源オフ中も NIC にはわずかに給電されていて、自分宛てのパケットを見つけるとマザーボードに起動を指示します。

前提として押さえておきたいのは次の 3 点です。

  • 有線 LAN が前提:Wi-Fi 経由の WoL に対応する機種は限られるとされています。サーバーは有線でつなぎます
  • ブロードキャストは同じ LAN 内にしか届かない:ルーターや VPN を越えて直接は送れません
  • 電源ケーブルを抜くと効かない:停電やタップのスイッチオフの後は、一度手で起動が必要な機種があります

手順1:BIOSでWake on LANを有効にする

メーカーによって名前が違いますが、次のような項目を探します。

  • Wake on LAN / Power On By PCI-E / Resume by LAN を Enabled にする
  • ErP Ready / Deep Sleep / EuP のような省電力項目を Disabled にする

2 つ目が見落としやすいところです。ErP 系の設定は電源オフ時の待機電力を極限まで下げるもので、有効だと NIC への給電も止まり、マジックパケットを受け取れません。設定を保存したら、起こしたい機器の MAC アドレスを控えておきます。

ip link show
# link/ether の後ろが MAC アドレス(例: 00:11:22:33:44:55)

手順2:Linux側でNICのWoLを有効にし、再起動後も残す

BIOS で有効にしても、OS がシャットダウン時に NIC の WoL を切ってしまうことがあります。ethtool で状態を確認します(インターフェース名は ip link で確認したものに読み替えてください)。

sudo apt install ethtool
sudo ethtool enp1s0 | grep Wake-on

Supports Wake-on: pumbg に g が含まれていれば対応しています。Wake-on: d なら無効なので、次で有効にします。

sudo ethtool -s enp1s0 wol g

ただし、このコマンドは再起動すると元に戻ることがあります。環境に合わせて、次のどれかで永続化します。

NetworkManager の環境(Ubuntu Desktop・ラズパイの Bookworm 以降など)

nmcli connection show
sudo nmcli connection modify "<接続名>" 802-3-ethernet.wake-on-lan magic

Proxmox VE(/etc/network/interfaces で管理)

物理 NIC の定義に 1 行足します。ブリッジ(vmbr0)ではなく、物理 NIC 側に書くのがポイントです。

iface enp1s0 inet manual
        post-up /usr/sbin/ethtool -s enp1s0 wol g

Ubuntu Server(netplan)

network:
  ethernets:
    enp1s0:
      match:
        macaddress: "00:11:22:33:44:55"
      wakeonlan: true

netplan で wakeonlan を使う場合は match で MAC アドレスを指定する必要があるとされています。書いたら sudo netplan apply で反映し、再起動後にもう一度 ethtool で Wake-on: g になっているか確認します。

手順3:LAN内の別の機器からマジックパケットを送る

送る側は、同じ LAN にある Linux 機なら何でも構いません。

sudo apt install wakeonlan
wakeonlan 00:11:22:33:44:55

起きないときは、ブロードキャストアドレスを明示すると届くことがあります。

wakeonlan -i 192.168.1.255 00:11:22:33:44:55

まずは対象機を sudo poweroff で落とし、この方法で起動するところまでを確認します。ここで起きなければ、BIOS の ErP 系の設定か、OS 側の Wake-on: d に戻っていないかを見直します。

外出先のスマホから起こす構成

スマホの WoL アプリは、同じ Wi-Fi にいるときはそのまま使えます。問題は外出先からです。Tailscale などの VPN でつないでも、ブロードキャストは自宅 LAN まで届かないため、スマホから直接マジックパケットを送っても起きません。

そこで、常時動いている機器に送ってもらう 形にします。

  • ラズパイ+Tailscale:常時稼働のラズパイに Tailscale を入れておき、外出先から SSH で入って wakeonlan を実行します。スマホの SSH アプリで 1 コマンドなので手軽です。WoL の送信役だけなら、低消費電力の小型モデルで足ります
  • Home Assistant:Home Assistant を動かしているなら、Wake on LAN の統合でボタンを作れます。外出先から Home Assistant のアプリを開けるようにしてあれば、そこから起動できます
  • ルーターの機能:ルーターによっては、メーカーのアプリや管理画面から LAN 内の機器に WoL を送れる機種があります

ルーターでポートを開けて、インターネットから直接マジックパケットを受ける方法もありますが、外に開く口が増えるので、この記事ではおすすめしません。

使うときだけ起動する運用の注意点

  • 起動後の自動化を確認する:VM の自動起動(Proxmox の「Start at boot」)や Docker の restart: unless-stopped が設定されていないと、起こしても中のサービスが動きません
  • 落とし忘れ対策:使い終わったら sudo poweroff で落とす習慣にするか、cron で深夜に落とすようにします
  • バックアップの時間に合わせる:バックアップ先として使う機器なら、送る側の cron で決まった時刻に wakeonlan を送り、終わったら落とす運用もできます
  • 起きない日に備える:WoL が効かないときに備えて、BIOS から操作できる IP-KVM を用意しておくと、出先からでも復旧できます

まとめ

  • WoL の設定場所は BIOS・OS 側の NIC・送る側の 3 か所。BIOS の ErP 系の省電力設定は無効にする
  • Linux では ethtool で Wake-on: g を確認し、NetworkManager・interfaces・netplan のどれかで永続化する
  • 外出先からは、常時稼働のラズパイや Home Assistant に Tailscale 経由で頼んで送ってもらう
  • 起こした後にサービスが自動で上がるか、落とし忘れないかまで決めておくと運用が楽になる

運営者が作った Excel テンプレートを BOOTH で配布しています。IT 資産管理台帳(無料 Lite 版あり) / IT 資格の学習管理シート

部長(本業: IT インフラ) 家でも同じことをして遊んでいます。記事は実機で試してから書き、失敗もそのまま載せます。