windows

TailscaleでVPN (Taildropでファイル送受信)

TailscaleでVPN (Taildropでファイル送受信)

Tailscale(テイルスケール)とは、設定が非常に簡単な次世代のVPN(仮想プライベートネットワーク)サービスです。従来の複雑なVPN機器の設定やネットワーク管理を不要にし、スマートフォンやPCなどのデバイス間で安全なプライベートネットワークを簡単に構築できます。

主な特徴と仕組み

  • 簡単な設定: デバイスにアプリをインストールし、既存のIDシステム(Google、Microsoftなど)でログインするだけで、自動的にVPNネットワークに接続できます。
  • WireGuardベース: オープンソースの「WireGuard」という軽量な暗号化プロトコルを基盤としており、高速でセキュアな通信を実現しています。
  • P2P通信: 原則として、ネットワーク内のデバイス同士が直接(P2P)通信を行います。これにより、従来のVPNサーバーを経由するハブアンドスポーク型よりも高速で効率的な通信が可能です。
  • ゼロトラスト設計: セキュリティの基本原則として「ゼロトラスト」(何も信頼しない)を採用しており、各デバイス間の通信がデフォルトでセキュアになるように設計されています。
  • 多様な環境に対応: クラウド、オンプレミス環境のどちらでも利用でき、Windows、macOS、Linux、Android、iOSなど様々なOSに対応しています。 

何ができるか

  • 安全なリモートアクセス: 外出先から自宅やオフィスの開発サーバー、NASなどに安全にSSH接続やリモートデスクトップ接続ができます。
  • ファイル共有: ネットワーク内のデバイス間で安全にファイルを共有できます。
  • サブネットルーター機能: Tailscaleネットワークに属していない機器(例:IoTデバイスなど)とも、特定のデバイスをルーター(Subnet Router)として経由させることで通信が可能になります。
  • 複数デバイスの一元管理: 管理画面からネットワーク内の全デバイスのアクセス制御や設定を一元管理できます。 

メリット

  • 導入・運用コスト削減: 従来のVPN機器の購入や専門知識を持ったIT担当者が不要なため、コストを抑えられます。
  • 利便性: 一度設定すれば、どこからでも同じプライベートネットワークにアクセスでき、非常に便利です。
  • 高いセキュリティ: WireGuardとゼロトラスト設計により、安全な通信が保証されます。 

個人利用や中小企業向けには無料プランもあり、手軽に導入できる点も大きな魅力です。 

無料プラン(Personal)

  • 利用可能ユーザー:3人まで
  • 接続可能デバイス数:100台まで
  • 特徴:個人や趣味のプロジェクトに最適で、無料で始められる。

tailscaleのアカウント作成

https://tailscale.com/

最初に公式サイトのトップページにあるGet Startedをクリックします。

GoogleやMicrosoftアカウントによるログイン認証の選択画面が表示されます。予め利用しているサービスのアカウントをクリックしてtailscaleにログインしてください。

ログインが成功すると、次のユーザー管理画面に遷移します。 初回ログイン時はVPN接続登録をしたデバイスは存在しません。そのため、右側にWaiting for your first deviceというメッセージが表示されます。 またこの時に、左側に各デバイスのクライアント用tailscaleアプリのインストール案内も表示されます。

クライアント用tailscaleアプリのインストール

Windowsのクライアント用tailscaleアプリは以下の公式サイトのダウンロードページから入手できます。

https://tailscale.com/download

クリックしてアクセスすると、次の画面が表示されますのでWindowsを選択し、下部のDownload Tailscale for Windowsを押します。

クライアント用tailscaleアプリのインストーラがダウンロードされますので、ダウンロード完了後に起動します。

すると、次のダイアログが表示されます。チェックホックスにチェックを入れてinstallボタンをクリックしてインストールを開始してください。

インストール完了後はCloseボタンを押してインストーラを終了します。

VPN接続

上記の作業でクライアント用tailscaleアプリがインストールされたら、Windowsデバイスのメインウィンドウの右下に隠れているインジケーターを表示してください。

このアイコンをクリックすると、次のログイン認証画面が表示されますので初回ログイン時と同じように既に持っている サービスのアカウントで認証します。

ログイン認証が成功するとWindowsデバイスがVPN接続待ちに移行します。ここで特に問題なければConnectボタンを押してVPN接続を実行します。

するとVPN接続が成功し、デバイス名としてWindowsのPC名(OSホスト名)がtailscaleのユーザーアカウントに紐づいたtailnetに登録されます。

そのため、visit the consoleをクリックして管理画面を見ると、VPN接続したWindowsデバイスが登録されていることが確認できます。 接続状態も見ることができ、この時の状態はConnected(VPN接続済み)になります。

コマンドプロンプトから ipconfig を入力

tailscaleによってVPN接続をしているデバイスには上図のように、「tailscale」という名前の仮想インタフェースがあります。 そして、このtailscaleインタフェースにユーザーアカウントに紐づいたtailnet用のIPアドレスが割り振られていることが確認できます。

このIPアドレスはtailscaleの管理コンソール画面に表示されているデバイスのIPアドレス情報と同じものです。

つまり、このインタフェースはtailscaleが構築したVPN(tailnet)上のP2P通信で使用される仮想NICです。

