UbuntuでWake on Lanするための設定メモ

はじめに {#はじめに}

自宅のパソコンのwifi接続がどうも不安定で、たまに接続が切れる。そういうときは、USBのwifi子機を抜き差しすると復旧するのだけれども、今日は外出中にいきなり接続できなくなった(T_T)

そんな非常事態に備えて、外出中にパソコンを再起動して復旧を試みるために、Wake on Lan の設定をしたので、今日はそのメモです。

環境 {#環境}

  • Ubuntu 16.04

設定メモ {#設定メモ}

BIOS設定 {#bios設定}

BIOSの設定が必要。ここは省略。。なのだが、ここがわからずいろいろな設定を試した挙句、最後にBIOS初期化して、4時間かかった。

OS設定 {#os設定}

wol設定の確認/変更に必要なethtoolを入れる。

$ sudo apt install ethtool

NICの名前を確認して、ethtoolを叩く。Wake-on: d で Wake on Lanが無効状態。 Wake-on: gで有効状態。

$ ifconfig
$ sudo ethtool enx343dc4787303
Settings for enx343dc4787303:
No data available

おりょ??なにも表示されない。おばかな頭で考えること数十分、どうやら無線LANでは Wake on Lan ができないという根本的なことに気づいたのたった!!

NICは通電している必要があるのだけれども、無線LANの子機はUSBでPCに刺さっているのだから、PCの電源が落ちれば電力供給されなくなって、動かなくなる。バカダー。

無線 Lan でも Wake on Lanしたい {#無線-lan-でも-wake-on-lanしたい}

無線Lan でも Wake on Lanしたい。調べると、イーサネットコンバーターというものがあり、これを購入し、有線をパソコンと コンバーターでむすぶと、あたかもその繋いだPCが物理LANでつながれているようにルータから見えるというもの。

以下をamazonでget.

NICの名前を確認して、ethtoolを叩く。今度こそ・・・

$ ifconfig
$ sudo ethtool enp0s31f6
 Settings for enp0s31f6:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Advertised pause frame use: No
	Advertised auto-negotiation: Yes
	Speed: 100Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: on (auto)
	Supports Wake-on: pumbg
	Wake-on: g
	Current message level: 0x00000007 (7)
			       drv probe link
	Link detected: yes

Wake-on: g となっていました。これでOSレベルでの設定ができていることになります。

ifconfigを叩いて、MAC アドレスを調べておく。

クライアントPCに wakeonlanのツールをインストール {#クライアントpcに-wakeonlanのツールをインストール}

クライアントPCにwakeonlanのツールを入れる。

$ sudo apt install wakeonlan

そして、いよいよ、Wake on Lanを実行、電源が入りました!

$ wakeonlan <Mac Address>

外出先から Wake on Lanしたい {#外出先から-wake-on-lanしたい}

外出先から、wake on lanをすることで、PCを起動したい。我が家はソフトバンク光を契約していて、ルータもレンタルなのでルータに port forwardingの設定をすればいけると思っていた。。。

しかし、あらゆる手段を試したのだが、できない!!

ここまでか・・・と思ったが、いろいろ情報収集をすると、どうやらRaspberry pi から wake on lanを実行する事例がいくつかあった。うちには、raspberry pi はないのだけれども、ほこりにまみれたロボコンマシンがあったのだった。こんなの↓

このボロットにsshで乗り込んで、プライベートネットワークからwake on lan を実行すればいけるのでは?

以前の設定メモを元に、sshで乗り込んで実行してみたところ、成功!

やったー。