"Connection timed out" 是什麼意思
逾時意味著你的封包完全沒有得到回應——它們在某處被丟棄,或被送往一個不存在任何東西的位址。這是和 Connection refused(一個主動的「這裡沒人在聽」回覆)的關鍵區別:refused 證明機器可達;timed out 證明什麼都不可達。原因全是「你的流量到不了那臺機器」的變體:IP 錯、主機關了、防火牆靜默丟棄、或者——行動端的頭號情況——從外部去連一個私有位址。
原因,按可能性排序
| # | 原因 | 典型場景 |
|---|---|---|
| 1 | 從外部連私有 IP | 家裡 Wi-Fi 能連,行動數據逾時 |
| 2 | IP 錯了 / 變了 | DHCP 給機器換了位址 |
| 3 | 主機關了 / 睡了 | 筆電闔蓋、樹莓派斷電 |
| 4 | 防火牆設為 DROP | 雲端安全群組沒有 SSH 規則 |
| 5 | 所在網路封連接埠 | 公司/飯店網路封出站 22 |
1——經典款:「在家能連,出門逾時」
192.168.x.x、10.x.x.x、raspberrypi.local 這類位址只存在於你家網路內部。從行動數據或任何別的網路,送往它們的封包無處可去——必然逾時。乾淨的解法不是連接埠轉發(把 SSH 暴露到公網),而是網格 VPN:把機器和手機都放進 Tailscale,從任何地方連它穩定的 100.x 私有位址。TermAI 內建 Tailscale,手機端不需要額外 App。
2——核實 IP 和主機在不在
同一網路下 ping 那個位址。沒有回應通常是 IP 錯/變了,或機器沒電——查路由器裝置清單,或在機器上跑 hostname -I。記住休眠策略:闔蓋且沒設「防止睡眠」的 Mac 不會應答;電源不穩的樹莓派可能悄悄掛了。
3——丟棄而非拒絕的防火牆
雲端服務商的安全群組對不允許的流量是丟棄,看起來就是逾時(不是拒絕)。VPS 在 22 連接埠逾時,先查服務商面板的防火牆規則。機器本身也一樣:sudo ufw status——DROP 策略沒放行 SSH 時表現相同。
4——你所在的網路封了它
一些公司、學校、飯店網路封出站 22 連接埠。切到行動數據測試:突然能連了,就是網路的問題。長期方案:在你控制的伺服器上把 SSH 跑在 443,或者——更乾淨——Tailscale,它無需開連接埠就能穿過這些網路。
60 秒診斷
ping HOST # 有回應?主機存在且可達
nc -vz HOST 22 # 端口應答?("succeeded" / "refused" / 卡住 = 被丟棄)
# 每個端口都卡住 → 路由/防火牆;22 上 refused → 看 refused 那篇 在手機上,從那個網路裡任何你能連上的機器跑這些——或問 TermAI 助手要確切的探測命令,在那臺機器上執行。
常見問題
為什麼 SSH 在家能用、行動數據下逾時?
你在連一個家庭網路之外不存在的私有區域網位址。用 Tailscale(TermAI 內建)給機器一個從任何地方可達的穩定位址。
timed out 和 refused 有什麼區別?
Timed out = 完全沒有回應(不可達、被丟棄、或位址錯)。Refused = 機器應答了但那個連接埠上沒人在聽。
為什麼我的 VPS 在 22 連接埠逾時?
多半是服務商的安全群組/雲端防火牆沒有 SSH 規則——流量在作業系統看到之前就被靜默丟棄了。
快速事實
- 含義:封包沒有得到回應——主機不可達、流量被丟、或位址錯
- 行動端頭號原因:從外部連私有區域網 IP → 用 Tailscale,別連接埠轉發
- 雲端原因:安全群組 DROP(查服務商面板)
- 診斷:
ping+nc -vz host 22——卡住=被丟,refused=看 refused 篇
Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.