そのため、パケットキャプチャをしてVPN上でパケットが正しく送受信されているか確認したい場合、このインタフェース名でフィルタリングして 見ると良いと思います。(とはいえ、何のパケットキャプチャソフトを使用するかによりますが。)

次に、MagicDNS用のホストフィルタ設定について見てみます。

Windowsでは、C:/Windows/System32/drivers/etc/hostsにフィルタ設定があります。 # TailscaleHostSectionStartというコメント行以降の部分です。

MagiDNSはtailnet上で各デバイスに割り当てられたIPアドレスに対してホスト名を設定する機能です。

Windowsデバイスでは、Windows内のhostsファイルの設定でIPアドレスとホスト名の対応を取っています。 つまり、MagicDNSによってtailnetの実際の名前解決として機能する部分です。

【Android】アプリインストールとVPN接続

Google Playからインストールボタンをタップするだけです。

VPN接続

tailscaleをインストールできたら、アイコンをタップして起動します。すると、次のようにtailscaleサービスを開始するボタンGet Started が表示されるのでこれを押します。

GoogleやMicrosoftアカウントでログインできるので読者の方が持っているアカウントでログインします。

tailscaleのダッシュボードが表示され、VPN接続をリクエストするか聞かれますので、問題なければOKを押します。

トグルが接続済みを表すActiveに倒された状態でダッシュボードが完全に表示されたら接続成功です。すでに登録済みのデバイスがある場合、これらがリスト表示されます。

Androidのネットワーク設定を確認するとVPN接続として、確かにtailscaleが使用されていることが分かります。

VPNを使って自宅のPCにアクセスする

Windowsリモートデスクトップ

Windows ProがインストールされたPCでリモートデスクトップを有効にし、Tailscaleに接続しておきます。
リモートデスクトップに接続するPCでは、Tailscaleで割り当てられているアドレスをリモートデスクトップクライアントに入力して接続することで、アクセスすることができます。

SSH (Windows11) SSHのキー管理無しでSSH環境を構成・運用できます

ホストへOpenSSHサーバのインストール

リモートから接続

コマンドプロンプト画面より ssh ユーザー名@ホスト名(あるいは、tailscaleのIPアドレス) で接続します。

TailscaleによってSSHアクセスが実現され、認証等がTailscaleで行われるため、一般的なSSH接続に必要だった公開鍵・秘密鍵の配置が必要無くなります。

Exit node

Exit nodeはTailscaleがインストールされたマシン上で、すべての通信を特定のExit Nodeを経由させてから通信する機能です。
例えば、外出先で使用しているネットワークが厳しいファイヤーウォールによって、目的のサイトにアクセスできないとき。海外にいるときに日本のサイトを見たい時。こんな時にExit nodeを使用することで、Exit nodeに設定したマシンを経由して通信を行うことができます。

Exit nodeを有効にする

Exit nodeを有効にするには、有効にしたいマシンのTailscaleのメニューからExit nodeのメニューを開いてRun exit nodeを有効にします。

その後Admin consoleでExit nodeを有効にするマシンのroute settingsを開いて、Use as exit nodeを有効にして、保存します。Exit nodeに接続するには、接続するクライアントのTailscaleのメニューから、Exit nodeの項目で接続先のExit nodeを選択するとExit node経由で通信を行えるようになります。

Taildrop

Taildropを使用すると、簡単にファイルの送受信ができます。
Tailscaleを接続した状態で、ファイルを右クリックしたりスマートフォンでは共有の項目を見ると、Send with Tailscaleという項目があります。
これを選択して、送信先のデバイスを選択するだけで、簡単にファイルの送受信を行うことができます。

サブネットルーター機能設定方法(Windows)

tailscaleのサブネットルーター機能でローカル側の複数端末へ接続する

tailscaleは、ソフトをインストールした端末間でVPN通信を行いますが、「Subnet routers(サブネットルーター)」機能を使うことで、機能をONにした端末のLAN環境にある端末全てにアクセス出来る様になります。

コマンドプロンプトを管理者権限で開く

「Subnet routers」機能を有効にする

tailscale set –advertise-routes=192.168.X.0/24

Xは、IPV4のネットワーク環境に合わせる。X=10とします。0/24は、サブネットマスクが、255.255.255.0 の場合です。

Admin Consoleで承認する

「Admin Console」画面を開きます

Windows通知領域「tailscale」アイコン→アカウント名→「Admin console」の順番に選択すると、ウェブブラウザで「Admin Console」が表示されます。

「Subnet Routers」機能を有効化した端末名の下に「Subnets」という文字が表示されていることを確認してください。

「Subnet Routers」機能を有効化した端末名をクリックすると、端末単位の設定画面が表示されます。

画面中央の「Awaiting Approval」に設定したサブネット範囲が表示されいるので「編集/Edit」をクリックします。

サブネット範囲が記載されているチェックボックスにチェックを入れて「保存/Save」をクリックすると設定完了です。

ローカル側のPC1台にtailscaleをインストールし、サブネットルーター機能を有効にするだけで、外出先からローカル側の各ネットワーク機器へのアクセスが出来る様になります。

-windows

PAGE TOP