同一LANやVPN内でRustDeskをIPアドレス指定で直接接続する方法を紹介しました。ですが「同じネットワークに端末がいること」が前提だったため、外出先から自宅のPCへ、といったインターネット越しの接続には別の仕組みが必要です。
そこで本記事では、Tailscale を使って離れた端末同士を同じ仮想ネットワークにまとめ、そのうえでRustDeskを直接IP接続する手順を解説します。リレーサーバーを介さず、どこからでも低遅延でつなげるようになります。
なぜTailscaleを使うのか
Tailscaleは、WireGuardをベースにしたメッシュ型のVPNサービスです。通常のWireGuardは鍵交換やファイアウォール設定、NAT越えの調整を手作業で行う必要がありますが、Tailscaleはそれらをすべて自動化してくれます。ログインするだけで、各端末同士が暗号化された経路で直接つながります。
RustDeskと組み合わせる利点は次のとおりです。
- 各端末に
100.x.x.x形式の固定IP が割り当てられ、これをそのままRustDeskの接続先に使える - インターネット越しでも、同じLAN内にいるかのように端末同士が到達できる
- NAT越えやポート転送の設定が基本的に不要
つまり、Tailscaleで「仮想的に同じLAN」を作り、前回紹介した直接IP接続をそのまま使える、という考え方です。
料金プランについて
個人利用であれば、無料の Personal プラン で十分です。Personalプランは3ユーザー・100台まで永久に無料で、ほぼすべての機能を利用できます。 MagicDNSも全プランで利用可能です。自宅とノートPC、スマホをつなぐ程度であれば、無料プランの範囲を超えることはまずありません。
手順1:Tailscaleアカウントを作成する
Tailscaleの公式サイトにアクセスし、Google・Microsoft・GitHubなどのアカウントでサインアップします。専用のIDを新規に作る必要はなく、既存のアカウントでログインすればそのままネットワーク(tailnet)が1つ用意されます。
手順2:各端末にTailscaleをインストールする
接続したいすべての端末(操作する側・される側の両方)にTailscaleを入れます。
Windows / macOS
公式サイトからインストーラーをダウンロードして実行し、起動後に手順1のアカウントでログインします。
Linux
サーバーやVPSの場合は、以下のコマンドでインストールできます。
curl -fsSL https://tailscale.com/install.sh | sh
インストール後、次のコマンドでネットワークに参加します。
sudo tailscale up
実行すると認証用のURLが表示されるので、ブラウザで開いてアカウントと紐付けます。
スマートフォン
iOS・AndroidともにApp Store / Google PlayからTailscaleアプリをインストールし、同じアカウントでログインします。
手順3:割り当てられたIPアドレスを確認する
ログインが完了すると、各端末に 100.x.x.x 形式のIPアドレスが自動で割り当てられます。確認方法は次のいずれかです。
- 管理コンソール:admin.tailscale.com の「Machines」ページで、各端末のIPを確認・コピーできます
- アプリ:Windows / macOS / モバイルのTailscaleアプリ上で端末ごとのIPが表示されます
- コマンド(Linux等):
tailscale ip -4
この 100.x.x.x が、RustDeskの接続先に指定するアドレスになります。
手順4:RustDesk側で直接IPアクセスを有効にする
ここからは前回の記事と同じ設定です。操作される側(受信側) のRustDeskで、次の手順を行います。
- ID横の三点メニュー →「設定(Settings)」 2.「セキュリティ(Security)」セクションを開く 3.「ダイレクトIPアクセスを有効にする(Enable direct IP access)」にチェックを入れる
無人運用する場合は、あわせて 固定パスワード を設定しておきましょう。待ち受けポートはデフォルトで TCP 21118 です。
手順5:Tailscale IPで接続する
操作する側のRustDeskを開き、「リモートデスクトップを制御(Control Remote Desktop)」欄に、接続先端末の Tailscale IP(100.x.x.x) を入力します。
100.101.102.103
ポートを変更している場合は IP:ポート 形式で指定します。「接続」を押し、受信側で設定したパスワードを入力すれば、インターネット越しでも直接接続が確立します。
MagicDNSでホスト名接続も可能
TailscaleにはMagicDNSという機能があり、IPアドレスの代わりに端末名で接続できます。2022年10月20日以降に作成されたtailnetでは、MagicDNSはデフォルトで有効になっています。有効であれば、IPを覚えていなくても次のように端末名でつなげます。
my-home-pc
IPアドレスが変わる心配がない分、こちらのほうが管理は楽です。
補足:ファイアウォールと他VPNとの併用について
RustDeskの待ち受けポート(TCP 21118)は、受信側のファイアウォールで許可しておきます。Tailscale経由の通信もこのポートを通るため、セキュリティソフト(ESETなど)がブロックしていないか確認してください。
なお、ルーター上でTailscaleと別のVPN(WireGuardなど)を同時に動かしている場合、経路が競合して意図しないインターフェースへ通信が流れることがあります。グローバルに到達可能なIPがVPNインターフェースに割り当たっていると、Tailscaleがそのトンネル経由のIPをエンドポイントとして広告してしまうケースがあるためです。複数VPNを併用する環境では、ファイアウォールで明示的に経路を制御することを検討してください。
まとめ
- Tailscaleは、面倒な設定なしで端末同士を「仮想的な同じLAN」にまとめられるメッシュVPNです
- 各端末に割り当てられる
100.x.x.xをRustDeskの接続先に指定するだけで、インターネット越しでも直接IP接続ができます - RustDesk側の設定は前回と同じで、受信側で ダイレクトIPアクセスを有効化+固定パスワード を設定します
- MagicDNSを使えば、IPの代わりに端末名で接続できます
- 個人利用なら 無料のPersonalプラン(3ユーザー・100台)で十分です

コメント