Also available in: Español · Português · Français · العربية
DNS record types
The complete IANA list, with the eight entries that are not records and the six that are obsolete marked — two distinctions the registry does not carry.
What is a DNS record type?
Every piece of data in the DNS is stored as a resource record, and each record has a type telling you what kind of thing it holds. A is an IPv4 address, AAAA an IPv6 one, MX the mail servers for a domain, TXT arbitrary text, CNAME an alias. Each type also has a number — A is 1, AAAA is 28 — and it is the number that travels on the wire.
IANA keeps the authoritative list in its DNS Parameters registry. There are currently 97 assigned types, from A at 1 up to DLV at 32769, and that registry is what every published table of DNS record types is copied from.
The copying is where it goes wrong, and it is the reason for this page. The registry is a flat table with columns for the name, the number, a description, a reference and a registration date. It has no column saying whether an entry is still current, and no column saying whether the entry is a record at all. Both of those turn out to matter.
How to use it
- Search by name, number or RFC. Type MX for the type, 28 to find AAAA by its wire number, or RFC1035 to see everything that original specification defined. An exact match always ranks first.
- Use the filters to cut the list down. Records you can use shows only current data types — the ones you can actually put in a zone file. Not records shows the eight that cannot. Obsolete shows the six IANA has retired.
- Read the badges on each row. Query only and meta-type mark entries that are not records; obsolete marks retired ones. Rows with no description are shown as such rather than padded, because that is what the registry contains.
Eight of the 97 are not records
This is the distinction almost every list drops. RFC 6895 divides the type numbers into three groups: data types, which store data; QTYPEs, which can only be used in queries; and meta-types, which carry transient information about a single DNS message. It names the members of the last two exactly — three meta-types, OPT, TSIG and TKEY, and five QTYPEs, ANY, MAILA, MAILB, AXFR and IXFR.
None of those eight can appear in a zone file. OPT is the mechanism behind EDNS and exists only inside a message. TSIG and TKEY carry authentication for a transaction. AXFR and IXFR are requests for a zone transfer, not things a zone contains. ANY is a query meaning show me everything you have, and it is not a record any more than a question mark is a sentence.
The registry marks none of this. The phrase meta-type does not appear anywhere on the RRTYPE page, so a table built by copying it lists AXFR and ANY beside A and MX with nothing to distinguish them — which is why so many articles about DNS record types include entries you cannot possibly create. Filtering them out is the first thing this page does, and the Not records filter shows you exactly which eight they are.
Obsolete, but only if you read the description
The second missing column is status. Six types are retired: MD and MF, replaced by MX before most of the current internet existed; NXT, replaced by NSEC; A6, an attempt at IPv6 addressing that lost to AAAA; MAILA; and DLV, DNSSEC Lookaside Validation, which was formally retired by RFC 8749.
IANA does record that they are obsolete — inside the free-text description field, in brackets, and not consistently. The six are written four different ways: OBSOLETE on its own, OBSOLETE - use MX, OBSOLETE - use AAAA, and OBSOLETE - see MX. There is no field to query and no flag to filter on, so anyone building a table from the registry either parses English or silently presents dead types as live ones.
Note that the two distinctions are independent. MAILA is both a QTYPE and obsolete; A6 is a data type that is obsolete; AXFR is a QTYPE that is perfectly current. A single column marked deprecated would not have captured this, which may be why there is not one.
Honest limits
Nine entries have no description at all in the registry — SPF, UINFO, UID, GID, UNSPEC, NID, L32, L64 and LP. They are shown here with that stated plainly rather than filled in with a guess, because inventing a definition and attributing it to IANA would be worse than the gap.
SPF is worth singling out, because it is the case where the registry is most misleading. Type 99 was created so that sender policy records could have their own type instead of living in TXT. It did not catch on, and RFC 7208 formally moved the world back to TXT. But the registry neither describes SPF nor marks it obsolete, so it sits in the list looking exactly like a current type. This page can tell you it has no description; it cannot tell you it is dead, because IANA does not say so.
The data here is a snapshot. IANA adds types as new RFCs are published, and the classification into data, query and meta comes from RFC 6895 rather than from the registry, so a type registered after that document would need a judgement this page has not made. The generator and the exact registry file it was built from are both committed alongside the site, and the checks regenerate from that file and compare, so the table cannot quietly drift away from its source.
Finally, this is a reference list and not a diagnostic. It tells you what a type means, not whether your domain has one or whether it is configured correctly. Ranges the registry reserves as unassigned or for private use are omitted, since they name no type.
Why is it free?
Because there is nothing to charge for. The list ships with the page and the search runs in your browser, so nothing you type is uploaded, logged or stored.
No account, no sign-up, nothing held back. The data comes from IANA's registry rather than from another site's table, the classification is cited to RFC 6895, and the script that builds it is committed so anyone can regenerate the table and check it against the source.