DMARC 記錄是一條發布在域名上面的,在 DNS 中的 TXT 記錄,位于 _dmarc.yourdomain.com,在這里 “yourdomain.com” 是實際的域名或者子域名。它告訴接收郵件的服務器當郵件在 DMARC 驗證中失敗時,應該如何處理,并且應該把郵件驗證數據發往哪里。
DMARC 記錄由一系列的 DMARC 標簽 (tags) 組成。每一個標簽是一對由 = 分隔的鍵/值對。下面的表格顯示每一個標簽的意義:
- v: DMARC 協議版本。缺省是 “DMARC1″;
- p: 將該策略應用到在 DMARC 檢查中失敗的郵件。可能的值是 ‘none’, ‘quarantine’, 或者 ‘reject’。’none’ 被用來收集 DMARC 報告,并獲得郵件流的相關信息;
- rua: 一個 URI 列表,包含可供郵箱服務提供商發送 DMARC 聚合報告的郵件地址。注意:這不是一個電子郵件地址列表。DMARC 要求 UIR 列表的形式為 ‘mailto:test@example.com’;
- ruf: 一個 URI 列表,包含可供郵箱服務提供商發送 DMARC 法庭報告的郵件地址。注意:這不是一個電子郵件地址列表。DMARC 要求 UIR 列表的形式為 ‘mailto:test@example.com’;
- sp: 將該策略應用到在 DMARC 檢查中失敗的來自該域名上面的子域名的郵件。使用這個標簽,管理者能夠在所有域名上面發布一個通配的策略;
- fo: 法庭選項。允許的值:’0’,如果 DKIM 和 SPF 都失敗,生成報告;’1’,如果 DKIM 或者 SPF 失敗,生成報告;’d’,如果 DKIM 失敗,生成報告;’s’,如果 SPF 失敗,生成報告;
- rf: 法庭報告格式;
- pct: 將 DMARC 策略應用到失敗郵件的百分比。’pct = 50′ 意味著將 ‘p = ‘ 指定的策略應用到 50% 的失敗郵件。注意:該標簽對 ‘none’ 策略無效,僅對 ‘quarantine’ 或者 ‘reject’ 策略有效;
- adkim: 為 DKIM 簽名指定”對齊模式” (‘Alignment Mode’),可以是 ‘r’ (Relaxed) 或者 ‘s’ (Strict)。在 Relaxed 模式下,通過驗證的 DKIM 簽名域名 (d=) 的組織域名如果和郵件的 From 域名的組織域名一樣,那么通過 DMARC 檢查。在 Strict 模式下,要求兩者精確匹配;
- aspf: 為 SPF 簽名指定”對齊模式” (‘Alignment Mode’),可以是 ‘r’ (Relaxed) 或者 ‘s’ (Strict)。在 Relaxed 模式下,通過驗證的 SPF 域名的組織域名如果和郵件的 From 域名的組織域名一樣,那么通過 DMARC 檢查。在 Strict 模式下,要求兩者精確匹配;
- ri: 報告時間間隔,通常是每天發送。
DMARC 記錄 VS DMARC 策略
DMARC 策略是 DMARC 記錄的重要部分:它是記錄中的 p= 標簽的值。它指定郵件服務提供商像 Gmail 應該如何處理郵件,如果該郵件在 DMARC 驗證中失敗的話。有 3 個選項:none (監測), quarantine, 和 reject,每一個代表不同的反郵件冒名保護等級。
DMARC 記錄例子
下面是幾個 DMARC 記錄例子:
- v=DMARC1; p=none; rua=mailto:5b18acdef12f1@ag.dmarcly.com; 這個 DMARC 記錄將策略設置成監控模式 (p=none),允許監控郵件驗證狀態,但是并不隔離或者拒收郵件;此外,將聚合報告發送到?5b18acdef12f1@ag.dmarcly.com;
- v=DMARC1; p=quarantine; rua=mailto:5b18acdef12f1@ag.dmarcly.com; 這個 DMARC 記錄將策略設置成隔離模式 (p=quarantine),允許監控郵件驗證狀態,并把 DMARC 驗證失敗的郵件發送到垃圾郵件箱;此外,將聚合報告發送到?5b18acdef12f1@ag.dmarcly.com;
- v=DMARC1; p=reject; rua=mailto:5b18acdef12f1@ag.dmarcly.com; 這個 DMARC 記錄將策略設置成拒收模式 (p=reject),允許監控郵件驗證狀態,并拒收 DMARC 驗證失敗的郵件;此外,將聚合報告發送到?5b18acdef12f1@ag.dmarcly.com。該 DMARC 記錄提供完全的電子郵件冒名保護。
如何使用 DMARC 記錄?
當使用 DMARC 記錄的時候有兩點:發布和檢查。發布由域名管理者完成,而檢查則由郵箱服務提供商執行。
在實施的時候,域名管理者設置好 DMARC 標簽,并把 DMARC 記錄發布到 DNS 中。每當郵箱服務提供商接收到一封郵件,它會到 DNS 中查找該 DMARC 記錄,如果找到的話,就根據 DMARC 驗證的結果應用記錄中的策略。
這樣,域名管理者和郵箱服務提供商配合最終達到 reject 策略,使得 DMARC 驗證失敗的郵件會被拒收。
如何生成 DMARC 記錄?
有 2 個辦法生成一條 DMARC 記錄:手工生成和使用 DMARC 記錄生成器。
如果是手工生成 DMARC 記錄,可以使用任何文本編輯器來創建該記錄。有 3 個必要的標簽:v, p, 和 rua。v 標簽必須是 DMARC1。根據實施的階段,p 可以是 none, quarantine, 或者 reject。最后可以用 rua 來指點接收聚合報告的電郵地址。
使用類似于?DMARC 記錄生成器的工具會更加容易并且不易出錯。輸入設置,比如策略,聚合電郵地址等等,然后點擊 Generate DMARC Record 按鈕,如下所示:
https://dmarcly.com/tools/dmarc-generator
https://dmarcly.com/tools/dmarc-checker

馬上就會生成一個 DMARC 記錄。如果改動設置,要重新生成 DMARC 記錄。

已經連續服務于域名注冊領域十余年的域名頻道一定是你域名注冊和網站備案的優先選擇。
cn域名在解析和使用等方面與其他國別域名及國際域名并沒有區別,只是注冊機構以及管理政策存在一定差異。
國家頂級域名,即國家代碼頂級域名,以地理域名命名的頂級域名,如.cn代表中國,.us代表美國,.fr代表法國等,由各個國家的互聯網絡信息中心(NIC)管理。
總之選對正確的域名注冊服務商非常重要,推薦靠譜的域名注冊服務商:域名頻道http://www.tom51.com/domain/
域名頻道IDC知識庫