DNS Global System

Internet naming hierarchy is a DNS data tree where the root of the tree is represented with the label “.” and top level domains as first level leaves: e.g., .com, .edu, .gov, .mil, .org, .net, etc.

_images/DNStld.png

Given an IP address what is the name?

The PTR records are in the in-addr.arpa. branch of the tree with a specific format: Domain name is the value of the PTR record. E.g., if the IP address of a name, lan1.example.com is 10.0.75.12, the PTR record would be for the name 12.75.0.10.in-addr.arpa.. The existence of a PTR record does not guarantee the IP address will have only one value that the PTR record returns. And, there will only be one PTR record for an IP address. In essence, PTR records are referring to how IP address owners and/or administrators are utilizing their IP address space rather than actually serving the Internet Naming Hierarchy for users.

Each organization is responsible for its own domain name and subdomains in the hierarchy. Along with its IP address space, the organization manages how it is registered to the overall global naming hierarchy. For example, University of Houston has an A record for its domain name www.uh.edu along with a corresponding PTR record:

Subdomain names are served through nameservers in each domain’s networks with the records for names, IP addresses, and other information. Administrators are responsible for the naming scheme of a domain while also maintaining their authoritative nameservers per domain. All hosts within the domain have a record of their name and address. DNS domain administrators configure their DHCP services to advertise the relevant nameservers in their networks.

_images/DNSuh.png

The UH domain name is under the TLD .edu and it has been registered to have the addresses www.uh.edu, uhsystem.uh.edu, and separately, also cs.uh.edu.

DNS Query and Response

Given a host configuration with a valid DNS nameserver IP address, the host would as for the IP address for a given name using the packet format:

_images/DNSquery.png

The query would be inside the layer 4 payload of the packet:

_images/DNSqueryL4.png