Dance with Agents

Tailscaleをインストールすると、自宅のパソコンがどこからでも手元になる

行き着く先は「寝ながら開発」

先に、どこまで行けるかを書いておきます。

ベッドに寝転がったまま、スマホから自宅のパソコンにつないで、作業を続けられます。 机に戻らなくていい。パソコンを開かなくていい。エージェントは指示さえ出せば手を動かしてくれるので、画面を見て、日本語で頼んで、結果を確認する——これがスマホの画面だけで回ります。

「寝ながら開発」は冗談のようですが、実際に成立します。そのための土台がTailscaleです。

このサイトが扱う道具の中でも、効果に対する手間の少なさは屈指だと思っています。

Tailscaleとは何か

ひとことで言えば、自分の持っているデバイスだけをつないだ、プライベートな回線を作る道具です。

パソコン、スマホ、タブレット——それぞれにアプリをインストールして同じアカウントでログインすると、その全部が「同じ家の中にいる」ような状態になります。実際には別々の場所にあり、間にインターネットを挟んでいるのに、お互いを直接呼べます。

公式の説明では、Tailscaleは各デバイスに100.x.y.zという固有のアドレスを自動で割り当てる、とされています。このアドレスは自分のデバイス群の中でだけ通じるもので、世の中には見えません。

何が要らなくなるか

自宅のパソコンに外からつなぐ、という話は本来かなり面倒です。Tailscaleは、その面倒を丸ごと消します。

普通ならやること Tailscaleだと
ルーターでポートを開ける(ポートフォワーディング) 要らない
自宅のアドレスが変わるのを追いかける(DDNSなど) 要らない。名前で呼べる
SSHの入口を世界に向けて開ける 要らない。自分のデバイス以外からは見えない
出先のWi-Fiやモバイル回線ごとの設定 要らない。どこからでも同じ

3行目が、地味にいちばん大きいところです。世界に向けて開けた入口には、機械的なログイン試行が飛んできます。 鍵を使っていれば簡単には破られませんが、そもそも開けないで済むならそのほうがいい。 Tailscaleは「開けずにつなぐ」を実現します。

インストールは、実質3ステップ

拍子抜けするくらい簡単です。公式の手順もこの流れです。

  1. アカウントを作る — 既に持っているGoogleやMicrosoftなどのアカウントでサインインできます
  2. つなぎたいデバイスすべてにアプリをインストールする — パソコンにも、スマホにも
  3. 全部を、同じアカウントでサインインする — 公式にも「同じ認証情報で認証する」とあります

これで終わりです。 ルーターの設定画面は一度も開きません。

両方にインストールする必要があることだけ注意してください。手元のスマホにだけインストールしても、つなぎ先のパソコンにインストールされていなければ届きません。

名前で呼べるようになる

Tailscaleは、デバイスごとに固定の名前を付けてくれます(MagicDNSという仕組みで、末尾が.ts.netになります)。

アドレスを覚える必要はありません。自分で付けた名前で呼べます。

mosh mymac

自宅からでも、出先からでも、同じこの1行で通ります。 場所によって繋ぎ方を変えなくていい、というのが使ってみると一番ありがたいところです。

何に使えるか

このサイトで扱っている範囲だと、主に3つです。

料金

個人で使うぶんには、まず引っかかりません。

公式の料金ページに、個人向けの「Personal」プランが「$0 Free forever」として載っています。ユーザーは6人まで、デバイスの数は無制限とされています。自分の持ち物をつなぐ用途なら、これで足ります。

注意しておくこと

  • サインインに使うアカウントが、そのまま鍵になります。 そのアカウントの2段階認証は必ず有効にしてください。ここを破られると、つないだデバイス全部に影響します
  • 会社から貸与されたパソコンにインストールする場合は、社内の規則を確認してください。 ネットワークに関わる道具なので、勝手にインストールしてよいとは限りません
  • 万能ではありません。 つなぐ相手にもTailscaleがインストールされている必要があるので、レンタルサーバーのような「相手に何もインストールできない」環境では使えません

組み合わせて完成する

Tailscaleは「届くようにする」道具です。届いた先で快適に作業するには、あと2つあります。

  • mosh — 移動しても切れない。打った文字がすぐ表示される。iPhoneから日本語が壊れずに打てるのもこれのおかげです
  • tmux — 接続が切れても、向こうで作業が生き続ける

Tailscaleで届いて、moshで切れず、tmuxで死なない。 この3つが揃うと、外から自宅のパソコンを使うことが「特別な作業」ではなくなります。

インストールする順番は、Tailscaleが先です。逆にすると、要らなかったはずのポート開放と格闘することになります。

リモート開発環境の記事

リモート開発環境のページへ →