2023-05-20

Tailscale(P2P VPN / メッシュ VPN)を使う

 

 

Raspberry Pi に Wireguard VPN を設定しています。

 

外からイントラネットに入れるようにするためです。

 

自宅は Xpass なので IPv6 で接続できるようにしています。

 

 

  ⇨ これが不要になりました

 

 

 

 

Tailscale を使えば簡単に自宅のネットワークに入れることに気が付きました。

 

 

Tailscale の存在は早くから気づいていましたが、当初は使い勝手の面から利用していませんでした。

 

 

久々にこれを調べたところ、大変進化しており、しかも 100 ノードまでは一つのアカウントで無料で使えるようになっています。

 

 

Tailscale の詳しい説明は省きます。

 

必要なら "Tailscale" で検索してください、たくさんの事例や説明がヒットします。

 

 

 

下記は https://tailscale.com/ のホームページです。

 

出典:Tailscale のホームページから抜粋


 

 

 

Tailscale は簡単にいうと、P2P で複数のノード間を VPN 接続して、お互いにディスクや画面の共有ができます。

 

・ノード:

 PC、Mac、Linux、NAS、Android デバイス、iPhone、iPad が対象


・ディスク共有:

 ファイルやフォルダを自由に共有できて読み書きできる


・画面共有:

 ほかのデバイスから対象とするデバイスの画面を共有できる

 

 

 

これらのことは、許可した人(その人のアカウントに許可)に開放することもでき、作業共有が可能です。

 

 

 

ほかにもできることが結構あり --- 例えば自宅のイントラネットのローカルドメインを Tailscale 上でも扱えるなど --- 大変便利です。



Google または、Microsoft アカウントで VPN 設定を紐づけており、VPN 通信自体は P2P ですから Tailscale がログしたり傍受したりはしていません。




大変安全です。




NordVPN などのように海外の IP で隠蔽するような VPN とは違いますから、通常はブラウザなどのデバイス上のアプリは VPN を経由はしません。



基本は、P2P 間を VPN 接続することですが、インターネットの出口ゲートウェイにすることもできます。

 

 

 

Exit Node という機能を使えば、すべてのトラヒックを Exit Node 設定したデバイス(PC や Mac、Linux など)を経由してインターネットアクセスできます。

 

この機能は例えば、フリー WiFi で VPN を通じてインターネットアクセスでき、通信を隠蔽化できます。

 

 

Exit Node については別の機会に触れてみようかと思います。

 

 

 

 

 

Tailscale は、IPv4 over IPv6 での制約を受けません。

 

ポート開けも必要ありません。

 

したがって固定網のルーターのみならず、モバイルルーター配下でもなんら特別なことをしなくても使えます。

 

 

次に示すのはワタシのアカウントの管理画面です。

 


 

ノードとして、Rakuten Hand 5G、iMac 2019、Mac mini M1 を登録しています。

 

 

ADDRESS 欄はこれらのノードに割り当てられた IP アドレスですが、CGNAT 用のアドレスが割り振られており、グローバル IP ではありません。


 

通常はこの ADDRESS で相手と共有します。



ウチの場合、Subnet も設定しています。


 

Subnet 設定すると、ノード間でイントラネットのローカルドメインのアドレスでもアクセスできるようになります。

 


Subnet 設定はターミナルから Tailscale のコマンドで行います。



Mac-mini / % /Applications/Tailscale.app/Contents/MacOS/Tailscale up --advertise-routes=192.168.xxx.0/24
Error: changing settings via 'tailscale up' requires mentioning all
non-default flags. To proceed, either re-run your command with --reset or
use the command below to explicitly mention the current value of
all non-default settings:

    tailscale up --advertise-routes=192.168.
xxx.0/24 --exit-node-allow-lan-access 

Mac-mini / %


  注)xxx はイントラネットのドメインの番号(0--255)

 

 

 

当初は上のようにエラーで Mac mini M1 で Subnet 設定ができません。

 

エラーコメントにあるように、--reset を行い、再び Subnet 設定コマンドを入力します。

 


Mac-mini / % /Applications/Tailscale.app/Contents/MacOS/Tailscale up --reset

Mac-mini / % 

Mac-mini / % 

Mac-mini / % 

Mac-mini / % /Applications/Tailscale.app/Contents/MacOS/Tailscale up --advertise-routes=192.168.xxx.0/24                                        

Mac-mini / %

 

エラーがなくなって Subnet 設定が完了しました。

 

 

 

 

 

Rakuten Hand 5G から Mac mini M1 上のファイルをファイルマネージャーアプリで見てみます。

 

通知領域に示すように 4G で VPN 接続状態です。

 

 


 

iMac2019 と Mac mini M1 はローカルドメインの IP アドレスが割り当たっています。

 

tailscale--imac と tailscale--mac mini は Tailscale の CGNAT 用アドレスが割り当たっています。

 

 

 

Subnet 設定がなければ、Tailscale のアドレスが割り当たっているノードにしか入れません。

 

Subnet 設定していれば、どちらのアドレスでもノードに入れます。

 

 

ここでは、ローカルドメインアドレスが割り当たっている、Mac mini M1 に入ってみます。

 


 

 さらに、Kingmax-dd に入ってみます。




フォルダ一覧になっていますので、いずれかのフォルダをタッチするとその中に収めてあるファイルにアクセスできます。

 

 

このようにスマホから、自宅の Mac のディスクにアクセスできるのです。

 

自分で Raspberry Pi に Wireguard VPN を立ててイントラネットに入っていたことが簡単に Tailscale でできちゃいます。

 

 

 

 

 

 

 

 

0 件のコメント: