出門帶著手機和平板,家裡的電腦也能一起用
家裡有一台 24/7 開著的電腦,音樂和影片也都存在裡面,出門之後,我還是希望能繼續使用這些東西。想操作電腦,就用 Sunshine+Moonlight 把畫面串流過來;想聽音樂,就讓 foobar2000 直接讀電腦裡的音樂資料夾;想看影片,再開 SenPlayer 連 SMB。
我就是把 Tailscale 當成連回家裡的 VPN,接著把平常會用的工具一個個接上去。 那些要填遠端電腦 IP 的功能,只要服務支援這種連線方式,我都會試著透過它來用。後來連路由器管理頁和 USB 硬碟也接進來,再把 Windows 設成自己的上網出口;就連舊電腦都能裝 Ubuntu Server 提供在海外的家人使用,變成一個免費的台灣 VPN 出口。
同一套 VPN,慢慢變成我遠端操作電腦、聽音樂、看片、拿檔案和使用家中網路的入口。
這篇就把這些用法一起分享,也把設定步驟和指令一起寫上。各位可以先挑自己有興趣的一種來玩玩看,之後有新的需求,再把其他功能也加進去。
一條 VPN,我拿來用這些
| 用法 | 我怎麼用 | 需要的功能 |
|---|---|---|
| 遠端操作電腦、串流桌面 | Sunshine+Moonlight 連家中主機 | 兩端 Tailscale 連線 |
| 把整個音樂庫帶出門 | foobar2000 讀 SMB 主音樂資料夾,再整理播放清單 | Tailscale 連線+SMB 分享 |
| 看影片、瀏覽硬碟與拿檔案 | SenPlayer、檔案管理器直接連主機 IP | 兩端 Tailscale+對應服務 |
| 使用家裡的 IP 上網 | 選房間 Windows,或讓家人使用客廳 Ubuntu 出口 | Exit Node |
| 連路由器與 USB 硬碟 | 經 Windows 轉送到 ASUS 路由器 | Subnet Router |
| 臨時送一份檔案到其他裝置 | 指定自己的接收裝置,把檔案傳過去保存 | Taildrop |
開始之前:先把兩端的 VPN 連起來
Tailscale 是以 WireGuard 為基礎的 Mesh VPN,會把加入同一個私人網路的裝置連起來。這個網路叫做 Tailnet,每台裝置都有自己的 Tailscale IP,常見的 IPv4 形式是 100.x.x.x。Tailscale 運作原理
前面幾種玩法的共同起點,就是讓外出裝置能用這個 IP 連到家中電腦。想把一般上網流量也交給家裡(如果需要家中的 WAN IP),才另外選 Exit Node;要連沒有安裝 Tailscale 的路由器,則用 Subnet Router 轉送。兩種轉送功能的差別
第一步:兩端安裝 Tailscale,加入同一個 Tailnet
先準備家中要被連線的電腦,以及人在外面使用的手機、平板或筆電。家中主機需要保持開機、連網,欲使用的 Sunshine 或檔案分享等服務也要正在運作。
以下假設是自己的裝置,使用同一個 Tailscale 帳號登入。家人或其他人的裝置,則另外安排帳號與存取權限。
Windows、macOS、iOS、iPadOS、tvOS 與 Android 等平台
從 Tailscale 官方下載頁或各平台的官方商店安裝,開啟 App 後登入帳號並啟用連線。Windows 可從右下角系統匣的 Tailscale 圖示登入;手機和平板也要允許 App 建立 VPN 連線。
登入後,到 Machines 管理頁確認兩台裝置都有出現。依本文的做法,兩台裝置應加入同一個 Tailnet,且存取規則允許互連。 自己的裝置可以用同一帳號登入,其他使用者也能受邀加入 Tailnet;如果啟用了裝置核准,就先完成核准。使用者與裝置分享說明。Windows 的安裝介面可參考官方 Windows 教學。
Ubuntu Server
以下是在 Ubuntu 終端機執行的安裝與首次登入指令。已經安裝並登入的主機可以略過:
# 使用 Tailscale 官方安裝腳本
curl -fsSL https://tailscale.com/install.sh | sh
# 啟動服務,並設定開機啟動
sudo systemctl enable --now tailscaled
# 首次登入,依終端機顯示的網址完成授權
sudo tailscale up
想使用套件庫逐步安裝,也可以依照 Linux 官方安裝方式操作。
第二步:查家中電腦的 IP,從外面測試連線
在家中要被連線的電腦執行以下指令。Windows 開啟 PowerShell;Ubuntu 使用終端機:
tailscale ip -4
tailscale status
tailscale ip -4 查到的是這台電腦的 Tailscale IPv4。以下用 100.101.102.103 當作教學示例,請全部換成自己查到的主機 IP。
接著,在外面的 Windows、Mac 或 Linux 用戶端開啟 Tailscale,於有安裝 CLI 的環境測試:
tailscale ping 100.101.102.103
手機和平板則可直接從 Tailscale 的裝置列表找到家中主機,查看 IP,並使用 App 提供的連線測試功能。
最好讓手機改走行動網路,或讓筆電連手機熱點,確認測的是從外部連回家的路徑。看到節點連通之後,再開 Moonlight 或播放器測試實際服務。
這裡要分清楚三種位址:
| 位址 | 意義 | 什麼時候用 |
|---|---|---|
100.x.x.x | 電腦的 Tailscale IP | 透過 Tailscale 直接連這台電腦 |
192.168.x.x | 家中 LAN IP | 家中區網連線,或另設 Subnet Router 後使用 |
| 公網 IP | 家中路由器對外的位址 | 驗證 Exit Node 出口等情境 |
若已啟用 MagicDNS,支援主機名稱的軟體也能填真正的裝置名稱。剛開始操作時,先用查到的 Tailscale IP 比較容易確認。
不想另外記 Tailscale IP?也可以沿用家中的內網 IP
我現在連 PC 和路由器硬碟,就是直接用家裡原本的內網 IP。PC 已固定為 192.168.50.2,ASUS 路由器則是 192.168.50.1,讓家中的 Windows 擔任 Subnet Router,公告這兩個位址後,在家或出門都能沿用同一組連線設定,不必另外記一組 Tailscale IP。
Windows 的轉送設定可照下面「玩法五」操作。接著在家中這台 Windows 的系統管理員 PowerShell公告兩個目的位址;已經設定好就不用重跑,其他人的網路請換成自己的實際 IP:
tailscale set --advertise-routes=192.168.50.1/32,192.168.50.2/32
這裡的 /32 各代表一個 IPv4 位址,分別是路由器與 PC。這個指令會重新指定整份公告路由清單,原本若還有其他路由,要一併保留在逗號分隔的清單裡。
再到 Machines 管理頁找到這台 Windows,在 Subnets/Edit subnet routes 核准這兩條路由。外出的用戶端也要接受路由;Windows、macOS、iOS 和 Android 通常會自動接受,Linux 則執行:
sudo tailscale set --accept-routes
轉送、路由核准、ACL/grants 和服務權限都允許後,播放器或檔案管理器就能使用原本的內網路徑。以下以我的設備為例,分享名稱請換成自己設定的名稱:
PC 硬碟:smb://192.168.50.2/你的分享名稱
路由器 USB 硬碟:smb://192.168.50.1/你的分享名稱
從外部 Windows 用戶端檢查兩個 SMB 入口,可以執行:
Test-NetConnection -ComputerName 192.168.50.2 -Port 445
Test-NetConnection -ComputerName 192.168.50.1 -Port 445
這種用法同樣不需要選 Exit Node,設備的內網 IP 要維持固定,才能一直沿用同一條路由。下文 Moonlight、SMB 等服務的 100.x 範例是一般直接連節點的寫法;像我已設定這兩條內網路由,連這些服務就能改用 PC 的 .2 或路由器的 .1。Subnet Router 設定
玩法一:Sunshine+Moonlight,把家中電腦的畫面串流過來
電腦留在家裡運作,外面的裝置負責顯示畫面和傳回操作,這就是 Sunshine+Moonlight 的用法。透過 Tailscale 連到主機 IP 後,可以選擇串流桌面,或開啟已設定好的遊戲與應用程式。
外出裝置的 Moonlight
↓ Tailscale VPN
家中電腦的 Sunshine
↓
桌面/遊戲畫面、聲音與操作
設定順序如下:
- 在家中主機安裝並設定 Sunshine,先確認它正在執行,並加入要使用的桌面或應用程式。
- 在用戶端安裝 Moonlight。建議人在家時先完成一次配對與試播,確認主機、顯示器及輸入裝置能正常使用。
- 兩端都啟用 Tailscale,確認能連到家中主機。
- 在 Moonlight 使用新增電腦/手動加入主機,輸入家中電腦的 Tailscale IP,例如
100.101.102.103。 - 若 Moonlight 要求配對,在家中電腦的 Sunshine 管理介面進入 PIN 頁,輸入 Moonlight 顯示的配對碼,再回用戶端選擇桌面或遊戲。
- 切換到行動網路或其他外部網路,再用這個 Tailscale 位址測試串流。
Moonlight 的官方設定指南也有介紹這個用法。沒有自動出現在裝置清單裡時,可以手動填 IP;若要沿用家中 LAN IP,先完成第二步末尾的內網路由設定,再填 PC 的 192.168.50.2。
這條路不需要選 Exit Node,也不用為了 Tailscale 連線另做 Sunshine 應用埠的公網轉發。主機上的 Sunshine 防火牆規則、配對與 Tailscale 存取權限仍要允許連線。
串流特別重視延遲和穩定性。開始前可以用 tailscale ping 看路徑是否建立 direct 直連;如果走中繼、行動訊號不穩,或可用頻寬不足,就要降低解析度與碼率,再觀察畫面表現。
以我的使用經驗,即使家裡是中華電信 1Gbps,在家中區網直接串流、沒有經過 Tailscale 時,4K HDR、20Mbps 也不一定能讓畫面和聲音都順暢,尤其在 iPadOS 上更明顯。我懷疑也與 App 相容性有關,實際仍要依裝置和串流設定測試。
玩法二:foobar2000,把電腦裡的整個音樂庫帶出門
音樂的部分,我喜歡直接讓 foobar2000 連電腦裡的資料夾。主音樂資料夾底下可以繼續照原本的方式放專輯,這樣就不用在每個裝置上都花很大的空間存這些肥厚的 FLAC 檔。以下先以 Tailscale IP 示範 SMB 網址,我實際使用的內網 IP 與點選步驟會在下方說明:
smb://100.101.102.103/Music
我會直接加入一個主音樂資料夾,讓底下的音樂被辨識出來,之後再依自己的習慣加進 Playlist(播放清單)。音樂本體仍放在電腦上,播放時透過 VPN 讀取,不需要先全部複製到手機或平板。
這裡的 Music 是 SMB 分享名稱。假設電腦實際資料夾是 D:\Music,共享名稱設定為 Music,遠端填的就是上面的網址,而不是 smb://IP/D:\Music。子資料夾則接在分享名稱後面,例如:
smb://100.101.102.103/Music/Artist/Album
先在主機準備 SMB 音樂分享(Windows 範例)
來源可以是 Windows、macOS、Linux 電腦,或提供 SMB 分享的 NAS/路由器。先在來源主機啟用 SMB、設定分享資料夾及讀取權限,記下分享名稱與可登入的帳密。我的音樂放在 Windows PC,下面以 Windows 的共用介面與 PowerShell 示範;其他主機則使用各自的 SMB 分享設定。
如果原本就有能使用的 SMB 分享,可以沿用,直接看下一小節。新設定時,可以在資料夾「內容 → 共用 → 進階共用」啟用共用,設定分享名稱並授予自己的帳號讀取權限。實際操作流程也可以觀看我先前的影片章節五(已定位)。
也可以在家中 Windows 的系統管理員 PowerShell建立分享。以下假設 D:\Music 已存在,使用執行指令的 Windows 帳號讀取:
# 查目前帳號與既有分享
whoami
Get-SmbShare
# 僅在尚未建立 Music 分享時執行;路徑換成自己的音樂主資料夾
$musicReader = whoami
New-SmbShare -Name "Music" -Path "D:\Music" -ReadAccess $musicReader
# 確認 Music 對應的實際路徑
Get-SmbShare -Name "Music" | Select-Object Name, Path
Windows 範例中,資料夾的 NTFS 權限也要允許這個帳號讀取。若來源主機是 Windows,連線時使用有權限的 Windows 帳號與密碼;Windows Hello PIN 不等於 SMB 登入密碼。Windows SMB 分享指令
若 VPN 已連通、SMB 卻被 Windows 防火牆擋住,可以新增限定自己用戶端的規則。下面的 100.101.102.104 是外出裝置 IP 的示例,請換成那台裝置在 Tailscale 顯示的位址;已有合適規則時不用重建:
New-NetFirewallRule -DisplayName "SMB from my Tailscale device" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 445 -RemoteAddress 100.101.102.104 -Profile Any
這條規則允許指定來源連到 SMB;其他既有規則仍各自作用,完整存取範圍要一起查看。Windows 防火牆規則指令
在 foobar2000 加入來源與播放清單
以下用我實際使用的 iPhone 介面示範。操作路徑是:主畫面 Browse → 右上角設定齒輪 → Media Library → + network location → 右上角三點按鈕 → 填寫 Network Location。
-
先在手機開啟 Tailscale,確認能連回提供音樂的主機,音樂資料夾也已經開好 SMB 分享。
-
打開 foobar2000 的 Browse 主畫面,點右上角的設定齒輪。

-
進入 Tools 頁面後,點 Media Library。

-
在 Library Configuration 的 Music Folders 區塊,點 「+ network location」。

-
接著會進入 Network Folders。點右上角的三點按鈕(…),開啟可以手動填主機位置的 Network Location 頁面。

-
Address 填完整的 SMB 網址,我用的是
smb://192.168.50.2/music;User 填提供 SMB 分享的主機上、有權限讀取該資料夾的帳號,Password 填該帳號對應的 SMB 登入密碼。主機可以是電腦、NAS 或路由器,帳密依來源主機的分享設定填寫。
-
填好後可以先按 Test 測試,確認連線成功再按 Add 加入。回到 Library Configuration,確認這個 SMB 來源的開關已開啟,讓 foobar2000 掃描音樂主資料夾及其下的曲目。曲目多時需要一些時間,畫面下方的
Status: indexing...表示還在掃描。 -
回到 Browse 主畫面,就能從剛加入的
smb://192.168.50.2/music資料夾瀏覽音樂,再挑選專輯、歌曲或資料夾加入自己的 Playlists(播放清單)。我會直接加一個主音樂資料夾,之後再另外整理播放清單。
這裡沿用的是我的內網 IP,外出時要先完成第二步末尾的 Subnet Router 設定;若直接用電腦的 Tailscale IP,就把 Address 換成像 smb://100.101.102.103/Music 這樣的網址。music/Music 都要換成自己實際的 SMB 分享名稱。
以上以我使用的 iPhone 介面示範,其他平台的選單可能不同。VPN 這一層的重點相同:來源主機填可經 Tailscale 抵達的 IP,SMB 路徑和帳密則沿用檔案分享的設定。
玩法三:SMB,硬碟裡的影片和檔案照樣用
音樂庫接上之後,影片和一般檔案也是一樣。主機提供的 SMB 分享可以讓不同 App 讀取:想看影片就開播放器,想找檔案就開檔案管理器,繼續使用自己熟悉的工具。
相同方式也可以用在影片播放器、檔案管理器,以及其他能指定遠端主機的服務。連線時保留原本的協定、分享名稱和埠號,主機位址可用對方的 Tailscale IP,或已公告並核准的內網 IP;服務本身仍需要支援該種連線並允許存取。
| 使用情境 | 要填的內容(教學示例) |
|---|---|
| Moonlight 新增主機 | 100.101.102.103 |
| foobar2000 的 SMB 音樂來源 | smb://100.101.102.103/Music |
| Windows 檔案總管 | \\100.101.102.103\Music |
| Mac Finder、iPhone/iPad「檔案」App 的「連接伺服器」 | smb://100.101.102.103/Music |
| SenPlayer 的 SMB 主機欄位 | 主機 100.101.102.103,SMB 埠 445,另填分享/路徑與帳密 |
| 已部署的 Jellyfin 服務 | http://100.101.102.103:8096(使用預設 HTTP 埠時) |
我的影片來源包含 Windows PC 和 ASUS 路由器 USB 硬碟,播放器的實際介面與使用經驗可以看 SenPlayer 使用心得。我自己連 Windows 和路由器 USB 分享,分別沿用 192.168.50.2 與 192.168.50.1,就是第二步末尾的雙路由做法;完整轉送設定在後面的 Subnet Router 章節。
如果從另一台 Windows 測試 SMB,可以執行:
Test-NetConnection -ComputerName 100.101.102.103 -Port 445
TcpTestSucceeded: True 代表當次 TCP 445 可抵達,接著才是檢查分享名稱、帳密與讀取權限。tailscale ping 通,只能確認節點連線,不能取代每個服務的測試。
玩法四:Exit Node,出門也能借家裡的 IP 上網
前面的功能,是讓用戶端透過 VPN 連到家中服務。想讓一般網際網路流量也從家裡出去,就可以選用 Exit Node。
這個功能也讓我把客廳的舊電腦重新派上用場。房間的主力 Windows 給自己使用,客廳則裝 Ubuntu Server,提供海外家人一個台灣出口。兩台各有任務,不必把所有用途都放在同一台主機上:
| 主機 | 網路環境 | 使用需求 |
|---|---|---|
| 房間 Windows | ASUS ROG GS-BE18000,HiNet 對稱 1Gbps | 自己外出時使用家中出口,也兼任遠端服務主機 |
| 客廳 Ubuntu Server 舊電腦 | TOTOLINK AC5 撥號,浮動公網 IPv4,舊鏈路約 100Mbps | 提供海外家人一個台灣出口 |
Windows 主機:公告出口並核准
在要提供出口的 Windows,以系統管理員 PowerShell 執行:
tailscale set --advertise-exit-node
也可以從 Windows Tailscale 系統匣選單的 Exit node → Run exit node 啟用。接著到 Machines,找到這台主機,開啟 Edit exit node,勾選 Use as exit node 並儲存。Windows 出口設定
Ubuntu 主機:啟用轉送,再公告出口
Ubuntu 已經安裝並登入 Tailscale 後,先查看轉送狀態:
sysctl net.ipv4.ip_forward
sysctl net.ipv6.conf.all.forwarding
新設定出口時,依官方方式把 IPv4/IPv6 轉送寫入設定並載入;若檔案已經有相同設定,不需要重複加入:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf
sudo tailscale set --advertise-exit-node
再到 Machines 核准這台 Ubuntu 的 Exit Node。這是提供出口的設定流程;Linux 系統的防火牆也要允許所需的轉送。Linux 出口設定
外出用戶端:選出口、確認、取消
在要使用出口的裝置開啟 Tailscale → Exit Node,選擇已核准的家中出口主機;我這裡是 Windows 或 Ubuntu。若用戶端是 Windows,也可以在 PowerShell 指定提供出口的主機:
# 在外出的用戶端執行,IP 換成提供出口的那台主機
tailscale set --exit-node=100.101.102.103
Linux 用戶端則在相同指令前加 sudo。選完後,在這台用戶端查詢公網 IP,比較是否已變成家中出口的公網位址。
不需要經過家裡上網時,在用戶端選 None,或執行:
tailscale set --exit-node=
這只取消用戶端選用的出口,Tailscale 裝置間的 VPN 連線仍保留。若要讓提供出口的主機停止公告,則是在那台主機執行 tailscale set --advertise-exit-node=false;Ubuntu 要加 sudo。
若 Tailnet 使用自訂 ACL/grants,還要確認使用者有 autogroup:internet 的出口使用權限。Allow LAN access 處理的是用戶端所在地的本機區網存取,家中主內網與私人檔案的授權則要另外管理。出口權限與本機區網說明
玩法五:Subnet Router,把路由器和 USB 硬碟也接進來
電腦能連了之後,我還想把路由器接的 USB 硬碟一起用。ASUS 路由器的管理頁和儲存分享原本就在家中 LAN,於是我讓 Windows 多兼一個 Subnet Router 的工作,替它們轉送。
這樣就能把沒有直接安裝 Tailscale 的設備也納入玩法。外出時用熟悉的路由器 IP 連進去,Windows 在中間負責把路接起來。
我的 ASUS 路由器是 192.168.50.1,Windows 是 192.168.50.2。我現在把兩個位址各自以 /32 公告,讓 PC 與路由器硬碟都能沿用家中 IP 連線,第二步末尾也有這組指令。
外出裝置
↓ Tailscale VPN
家中 Windows(Subnet Router)
↓ 家中 LAN
ASUS 192.168.50.1 → 管理頁/USB 硬碟
1. 在家中 Windows 確認並啟用轉送
以下在擔任 Subnet Router 的 Windows 以系統管理員 PowerShell 執行。先列出介面,找出 Tailscale 與連到家中路由器的實體網路介面:
Get-NetIPInterface -AddressFamily IPv4 |
Format-Table InterfaceIndex, InterfaceAlias, Forwarding -Auto
若尚未啟用,對這兩個介面設定 IPv4 forwarding。下面的 Tailscale 與 Ethernet 都要依上一步的實際名稱調整,例如中文版 Windows 的實體介面可能叫「乙太網路」:
Set-NetIPInterface -InterfaceAlias "Tailscale" -AddressFamily IPv4 -Forwarding Enabled
Set-NetIPInterface -InterfaceAlias "Ethernet" -AddressFamily IPv4 -Forwarding Enabled
設定後重新查詢,確認這兩個介面的 Forwarding 是 Enabled。指令只選定這兩個介面,詳細參數見 Microsoft 轉送設定文件。
2. 公告目的地,再到管理端核准
以下和第二步末尾相同,同時公告我的路由器與 PC 位址;請換成自己的目標內網位址:
tailscale set --advertise-routes=192.168.50.1/32,192.168.50.2/32
--advertise-routes 會重新指定整份公告清單。 如果原本已有其他路由,要先到 Machines 查看現有清單,將要保留的路由一起用逗號列出,避免被這個範例取代。
然後到 Machines 找這台 Windows,在 Subnets/Edit subnet routes 核准這兩條路由,並確認 ACL/grants 允許目的位址與所需服務。Windows Subnet Router 設定
3. 從外出裝置連線並驗證
Windows、Mac、iOS 和 Android 的 Tailscale 用戶端通常會自動接受路由;Linux 用戶端若要使用這些路由,執行:
sudo tailscale set --accept-routes
接著使用路由器原本的管理入口,或在檔案管理器填入它的 SMB 分享:
http://192.168.50.1
smb://192.168.50.1/實際分享名稱
管理頁若設定為 HTTPS 或其他埠,就沿用原本入口。從外部 Windows 檢查路由器 SMB 則可以用:
Test-NetConnection -ComputerName 192.168.50.1 -Port 445
路由核准、存取權限、Windows 轉送,以及路由器服務都要正常。若人在另一個也使用相同 LAN 位址的網路,還要檢查實際路由是否指向自己家。路由與存取控制的分工
若要停止公告所有 subnet routes,在提供路由的 Windows 執行 tailscale set --advertise-routes=;只移除其中一條時,則重新列出要保留的完整清單。
加碼用法:Taildrop,臨時把檔案送到自己的另一台裝置
Taildrop 適合「我要把這份檔案存到另一台裝置」的情境。它不需要先建立 SMB 分享。
和前面的用途放在一起看,就很容易選:
| 想做的事 | 使用方式 |
|---|---|
| foobar2000 直接讀家中音樂、SenPlayer 讀影片 | 用 VPN 連 SMB,來源電腦需要在線 |
| 把檔案複製一份到平板,之後離線使用 | 用 Taildrop 傳送,完成後在接收端開啟 |
1. 準備傳送與接收裝置
兩台都要啟用 Tailscale,並屬於自己同一個帳號的個人裝置;Taildrop 不提供跨使用者或帶標籤節點的傳檔。依目前官方文件,它仍是 alpha 功能,第一次使用要到管理端 Settings → General 啟用 Send Files。Taildrop 設定與適用範圍
2. 在 Windows 列出接收目標,傳送單一檔案
開啟 PowerShell,先查哪些自己的裝置可接收:
tailscale file cp --targets
從輸出裡選接收裝置。以下用我平板的名稱 tab-s8-ultra 示範,檔案路徑和裝置名稱都要換成自己的:
tailscale file cp "E:\Music\example.flac" tab-s8-ultra:
這才是實際傳送的指令。目標名稱後方的冒號要保留。 不想用指令,也可以在 Windows 對檔案按右鍵,使用 Send with Tailscale 選擇接收裝置。
3. 整個資料夾先打包,再傳 ZIP
這裡接續 Windows PowerShell 範例。其他平台也可以先用自己慣用的壓縮工具建立 ZIP,再交給 Tailscale 傳送。
如果 CLI 對目錄顯示 directories not supported,可以先打包。以下示範把 E:\Music\Album 壓成 ZIP,再送到平板;這是操作範例,請換成自己的實際路徑:
Compress-Archive -LiteralPath "E:\Music\Album" -DestinationPath "E:\Music\Album.zip"
tailscale file cp "E:\Music\Album.zip" tab-s8-ultra:
-LiteralPath 可以避免資料夾名稱中的中括號被當作萬用字元處理。Compress-Archive 有單檔大小等限制,大型檔案或需要保留隱藏檔時,可改用合適的壓縮工具建立 ZIP,再傳送該 ZIP。PowerShell 壓縮指令說明
4. 到接收裝置取檔
Android/Samsung 平板會顯示接收通知,點開後可在檔案 App 的 Downloads(下載)找到檔案。若傳的是 ZIP,解壓縮後再交給播放器或其他 App 使用。Windows 新版接收檔案則放在使用者的 Downloads 資料夾。Android 接收方式、Windows 接收方式
Linux 接收端可以先建立接收資料夾,再以 sudo 取出由 Tailscale 服務接收的檔案:
mkdir -p ~/Downloads/taildrop
sudo tailscale file get ~/Downloads/taildrop
file cp 負責送出、file get 負責在接收端取出檔案,手機和平板則使用各自 App 的接收流程。CLI 傳檔指令、Linux 接收方式
速度實測:5G、ASUS WireGuard 與 Tailscale 出口
2026 年 4 月 29 日,我比較過直接使用 5G、ASUS WireGuard FULL 全通道,以及 Tailscale Exit Node:
| 當次測試路徑 | 下載(Mbps) | 上傳(Mbps) |
|---|---|---|
| 直接使用 5G | 466.57 | 11.49 |
| ASUS WireGuard FULL | 68.43 | 9.73 |
| Tailscale Exit Node | 168.96 | 12.80 |
那次 Tailscale 出口的下載約為 ASUS WireGuard FULL 的 2.47 倍。這是在比較「經過家裡上網」的表現,Moonlight 或 SMB 直接連主機時,還需要看實際端到端路徑與服務狀態。
同一天,我還讓 MacBook 透過 iPhone USB 個人熱點走 5G,測試真正從外部連回家的效果,曾建立約 29ms 的 direct 連線;家中 LAN 的測試則曾看到約 2ms。數據反映當天的設備、線路與負載,並非每次連線的速度保證。
連不上或串流卡頓時,我會先看這些
direct、DERP 和服務狀態
direct 是兩端直接用 UDP 傳送加密封包,通常有較好的延遲與吞吐;無法直連時可以經過 DERP 等中繼,WireGuard 端到端加密仍然存在。連線剛建立時也可能先中繼、再轉成直連。Tailscale 連線類型
tailscale version
tailscale status
tailscale ping 100.101.102.103
tailscale netcheck
先看節點是否在線、走哪條路,再測實際服務。Moonlight 需要 Sunshine 運作及配對完成;SMB 需要分享、帳密與防火牆允許。用名稱不通時,也可以先以已核對的 Tailscale IP 測試,分開判斷 DNS 和服務問題。
Ubuntu 若整台離線,先查它自己有沒有網路,再看服務:
ip -br addr
ip route
sudo systemctl status tailscaled
sudo journalctl -u tailscaled -b --no-pager
多套 VPN 與多張網路介面
我在 Windows 同時使用 NordVPN 和 Tailscale 時,曾碰過無法連到 Tailscale 主機;改 DNS、Split Tunneling 都沒解決那次問題,後來取消了 NordVPN。研究 Surfshark 時,也討論過把商業 VPN 放到 ASUS VPN Fusion 的配置方向。
另一次 Windows 同時連著 Ethernet 和 Wi-Fi,出現 Discord 文字能送、圖片卻失敗的情況,關掉 Wi-Fi 後恢復。這類問題要看當下的路由、DNS 與介面,不能只看裝了哪套 VPN。
Windows 可以先查:
Get-NetIPInterface -AddressFamily IPv4 |
Format-Table InterfaceAlias, InterfaceMetric, Forwarding -Auto
Get-NetRoute -AddressFamily IPv4 |
Format-Table DestinationPrefix, InterfaceAlias, NextHop, RouteMetric -Auto
ipconfig /all
結尾:一條 VPN,隨時連回家中的服務
對我來說,用 Tailscale 的樂趣就在這裡:先讓一台裝置連回家,接著就會開始想,還有哪些平常在家用的東西,也能透過這條 VPN 繼續用?
Moonlight 連回電腦,foobar2000 把整個音樂主資料夾接進來,SenPlayer 讀硬碟裡的影片;再往下玩,連路由器 USB 硬碟、家中的上網出口和客廳舊電腦,都能各自找到用途。
每多接上一個自己會用的服務,這套私人網路就多一點價值,到現在真的覺得用 Tailscale 後真的很方便。可以從自己最常用的那個 App 開始,填上遠端電腦的 Tailscale IP,或設定好路由後沿用內網 IP,看看平常的使用習慣能延伸到多遠。


COMMUNITY
聊聊你的想法
目前僅限登入 Discord 的伺服器成員可以留言,顯示名稱會使用你在伺服器裡的名字。
正在載入留言……