207

Is there a linux shell command that I can use to inspect the TXT records of a domain?

284

Dig will also do it quite nicely: dig -t txt example.com and if you add the +short option you get just the txt record in quote marks with no other cruft.

| improve this answer | |
  • 8
    According to my DNS manager, I have 4 TXT records - an SPF one with host "@" and then 3 for domainkeys. However, dig -t only shows the SPF value. Any ideas? – Nic Cottrell Sep 21 '12 at 8:17
  • 16
    @NicCottrell and anyone else wondering about this; it is because of the domain you are querying. To view domain keys using dig it would be: dkim-selector._domainkey.example.com If Google was your email provider: dig -t txt google._domainkey.example.com – Robert Brisita Apr 11 '16 at 16:02
  • And dkim-selector is what your email server will write down on the email header, while dmarc is defined to be _dmarc prefix . – Rick Apr 26 at 13:46
86

The host(1) command has a nice, terse output:

$ host -t txt google.com
google.com descriptive text "v=spf1 include:_netblocks.google.com ip4:216.73.93.70/31 ip4:216.73.93.72/31 ~all"
$ wajig findfile $(which host)
bind9-host: /usr/bin/host
$ 

With dig(1) I "have" to add the "+short" option all the time as well.

(I'm on Debian).

| improve this answer | |
  • You can put options in a ~/.digrc file in order to never add them on command line again. – Patrick Mevzek Jul 26 at 19:16

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