錯誤訊息
Mac 上的「找不到具有指定主機名稱的伺服器。」
這是 macOS 對錯誤 -1003 顯示的文字。Mac 無法把伺服器名稱轉換成位址:可能是 DNS 失敗,或這個名稱根本不存在。
症狀
- App 顯示「找不到具有指定主機名稱的伺服器。」(英文:A server with the specified hostname could not be found.)
- App 可能會顯示
NSURLErrorDomain和-1003。 - 對同一個名稱,Safari 顯示「Safari 找不到伺服器」。
可能原因
- 沒有網際網路連線。沒有連線,任何名稱都無法解析。
- DNS 問題。DNS 伺服器沒有回應,或查不到這個名稱。
- VPN 使用自己的 DNS。公司網路內部的名稱只能透過公司的 DNS 解析。請參閱連上 VPN 時無法解析內部名稱。
- 名稱不存在。打錯字,或伺服器已被移除。
- DNS 過濾器。有些 DNS 服務和過濾器會對被封鎖的名稱回應「不存在」。
如何檢查
透過 macOS 解析器查詢名稱。如果沒有出現位址行,就表示查詢失敗。
dscacheutil -q host -a name example.com直接詢問公共 DNS 伺服器。如果這裡有回應、上一步卻沒有,問題就在你的 DNS 設定。
dig +short example.com @1.1.1.1顯示 Mac 目前使用的 DNS 伺服器。
scutil --dnsping 網際網路上的某個位址。這項測試不會用到 DNS。
ping -c 5 1.1.1.1
如何修正
如果 ping 得通但查詢失敗,就是要修正 DNS。請參閱Mac 上的 DNS 無法解析。
清除 DNS 快取,然後再試一次。請參閱清除 Mac 上的 DNS 快取。
如果是公司內部名稱,請先連上 VPN。
如果是 DNS 過濾器阻擋了這個名稱,請在過濾器中允許它。
使用 Kilobat
Kilobat 的連線診斷會逐層測試名稱:網路、代理伺服器、DNS、規則、IPv4、IPv6、TLS 和伺服器,並指出是哪一層失敗。
kilobat why example.com查看 DNS 伺服器,或暫時改用公用 DNS 服務測試。更改需要管理者密碼。
kilobat dns這些 Kilobat 檢查都是免費的。AI 代理程式可透過 MCP 以
diagnose_connection和diagnose_network執行。請參閱找出某個網站或 API 連不上的原因。
常見問題
NSURLErrorDomain -1003 是什麼?
這是 Apple URL Loading System 的 cannotFindHost 錯誤。Apple 的說明是:無法解析主機名稱。
資料來源
- CFNetwork.framework 中的錯誤文字,macOS 27.2(Localizable.loctable)
- Apple Developer:URLError.Code cannotFindHost (-1003)
- Apple 支援:在 Mac 上更改 DNS 設定
- dscacheutil(1)、dig(1) 與 scutil(8),macOS 27.2 內建的 man 頁面
資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。