This page shows the DNS message format. A DNS Message Format contains 5 sections (RFC 1035)
Header - Includes:
Bits 0-15 are the query identifier
Bit 16 - QR bit, The message is a query if the value is 0. The message is a response if the value is 1/
Bits 17-20 - Opcode values - Identifies the query type. The message is a standard query if 0, The message is an inverse query if 1, The message is a server status request if 2.
Bit 21 - AA - Authoritative answer - If set, it indicates the responding name server is an aurhority for the domain name in question.
Bit 22 - TC - Indicates the message was truncated.
Bit 23 - RD - Recursion Desired - Set in a query and indicates the query should be persued recursively.
Bit 24 - RA - Recursion Available - A bit that is set or cleared in a response indicating that recursion is available.
Bit 25-27 - Z - Future use, required to always be 0
Bit 28-31 - RCODE - Response code - No error if 0, Format error if 1, Server failure if 2
Word 3 - QDCOUNT - Indicates the number of DNS querise (entries in the question section)
Word 4 - ANCOUNT - Indicates the number of answers (Resource records in the answer section)
Word 5 - NSCOUNT - The number of name server records in the authority records section.
Word 6 - ARCOUNT - The number of resource records in the additional records section.
Question - Includes:
QNAME - Domain name strings with a length byte followed by a string of the designated length.
QTYPE - Two bytes indicating the query type
QCLASS - Two bytes indicating the class field such as IN for internet.
Answer - Resource Records (RRs) answering the question
NAME - domain name
TYPE - Two bytes with resource record type.
CLASS - Two bytes indicating the class of the data
TTL - A 32 bit unsigned integer indicating the time interval in seconds that the may be stored on the DNS server.
RDLENGTH - 16 bits indicating the length of the RDATA field in bytes.
RDATA - This may be the IP address for a domain name but the information varies depending on the type and class of the resource record.
Authority - Resource Records (RRs) pointing to an authority - The format is the same as the Answer section.
Additional - Resource Records (RRs) holding additional information - The format is the same as the Answer section.
TYPE fields are used in resource records. Note that these types are a subset of QTYPEs. TYPE value and meaning