Domain Name System (DNS) and Domain Name Service Protocol
An application-layer protocol defines how applications on different systems pass messages to each other. An application-layer protocol defines; the types of messages exchanged, the syntax of the various message types, the meaning of the information, and rules for determining when and how a process sends and responds to messages.
One application layer protocol is the Domain Name System which is a name-resolution system critical to World Wide Web (WWW) function and services which is responsible for translating fully qualified domain names such as www.zymitry.com, into machine readable IP addresses. The Domain Name System is what allows users to use alphanumeric names to navigate the WWW, email systems, FTP services, and others, instead of having to use these systems Internet Protocol (IP) addresses. The Domain Name Service protocol is different from most other protocols because users usually have no direct interaction with the Domain Name System, example; web browsers and FTP applications. The Domain Name System provides the names translation used behind the scenes by various services.
The Domain Name System hierarchy consists of the top layer of thirteen root servers located across the world. These root servers hold a database listing of all the Top Level Domain (TLD) servers, example .com, .edu, .net, .org. The TLD’s in turn hold database listings for Authoritative DNS servers that manage databases of actual host names and their corresponding IP addresses. In the simplest terms, when a web browser requests a web page, example, https://zymitry.com, the request queries the Domain Name System hierarchy until it reaches the Authoritative DNS server for https://zymitry.com which in turn provides the IP address of the web resource requested. In reality, the host system and web page server connect and communicate via IP address. The Domain Name System allows users to use alphanumeric addresses and Domain Name System translates the name to an IP address that the systems can actually use to communicate with each other.
Domain Name System Resource Records (RR) provide host name to IP mappings. Records are four-tuple and contain Name, Value, Type, and Time To Live (TTL) fields. The Name and Value meanings are dependent on the Type of record. Example, an “A” record is the primary type of record which directly translates a simple host name to an IP address. The NAME value is the host name, and the Value is the hosts IP address. Other type of records include Name Server (NS) records used to resolve DNS server names, mail server (MX) records which resolve mail server names, and Canonical Name (CNAME) records which can be used to map IP addresses to host alias names, example, a fictional CNAME record could provide an IP address for “mypage.zymitry.com” .
Domain Name System messages are sent and received over User Datagram Protocol (UDP) port 53. UDP is a lightweight connectionless protocol meaning that it is sent with no acknowledgement from the receiving system that the message has been received. UDP does not provide a guarantee that messages ever reach their destination. DNS UDP transmissions as DNS messages are sent from DNS clients to DNS servers or between DNS servers. Local machine source ports can generate from any port number, but are sent and received between hosts on UDP 53. TCP port 53 can also be used in many systems if UDP is not available. Additionally, with the transition to IP version 6 (IPv6), firewalls will have to allow both UDP and TCP port 53 since both will be used.
Gonyea, C. (2010, August 25). DNS: Why It’s Important and How It Works. Retrieved July 5, 2017, from http://dyn.com/blog/dns-why-its-important-how-it-works/.
Hogg, S. (2010, August 22). Allow Both TCP and UDP Port 53 to Your DNS Servers. Retrieved July 5, 2017, from http://www.networkworld.com/article/2231682/cisco-subnet/cisco-subnet-allow-both-tcp-and-udp-port-53-to-your-dns-servers.html.
Kurose, J. F., & Ross, K. W. (2017). Computer networking: a top-down approach (7th ed.). Hoboken, NJ: Pearson.
TechNet DNS. (n.d.). Network Ports Used by DNS. Retrieved July 5, 2017, from https://technet.microsoft.com/en-us/library/dd197515(v=ws.10).aspx.