🌐

グローバルIPアドレスのない集合住宅ネットワークでの即席リモートデスクトップ環境構築

2025/02/17に公開

はじめに

グローバルIPアドレスを持たない集合住宅のネットワーク環境では、外部からのアクセスが制限されるため、通常のリモートデスクトップ環境の構築が難しい場合があります。
本記事では、ChromeリモートデスクトップとRaspberry Piを活用し、インターネット経由でリモートデスクトップできる環境を構築する方法を紹介します。

※ Googleアカウントの漏洩や公衆無線LANでの利用などセキュリティ面で注意して下さい。

準備するもの

  • ホストPC(Windowsを想定)
    • Wake-on-LAN の起動設定済
  • 常時起動 の Raspberry Pi
    • Raspberry Pi Connect対応の最新のOS
    • ホストPCと同一ネットワーク

リモートデスクトップ環境の構築

1. Chromeリモートデスクトップの導入

リモートデスクトップ接続を行うため、ホストPCにChromeリモートデスクトップをインストールし、設定を行います。ホストPCの電源が入っている状態であれば、インターネット経由で外部からリモート接続が可能になります。

https://remotedesktop.google.com/

2. ホストPCのスリープ問題

ホストPCを常時起動出来れば良いですが現実的ではありません。
スリープや電源オフの状態から復帰できるように Wake-on-LAN(WoL)を使用します。

3. Raspberry Piを利用したWoLの仕組み

スリープ状態のホストPCを復帰させるために、同一ネットワーク内にRaspberry Piを設置し、常時起動状態にしておきます。最近のRaspberry Pi OSではRaspberry Pi Connectを利用(アカウント登録が必要)することで、Chromeリモートデスクトップと同様にインターネット経由で端末にアクセス(Screen sharing, Remote shell)出来ます。

Raspberry Pi Connectの設定
https://www.raspberrypi.com/software/connect/

WoL コマンドインストール(shellの場合)

sudo apt install wakeonlan

WoL マジックパケットの送信(shellの場合)

wakeonlan <ホストPCのMACアドレス>

起動手順

  • 外部からホストPCと同一ネットワーク内にあるRaspberry Piにリモート接続する
  • Raspberry PiからホストPCにWoL マジックパケットを送信する
  • ホストPCが起動、もしくは復帰後、Chromeリモートデスクトップを通じてリモート接続が可能になる

簡略図

メモ

  • ホストPCの「Wake-on-LANの起動設定」はBIOSやOSの種類によって変わってくるので、省いています。
  • 自宅にあった Raspberry Pi 4 は Raspberry Pi Connect対応するのに Raspberry Pi OSをアップデートする必要がありました。
  • リモートから電源をオン・オフできるWi-Fiスマートプラグ(Tapo P105など)を使えば、必要な時だけ Raspberry Pi を起動するみたいなのもできそうです。

Discussion