3 min to read
Understanding DNS - How Domain Name System Works
A comprehensive guide to DNS architecture, types of DNS servers, and record types

Overview
Let’s explore how DNS (Domain Name System) works, from basic concepts to detailed operations.
Working Process
- User accesses website (www.a.com)
- Computer checks local DNS cache
- If not in cache, DNS query begins
- Root DNS server IP address is obtained
- Query sent to Root DNS for TLD server address
- Query sent to TLD DNS for Authoritative DNS server address
- Query sent to Authoritative DNS for IP address
- IP address cached and returned to browser
What is DNS?
DNS (Domain Name System) is a system that converts human-readable domain names into IP addresses used by computers on the internet.
Types of DNS Servers
-
Root DNS Server
- Most critical DNS server in internet infrastructure
- Globally distributed
- Manages root domain names (.)
- Maintained by ICANN
- Provides TLD DNS server information -
TLD (Top-Level Domain) DNS Server
- Manages top-level domains (.com, .org, .edu)
- Processes DNS queries for TLD domains
- Works with domain registrars
- Maintained by ICANN
- Directs to Authoritative DNS servers -
Second-Level DNS Server (Authoritative)
- Typically hosting provider's nameserver
- Contains actual domain-IP mappings
- Final authority for domain information
- Manages specific domain records -
Other DNS Server Types
Recursive DNS Server: Performs complete DNS queries and contacts other servers as needed.
Caching DNS Server: Stores previous query results, improves query performance, and can be cleared (e.g., ipconfig/flushdns).
Forwarding DNS Server: Forwards queries to other servers and can cache results.
Secondary DNS Server: Replicates primary DNS data and provides redundancy.
📊 DNS Working Process Flowchart
graph TD;
A[User accesses website www.a.com] --> B[🗃️ Check Local DNS Cache];
B -->|Not Found| C[📡 Recursive DNS Query Starts];
C --> D[Query Root DNS Server for TLD Info];
D --> E[Query TLD DNS Server for Authoritative Server];
E --> F[Query Authoritative DNS Server for IP];
F --> G[IP Address Returned to Resolver];
G --> H[Cache IP Address];
H --> I[3-Way Handshake SYN → SYN/ACK → ACK];
I --> J[Send HTTP Request to Server];
J --> K[Receive HTTP Response];
K --> L[Display Website to User];
%% Alternative Flow
B -->|Found in Cache| I;
📝 DNS Record Types
Common DNS Records
A Record: Domain name → IPv4 address
CNAME: Domain alias → Another domain
MX: Mail server priority
NS: Authoritative nameserver
TXT: Text information
SPF: Email sender verification
SRV: Service location
AAAA: Domain name → IPv6 address
SOA: Zone authority information
PTR: IP address → Domain name (reverse DNS)
Advanced DNS Records
NSID: Nameserver identifier
DNSKEY: DNSSEC public key
⚙️ Configuration Examples
TinyDNS Record Format
. SOA, NS, A
& NS, A
@ MX, A
= PTR, A
+ A
' TXT
^ PTR
C CNAME
Z SOA
% Client location condition
# Comment
- Disable A record
: Custom
6 AAAA, PTR
3 AAAA
bind forwarding zone example
$TTL 1D
@ IN SOA ns.somaz.com. root.somaz.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.somaz.com.
IN A 172.17.5.10
ns IN A 172.17.5.10
www IN A 172.17.5.10
bind reverse zone example
$TTL 1D
@ IN SOA ns.somaz.com. root.somaz.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.somaz.com.
IN A 172.17.5.10
10 IN PTR ns.somaz.com.
10 IN PTR www.somaz.com.
Comments