WindowsでWoWLAN(Wake on Wireless LAN)を有効にする8.1

WoWLANとは何ですか?

WoWLANまたはWake on Wireless LANは、ネットワーク対応デバイスをネットワーク上の他のデバイスによってスリープ状態から解除する機能を提供します。 WolまたはWake On Lanはしばらくの間存在しており、多くの異なるシナリオで使用されています。 WoWLANは実際にちょうどハードワイヤーで縛られたイーサネット関係の代りに無線インターフェイスにWOLの機能性を加えます。

誰がWoWLANを使用していますか?

私がWoWLANについて最初に尋ねられたのは、顧客がiRuleでMac Miniを起動したいと思っていたときの仕事でした。 Mac MiniはHTPCとしてかなりの量を使用しており、目を覚ましておくことはあまり大したことではありませんが、スリープ状態にすることはデフォルトの機私はこの記事がWindows8.1でWoWLANを設定することについて知っていますが、これが私が調べ始めた理由の1つでした。 このチュートリアルでは、Mac Miniでの設定方法は表示されません。

前のシナリオはずっと前で、私は最近まであまり考えていませんでした。 私は自分のコンピュータ上で、私の机の上で、ソファの上に、そしてどこか他のあなたは、コンピュータを取ることができます。 私はデスクトップコンピュータとMacbook Proを持っています。 私は私のデスクトップにリモートデスクトップを頻繁に使用しますが、コンピュータが目を覚ましていない限り、リモートデスクトップはできません。 だから、私はWoWLANが私が望むように動作するように取得するために周りを突い始めました。

これが役に立つ可能性がある他のシナリオがあると確信しています。

WoWLANの設定

デバイスマネージャを開き、ワイヤレスインターフェイスを見つけて、環境設定を開きます

デバイスマネージャ

詳細タブに移動し、”Wake on Magic Packet”が有効になっていることを確認します。

ワイヤレスインターフェイスの詳細プロパティ

電源管理タブに移動し、デバイスがコンピュータを起動することを許可し、マジックパケットがコンピ

ワイヤレスインターフェイスの電源管理プロパティ

ipconfig /allを実行して、デバイスのMACアドレスを取得します。 出力には、使用している各インターフェイスの物理アドレスが含まれている必要があります。

IPCONFIG出力

パケットの送信

WOLまたはMagicパケットを送信するために私がそこに見た複数のツールがあります。 私は開発者なので、私はちょうど私がパケットを送信するのを助けるために本当の迅速な何かを鞭打つことにしました。

私はWolパケットを送信するために書いたwakeupユーティリティのソースコードを持つGithub上のプロジェクトを持っています。

私のmacbook proから、私はプログラムを実行するためにmonoを使用しています。

mono /path/to/exe/wakeup.exe 0C-8B-FD-24-1A-8B

コード

using System;using System.Net;using System.Net.Sockets;using System.Text;using System.Text.RegularExpressions;using System.Linq;public class Program{ public static void Main(String args) { if(args.Length != 1) { Console.WriteLine("Usage: wakeup.exe "); System.Environment.Exit(-1); } // strip non-hex characters var macAddress = new Regex("").Replace(args, ""); // build magic packet string hexMagicPacket = String.Concat(Enumerable.Repeat("FF", 6)) + String.Concat(Enumerable.Repeat(macAddress, 16)); // hex string to byte array byte magicPacket = Enumerable.Range(0, hexMagicPacket.Length) .Where(x => x % 2 == 0) .Select(x => Convert.ToByte(hexMagicPacket.Substring(x, 2), 16)) .ToArray(); // send packet to broadcast address at port 9 UdpClient udpClient = new UdpClient(); udpClient.Connect(IPAddress.Broadcast, 9); udpClient.Send(magicPacket, magicPacket.Length); Console.WriteLine("Magic Packet Sent"); }}

コメントを残す

メールアドレスが公開されることはありません。