rfc-visual
GitHub

RFC 1035 · November 1987 · P. Mockapetris

Domain names - implementation and specification

INTERNET STANDARDLegacy stream
12 verified errata16 held for document update

Index fetched 2026-10-19 from rfc-editor.org

How it works

Built by hand from RFC 1035. Every arrow, step and field cites the RFC sentence it comes from, and an automated test checks each quote against the RFC text. Provisional: not yet reviewed by a second engineer. Help verify this visual

100%

RFC 1035 §4.1 All communications inside of the domain protocol are carried in a single format called a message.

  1. 1. Resolver → Name server: query

    The resolver sends a query message and gives it an ID of its choosing.

    RFC 1035 §4.1.1 ID A 16 bit identifier assigned by the program that generates any kind of query.
  2. 2. Name server → Resolver: reply

    The name server copies the ID into its reply, so the resolver can tell which outstanding query the reply belongs to.

    RFC 1035 §4.1.1 This identifier is copied the corresponding reply and can be used by the requester to match up replies to outstanding queries.

Not shown: Opcode and RCODE value tables (§4.1.1); Resource record format: NAME, TYPE, CLASS, TTL, RDLENGTH, RDATA (§4.1.3); Message compression with pointers (§4.1.4); Transport: UDP size limit and truncation, TCP two-byte length prefix (§4.2); Resolver details: SLIST, retransmission and response matching (§7); Master file format, name server internals, inverse queries (§5, §6).

Lineage

100%

Updated by (29)

Text

Loading the RFC text…