asopi tech
asopi techIndie Developer

Asopitech With · メッシュVPN

Tailscale Taildrop with Alopex Chirps

Taildropは、メッシュVPNのTailscaleで、自分の端末どうしに暗号化した直接の接続でファイルを送る機能です。これをAlopex Chirpsを応用して再現すると…?

更新: 2026/10/13

どんなサービスか

Tailscaleは、自分の端末どうしを暗号化した直接の接続で結ぶネットワークです。Taildropを使うと、自分の端末から別の端末へ、ファイルを送れます。途中で切れた転送は、再開できます。扱うデータは、端末の一覧とその状態、そして送るファイルです。

通信の組み立て

  • メンバーシップ:端末をノードとしてメッシュに参加させ、シードのリストからつなぎます。SWIM方式のgossipで、どの端末がalive・suspect・deadかを知り、送り先の一覧に出します。
  • イベント:端末の参加、離脱、状態の変化をイベントで受け取り、画面の一覧を更新します。
  • ファイル転送:ファイルを、宛先の端末へ直接送ります。受信側がハッシュを確かめ、メタデータを適用し、原子的に置いたあとに完了を返します。止まった転送は、セッションから再開できます。

どの端末に送るかを選ぶ画面と、受け取ったファイルの置き場所は、アプリのコードです。

配置の形

各端末のアプリにChirpsを組み込みます。端末ごとに証明書と秘密鍵を持たせ、信頼する証明書を設定します。端末どうしは、常に相互TLSで認証してから通信します。

Alopex Chirpsが合う理由

自分の端末どうしのファイルの送信は、相手の一覧と、確かな転送の2つでできています。Chirpsは、gossipによる一覧と、ハッシュの検証まで含むファイル転送を、1つのライブラリで渡します。

端末の一覧から相互TLSでそのままファイルを送れるAlopex Chirpsで、ファイル送信のアプリを作ってみよう。GitHubのクイックスタートから始められます。

関連リンク