Network Architecture

このサイトになぜ繋がる?
どこから繋がって、どこから繋がらないか

管理コンソールは Ryota の Mac mini の中で動いているだけのアプリです。世界中どこからでも“勝手に”見えるわけではなく、 3つの入口(同じWi-Fi・Tailscale・ngrok)を通った人だけが到達できます。その仕組みを図で説明します。

📱 同じWi-Fi 社内・同じ建物 💻 外出先の自分 自宅・カフェ・モバイル 🌐 インターネット LINEサーバー・外部の人 Wi‑Fi ルーター 暗号化トンネル Tailscale (WireGuard) ngrok 公開中継 どこからでも届く公開URL 🖥 Mac mini uvicorn :8000(本体) TRIP PORT
LAN(同じWi-Fi) Tailscale(暗号化VPN) ngrok(公開トンネル)
🔑
大前提:サーバーの実体は Mac mini の中の uvicorn …:8000 ひとつだけ。3つの入口は、その同じ1台へ別ルートで入るための“扉”です。Mac mini が止まれば、どの扉からも入れません。

🚪3つの入口

同じアプリに、誰が・どこから入るかで使う扉が変わります。

同じWi-FiLAN

http://192.168.101.69:8000
誰が
同じWi-Fi/LANに繋がっている人
どこから
社内・同じ建物の中だけ
仕組み
ローカルIPに直接アクセス。外には一切出ない
特徴
いちばん速い・設定不要。ただし外出先からは不可

Tailscale私設VPN

http://100.65.243.44:8000
http://ryotanomac-mini.tail2983a1.ts.net:8000
誰が
同じTailnetに招待された自分のデバイスだけ
どこから
世界中どこでも(自宅・カフェ・モバイル)
仕組み
各端末を暗号化トンネル(WireGuard)で直結する私設network
特徴
公開されない・盗聴されない。未参加の人には存在ごと見えない

ngrok公開トンネル

https://〈毎回変わる〉.ngrok-free.app
誰が
URLを知っていれば誰でも(LINEのサーバー含む)
どこから
インターネット全体(公開)
仕組み
Macからngrok社の中継へ繋ぎ、公開URL→localhost:8000へ転送
特徴
LINE Webhookに必須。無料版はURLが起動ごとに変わる

🗺どこから繋がる? 早見表

アクセス元 × 経路。=使える / =不可 / =条件つき。

アクセス元同じWi-Fi
(LAN)
Tailscalengrok
(公開URL)
結論
自分・社内(同じWi-Fi)どれでもOK最速はLAN
自分・外出先(自宅/カフェ/モバイル)要TailscaleTailscaleが定番
LINEのサーバー(Webhook)必須ngrok必須
招待した協力者・外部の人招待すれば用途で選ぶ
無関係な第三者招待が必要URLを知っていれば届くURL管理に注意

🧠なぜ繋がるの? ざっくり原理

LAN:直接ご近所

サーバーは 0.0.0.0:8000 で待ち受け=同じネットワークの全機器から見える状態。 同じWi-Fiの端末がローカルIP 192.168.101.69 を直接叩いて到達します。ルーターの外(インターネット)には出ません。

Tailscale:招待制の専用トンネル

あなたのMacと端末が、それぞれTailscaleにログインして同じTailnetに参加。 端末間に暗号化トンネルが張られ、100.65.243.44 という“仲間内だけのIP”でどこからでも直結。第三者からは見えません。

ngrok:公開の受付窓口

Macがngrok社のサーバーへ外向きに常時接続し、公開URLを発行。 外から来た通信をそのトンネル経由で localhost:8000 に転送します。LINEのような“外部のサーバー”から呼ぶにはこれが必要です。

⚠️こうなると繋がらない

z z Mac mini がスリープ/電源オフ サーバー本体が止まる=3つの扉ぜんぶ不可。常時起動・スリープ無効が前提。
ngrok を止めた/URLが変わった 公開URLとLINE Webhookが不通に。無料版は再起動でURLが変わるので、LINE側の再設定が必要。
(Tailscale・LANは生きたまま)
端末がTailscale未ログイン/未招待 その経路は使えない(存在も見えない)。外出先で見るなら、その端末でTailscaleにログインしておく。

🛡安全に使うために

Tailscaleは安全寄り:招待した端末だけ・通信は暗号化・公開されない。普段の管理コンソール閲覧はTailscale経由が推奨です。
⚠️
ngrokの公開URLは“鍵付きでない玄関”:URLを知っていれば誰でも届きます。URLは社外に貼らない・SNSに載せない。可能なら ngrok 側のBasic認証やIP制限、または有料の固定ドメイン+認証を検討。LINE Webhookに必要な分だけ開ける運用が安全です。
🔄
常設運用のコツ:無料ngrokはURLが変動 → 固定したいなら ngrok 有料ドメイン、または Tailscale Funnel(自分の *.ts.net を公開)に寄せる手もあります。LINE連携を安定させたいときに。
← 管理コンソールに戻る
TRIP PORT 管理コンソール — ネットワーク構成図(Mac mini / Tailscale / ngrok)