今の仕事は社内SEにもかかわらずベンダー管理メインじゃなく、自ら手を動かして検証から構築運用までしていて技術的なことをゴリゴリやっています、、、私以外のメンバーが(´・ω・`)
ついていけなくなってきてて凹みつつありますw
仕事では技術的なところは気合がなくてやる気がでないのですが、自宅環境は別ですw
やりたいことがあれば一気にやってしまうタイプなのですが、、、今回はVPN経由で自宅のデスクトップPCを起動したいー! という内容です。
我が家の環境としては、というか下の環境の人は役に立つかもです!
- NURO 光 を使っている人
- SynologyNAS を使っている人
- WoL対応のNICが刺さったデスクトップPCを持っている人
じゃー書いていきますねー!
デスクトップの電源リモートから入れたいな欲
まー使うかどうか…というところもあるのですが、リモート(遠隔)でデスクトップの電源入れることができたらいいなーとふと思いました。最近パソコン使うときは、ノートパソコン8割、デスクトップパソコン2割くらいでデスクトップ使う頻度低いですが、処理が重いもの、デスクトップにしか保管してないファイルを触るときにしか使いません。
ノートパソコンはかなり使いやすくて、普段やることほとんど間に合っちゃってますねw
使ってるPCについて選んだ理由とか、カスタマイズしたこととかは下から読んでもらえると嬉しいです!
2021年末散財祭り…デスクトップパソコン故障して新PC購入したよー
最近のブログは「○○買った!」系が多くなっています。 正直なところ…ネタにしやすいw が、真面目に言うと、ネタを探すという目線とか感覚がどんどん落ちているなぁと感じていたり。 更新頻度が高かったときは、結構書きたいことが泉のように湧いてきた...
2020年に購入したノートPCにメモリ増設したよ!
久々に最新のことを書いていこうかなと思います! ここのところ去年の話ばかりだったので…(´・ω・`) ただ、まだ去年の話が残っているのでそれはそれでまた後日公開しますけども。。 というわけで今回は 2020年に購入したノートPCにメモリを増...
2021年末散財祭り…テレワーク気分転換用のミニテーブル買ったよ!
シリーズ化してしまいそうな「2021年散財祭り」。 もちろんシリーズ化はしませんが、あと4つほど残っているのでそれは書ききってしまう予定です! というわけで今回はタイトルのとおり、ミニテーブルを購入しました。 ミニテーブル ミニテーブル。 ...
で、デスクトップはそこから 立ち上がって 2歩 くらい のところにあって、テレビに繋いでいます。
…2歩ですが、、、それがものすごくめんどくさい(´・ω・`)
電源入れるだけで立ち上がって歩くのがめんどくさいとかいうめちゃくちゃ自分勝手な理由ですが、ノートPCからデスクトップの電源入れることができたらなぁと。
電源入れたあとはリモートデスクトップでつなぐのでいいのですがどうしてもつけるのがめんどくさい。。
(リモートデスクトップソフトも別のタイミングでSEが使う便利ツールで紹介しますね!…いつになることか、、メモだけ残してある)
じゃあどうやるかなのですが、WoLという機能を使ってリモートで電源をつける魂胆です。
WoL(Wake on Lan)というのは、ググったほうが正しい情報が出てくるのですが、電源OFF状態のPCを特定のパケット(マジックパケットと呼ばれる)を投げることで電源をいれることができる仕組み、機能です。
前の職場ではテレワークでWoL機能を使って自分のデスクトップ端末の電源を入れる仕組みを作っていました。
今の職場は基本的にデスクトップの電源は入れっぱなしで仕組みとしてはない感じですね。
が、リモートで電源入れることができるってのは便利ですよねー。
最終的に自分の環境で行けたので自分のメモ残しと同じような環境の人にも参考になればーってことで書いていきます!
デスクトップ機器の設定
デスクトップ機器の設定をばーっと書いていきますねー!NICのWoL対応
デスクトップPCについているNIC(有線LANケーブル指すところ)がWoLに対応しているかどうかの確認からです。確認方法は簡単。デバイスマネージャー開いてWoL対応しているかどうか見るだけ。
ざーっと手順書くと、スタートボタンを右クリックして「デバイスマネージャー」を開きます(Windows10の場合)。
開いたら、自分のPCについているネットワークアダプタの項目を確認します。
私のケースだと「Intel Ethernet Connection(14) l219-V」です。
これを右クリックしてプロパティをクリックして詳細タブを開きます。
その中にある「Wake On Magic Packet」というところを有効にして完了。
探すの大変かもしれませんが、この設定が存在して、有効化できればNICの設定は終わり!
BIOS(UEFI)の設定
次にBIOS(UEFI)の設定をしていきます。この設定をする理由は、電源が入っていないときでもマジックパケットを受け取ることができる(NICが反応する)ようにするためです。
私のパソコンでは、起動するときにF2連打しながら起動するとUEFI画面が起動するのでF2連打。
これはパソコンのメーカーによって違うので、使っているPCの型番で調べるといいかもです。
で、私のUEFI画面はこんな感じ。
昔のBIOS画面ってめっちゃパソコンパソコンしてダサいのですが、UEFIってめっちゃキレイですね。。
しかもスクリーンショットも取れるし。
私の画面ではこの後F7キーを押すとアドバンスモードに変わります。
まずは日本語化。
次に詳細タブに移動します。
ここの「PCIEによる電源ON」を Disable から Enable に変更します。
ここまで設定したら保存しておしまいです。
ツール使ってマジックパケット飛ばす
早速ノートパソコンからマジックパケットを投げてみます。ツール使うと簡単そうなのでいくつかツールを試して自分に合うものを探しました。結果「Wake on LAN for Windows」を使うことにしました。
gusuku.org
トップページにリンクしましたが、公開ソフトウェアのところにおいてあります。
こちらのソフトを選んだ理由は、開発者が日本人であること と 余分な機能がないこと から選びました。
登録したのはこんな感じですね。
ダブルクリックして電源ON!
おーーー! 一発成功で、デスクトップの電源が入りましたーーー!!
リモート起動とか、なんか近未来的でいいですねw
その後リモートデスクトップでちゃんと繋がりましたー。
一旦は大満足したのですが、その後、、、できればVPN環境から電源入れられないかな…と思いました。
なぜならGWに実家に帰る予定があったから。
(すでにGWなんてとうの昔に過ぎ去ってますがw)
VPNから電源入れたい!
ここまでである程度満足したのですが、基本的にマジックパケットは同一セグメント内の環境からしか動きません。我が家でいうと、IPが 192.168.1.* の機器からマジックパケットを送信すると、それに反応してデスクトップPCの電源が入るという感じです。
なので、自分が自宅にいる=物理的に電源が入れられる状況という限定された状態にて電源をいれることができるという感じです。
本来WoLの目的というか使われ方としては、物理的に電源入れたい場所にいないというか、物理的に離れた場所の機器の電源を入れるということで使われることが多いのです。
が、今の設定のみでは私が外出中に使いたいとなった場合、リモートで電源ONできません
(そんなケース多く発生するかどうかは別として)
なので、本当のリモート(自宅に私がいない状況)でも電源を入れたいところです。
ちらっと調べてみるとというか、私の前の会社でもやっていたことなので簡単にできるかなーと思いやってみたところ思ったより苦労しました(´・ω・`)
VPN接続したときのIPが10.0.0.*
我が家は synologyのNAS を使ってVPN接続できるようにしています。synologyでのVPN接続は、、、それ説明したら1エントリー分かかっちゃうのでググってくださいw
synologyがVPNサーバの役割を果たしていて常時接続できる状態になっています。
というのも、外出時、フリーワイファイがあったら極力使うようにしており、
フリーワイファイは、セキュリティ的に甘いため、そういったワイファイを使うならばVPN経由で接続しましょうということがよく書かれています。
月額ワンコインで有料サービスで契約できて結構安いので、VPNサービス契約するのもありかなと。
私はsynologyNASを使っていて、このNASはVPNサーバにもなり得るので私は使っています。
で、VPN接続するとファイルサーバにアクセスできるんですよね。
で、それでも十分なのですが、せっかくだから出先でもデスクトップの電源入れれたらなぁと思いやってみることにしました。
とりあえず何も変更せず実施。
…まーもちろん電源入りません。
上にも書いたのですが、基本的に同じNW上の機器しか電源入れられないのですが、VPNは別なんですよね。
うちの環境だと、VPNに繋いだときは10.0.0.というIPアドレスがVPN接続したとき端末に割り振られます。
電源入れたいデスクトップは、192.168.1.。
なので10.0.0.の機器から192.168.1.あてのブロードキャストパケット(マジックパケット)は到達しないんですよね。
ただ、自宅の機器たち(192.168.1.*)へは繋がるのでその端末のどれかからマジックパケットを飛ばせばいいじゃん!ってなわけで、そういう事ができるか調べてみました。
synologyNASで行けそう
調べてみたところ…VPNサーバとして動かしてるSynologyNASでいけそうってことがわかりました。イメージとしては、
外出先から自宅のVPNに接続する
↓
SynologyNASにブラウザでログインする
↓
タスク機能からスクリプトを実行する
↓
SynologyNASにブラウザでログインする
↓
タスク機能からスクリプトを実行する
ちなみにタスクというのは下の画面です。
synologyにブラウザからログインして、「コントロールパネル」 – 「タスクスケジューラー」ですね。
赤枠が自分で追加した部分です。
中身は後で見るとして、この赤枠部分を右クリックして実行すると自宅デスクトップが起動します。
簡単ー!
ここまで来るのに時間かかりましたが(´・ω・`)
ちょっと中身見ていきます!
pythonを実行する
実際のスクリプトはこちら!…とコード貼り付けようとしたのですが、うまく貼れない(キレイに表示されない)のでpythonファイルおいておきますね(´・ω・`)
グーグルで調べた中ではコピペで動くものを見つけられなかったので調べながら書き換えました。
…エンジニアなのにこういう作業というかスクリプト苦手意識全開だから数行修正するだけで数時間かかりました(´・ω・`)
書き換えたらsynologyの任意のディレクトリに置きます。
私の場合はshareディレクトリにおいてます。
そして再度タスクスケジューラー画面からこんな感じの設定にします。
ここまで終わったらテスト。
自宅でやるので、スマホのWi-Fiを解除してモバイル回線に接続し、テザリング有効化します。
その後ノートPCからスマホに接続して、ノートPCでVPN接続させます。
そしてノートPCからSynologyNASにブラウザでログインしてタスクからスクリプト実行。
おーーー!! デスクトップPC起動したーーー!
まとめ
なんとか無事に自分のやりたいことを実現できました。それもこれも全部 SynologyNAS のおかげですね。
本来ならサーバ構築しないといけないようなことが簡易ではあるんですがNAS上で構築できるのは嬉しすぎますね!
もう、持ってない人絶対買ったほうがいいですよ!
そしてGW…無事に実家から自宅のデスクトップ起動できましたー!
リモートで繋いてゲームもできました!
リモートで接続したツールも最近変えたのでそれについてもまたの機会に書きますね!
今回は、VPN経由で自宅の機器を起動した話でした。
なんやかんやでうまくいってよかったです。
VPN機器となっているsynology機器で実装することでやりたいことができた感じでした。
同じことをやりたかったという人、参考にしてみてくださいねー!