Ubuntu Desktop環境構築 Part 5 (未実施 Part)

デスクトップへのリモート接続:WoL設定

公開日: 2020-12-17

  概要
目的 デスクトップへのリモート接続:WoL設定
参考 ASUSのWi-FiルーターにOpenVPNでリモートアクセスしてみよう
L2TP/IPsecを使ったVPNサーバー設定方法(バッファロー)
無線LANとWoL
Ubuntu 20.04 で Wake-On-LAN を有効化する

1. 今回のスコープ

やりたいこと

持ち運び用として用いている MacBook Pro からデスクトップにリモート先からアクセスして、GPUなどを使った分析をしたい

方針

  1. クライアント側でVPN設定
  2. デスクトップ側でWoLとファイヤウォール設定
  3. グローバルIPアドレス確認方法の確立
  4. ssh接続設定(今回のスコープ外)

前提条件 (注意!!)

この記事は未実施 Part です。

  • WoLが有線LANのみ対応
  • SORACOMやラズパイによるデスクトップ電源管理の調査が必要と判断

技術スタック

項目 詳細
Laptop PC MacBook Pro (13-inch, Late 2016, Two Thunderbolt 3 ports)
Wi-Fiルーター Buffalo WXR-2533DHP2(買い替えの必要あり)
VPNクライアント システム環境設定 > ネットワーク > VPN設定

2. VPNの設定

なぜVPN設定をするのか

今回のスコープに入っているWoL(Wake on LAN)が機能する条件の一つとして、「Wake on LANで起動をかけるマシンと起動されるマシンが同一のネットワークセグメントに接続されていること」が求められているためです。

端末からルーターにVPN接続すると、ルーターに割り当てた固定IPアドレスでの通信になります。

ルーター設定

  1. まずルーターの設定ページにアクセスします。グローバルIPアドレスを確認します。ホーム画面から「詳細設定」→「ステータス」→「システム」と進み、IPアドレスを確認します。 このIPアドレスがVPN接続先のサーバーアドレスになります。
  2. .VPNサーバー機能を有効にします。「Internet」→「VPNサーバー」と進みます。
  3. VPNサーバー機能のプルダウンメニューから「L2TP/IPsec」を選択し、「事前共有キー(任意の文字列)」を入力して、「設定」ボタンをクリックします。
  4. VPNサーバー設定の範囲から取得をクリック (FIX ここ要検討!)
  5. VPN接続するユーザーを追加します。画面下の「VPN接続ユーザーの編集」をクリックすると、VPN接続ユーザー名の新規追加画面になります。「接続ユーザー名」にユーザー名(任意の文字列)、パスワードを入力して、「新規追加」をクリックします。

IPアドレス確認例

VPN接続ユーザー登録

設定完了画面

macOSでL2TP/IPsec接続する

  1. 「システム環境設定」から「ネットワーク」をクリックします。
  2. ネットワーク画面左下にある「+」をクリックします。
  3. インターフェースは「VPN」、VPNタイプは「L2TP/IPsec」、サービス名は任意の名前を入力します。
  4. 以下のように設定してVPN接続します。

3. Ubuntu側でWoLの設定 (未実施)

Wake-on-LAN (WOL) はネットワーク接続 (インターネットまたはイントラネット) からコンピュータの電源を入れる機能です。無線カードは Wake-on-LAN をサポートしていないため、ルーターや他のコンピュータに物理的に (ケーブルで) 接続しなくてはなりません。

BIOS設定

  • BIOSの起動はF10を押して起動します。
  • 設定項目は、[Advanced]の中にある[Wake On Lan from S5]で、この値を Enabled に変更します。

Ubuntuの設定

WOLを行うためにethtoolをインストールします。

1
$ sudo apt install ethtool

ネットワークインタフェース名を確認

WoL設定を確認するためには sudo ethtool ネットワークインタフェース名 を実行しますが、ネットワークインタフェース名を知っておく必要があるので、まずはネットワークインタフェース名を確認します。

1
$ ifconfig

または

1
$ ip address show

このうち、IPアドレスが記述されたネットワークインターフェースがあるのでその名前を確認します。今回は確認の結果、 enp2s0 とします。

WoLの状態確認

無効化されている場合は Wake-on: d となります。

1
2
3
$ sudo ethtool enp2s0 | grep Wake-on:
    Supports Wake-on: pumbg
    Wake-on: d

これを有効化します

1
$ sudo ethtool -s enp2s0 wol g

これだけでは再起動のたびに無効化されてしまうので、Wake-On-LAN の設定を永続化する必要があります。

Wake-On-LAN の設定を永続化する

Wake-On-LAN 有効化スクリプトを作成

まず、次のようにして /etc/wol ディレクトリーを作成します。

1
$ sudo mkdir /etc/wol

そうしたら、そのディレクトリー内に wakeonlan.sh を作成して、次のような Wake-On-LAN 有効化コマンドを記載します。

1
2
3
$ nano /etc/wol/wakeonlan.sh
#!/bin/sh
/sbin/ethtool -s enp6s0 wol g

そして、次のようにして、作成したスクリプトファイルに実行権限を付与します。

1
$ sudo chmod u+x /etc/wol/wakeonlan.sh

サービスの定義ファイルを作成

次の内容で /etc/systemd/system/wakeonlan.service を作成します。

1
2
3
4
5
6
7
8
9
10
[Unit]
Description=Enable Wake-On-LAN
 
[Service]
Type=simple
ExecStart=/etc/wol/wakeonlan.sh
Restart=always
 
[Install]
WantedBy=multi-user.target

サービスを起動する

そうしたら、あとは次のようにしてサービスの登録と起動を行います。

1
2
$ sudo systemctl enable wakeonlan.service
$ sudo systemctl start wakeonlan.service

これで Ubuntu を再起動しても、常に Wake-On-LAN が有効化されるようになりました。

MacBookにwakeonlanをインストールする

1
2
$ brew install wakeonlan
$ wakeonlan -v

で完了。次にwakeonlanを使ってUbuntu Desktopを起動します。まずUbuntu DesktopのMACアドレスが必要なので検索します。’link/ether’ で始まる行に記載されています。

1
2
3
$ ip link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether XX:YY:ZZ:PP:QQ:RR brd ff:ff:ff:ff:ff:ff

その後、

1
$ wakeonlan <MACアドレス>

これで動作確認をする。

ファイヤウォール設定

TBA

Appendix: ネットワークインターフェース

ネットワークとの接点をネットワークインターフェースといいます。Linuxでは、ネットワークインターフェースは「eth0」や「enp0s3」といった名前で表します。名前はネットワークインターフェースの種類とデバイスの種類に応じて決定されます。

ネットワークインターフェースの命名規則

種別 説明
en イーサネット(有線LAN)
wl 無線LAN
ww 無線WAN
デバイス 説明
オンボードデバイス o<インデックス>
ホットプラグデバイス s<スロット>[f<機能> d<デバイスID>]
PCIデバイス p<バス>s<スロット>[f<機能> d<デバイスID>]


Share Buttons
Share on:

Feature Tags
Leave a Comment
(注意:GitHub Accountが必要となります)