---
title: 網域信箱設定教學：Google Workspace、Microsoft 365、Zoho、Fastmail、iCloud
description: 從頭到尾一步一步來：Google Workspace、Microsoft 365、Zoho Mail、Fastmail 與 iCloud Mail 要求的驗證、MX、SPF、DKIM、DMARC 紀錄，在 Nymwell 怎麼新增，怎麼換信箱服務不漏信，以及怎麼確認全部通過檢查。
updated: 2026-11-01
---

# 用自己的網域收發信：完整設定步驟

這篇寫給已經有網域、想用 `you@example.com` 這種信箱的人，信箱服務可以是 Google Workspace、Microsoft 365、Zoho Mail、Fastmail 或 iCloud Mail。不管網域是全新的，還是原本已經接了別家信箱，照著做完，信都收得到，寄出去也會通過 SPF、DKIM、DMARC 檢查。所有數值和等待時間都來自各家官方文件，查證日期 2026-11-01。

- **順序很重要。** 先證明網域是你的，建好信箱，再改 MX；接著加 SPF、DKIM，DMARC 最後。Microsoft 要求先建使用者再改 MX，才不會退信 [1]；Google 要求 SPF 和 DKIM 設好 48 小時後再開 DMARC [2]。
- **SPF 只留一筆，舊信箱的 MX 要刪掉。** SPF 有兩筆會直接判定失敗 [3]；前一家留下的 MX 可能讓信繼續寄到舊信箱 [4][5]。
- **帳號專屬的值，從信箱服務後台複製。** Microsoft 的 MX 與 DKIM 目標、Zoho 各資料中心的主機名稱、每一把 DKIM 金鑰都綁你的帳號。本文寫「後台顯示的值」的地方，就照後台一字不差地抄。
- **最後一定要實測。** 寄一封信到別家的信箱，看 `Authentication-Results` 標頭：要看到 `spf=pass`、`dkim=pass`、`dmarc=pass` [6]。

## 各家信箱要哪些紀錄？

| 信箱服務 | 要新增的紀錄 |
| --- | --- |
| Google Workspace | **MX** `smtp.google.com`，優先順序 1 · **SPF** `v=spf1 include:_spf.google.com ~all` · **DKIM** `google._domainkey` 的 TXT，金鑰在管理控制台產生 · **所有權** TXT `google-site-verification=…` |
| Microsoft 365 | **MX** 系統管理中心顯示的值，優先順序 0 · **SPF** `v=spf1 include:spf.protection.outlook.com -all` · **DKIM** `selector1._domainkey` 與 `selector2._domainkey` 兩筆 CNAME，值以系統管理中心顯示的為準 · **所有權** 系統管理中心顯示的 TXT |
| Zoho Mail | **MX** `mx.zoho.com` 10、`mx2.zoho.com` 20、`mx3.zoho.com` 50 · **SPF** `v=spf1 include:zohomail.com -all` · **DKIM** `<selector>._domainkey` 的 TXT，金鑰在 Admin Console 產生 · **所有權** TXT `zoho-verification=zb….zmverify.zoho.com`，或 CNAME |
| Fastmail | **MX** `in1-smtp.messagingengine.com` 10、`in2-smtp.messagingengine.com` 20 · **SPF** `v=spf1 include:spf.messagingengine.com ?all` · **DKIM** `fm1`、`fm2`、`fm3._domainkey` 三筆 CNAME，指向 `fm1.<domain>.dkim.fmhosted.com` 等 · **所有權** — |
| iCloud Mail | **MX** `mx01.mail.icloud.com` 與 `mx02.mail.icloud.com`，都是 10 · **SPF** `v=spf1 include:icloud.com ~all` · **DKIM** `sig1._domainkey` 的 CNAME，指向 `sig1.dkim.<domain>.at.icloudmailadmin.com` · **所有權** 設定頁顯示的 TXT |

以上於 2026-11-01 對照各家官方文件。`<domain>` 換成你的網域，`<selector>` 是你在 Zoho 自己取的名稱。「—」代表該服務不要求另外的驗證紀錄：Fastmail 直接在 **Domains** 畫面顯示網域狀態。Zoho 的 MX 是 `.com` 資料中心用的。DMARC 每家都一樣，後面有獨立一節。

## 開始之前

