查找DKIM和DMARC记录?


30

有没有一种方法可以使用dig或查找域的DKIM和DMARC记录nslookup

我尝试执行以下操作:

dig somedomain.org any

返回许多记录,但不返回已知的DKIM和DMARC文本记录。

nslookup -type=txt somedomain.org

返回除DKIM和DMARC记录以外的所有已知文本记录。


2
DKIM记录将应用于google._domainkey.example.com您必须知道/猜测要查找的任意子域(Google Apps使用)。
ceejayoz 2014年

1
它取决于使用的选择器前缀,这是签名电子邮件中DKIM标头的一部分
Mathias R. Jessen 2014年

Answers:


39

要在TXT记录中查询DMARC,可以使用:

dig TXT _dmarc.example.org

要查询DKIM的特定记录,您需要知道选择器前缀。然后,您可以将其查询为TXT(例如,使用Google搜索):

dig TXT google._domainkey.example.org

9
值得一提的是,在DKIM-Signature标头中,选择器名称位于s =值中。
andol 2014年

9

对于DKIM记录,如果您从该域收到了DKIM签名的电子邮件,请查看DKIM-Signature标头行。

规格

所有DKIM密钥都存储在名为_domainkey的子域中。给定DKIM-Signature字段,其中example.com的“ d =”标记和foo.bar的“ s =”标记,则DNS查询将针对foo.bar._domainkey.example.com。

因此,在此示例中,您可以运行:

dig TXT foo.bar._domainkey.example.com

感谢Andol,他的评论使我想到了这个解决方案。


4

使用Windows内置工具 nslookup

  1. 打开命令提示符(cmd.exe)
  2. 输入 nslookup
  3. 输入 set type=txt
  4. 输入_dmarc.somedomain.org,替换somedomain.org

例:

C:\Users\user>nslookup

Default Server:  localdns
Address:  192.168.1.1

> set type=txt

> _dmarc.somedomain.org

Non-authoritative answer:
_dmarc.somedomain.org text =

    "v=DMARC1; p=none; rua=mailto:postmaster@somedomain.org"

您可以server 8.8.8.8在查询DMARC TXT记录之前使用(Google DNS)。


会不会nslookup -type=txt _dmarc.somedomain.org [8.8.8.8]更简单?
mwfearnley

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.