Is there a method to find a domain's DKIM and DMARC records using dig or nslookup?

I have attempted to do the following:

dig somedomain.org any

returns many records, but not the known DKIM and DMARC text records.

nslookup -type=txt somedomain.org

returns all the text records known except the DKIM and DMARC records.

  • 2
    DKIM records are applied to arbitrary subdomains (Google Apps uses google._domainkey.example.com) that you'd have to know/guess to look for. – ceejayoz Aug 29 '14 at 15:38
  • 1
    It depends on the selector prefix used, part of the DKIM header in a signed email – Mathias R. Jessen Aug 29 '14 at 15:57

To query the TXT record for DMARC, you can use:

dig TXT _dmarc.example.org

To query for a particular record for DKIM, you would need to know the selector prefix. You would then query it as TXT (for example with a google one):

dig TXT google._domainkey.example.org
  • 9
    Worth mentioning is that in the DKIM-Signature header the selector name is found in the s= value. – andol Aug 29 '14 at 16:50

For DKIM records, if you have received a DKIM-signed email from that domain, look at the DKIM-Signature header line(s).

From the spec:

All DKIM keys are stored in a subdomain named _domainkey. Given a DKIM-Signature field with a "d=" tag of example.com and an "s=" tag of foo.bar, the DNS query will be for foo.bar._domainkey.example.com.

So in this example, you can then run:

dig TXT foo.bar._domainkey.example.com

Credit to andol, whose comment led me to this solution.


Using Windows built-in tool nslookup

  1. Open Command Prompt (cmd.exe)
  2. Enter nslookup
  3. Enter set type=txt
  4. Enter _dmarc.somedomain.org, replace somedomain.org



Default Server:  localdns

> set type=txt

> _dmarc.somedomain.org

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

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

You may use server (Google DNS) before lookup DMARC TXT record.


You should use +short with dig to get the DMARC record only.

dig +short TXT _dmarc.domain.com

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.