n-Archives.net

nWOL: Wake on LANを使った遠隔PC起動管理ツール

nWOL Version 1.5.31 リリースしました (2020/8/23)
特集記事

目次

nWOLの概要

nWOL画面キャプチャWake on LANの仕組みを利用して、PCを遠隔起動するツールです。シンプルだけど使って気持ちいいツールを目指して作ってみました。

  • LANに接続されている機器のMACアドレス、IPアドレス、ホスト名を高速で検索
  • LAN内のPCのIPアドレスの変化を自動的に検知し更新します。PCに固定IPアドレスを割り当てる必要がありません。
  • ルータを経由した先にあるPCの遠隔起動も可能
  • マジックパケット送出からの経過時間を表示
  • 遠隔PCの起動状態をリアルタイムで表示
  • 遠隔PCの起動状態をタスクトレイ通知領域にリアルタイムに表示
  • マジックパケット送信などをコマンドから行える nWOLc.exe を提供 (Version 1.5 新機能)
  • メイン画面のデザインを変更可能 (Version 1.5 新機能)
  • 起動される側のPC設定方法に関する情報をホームページにて公開しています

 

Wake on LANによる遠隔起動には、nWOLを「起動する側」のPCにインストールする他に、「起動される側」のPCの設定も必要です。設定方法がわからないという方は、「Wake on LAN設定方法」に情報をまとめていますのでご参照ください。

 

ダウンロード

対応環境は Windows 10 64bit/32bit です。インストールするWindowsの種別(64bit/32bit)に合わせて、インストーラパッケージを選択してください。種別(64bit/32bit)が異なる場合インストールできません。

バージョン 1.2.12からnWOL実行ファイルをAnyCPU化され、64bit/32bit版ともnWOL.exe実行ファイルは共通となりました。ZIPパッケージも64bit/32bit版で共通となりました。

ダウンロードしたインストーラを実行する際、「WindowsによってPCが保護されました」という青いポップアップが表示される場合がありますが、「詳細」→「実行」 とすることで、インストールを実行することができます。

インストール方法、使用条件などについては、nWOLマニュアルをご覧ください。

 

最新版 Version 1.5.31 (2020/8/23)

Hash値の確認方法はこちら  ⇒  記事:ダウンロードしたファイルの同一性を確認する方法

 

ドキュメント

 

Windows PC の Wake on LAN 設定方法

Wake on LANによる遠隔起動は非常に便利なのですが、その設定が少々難易度が高いところが難点となっています。特に「起動される側のPC」の設定については、少々知識が必要であったり、ハードウェアによって設定方法が異なるなどの難しさがあり、うまくいかない場合の原因解析にも時間がかかることもよくあります。Wake on LANの設定方法に関する情報を以下のページにまとめていますので、ご参照ください。

 

スクリーンショット

メイン画面

設定画面

 

タスクトレイアイコン

nWOLタスクトレイアイコンの画面キャプチャ

 

掲載サイト情報

nWOL 紹介記事:

 

nWOL ダウンロードサイト:

 

 

【関連記事・関連コンテンツ】

 

この記事へのコメント

管理者   2020-10-01 00:50:30
じゃこさん、Scanの感動を味わっていただけてとてもうれしいです。
ソースなんですが、いろいろ思いがあって、今のところ公開してないんです。ごめんなさい。
ところで、Scanの記事(https://n-archives.net/software/nwol/articles/nwol-tips-scan/)って読んでいただけましたでしょうか? nWOLのScan機能は特にこだわって作ったところでして、その実現方法について簡単ですが紹介しておりますので、ぜひ参考にしていただければと思います。処理フローの一つ一つが何をやっているのかを理解していただければ、同じような機能を実装できるのではないかと思いますよ。

じゃこ   2020-09-30 17:24:34
Scan機能とても感動しました。
ぶしつけなお願いかもしれませんがこちらのソースコードはGit等で公開される予定はないのでしょうか?
このあたりの勉強をしており参考にさせていただけないかなと思いまして。。

AKI   2020-08-29 10:13:28
管理者様

素早いご対応でただただ驚きと感謝しかありません。
先ほど確認したところ問題なく動作する事を確認しました。
コマンド化も含めて本当に有難うございました。

管理者   2020-08-29 07:56:16
うれしいコメントありがとうございます!
大変励みになります。
今後ともご愛用のほど、よろしくお願いいたします。

太楽   2020-08-28 06:54:38
使わせていただきました。すごくいいソフトですね。
特にネットワーク上のPCをスキャンして簡単に登録できるところが、便利です。
デザインもいいですね。
ありがとうございます。

とし   2020-08-26 16:13:22
丁寧なご回答ありがとうございます。
ディレクテッドブロードキャストアドレスはルーター越えできない認識でしたが、ルーターがブロードキャストのルーティングを許可していれば、越えた先のルーターからブロードキャストができるんですね。勉強になりました。
ありがとうございました。

管理者   2020-08-25 22:07:44
ルータ越えでWOL起動させる場合、まず、マジックパケットを、送信先のPCが属するLANに届ける必要があります。
しかも、そのLAN内ではブロードキャストさせる必要があります。
それを実現するIPアドレスがディレクテッドブロードキャストアドレスと呼ばれるアドレスになります。

IPアドレスは、ネットワーク部とホスト部で構成されます。
ネットワーク部は、ネットワークセグメントの住所を示します。
また、ホスト部は、ビットを全て1にすることで、ブロードキャストアドレスにすることができます。
つまり、送付先のIPアドレスのホスト部のビットを全て1にしたアドレスが
ディレクテッドブロードキャストアドレスということになります。

例えば、送信先のPCのIPアドレスが 192.168.1.10、
ネットマスクが /24 (255.255.255.0) だった場合、
ディレクテッドブロードキャストアドレスは 192.168.1.255 になります。
このアドレスを送信先IPアドレスに設定し、マジックパケットを送信すると、
ルータを超えた先のNWでマジックパケットをブロードキャストさせることができ、
PCをWOL起動させることができるようになるのです。

ディレクテッドブロードキャストアドレスについては、atmarkIT記事
「ブロードキャストアドレスの種類を知る 」
https://www.atmarkit.co.jp/ait/articles/0701/06/news015.html
にも詳しく解説されていますので、ご参照ください。

とし   2020-08-25 11:34:26
ルーター越えWOLについて教えてください。
IPアドレスを設定させているということは、ユニキャストでMagicPacketを送信しているのでしょうか?その場合ルーター内のARPテーブルがクリアされてしまうと送信できないような気がするのですが。。。起動する側PCの電源断から、ルーターのARPテーブルがクリアされる程度の時間をおいて、WOLの検証をされていますでしょうか?
上記がクリアされているようでしたら、その仕組みを教えていただきたく。ルーター超えでWOLする仕組みがユニキャスト以外で思いつかなかったので。よろしくお願いいたします。

管理者   2020-08-24 01:07:43
インターネットをいろいろ調べたところ、おそらくですが、WindowsServer2012/Windows8のバグのようですね。
タスクスケジューラで「ユーザーがログオンしているかどうかにかかわらず実行する」を選択して実行すると、
ユーザプロファイルがうまく参照できないことがあるようで、指定したユーザではなく、Defaultユーザの
プロファイル C:\Users\Default\ を見に行ってしまうという問題があるようです。
https://social.technet.microsoft.com/Forums/systemcenter/en-US/5e6dc56d-9069-42e3-a7e3-87437cf8ed81/scheduled-tasks-run-in-the-default-user-profile?forum=winserver8gen
https://support.microsoft.com/en-us/help/2968540/scheduled-tasks-reference-incorrect-user-profile-paths-in-windows-serv

先ほど、nwolcに、読み込む設定ファイルを指定するオプションを追加したバージョンを公開しましたので、
試してみていただければと思います。nwolc -c "自分のユーザ名" -l などとすれば、正しく実行
できるのではないかと思います。

なお、-o と -v を指定していただくと、設定ファイルの絶対パスが表示されますので、
どのファイルを読もうとしているのかがわかると思います。

AKI   2020-08-18 10:30:47
管理者様

アドバイスありがとうございます。
コンフィグが読み込めていないのではとの事だったのでコンフィグを使わないパラメータ指定で動作するか検証したところ動作しました。
管理者様の仮説通りのようです。
となるとコンフィグファイルの置き場を変えることができれば解決するかもしれません。

管理者   2020-08-18 09:20:40
Windows10では動作したとのことご連絡ありがとうございました。
おそらく、原因はコンフィグファイルを読み込めていないのが原因と想像されます。
nWOLのコンフィグファイルは
C:\Users\<username>\AppData\Roaming\nWOL\nWOL.conf
に存在しており、ユーザがログインしていないとその領域がシステム上ロードされていない、というようなことが
起こっているのかもしれません。nWOLcはファイルが読み込めなくても処理は継続するようになっています。
原因が分かり、対処の必要があるようであれば、対処できればと思います。

AKI   2020-08-18 08:32:51
管理者様

Windows10環境で試したところ問題なく動作しました。WindowsServer2012だと上手く動かずにて何か別の問題かもしれません。また色々試してみたいと思います。フォロー頂き有難うございました。

AKI   2020-08-18 07:19:14
管理者様

返信ありがとうございます。
ログインした状態でタスクスケジューラ上で手動実行及びスケジューラでの自動実行は正常に動作していますが何故かログインしていない状態だと動作していない様に見えます。ちなみにその状態でも履歴上は正常終了となっています。

管理者   2020-08-17 19:17:06
AKI様
こちらで「ユーザーがログオンしているかどうかにかかわらず実行する」
に設定して試してみましたが、動いているように見えます。

コマンドプロンプトからコマンドを手入力するとちゃんと動作していますでしょうか?
また、「ユーザがログオンしている時のみ実行する」では動作していますでしょうか?

タスクスケジューラの確認ポイントとしては以下のような点でしょうか。
・「タスクの実行時に使うユーザーアカウント」が自分のアカウント
(nWOLを設定したアカウント)になっているか。
・操作→プログラムの指定のところで、nwolを指定するところは、絶対パスを指定してください。
パスに空白文字を含む場合、" " で囲う必要があります。例えば、以下のような感じです。
"C:\Program Files\nWOL\nWOLc.exe"
・指定するホスト名が空白文字を含む場合なども、" " で囲う必要があります。
例えば、 -h "My Server" などです。
・タスクスケジューラのタスクのプロパティで、「履歴」タブのイベントの中に、
設定した時刻にタスク実行結果が残っていないでしょうか?
正常に起動され完了していると、「正常に完了しました」という表示が見つかるはずです。
例えば、プログラムの起動に失敗していると、オペコードに「起動エラー」などと
表示されます。

ご確認いただければ。

AKI   2020-08-17 11:55:16
管理者様

コマンド対応ありがとうございます。
早速タスクスケジューラに登録し使用してみたのですがログオフ状態での実行では上手く動かずにて何か回避方法あれば教えて下さい。
ちなみにタスクのセキュリティオプションのユーザーがログインしているかどうかに関わらず実行するを選択しています。

管理者   2020-08-08 20:58:34
AKI様 (公開遅れてすみません。)
リクエストありがとうございます。
タスクスケジューラで時刻指定でWOL起動させたいということですね。
確かにそういう方はいらっしゃるような気がしてました。
多分 nwol にコマンドラインオプションを付けて、GUIを表示させず処理を行うような形ですかね。
と、アイデアは浮かぶのですが、現在いろいろと対応してまして、検討の上、順に対応したいと思います。
時間がかかりそうな予感がしておりますが、、、すみません。

AKI   2020-08-06 14:55:38
非常に使いやすくて重宝しています。
あと起動時に登録されている機器にマジックパケットを送出する機能が欲しいです。
タスクスケジューラに本アプリを登録する事で時間指定で起動できるようになるので。
ご検討宜しくお願い致します。

管理者   2020-07-29 01:09:59
nWOLのON/OFF状況はpingが返ってくるかどうかで判断しているので、
pingが返ってきていない可能性が高いです。
確認する方法としては、Win-R → cmd でコマンドプロンプトを起動し、
ping <先方のIPアドレス>
を実行することで、正常にpingが返ってきているかがわかります。

pingが返ってきていない原因は、実際様々でしょうけれども、
私も実は最近同じ状況になりました。

Windows10を初期インストールすると、デフォルトで、
firewallの設定が ping にリプライしない設定になっていたのが原因でした。
pingを返すようにWindowsの設定が必要、ということでした。
これについては、記事にしようと思ってるのですが、
お急ぎであれば、「windows10 ping 通らない」とかで検索してみてください。

これ以外にもpingが通らない原因はたくさんあると思うので、
分からない場合はいろいろネットで検索してみてください。

なお、参考に、うちの場合、何かの拍子に、Windows10 の
Windows Defender Firewall サービスが起動停止を繰り返す状況に
なってしまい、pingも返さなくなっていたようでした。firewallの設定変更もできず、
いろいろ調べたのですが、結局再インストールしか手段がありませんでした。

また、nWOLのScanですが、pingは投げるものの、pingのリプライを
見ているわけではなく、ARPテーブルを参照するだけですので、
pingリプライがなくとも、アドレスは取得できるのです。

めんだこ   2020-07-28 20:45:40
起動したいPCはnWOL設定のScanから追加することができるのですが、追加しても遠隔から起動することができず、また手動で電源を入れてもON/OFFが反映されません。ON/OFF状況が反映されないことから、ホストのWOL設定以外の部分で問題があると考えています。考えられることがあれば教えてください。

なお、今回試したのはノートPCですが、もう一台のデスクトップPCでは少なくとも起動状況は正しく反映されました。

管理者   2020-07-03 07:49:49
現在nWOLでは、送信先のポート番号は 9 (UDP) で送信しています。ルータでブロックしないよう設定していただければと思います。また、ルータ越えの場合は、ネットマスクも正しく設定できているかもご確認ください。

hashimoto   2020-07-02 15:00:26
無償提供ありがとうございます。
version 1.4.20で使用させて頂きました。同一ネットワークはリモート起動できますが、ルーター越しにネットワークが違うと反応しません。こちらは、ルーター側で、特定ポートの転送許可などが必要でしょうか。

管理者   2020-06-11 19:37:42
いろいろと機能追加要望をいただいており、ありがとうございます。
個人的にもかねがね取り組みたい項目もあるのですが、
ちょっと対応できておらずすみません、そのタイミングになりましたら、
一つづつ対応していきたいと思います。

taka   2020-05-08 00:24:08
管理者様
ルータ越え、早速対応していただきありがとうございます。
サブネットマスクの設定に、こだわりが感じられて心動きます。
インターフェイスがよく考えられていて、気持ちが良いです。
楽しんで使わせていただきます。

管理者   2020-05-06 20:54:49
先ほど version 1.4.20 を公開しました。
ちょうど連休、外出自粛もあり、コードの大掃除含め、これに費やしてしまいました。
在宅勤務の関係で、この機能が役に立つケースも多いのかもしれませんね。
他にいただいているいくつかのご要望についてもまた考えてみたいと思います。
それでは、お楽しみください。

管理者   2020-05-02 09:37:37
そうですよね。

今回、これについて調べていたら、インプリ当時の検討経緯を思い出してきました。
実は、他のツールと違い、nWOLは「サブネットマスク」の設定を不要としています。
シンプルなUIを考えたときにサブネットマスクの 255.255.255.0などという 13文字もの
入力/表示をさせてしまうのはイケてない、というちょっとしたこだわりがあったからでした。
単なる考慮漏れではないんです。^^;
なお、ネットマスクはNICの設定から読み取っています。

確かに、ルータまたがりのケースが結構ある(というか実はたくさんある)ということであれば、
利便性を犠牲にしているということでもあり、変更も必要かと思い始めてきました。
少し考えてみます。

taka   2020-05-01 23:32:33
返信ありがとうございます。
教えていただいた通りにやってみたら、動きました。
ただ、せっかくのスマートなメイン画面が残念です。
パワーボタンをクリックしたときだけ、ブロードキャストアドレスになるようにしていただけるとありがたいです。
機能追加の予定もあるようなので、気を長くして待っております。

管理者   2020-05-01 00:28:07
taka様、コメントありがとうございました。
気持ちよく使っていただいているようで、大変うれしいです。

さて、いただいたご質問についてですが、おそらく、
ターゲットのPCがルータをまたがった別のネットワークに存在するためだと思われます。
確かに、現在のnWOLは、ターゲットPCが同じネットワークに接続されている前提で
できているので、このケースに対応できていないと思います。

そこで、暫定対処として以下を試してみていただけますでしょうか。

(1) ターゲットPCの IPアドレスと、ネットマスクを調べる。
(2) IPアドレスと、ネットマスクからブロードキャストアドレスを求める。
ブロードキャストアドレスはIPアドレスのホストID部をオール1にしたアドレスです。
例:IPアドレス=192.168.10.10、ネットマスク=255.255.255.0 の場合、
ブロードキャストアドレスは 192.168.10.255 となります。
(3) ブロードキャストアドレスを、ターゲットPCのIPアドレス欄に設定する。
(4) この設定でMagic Packetを送信すると起動するのではないでしょうか。

ただし、上記をやってしまうと、起動状態が正しく表示できなくなると思うので、

(5) 上記とは別にターゲットPCの登録を新たに作り、正しいIPアドレスを設定する。

としておくと、起動状態も表示されると思います。
あと、上記設定はブロードキャストアドレスに定期的にpingを投げてしまうと思うので、
気になるようでしたら、ping周期を長めにするか、登録を削除しておいてください。

できれば、nWOLの機能追加をしたいと思っています。
いつになるかわかりませんが。^^

taka   2020-04-29 23:18:46
すっきりした画面で素晴らしいです。
会社内では便利に使えてましたが、外からVPN接続したパソコンからは起動ができませんでした。
他のソフト(Wake On LAN for Windows Ver .3.01)で起動するとメイン画面の電源状態だけは確認できます。
これは、仕様でしょうか?できれば起動できるようにしていただくとありがたいです。

管理者   2020-04-12 23:44:09
ユーザ様より、nWOL Version 1.3.28 (64bit) インストーラパッケージをダウンロードするとNortonが削除してしまいます、とのご連絡をいただきました。
Nortonの動作についてはこちらで確認できず詳しいことはわからないのですが、HP上のファイルに改ざんなどの形跡はないようです。また、参考までに、本日、ダウンロードファイルのハッシュ値をHP上で公開するようにしましたので、改ざんのご心配ある場合は、お手元のファイルが元ファイルと同一であるか、確認してみてください。
よろしくお願い致します。

管理者   2020-02-23 21:50:42
先ほど、version 1.3.28をリリースしました。
メイン画面を縦にリサイズできるようになりました。多数のホストを登録しても画面を小さくしたままスクロール表示することができます。

先日、あるユーザ様から、「端末数が多いとモニタ画面にアプリウインドウが収まらず、設定画面に戻れなくなります。」というご指摘をいただきました。確かに、これまでの仕様だと多数の端末を登録してしまうと、設定変更ができなくなり、設定ファイルを削除するしか回復の方法がなかったと思われます。
いただいたコメントで問題に気付き、急遽機能追加となりました。

N様コメントありがとうございました。

たん   2019-08-28 23:31:40
管理者さま
早速の返信ありがとうございます。

管理者   2019-08-28 20:23:49
ご質問ありがとうございます。

現状nWOLは同一LAN内のホストのみ対象にしており、
2つのLANをまたがる動作には対応していないとお考えいただければと思います。
ご期待に沿えずすみません。

また、自動修正機能については、ホスト名からDNSを引くのではなく、
LAN内のホストをARPテーブルから検索し、端末固有のアドレスであるMACアドレスをキーにして
IPアドレスとホスト名を更新します。
ですので、自動修正機能についても同一LANが対象となります。


たん   2019-08-27 18:42:17
IPアドレスの自動修正は、Domainを参照しておりますでしょうか?
ホスト名にDomain名まで記載しているのですが、別のDomainからIPアドレスを取得します。

下記のような環境下で使用しております。
2つの部屋でそれぞれDHCPとDNSが動いております。
2つの部屋でPCの移動があり、しばらくの期間はDHCPとDNSにIPアドレスとHost名が残ります。
Server機は2つのLANカードで2つの部屋のネットワークにつながっております。

それぞれ、Domain名を.local1と.local2を付与することでDNSで検索できるようにしております。
nslookupでもIPアドレスがそれぞれ取得できております。

しかし、nWOLではDomain名を付けてHost名を設定しておりますが
異なったDomain側のDNSからIPアドレスを取得してきます。
どのため、起動状態も間違って表示されます。

何か設定等が間違っているのでしょうか?
お時間がある時でかまいませんので返信をお願いいたします。

たん   2019-08-14 19:07:19
早速の返信ありがとうございます。
登録というより、共有フォルダのアクセス権で起動できるPCを分けたいと思っております。
例としては、AとBの部署があったとします。
部署Aは、A用の共有フォルダへアクセスでき、その中のnWOL.exeを実行し
表示されているPCをONに出来ます。
部署Bは、B用の共有フォルダへアクセスでき、その中のnWOL.exeを実行し
表示されているPCをONに出来ます。

こんな感じで部署単位で起動できるPCを分けたいと思っています。
引数で定義ファイルを指定できれば、ショートカットで出来そうな気がします。

無理なお願いですみません。

管理者   2019-08-12 12:06:19
リクエストありがとうございます。
そうなんです、その機能、私のToDoリストにもあるのですが、きれいな実装が思い浮かばず、
まだ手を付けられてませんでした。
多分、ホストのIP/MAC情報などを各ユーザがいちいち調べるのは大変ということなのかと
推察するのですが、例えば、
「ホスト一覧情報を共通ファイル(または指定したファイル)から各ユーザが読み込めるようにする」
ようなことでご要望を満たせますか?

たん   2019-08-12 09:36:26
最近ではWOLソフトの更新が少なく、現在でも開発をされているnWOLを使用させていただいております。
定義ファイル(nWOL.conf)を同一ファルダに置いて起動することはできないでしょうか?
共有フォルダを使用してグループで起動できるPCを分けたいと思っております。

rubidus   2019-07-25 00:23:33
ご対応頂きまして、ありがとうございました。
試してみます。

管理者   2019-07-21 23:11:41
1.1.4リリースしました。
各ホストのWOL属性を YES(Ignore PingOK) に設定すると
PingOK時にもMagicPacket送信できるようになっていると思います。

管理者   2019-07-01 23:53:15
ご説明ありがとうございました。
そんなデバイスがあるんですね。
少々考えてみます。

rubidus   2019-07-01 17:58:13
回答いただきましてありがとうございます。
マジックパケットを使って、HDDレコーダの電源を入れようと考えております。
HDDレコーダは、電源OFFの状態でも、Ping応答があります。
とてもイリーガルな使い方だろうとは思っています。
なお、マジックパケットでHDDレコーダの電源が入ることは確認できています。

管理者   2019-07-01 00:58:02
コメント、ご要望、大変ありがとうございます。
ご要望についてですが、pingがOKで、ホストが起動中なのに
マジックパケットが必要となるケースがあるのかちょっとイメージつかず、
もしよろしければ、どのような状況で必要となるかお教えいただけないでしょうか?

rubidus   2019-06-30 22:29:33
シンプルな作りで、UIも分かり易くてとてもいいです。
1点要望です。PingがOKな状態でも、マジックパケットを送信できるようにして頂けないでしょうか。
ご検討よろしくお願いします。

コメントをお送りください
お名前:
コメント:
コメントの公開: