Wake-On-LANのマジックパケットを送信するPowerShell

Wake-On-LANのマジックパケットを送信するPowerShellスクリプトです。

wol.ps1 をダウンロード

ポイント: arp で見つかるMACアドレスは「起動中」のPCのものです。起動中のPCへWOLを送っても意味がないため、 このスクリプトは 「収集」「送信」の2段階に分かれています。 電源が入っている間にMACアドレスを収集・保存しておき、後日そのPCが起動していないときに保存済みMACへWOLを送信します。

実行方法

方法コマンド
対話的に実行(メニューで収集/送信を選択).\wol.ps1
MACアドレスを指定して直接送信.\wol.ps1 -MacAddress 00-1A-2B-3C-4D-5E

対話モードの流れ

  1. 実行すると、まず「1) 収集する」「2) 送信する」のメニューが表示されます。
  2. 収集を選んだ場合: arpから現在起動中の端末のMACアドレスを取得し、履歴ファイルに保存して一覧表示します(この時点では送信しません)。
  3. 送信を選んだ場合: 保存済みのMACアドレス一覧から番号で対象を選択、または手入力します。
  4. 現在のネットワークに応じたブロードキャストアドレスが自動計算されます。
  5. マジックパケットが送信されます。
1) MACアドレスを収集して保存する(起動中のPCから収集)
2) 保存済みMACアドレスへWOLを送信する
番号を選択: 

MACアドレスの保存

収集または送信で使用したMACアドレスは次のファイルに自動保存され、次回以降の選択肢に表示されます。

%USERPROFILE%\wol_mac_history.json
同じMACアドレスは重複して保存されません。

ブロードキャストアドレス

現在接続しているネットワークのIPアドレスとサブネットマスクから自動的に算出されます。取得できない場合は 255.255.255.255 が使用されます。