- **信箱服務的管理員權限。** Google 驗證網域需要「網域設定」管理員權限，設定 DKIM 需要超級管理員 [7][8]；Microsoft 需要網域名稱管理員 [9]。
- **能改網域 DNS 的權限。** 在 Nymwell，擁有者和管理員儲存紀錄會立即生效；其他成員的變更會先送到 **待核准**。
- **DNS 在哪裡。** 下面的紀錄只在網域名稱伺服器指向的地方才有效。網域用 Nymwell 的名稱伺服器，就在 Nymwell 設；DNS 託管在別處（例如 Cloudflare），就到那邊設。
- **如果是從別家信箱搬過來，** 先列出目前所有會收信的地址，改 MX 之前讀完[換信箱服務那一節](#從舊信箱服務搬過來-怎麼做才不會漏信)。

## 在 Nymwell 怎麼新增紀錄？

在主控台打開網域，進 **DNS** 分頁，有三種做法：

- **要接什麼？** → **接信箱**：套用 Google Workspace、Microsoft 365、Zoho Mail 的範本，或 DMARC、不收發信的紀錄。Nymwell 會先列出要新增的紀錄請你確認，**還原上次套用** 可以收回。
- **驗證所有權**：貼上驗證用的 TXT 值，主機維持 `@`。
- **編輯紀錄**：打開完整的紀錄清單，按 **Add a record**（新增紀錄）會出現這些欄位：

| 欄位 | 填什麼 |
| --- | --- |
| Type（類型） | `MX`、`TXT` 或 `CNAME` |
| Name（名稱） | 網域本身填 `@`；其他只填網域前面那段，例如 `_dmarc`、`google._domainkey`、`autodiscover` |
| Value（值） | 信箱服務顯示的值，原封不動貼上 |
| TTL | 300、3600 或 86400 秒。多數信件紀錄用 3600；換信箱服務期間用 300 |
| Priority（MX、SRV 優先順序） | MX 的優先順序，例如 `1` 或 `10`；TXT 和 CNAME 留空 |

各範本會新增的紀錄：

| 範本 | 會新增的紀錄 |
| --- | --- |
| Google Workspace | MX `@` `smtp.google.com` 優先順序 1；TXT `@` `v=spf1 include:_spf.google.com ~all` |
| Microsoft 365 | MX `@` `<網域，點換成連字號>.mail.protection.outlook.com` 優先順序 0；TXT `@` `v=spf1 include:spf.protection.outlook.com -all`；CNAME `autodiscover` `autodiscover.outlook.com` |
| Zoho Mail（zoho.com 帳號） | MX `@` `mx.zoho.com` 10、`mx2.zoho.com` 20、`mx3.zoho.com` 50；TXT `@` `v=spf1 include:zohomail.com ~all` |
| DMARC（先觀察） | TXT `_dmarc` `v=DMARC1; p=none; rua=mailto:dmarc@<domain>`，或你填的報告信箱 |
| 不收發信（防冒用） | TXT `@` `v=spf1 -all`；TXT `_dmarc` `v=DMARC1; p=reject` |

範本只會新增紀錄。已經存在的會略過，也不會加第二筆 SPF 或 DMARC：網域已經有的話，主控台會提醒你，把新的 `include:` 合併進原本的紀錄。範本不會刪掉前一家的 MX，也不含 DKIM，因為每把金鑰都是替你的帳號產生的。Fastmail 和 iCloud Mail 沒有範本，請用 **Add a record** 逐筆新增。

信箱後台顯示的值跟範本不同時，以後台為準、自己新增。例如 Zoho 範本是給 `.com` 資料中心的帳號用的，其他資料中心用不同的 MX 主機 [5]；Microsoft 的 MX 值則以系統管理中心為準 [1]。

**在其他 DNS 服務設定時，** 欄位名稱可能不一樣（Host、Alias、Points to、Answer）。有些要求名稱欄留空而不是填 `@`，有些會自動在你輸入的名稱後面加上網域。所以請填 `_dmarc`，不要填 `_dmarc.example.com`，存好後再檢查一次。Google 和 Zoho 都特別提醒過這點 [2][11]。

## Google Workspace 怎麼接自己的網域？

**1. 驗證網域。** 在管理控制台進 **選單** → **帳戶** → **網域** → **管理網域**，按 **驗證網域**。複製完整的 TXT 值（包含 `google-site-verification=`），設成 `@` 的 TXT 紀錄。Google 確認之前不要刪，最多可能要 72 小時 [7]。

**2. 建立使用者。** 把信移到 Google 之前，先替需要信箱的人建好帳號。

**3. 新增 MX 並啟用 Gmail。** 新增 MX `@` → `smtp.google.com`，優先順序 `1`，其他 MX 全部刪掉。接著在 **管理網域** 對這個網域按 **啟用 Gmail**，照畫面步驟完成。新的 MX 最多 72 小時才會被辨識 [4]。2023 年以前設定的網域，MX 可能是 `aspmx` 開頭的舊值；Google 說舊值仍然支援，能正常收信就不用改 [4]。

**4. 新增 SPF。** TXT `@` → `v=spf1 include:_spf.google.com ~all`。如果已經有其他服務用這個網域寄信，把 include 加進原本那筆，不要另外新增 [12]：

```text
v=spf1 include:_spf.google.com include:<另一個寄信服務給的值> ~all
```

**5. 產生 DKIM 金鑰。** 進 **選單** → **應用程式** → **Google Workspace** → **Gmail** → **驗證電子郵件**，選網域，按 **產生新記錄**。DNS 支援的話選 2048 位元，不支援就選 1024；前置字元維持 `google`，只有網域已經有 `google` 金鑰時才改用別的。剛開通 Gmail 的話，要等 24 到 72 小時才能產生金鑰 [8]。

**6. 發布 DKIM 紀錄。** TXT `google._domainkey` → 該頁顯示的 `v=DKIM1; k=rsa; p=…`。部分 DNS 服務限制 TXT 長度，Google 的頁面有對應的說明 [8]。

**7. 開始驗證。** 金鑰加好後要等：DKIM 最多 48 小時才會生效。之後回到 **驗證電子郵件** 按 **開始驗證**，狀態會顯示正在以 DKIM 驗證電子郵件 [8]。

**8. 48 小時後加 DMARC**，做法見[DMARC 那一節](#dmarc-該怎麼逐步導入)。

```text
@                  TXT  google-site-verification=…          # 步驟 1
@                  MX   1 smtp.google.com                   # 步驟 3
@                  TXT  v=spf1 include:_spf.google.com ~all # 步驟 4
google._domainkey  TXT  v=DKIM1; k=rsa; p=…                 # 步驟 6
```

## Microsoft 365 怎麼接自己的網域？

**1. 新增網域。** 在 Microsoft 365 系統管理中心進 **設定** → **網域** → **新增網域**，輸入網域後選 **使用此網域** [9]。

**2. 驗證網域。** 選擇新增 TXT 記錄來驗證，把系統管理中心顯示的 TXT 值設在 `@`，再按 **驗證**。Microsoft 說最多 10 分鐘，部分註冊商可能要到 48 小時 [9]。

**3. 建立使用者和信箱。** 替每個要在這個網域收信的人建好帳號，而且要在加 MX 之前完成，信才不會中斷 [9][1]。

**4. 打開紀錄清單。** 在網域頁選 **DNS 記錄** → **管理 DNS** → **繼續**。保留勾選 **Exchange and Exchange Online Protection**，在 **進階選項** 也勾 **DomainKeys Identified Mail (DKIM)**。選擇自己新增紀錄，Microsoft 會列出每一筆要複製的值 [1]。

**5. 新增信件紀錄。** 值以系統管理中心顯示的為準，TTL 用 3600 [1]：

```text
@                    MX     0 <系統管理中心顯示的值>
autodiscover         CNAME  <系統管理中心顯示的值>
@                    TXT    v=spf1 include:spf.protection.outlook.com -all
selector1._domainkey CNAME  <系統管理中心顯示的值>
selector2._domainkey CNAME  <系統管理中心顯示的值>
```

前一家的 MX 要刪掉，或把它們的優先順序調得比 Microsoft 低（數字比較大）。已經有 SPF 的話不要新增一筆：把 `include:spf.protection.outlook.com` 加進原本的紀錄，讓一筆同時涵蓋兩家 [1]。
**6. 讓 Microsoft 檢查。** 回到系統管理中心按 **繼續**，Microsoft 會驗證紀錄，完成後顯示網域設定完成 [1]。

**7. 開啟 DKIM 簽章。** 在 Microsoft Defender 入口網站打開 **電子郵件驗證設定**（security.microsoft.com/authentication）→ **DKIM**。點開網域的詳細資料，**Publish CNAMEs** 會列出兩筆 CNAME 的值。如果是空的，先把該網域的開關滑一次：Microsoft 會建立金鑰，跳出一則包含這些值的錯誤訊息，並填好 **Publish CNAMEs**。兩筆 CNAME 進 DNS 之後（Microsoft 偵測要幾分鐘或更久），打開 **Sign messages for this domain with DKIM signatures** [6]。目標值長得像 Microsoft 的範例 `selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft`；舊的則是 `onmicrosoft.com` 結尾 [6]。

**8. SPF 和 DKIM 都通過後再加 DMARC**，做法見下文。

## Zoho Mail 怎麼接自己的網域？

**1. 驗證網域。** 在 Admin Console 進 **Domains**，選網域，在 **Verify Domain Ownership** 選 **Add a TXT record in the DNS**。新增 TXT `@` → `zoho-verification=zb….zmverify.zoho.com`（`zb` 開頭的代碼每個網域都不同），再按 **Verify TXT record**。Zoho 說大約要一到兩小時，驗證成功後紀錄可以刪掉 [13]。

**2. 建立使用者。** 替需要信箱的人建好帳號。

**3. 新增 MX。** 數值在 **Domains** → 你的網域 → **Email Configuration** → **MX**；你的資料中心該用哪個結尾，列在 **Tools & Configurations**。`.com` 資料中心是 [5]：

```text
@  MX  10 mx.zoho.com
@  MX  20 mx2.zoho.com
@  MX  50 mx3.zoho.com
```

先刪掉前一家的所有 MX，再回 Admin Console 驗證 MX。Zoho 說 DNS 變更依 TTL 不同，可能要 12 到 24 小時生效 [5]。
**4. 新增 SPF。** TXT `@` → `v=spf1 include:zohomail.com -all`；同時用多項 Zoho 服務的話改用 `include:one.zoho.com`。Zoho 的設定步驟裡也出現比較寬鬆的 `~all`。不管用哪個，都只留一筆 SPF，其他寄信服務合併進去，例如 Zoho 的範例 `v=spf1 include:abc.com include:def.com include:zohomail.com ~all` [10]。

**5. 設定 DKIM。** 在 **Domains** → 你的網域 → **Email Configuration** → **DKIM** 按 **Add**，取一個 selector 名稱、選金鑰長度。把產生的 TXT 值設在 `<selector>._domainkey`，設好之後才按 **Verify** 並啟用簽章 [11]。

**6. SPF 和 DKIM 都通過後再加 DMARC。**

## Fastmail 怎麼接自己的網域？

**1. 新增網域。** 在 Fastmail 的 **Settings** → **Domains** 加入網域，設定精靈會一步步帶你；選擇 DNS 留在原處的選項 [14]。

**2. 到 DNS 服務新增紀錄** [14]：

```text
@               MX     10 in1-smtp.messagingengine.com
@               MX     20 in2-smtp.messagingengine.com
@               TXT    v=spf1 include:spf.messagingengine.com ?all
fm1._domainkey  CNAME  fm1.example.com.dkim.fmhosted.com
fm2._domainkey  CNAME  fm2.example.com.dkim.fmhosted.com
fm3._domainkey  CNAME  fm3.example.com.dkim.fmhosted.com
_dmarc          TXT    v=DMARC1; p=none;
```

DKIM 目標裡的 `example.com` 換成你的網域。網域的 MX 應該只有這兩筆 Fastmail 的紀錄。要和其他寄信服務並用，就把它們的 include 放在同一筆紀錄的 `v=spf1` 和 `?all` 之間 [14]。
**3. 確認狀態。** 在 **Domains** 畫面出現綠色勾勾，代表紀錄完整而且正確 [14]。

**4. 子網域的話，** 在該子網域加上同樣的 MX；SPF 設在 `<subdomain>`，DKIM 的 CNAME 設在 `fm1._domainkey.<subdomain>`，指向 `fm1.<subdomain>.<domain>.dkim.fmhosted.com`，fm2、fm3 依此類推 [14]。

## iCloud Mail 怎麼用自己的網域？

**1. 先記下網域目前所有的信箱地址**，設定過程中 Apple 會請你輸入 [15]。

**2. 在 iCloud 郵件開始自訂網域設定**，Apple 會顯示要新增的紀錄。

**3. 到 DNS 服務刪掉現有的 MX**，再新增 [15]：

```text
@                TXT    <iCloud 郵件設定頁顯示的值>
@                TXT    v=spf1 include:icloud.com ~all
@                MX     10 mx01.mail.icloud.com.
@                MX     10 mx02.mail.icloud.com.
sig1._domainkey  CNAME  sig1.dkim.example.com.at.icloudmailadmin.com.
```

DKIM 目標裡的 `example.com` 換成你的網域。已經有 SPF 的話，把 `include:icloud.com` 加在原本紀錄的 `~all` 前面。Apple 建議 TTL 用 3600；DNS 服務不接受結尾的句點，就拿掉 [15]。
**4. 回設定頁按驗證**，可能要等幾分鐘。進度可以在 icloud.com/icloudplus 的 **Custom Email Domain** → **Manage** 查看 [15]。

**5. 網域設定好之後，** 再建立需要的新地址 [15]。

## DMARC 該怎麼逐步導入？

DMARC 是設在 `_dmarc` 的一筆 TXT，每家信箱都一樣。SPF 和 DKIM 設好 48 小時後再加，而且一定要附上收報告的 `rua` 地址 [2]。Google 建議的導入步驟 [16]：

| 階段 | 紀錄 | 什麼時候進下一步 |
| --- | --- | --- |
| 1. 觀察 | `v=DMARC1; p=none; rua=mailto:dmarc@example.com` | 每天看報告、至少一週，確認寄出的信沒有問題 |
| 2. 部分隔離 | `v=DMARC1; p=quarantine; pct=5; rua=mailto:dmarc@example.com` | 每天看報告，把 `pct` 逐步調到 100 |
| 3. 拒收（選用） | `v=DMARC1; p=reject; rua=mailto:dmarc@example.com` | 沒通過的信會被拒收，永遠不會送達 |

設成 `quarantine` 時，沒通過的信會進垃圾信匣。Google 舉的起始比例是小型組織約 10%、大型組織約 1% [16]。收緊之前，確認所有用你網域寄信的服務都通過 SPF 或 DKIM，包括電子報工具和帳單系統 [2]。報告數量可能很多，建議寄到群組或專用信箱 [2]。Nymwell 的 **DMARC（先觀察）** 範本加的是第 1 階段，報告會寄到你網域的 `dmarc@`，或你填的信箱。記得建立這個信箱或別名，報告才收得到。

## 每一步要等多久？

| 步驟 | 各家官方說的時間 |
| --- | --- |
| 所有權 TXT | Google 最多 72 小時 [7]；Microsoft 最多 10 分鐘，部分註冊商要到 48 小時 [9]；Zoho 約一到兩小時 [13]；iCloud 幾分鐘 [15] |
| MX | Google 最多 72 小時 [4]；Zoho 依 TTL 12 到 24 小時 [5] |
| DKIM | Google 最多 48 小時後才能按 **開始驗證** [8]；Microsoft 偵測 CNAME 要幾分鐘或更久 [6] |
| DMARC | SPF 和 DKIM 設好 48 小時後再加，接著至少觀察一週 [2][16] |

在 Nymwell 存好的紀錄會立即發布，但已經查過這個名稱的解析器，會沿用舊答案直到 TTL 到期。

## 每筆紀錄怎麼檢查？

直接問公開 DNS。`@8.8.8.8` 是問 Google Public DNS，可以避開你電腦裡的快取：

| 檢查 | macOS／Linux | Windows |
| --- | --- | --- |
| MX | `dig @8.8.8.8 MX example.com +short` | `nslookup -type=mx example.com 8.8.8.8` |
| SPF 與驗證 TXT | `dig @8.8.8.8 TXT example.com +short` | `nslookup -type=txt example.com 8.8.8.8` |
| TXT 形式的 DKIM（Google、Zoho） | `dig @8.8.8.8 TXT google._domainkey.example.com +short` | `nslookup -type=txt google._domainkey.example.com 8.8.8.8` |
| CNAME 形式的 DKIM（Microsoft、Fastmail、iCloud） | `dig @8.8.8.8 CNAME selector1._domainkey.example.com +short` | `nslookup -type=cname selector1._domainkey.example.com 8.8.8.8` |
| DMARC | `dig @8.8.8.8 TXT _dmarc.example.com +short` | `nslookup -type=txt _dmarc.example.com 8.8.8.8` |

每個答案都應該跟你填的一樣：`v=spf1` 開頭的 TXT 只能有一筆，MX 也只能是你那家信箱服務的主機。

`npx nymwell info example.com` 會把信件相關的狀態整理成一行：MX 主機，以及有沒有 SPF、DMARC。2026-11-01 查 fastmail.com 的結果是：

```text
  email       10 in1-smtp.messagingengine.com, 20 in2-smtp.messagingengine.com · SPF yes · DMARC yes
```

Nymwell 主控台網域頁的 **Email** 分頁會顯示同樣的檢查，另外加上 DKIM。它會找常見信箱服務文件寫的 selector（包括 Google、Microsoft 365、Zoho、Fastmail、iCloud Mail），以及這個網域在 Nymwell 的紀錄裡出現的 selector。如果是在別家 DNS 設的、名稱少見的 selector，可能不會顯示，請用上面的指令檢查。

各家自己的檢查工具：

- **Google：** 管理工具箱的 Dig 工具（MX）[4] 和 Check MX [17]；**驗證電子郵件** 頁面的 DKIM 狀態 [8]。
- **Microsoft：** 按 **繼續** 時系統管理中心會檢查紀錄 [1]；Defender 入口網站在找到 CNAME 之前，DKIM 狀態會顯示 **CnameMissing** [6]。
- **Zoho：** Admin Console 裡的 **Verify** 按鈕，以及 Zoho Toolkit 的 MX 查詢 [5]。
- **Fastmail：** **Domains** 畫面的綠色勾勾 [14]。**iCloud：** 按驗證，再到 icloud.com/icloudplus 看 **Custom Email Domain** [15]。

### 最後的實測：收一封、寄一封

**1. 收信：** 從別家的信箱寄信到你的新地址，確認信進的是新信箱，不是舊的。

**2. 寄信：** 用新地址寄信到別家的信箱，例如 Gmail。Google 的檢查方法要寄給自己以外的 Gmail 或 Google Workspace 使用者 [8]。

**3. 看標頭。** 在 Gmail 打開那封信，按 **回覆** 旁邊的 **更多**，選 **顯示原始郵件** [18]。找到 `Authentication-Results`，裡面應該有類似這樣的結果（依 Microsoft 的範例簡化）[6]：

```text
Authentication-Results: mx.google.com;
  dkim=pass header.i=@example.com header.s=selector1;
  spf=pass (google.com: domain of you@example.com designates … as permitted sender) smtp.mailfrom=you@example.com;
  dmarc=pass header.from=example.com
```

`header.s` 是 DKIM 的 selector，`smtp.mailfrom` 是 SPF 檢查的地址。看到 `dkim=none (message not signed)` 代表 DKIM 還沒開 [6]。也可以把標頭貼到 Google 管理工具箱的 Messageheader 工具判讀 [18]。

## 從舊信箱服務搬過來，怎麼做才不會漏信？

**1. 提前一天調低 TTL。** 把目前的 MX（和 SPF）紀錄的 TTL 改成 300。Zoho 也建議用 DNS 服務允許的最低 TTL [5]。TTL 是解析器可以快取紀錄的時間 [19]，所以新的低 TTL 要等舊的到期才算數：原本 86400 的紀錄，要等滿一天。

**2. 先把新服務準備好，不動 MX。** 驗證網域（TXT 紀錄不會改變信送到哪裡），照清單建好每個信箱和別名 [9]。

**3. 讓兩家都能寄信。** 把新服務的 include 加進原本的 SPF，舊的先保留 [1]。例如搬到 Microsoft 365 的期間：

```text
v=spf1 include:<舊服務的值> include:spf.protection.outlook.com -all
```

**4. 在新服務設好 DKIM。** 每家用自己的 selector 簽章，新舊兩家的 DKIM 紀錄可以並存。網域已經有 `google` 金鑰時，Google 要求改用別的前置字元 [8]。

**5. 找離峰時間切換 MX。** 刪掉舊服務的 MX、加上新的；Microsoft 也接受把舊的留著、調低優先順序 [4][1][15]。

**6. 舊信箱先別關。** 新信會送到新服務，已經存在的信留在舊服務，除非你另外搬移 [1]。快取還沒過期的寄件方，仍會把信送到舊伺服器；Google 說最多 72 小時 [4]。這幾天記得看一下舊信箱，再用新服務的匯入或搬移工具把舊信搬過去。

**7. 收尾。** 舊服務不再收到信、你也不再從那邊寄信之後，把它的 include 從 SPF 拿掉，刪掉它的 DKIM 紀錄。TTL 調回 3600（Microsoft 建議 SPF 至少 3600 [3]），再從 `p=none` 開始設 DMARC。

## 常遇到的情況

### 只想轉寄，不需要新信箱

在 Nymwell，網域頁的 **Email** 分頁有 **郵件轉寄**。輸入信箱名稱（例如 `hello`）和你已經在用的信箱，寄到 `hello@你的網域` 的信就會轉過去。轉寄只負責收信：回信是從另一個信箱寄出，對方看到的是那個地址，不是你的網域。同一個網域請擇一使用轉寄或信箱服務；之後要換成信箱服務時，先刪掉轉寄設定，並確認剩下的 MX 都是那家信箱服務的。

DNS 放在 Cloudflare 的話，Cloudflare Email Routing 可以做同樣的事：需要使用 Cloudflare DNS，轉寄到你驗證過的目的地址，並自動加上它的 MX、SPF、DKIM 紀錄 [20]。

### 電子報和系統通知信

不是你直接掌控的寄信服務（例如電子報平台），Microsoft 建議改用 `marketing.example.com` 這類子網域 [3]。這樣那些信出問題時，不會拖累員工信件的信譽，子網域也有自己一份 10 次 SPF 查詢的額度。每個寄信的子網域都要有自己的 SPF；子網域會沿用上層網域的 DMARC 政策，除非另外設定 [3]。Gmail 的規範也建議：同一類信用同一個寄件地址，帳號通知和促銷信分開寄 [21]。

### 設定信件紀錄會讓網站壞掉嗎？

不會。MX、TXT、DKIM 紀錄不會動到根網域和 `www` 用的 A、AAAA、CNAME，Microsoft 也說網站會照常在原本的地方運作 [9]。網站本身怎麼接，請看[把網域接到 Vercel、Netlify、Cloudflare Pages 或 GitHub Pages](https://nymwell.com/zh-tw/guides/connect-domain-to-vercel-netlify-cloudflare/)。

### DNS 在 Cloudflare：信件相關的紀錄要關掉代理

在 Cloudflare，MX 和 TXT 一律是「僅 DNS」。但 MX 指向的主機名稱必須解析到「僅 DNS」的目標，信件協定也無法通過 Cloudflare 的 HTTP 代理；CNAME 攤平還可能讓信箱服務讀不到 DKIM 或 autodiscover 的 CNAME [22]。Nymwell 的 DNS 沒有代理功能，所以這只適用 DNS 放在 Cloudflare 的情況。

### Gmail 和 Yahoo 對寄件者的規定

| 對象 | Gmail [21] | Yahoo [23] |
| --- | --- | --- |
| 所有寄件者 | SPF 或 DKIM；寄件 IP 要有有效的正反向 DNS；TLS；垃圾信比例低於 0.3% | SPF 或 DKIM；有效的正反向 DNS；垃圾信比例低於 0.3% |
| 大量寄件者 | 每天寄給個人 Gmail 帳號超過 5,000 封：SPF 和 DKIM、DMARC 至少 `p=none`、寄件網域與 SPF 或 DKIM 對齊、行銷信提供一鍵退訂 | SPF 和 DKIM、DMARC 至少 `p=none` 且要通過、網域對齊、一鍵退訂並在 2 天內處理 |

寄信的伺服器由 Google Workspace、Microsoft 365、Zoho、Fastmail、iCloud 負責，你要做的是上面這些 DNS 紀錄。

### 「SPF：DNS 查詢次數太多」

收件伺服器檢查你的 SPF 時，最多只會做 10 次 DNS 查詢。每個 `include:`、`a`、`mx`、`exists`、`redirect` 都算一次，裡面再巢狀引用的也要算；`ip4:`、`ip6:`、`all` 不算。超過 10 次 SPF 會判定 `permerror`，信可能被退回 [3]。include 少於 10 個也不保證查詢少於 10 次。把不再使用的服務拿掉，或移到子網域 [3]。

### 完全不寄信的網域

告訴收件方，自稱來自這個網域的信一律拒收：TXT `@` `v=spf1 -all` [3]，再加一筆 `p=reject` 的 DMARC。Nymwell 的 **不收發信（防冒用）** 範本會一次加好這兩筆。

## 疑難排解

| 症狀 | 可能原因 | 怎麼修 |
| --- | --- | --- |
| 寄到新地址的信被退回 | 信箱還沒建就先改了 MX | 在新服務建立使用者 [9] |
| 部分信件還是跑到舊服務 | 舊的 MX 還在，或解析器還在用快取的舊答案 | 刪掉舊 MX；等舊 TTL 到期，最多 72 小時 [4] |
| 信箱服務找不到你新增的紀錄 | 還沒生效，或名稱被存成 `_dmarc.example.com.example.com` | 用 `dig` 檢查；名稱只填網域前面那段 [2] |
| 寄出的信進垃圾信匣 | 缺 SPF 或 DKIM，或 DKIM 還沒開始簽章 | 補上 SPF；開啟 DKIM（Google 按 **開始驗證**、Microsoft 打開開關）[8][6] |
| SPF 出現 `permerror` 或「too many lookups」 | SPF 有兩筆，或查詢超過 10 次 | 合併成一筆；拿掉或把寄信服務移到子網域 [3] |
| Microsoft 的 DKIM 一直是 **CnameMissing** | CNAME 沒加、打錯或還沒生效 | 從 **Publish CNAMEs** 重新複製，用 `dig CNAME` 檢查 [6] |
| Google 的 DKIM 紀錄加不進去 | DNS 服務限制 TXT 長度 | 照 Google 長金鑰的說明處理，或改用 1024 位元 [8] |
| 開了 DMARC 之後，電子報工具的信被拒收 | 它不在 SPF 裡，也沒用你網域的 DKIM 簽章 | 加上它的 include 或 DKIM，或移到子網域；處理好之前先改回 `p=none` [2][3] |
| DNS 在 Cloudflare，信件或 DKIM 失敗 | 信件主機名稱被代理，或 CNAME 被攤平 | 信件相關紀錄改成「僅 DNS」[22] |
| Nymwell **Email** 分頁說沒有 DKIM，但 `dig` 查得到 | selector 的名稱分頁不認得，通常是在別家 DNS 設的自訂名稱 | 不用修；以 `dig` 結果和信箱服務的狀態為準 |

## 常見問題

**改了 MX，舊的信會跟著搬過來嗎？**
不會。新信會送到新服務，舊信留在原本那家，除非你另外搬移 [1]。

**設定信箱會影響網站嗎？**
不會。信件紀錄和根網域、`www` 的 A、CNAME 紀錄是分開的 [9]。

**一個網域可以同時用兩家信箱嗎？**
同一個名稱只有一組 MX 在收信，所以收件匣只會在其中一家。其他服務還是可以用你的網域寄信，只要那一筆 SPF 把它們都包含進去，而且各自用自己的 DKIM selector 簽章 [1][10]。要在第二家收信，就給它一個子網域。

**一定要設 DMARC 嗎？**
Gmail 和 Yahoo 規定大量寄件者一定要有，至少 `p=none` [21][23]。就算寄得不多，也值得從 `p=none` 開始設，報告會告訴你有誰在用你的網域寄信。

**可以讓 AI Agent 幫我設定嗎？**
可以做一部分。透過 Nymwell 登入版 MCP（`https://nymwell.com/mcp/account`）連線的 Agent，可以套用同樣的範本或暫存單筆紀錄，要立即生效還是等你核准，由工作空間的設定決定。Google、Microsoft、Zoho 後台裡的步驟，例如驗證、建立使用者、開啟 DKIM，還是要在各家後台完成。

## 下一步

先在信箱服務建好帳號，再到 [Nymwell 主控台](https://nymwell.com/app/domains/) 打開網域，在 **DNS** 驗證所有權、套用範本或新增紀錄。接著到信箱服務開啟 DKIM，最後做一次收信和寄信的實測。兩天後，從 `p=none` 開始加 DMARC。

## 資料來源

查證日期：2026-11-01。

1. Microsoft Learn，新增 DNS 記錄以連線網域：https://learn.microsoft.com/en-us/microsoft-365/admin/get-help-with-domains/create-dns-records-at-any-dns-hosting-provider
2. Google Workspace 管理員說明，設定 DMARC：https://knowledge.workspace.google.com/admin/security/set-up-dmarc
3. Microsoft Learn，設定 SPF 以識別有效的寄件來源：https://learn.microsoft.com/en-us/defender-office-365/email-authentication-spf-configure
4. Google Workspace 管理員說明，設定 Google Workspace 的 MX 記錄：https://knowledge.workspace.google.com/admin/domains/set-up-mx-records-for-google-workspace
5. Zoho Mail 說明，設定郵件傳遞（MX 紀錄）：https://www.zoho.com/mail/help/adminconsole/configure-email-delivery.html
6. Microsoft Learn，在自訂網域使用 DKIM：https://learn.microsoft.com/en-us/defender-office-365/email-authentication-dkim-configure
7. Google Workspace 管理員說明，使用 TXT 記錄驗證網域：https://knowledge.workspace.google.com/admin/domains/verify-your-domain-with-a-txt-record
8. Google Workspace 管理員說明，設定 DKIM：https://knowledge.workspace.google.com/admin/security/set-up-dkim
9. Microsoft Learn，將自訂網域新增至 Microsoft 365：https://learn.microsoft.com/en-us/microsoft-365/admin/setup/add-domain
10. Zoho Mail 說明，SPF 設定：https://www.zoho.com/mail/help/adminconsole/spf-configuration.html
11. Zoho Mail 說明，DKIM 設定：https://www.zoho.com/mail/help/adminconsole/dkim-configuration.html
12. Google Workspace 管理員說明，設定 SPF：https://knowledge.workspace.google.com/admin/security/set-up-spf
13. Zoho Mail 說明，網域驗證：https://www.zoho.com/mail/help/adminconsole/domain-verification.html
14. Fastmail 說明，只設定 MX 的網域設定方式：https://www.fastmail.help/hc/en-us/articles/1500000280261-Setting-up-your-domain-MX-only
15. Apple 支援，搭配 iCloud 郵件使用現有網域：https://support.apple.com/en-us/102374
16. Google Workspace 管理員說明，建議的 DMARC 導入步驟：https://knowledge.workspace.google.com/admin/security/recommended-dmarc-rollout
17. Google 管理工具箱，Check MX：https://toolbox.googleapps.com/apps/checkmx/
18. Gmail 說明，透過完整標頭追蹤電子郵件：https://support.google.com/mail/answer/29436
19. Cloudflare DNS 文件，Time to Live（TTL）：https://developers.cloudflare.com/dns/manage-dns-records/reference/ttl/
20. Cloudflare 文件，啟用 Email Routing：https://developers.cloudflare.com/email-routing/get-started/enable-email-routing/
21. Gmail 說明，電子郵件寄件者規範：https://support.google.com/mail/answer/81126
22. Cloudflare DNS 文件，電子郵件問題排除：https://developers.cloudflare.com/dns/troubleshooting/email-issues/
23. Yahoo Sender Hub，寄件者最佳做法：https://senders.yahooinc.com/best-practices/

## 相關

- [把網域接到 Vercel、Netlify、Cloudflare Pages 或 GitHub Pages](https://nymwell.com/zh-tw/guides/connect-domain-to-vercel-netlify-cloudflare/)
- [網域是誰的、什麼時候到期](https://nymwell.com/zh-tw/guides/who-owns-a-domain/)
- [網域轉移教學](https://nymwell.com/zh-tw/guides/domain-transfer/)
- [網域與 AI Agent 的 DNS 管理](https://nymwell.com/zh-tw/dns/)
