Tailscale subnet routing 點樣靠一部機遙距連返成個屋企 LAN
3C 產品

Tailscale subnet routing 點樣靠一部機遙距連返成個屋企 LAN

圖片:via XDA Developers — https://www.xda-developers.com/tailscale-subnet-routing-home-lab-remote-access/
TechLab 編輯部(譯)·

由 route approval、ACL 到效能樽頸,設定前要知嘅幾件事

好多人都識用 Tailscale:手機、手提電腦同 NAS 各自裝 client,登入同一個 tailnet,出街都可以連返屋企。不過去到 printer、managed switch、IPMI 呢類裝唔到 client 嘅設備,玩法就會卡住。XDA 作者 Korbin Brown 分享嘅解法係 subnet routing,搵一部長開嘅 Linux 機做閘口,代成個 LAN 接入 Tailscale。

一部機幫成個 LAN 帶路

一般 Tailscale 裝置各自有身份同 tailnet IP,冇裝 client 嘅設備就唔喺呢張 mesh 入面。Subnet router 會向 tailnet 公布一段屋企 subnet,例如 192.168.1.0/24,遙距裝置之後照用 NAS、Proxmox、Home Assistant 或 printer 原本嘅內網 IP。XDA 作者形容,設定後喺機場都可以用同一個 local IP 開 Proxmox,呢點對 bookmark、管理工具同舊設備特別方便。

基本條件係揀一部穩定長開、同屋企 LAN 相通嘅裝置,裝好 Tailscale,再開 Linux IP forwarding,最後用 tailscale set --advertise-routes= 公布 CIDR。Android、iOS、macOS 同 Windows 會自動接收已批准嘅 subnet route;Linux client 就要額外開 --accept-routes。Router 一熄,後面全部設備嘅遙距連接亦會一齊斷,所以唔建議攞成日 sleep 嘅手提電腦頂住先。

公布、批准、放行係三件事

設定最易中伏嘅位係權限。Subnet router 公布 route 後,管理員仲要喺 Tailscale admin console 批准;route approval 只係准條 route 加入 client routing table,唔代表所有流量已經妥善限制。實際邊個 user 或裝置可以連邊個 IP、protocol 同 port,要再由 tailnet policy 嘅 grants 或 ACL 控制。

新 tailnet 嘅預設 policy 會容許裝置互相連接。咁樣一次過批准整段 /24,效果可能係 tailnet 入面所有成員都摸到 router 管理頁、printer web UI 同其他本來只留喺屋企嘅服務。穩陣做法係按 user、裝置 tag、目的 IP 同 port 收窄權限;如果實際只想連三部設備,直接公布幾條 /32 route,範圍會清楚好多。屋企原有防火牆亦要保留,Tailscale 唔會代你修好冇密碼嘅管理頁。

同 port forwarding、逐部裝 client 差喺邊

Port forwarding 要逐項服務開公網入口,跟住處理 TLS、登入、更新同掃描風險。Subnet routing 平時唔使公開每個服務,只有已登入 tailnet、同時符合 policy 嘅裝置,先可以經呢條 route 連線。管理 Home Assistant、NAS 或 printer 簡單好多。佢亦同 exit node 有分別:subnet router 只帶指定內網流量返屋企,普通上網仍然行手上嗰條連線;exit node 就會連一般 internet traffic 都經屋企出去。

可以逐部裝 Tailscale client 嘅話,官方仍然建議直接裝。每部機有獨立身份,存取規則容易寫得仔細,WireGuard 加密亦可以直達嗰部機。行 subnet router 時,Tailscale 加密主要覆蓋遙距裝置去閘口嗰段,閘口去 printer 或舊 NAS 就照用原有 LAN protocol;預設 SNAT 亦會令後方設備見到流量來自 subnet router。Subnet routing 最啱補裝唔到 client 嘅缺口,唔適合貪方便就將所有重要 server 都塞喺同一個大 route 後面。

速度要睇閘口同連接方式

所有流量都要經 subnet router,部機嘅 CPU、網卡、Wi-Fi 狀況同屋企上載速度都會變成上限。Tailscale 能夠建立直接 UDP 連接時,延遲同 throughput 通常最好;碰上 hard NAT,或者身處擋 UDP 嘅連線環境,就可能改行 peer relay 或 DERP。DERP 仍有端到端加密,不過多一程轉送,延遲較高,throughput 亦可能較低。可用 tailscale statustailscale ping 睇清楚行緊 direct 定 relay,唔好單憑管理頁開到就當速度冇問題。

另一個實際麻煩係 IP range 撞車。屋企同酒店、辦公室或咖啡店一齊用常見嘅 192.168.1.0/24,routing table 可能揀錯路,結果同一個 IP 去咗眼前個 LAN。設定前最好改用較少撞到嘅 private CIDR,亦可以配 split DNS,淨係將屋企 domain 交畀內網 DNS server。對有 NAS、Proxmox、Home Assistant 同一堆舊設備嘅 home lab,subnet routing 幾實用;開之前先收窄 route 同 ACL,之後再檢查 direct connection,成套先算穩陣。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook