2026:IPv6、AAAA 與 Happy Eyeballs——SSH 連 ProxyMac Mac mini 變慢時
工程師常把錯怪在「東京區域」,可 ssh mini.jp.example 在橫幅出現前要卡好幾秒,而 ssh -4 卻飛快。現代解析器同時回傳 A 與 AAAA;現代協定堆疊會做 Happy Eyeballs 式競速(RFC 8305 描述的大致演算法與多數函式庫收斂方向一致),於是 IPv6 嘗試可能剛好卡到像遺失封包,而 ProxyMac Mac mini(香港、日本、韓國、新加坡、美國)本身其實健康。本文不是 IPv6 倡議,而是一張決策表:四行症狀矩陣、macOS 上的用戶端開關(ssh -4、ssh -6、AddressFamily)、字面 IPv6 的方括號寫法、七步手冊,並在 VPN 下答案不同時指向 DNS 與拆分視界故障,在大 TCP 區段消失時指向 PMTUD,在位址族確定後指向 keepalive 調校。若策略先把一切經零信任 hairpin,請先讀 VPN 路由,再追 AAAA 幽靈。
mini 正常但 SSH 首次連線「猶豫」
症狀可分三類:(1) 每分鐘首次 TCP 固定停頓數秒;(2) 與 DNS TTL 到期相關的間歇卡頓;(3) 與負載大小相關(SCP)而非握手。第 1 類強烈指向位址族競速;第 3 類通常不是 IPv6——請改看 MTU,別在這頁讀兩遍。
- 務必記錄
ssh -vvv中Connecting到Connection established之間的時間戳。 - 比對 同一主機名稱在預設與
ssh -4下——若僅預設慢,則值得驗證 IPv6 假設。 - 字面 IPv6 須加方括號:
ssh user@[2001:db8::1],否則解析器會把冒號當成連接埠分隔符。
A 與 AAAA 症狀矩陣(分診第一步)
| 體感 | 更可能的層次 | 首選命令 | 延伸閱讀 |
|---|---|---|---|
停頓 2–5 秒後工作階段很快;ssh -4 消除停頓 | IPv6 損壞或 hairpin | dig AAAA hostname +time=2 | 本文 + DNS 指南 |
| 數字 IP 可連,主機名稱失敗 | 解析器順序 / 拆分 DNS | scutil --dns | head -n 80 | DNS 指南 |
| 互動正常,SCP 中途死掉 | PMTUD / 中間盒 | 封包大小掃描 | MTU 指南 |
| 空閒數十分鐘後斷線 | NAT 計時器 | ServerAlive 探測 | Keepalive 指南 |
dig A 與 dig AAAA 輸出,並一行說明 ssh -4 是否改變了到橫幅的牆鐘時間——網路團隊沒有這兩項對比就不會認真看大段文字。
macOS 筆電上的 Happy Eyeballs 式競速(OpenSSH 繼承什麼)
解析雙堆疊名稱的應用可能平行發起連線,誰先完成用誰。當 IPv6 幾乎 可用——路由器宣告首碼但上游過濾 ICMPv6——你會付出延遲稅,卻看不到乾脆的「connection refused」。請記錄 VPN 開/關 差異:許多 ZTNA 用戶端會重排解析器列表或注入與咖啡廳 Wi‑Fi 不同的虛擬 IPv6 路由。
OpenSSH 參數、~/.ssh/config 與負責任地固定位址族
把 ssh -4 與 ssh -6 當作診斷開關,確認後再以 Host 區塊寫入 AddressFamily inet 或 inet6(在政策允許後)。避免在會在「IPv6 幹淨校園」與「僅 IPv4 飯店」間漫遊的筆電上永久 -4——若無 Match exec 守衛,拆分設定可減少意外。
Host proxymac-jp-stable
HostName mini.example.jp
User build
AddressFamily inet
ServerAliveInterval 30
ServerAliveCountMax 4
租用 mini 須暴露什麼(您仍須自行核實)
ProxyMac 提供可預期的 SSH 入口,但客戶自有主機名的權威 DNS 可能仍在您的註冊商處,除非已委派。確認您的區僅發 僅 A、僅 AAAA 還是兩者皆有——以及企業解析器是否「出於安全」靜默剝掉 AAAA。若 IT 丟棄 AAAA,筆電不會憑空發明 IPv6;反之若 AAAA 存在但上行壞了,用戶端仍可能先試 v6。
七步手冊:再讓維運「搬 mini」之前
- 快照 在辦公室、VPN、家庭情境分別執行
dig A/dig AAAA。 - 計時 同一名字下
ssh -vvv與ssh -4 -vvv——差 >1s 可疑。 - 檢查 VPN 切換時
scutil --dns順序;錯序的搜尋網域會像 IPv6 問題。 - 排除 MTU:若 bulk 複製失敗而 shell 正常,用連結指南。
- 位址族穩定後再疊加 keepalive。
- 在 Git 裡記錄最終
Host區塊,與防火牆工單並列。 - 只有那時 再以 MTR 證據比較 區域——別憑感覺。
常見問題
是否應在 mini 上關閉 IPv6? 優先修壞路徑;全域關 v6 可能破壞合法雙堆疊監控。
螢幕共享是否同樣競速? 經常如此——螢幕共享在無 QUIC 路徑下仍是 TCP;在怪編碼前先驗證 DNS 與位址族。
CGNAT 會改變故事嗎? CGNAT 改連接埠對映節奏,不改 DNS 競速——若只有 443 出口,請配合 企業 CONNECT SSH。
弄清 DNS 與雙堆疊後,為何 ProxyMac Mac mini 仍是合適錨點
Apple Silicon M4 mini 位於 港 / 日 / 韓 / 新 / 美,給您可掛真實測量的主機名稱:今天的 dig 明天應一致。解析器真相與路由政策對齊後,自動化代理、CI 與人工開發者都打在財務已核准的同一台機器上。在 定價頁 預留區域,把 說明中心 的 SSH 片段放在手冊旁,macOS 需要 GUI 見證 TCC 時再回退 VNC。