背景
自宅回線をMoneyForwd 光に変更した結果、v6Plus接続になりダイナミックDNS等でのVPN接続は難しくなったしまったので、別の方法を探していました。
やりたいこと
- 自宅のHEMSなどにiPhoneからアクセスしたい
- UGREEN NASyncのdockerコンテナで実現したい
TailScale
探した結果、TailScaleというサービスがあることを知りました。イメージとしてはクラウド上にあるルーターにVPN接続したい機器がVPNを張りに行ってそこでルーティングしてもらう感じですね。なので、OUT方向が通れば固定IPやポート開放ができなくてもOKです。
TailScaleはPersonalプランという無償プランがあります。 3 Users 100 Devicesまで無料というなんとも太っ腹なサービス! 素晴らしい(笑)
早速やってみる
- iPhoneでTailScalアプリをダウンロード
- 新規にアカウント作成してVPN接続!
- PCからTailScalの管理ページに入りSettings -> Keysで Auth KeysをGenerate Auth keyをポチっとと押してキーを払い出しコピーしておく
- UGREEN NASyncでdockerアプリからプロジェクト作成で適当なプロジェクト名(vpnなど)と保存パス(docker様にアサインした共有フォルダがいいでしょう)を指定して、以下の内容をCompose設定に記載して今すぐデプロイ!
version: "3.8"
services:
tailscale:
image: tailscale/tailscale:latest
container_name: tailscale
hostname: nasync
network_mode: "host"
privileged: true
volumes:
- /var/lib:/var/lib
- /dev/net/tun:/dev/net/tun
environment:
# Tailscale 管理画面で作成した AuthKey を入れる
- TS_AUTHKEY=tskey-auth-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
# LAN 全体 (192.168.1.0/24) を iPhone に広告
- TS_EXTRA_ARGS=--advertise-routes=192.168.1.0/24
restart: unless-stopped
- TailScaleの管理ページからMachinesを見ると、iPhoneとnasyncが繋がってるはず!nasyncの…からEdit route settingsを選んで目的のサブネットにチェックを入れて保存すればそのサブネットに行けるようになります。
超簡単で素晴らしい!(^_^)/