SPF 顯示 PermError 時,先確認錯誤類型與實際查核網域,再分析紀錄語法及查詢路徑。不能只把畫面上 include 的數量減到某個值就宣布修好:巢狀引用也會造成查詢,而不同機制使用 DNS 的方式並不相同。
先排除看錯網域與重複紀錄
請從一封實際收到的原信取得 smtp.mailfrom,查詢相同名稱的 TXT 資料。若你只看官網首頁網域,但寄件服務使用另一個信封網域,得到的結論就不對。請管理者確認權威 DNS、目前公開資料與變更時間,別只依控制台顯示已儲存判定外部已生效。
- 保存原本的查詢結果與失敗標頭,確認名稱下是否有互相競爭的 SPF 紀錄,以及字串是否被錯誤拆成獨立紀錄。
- 依標準解析機制與修飾詞,不把一般驗證用 TXT 或其他服務資料算成 SPF。
- 展開實際使用的 include 與 redirect 等依賴,記錄巢狀查詢及失敗位置;必要時由熟悉標準的管理者使用可重現工具檢查。
- 盤點仍合法寄件的服務,再決定移除停用項目或採用供應商支援的配置;不要為減少查詢而刪掉正在寄訂單的來源。
假設案例:表面只有幾個 include
假設臺北票務商的主紀錄只看見三個平台引用,但其中某平台再引用多層資料。若只數主紀錄的三個項目,會漏看真正成本。此處是方法示例,沒有宣稱哪一家平台一定超限;檢查需以當下公開紀錄和標準評估,並留下時間,因為平台可能更新依賴。
另一種完全不同的情況,是搬移 DNS 後留下兩筆各自以 SPF 版本開頭的紀錄。這時即使查詢成本低,也可能先遇到紀錄選擇問題。錯誤名稱相同,不代表修法相同;先查重複與語法,再追查依賴,可避免盲目將整串內容合成更複雜的配置。
不要把展平當成無成本捷徑
把供應商網域轉成固定 IP 清單,可能暫時減少某些查詢,卻新增維護責任;服務商日後換 IP,固定清單未更新便可能影響寄信。若團隊無法持續追蹤來源變更,不要把一次查到的位址複製成永久解方。這類設計應由網域管理者與供應商共同確認。
也不宜隨意把所有服務塞到同一個公開身分。不同寄件用途可有不同管理安排,但改用子網域仍需處理實際授權、DKIM 與 DMARC 關係,不能拿來逃避正常限制。本文提供問題分類,不提供可直接執行的網域重構或公開紀錄替換指令。
完成修正後,從每個仍在使用的來源各寄新信,檢查收件端結果;不要只測電子報而忽略報價或客服系統。將舊值、修改理由、負責人及回復方法保存在內部變更紀錄。若某條路徑未測,註記未驗證,不能因主紀錄檢查通過便填成全部正常。
標準的查詢限制是技術處理條件,並非收件匣評分。消除 PermError 只解決該次 SPF 評估問題;顧客是否收到、信件分類與其他驗證仍要各自查核。測試工具顯示的樣本結果也不能替代權威 DNS 管理或寄件服務的實際事件紀錄。
資料依據與後續觀察
完成上述檢查後,可用去除個資的同版內容開始郵件測試;先確認當下可選的收件服務,結果僅描述本次樣本,不能推估所有臺灣顧客。測試方法與限制說明觀察範圍;工具不會代查商店後台或收件者私人設定。