Tailscale の導入
Tailscale とは
Tailscale は、簡単に使える VPN サービスです。インストールするだけで、異なるネットワークにあるデバイス同士を安全に接続できます。
学外から研究室のサーバに接続したい場合に便利です。
仕組み
Tailscale は WireGuard という VPN 技術をベースにしています。 各デバイスに Tailscale をインストールすると、それらが同じ仮想ネットワーク(Tailnet)に参加し、直接通信できるようになります。
自宅PC ─────┐
│
スマホ ─────┼──── Tailnet ──── 研究室サーバ
│
大学PC ─────┘
インストール
Windows / macOS
- Tailscale にアクセス
- 自分の OS 用のインストーラをダウンロード
- インストール後、ログイン(Google / Microsoft / GitHub アカウントが使えます)
iOS / Android
App Store または Google Play から「Tailscale」をインストール。
Linux(サーバ側)
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up表示される URL にアクセスして認証します。
初期設定
1. アカウント作成
Tailscale を初めて起動すると、ログイン画面が表示されます。 Google、Microsoft、GitHub などのアカウントでログインできます。
ノートゼミでの利用
ゼミで Tailscale を利用する場合は、各自でアカウントを作成してください。ご自身のPCと,サーバの両方で設定しておくと,いつでもサーバに接続できるようになります。
2. デバイスの確認
ログイン後、Tailscale Admin Console で接続中のデバイスを確認できます。
各デバイスには 100.x.x.x 形式の IP アドレスが割り当てられます。
使い方
サーバへの接続
Tailscale が起動している状態で、サーバの Tailscale IP アドレスを使って SSH 接続します。
ssh ユーザー名@100.x.x.xまたは、VSCode の Remote-SSH で接続:
~/.ssh/config に追加:
Host server-tailscale
HostName 100.x.x.x
User ユーザー名
RStudio Server への接続
ブラウザで http://100.x.x.x:8787 にアクセスすると、RStudio Server のログイン画面が表示されます。
セキュリティ
- 通信は WireGuard で暗号化されています
- Tailscale にログインしたデバイスのみが Tailnet 内のデバイスにアクセスできます
- 不要になったデバイスは Admin Console から削除できます
トラブルシューティング
接続できない
- Tailscale が起動しているか確認(メニューバー/タスクバーのアイコン)
- 相手のデバイスも Tailscale が起動しているか確認
- Admin Console で両方のデバイスが「Connected」になっているか確認
接続が遅い
- Tailscale は可能な場合、デバイス間で直接通信(Direct)します
- 直接通信できない場合、リレーサーバ経由(Relayed)になり、速度が低下することがあります
- Admin Console でルート状況を確認できます