Structured Naming: Internet Naming Service: DNS
Structured Naming: Internet Naming Service: DNS
Structured Naming: Internet Naming Service: DNS
T h e ro o t n o d e
""
s e c o n d - le v e l n o d e s e c o n d - le v e l n o d e s e c o n d - le v e l n o d e s e c o n d - le v e l n o d e s e c o n d - le v e l n o d e
... 1 81 ...
n o m in u m m e ta in fo b e r k e le y nwu n a to a rm y uu
w est e a st w w w
d a k o ta to rn a d o
Subdomains
• One domain is a subdomain of another if its
domain name ends in the other’s domain name
– So sales.nominum.com is a subdomain of
• nominum.com & com
– nominum.com is a subdomain of com
Delegation
• Administrators can create subdomains to group hosts
– According to geography, organizational affiliation etc.
"" nominum.com
zone
.a rp a .c o m .e d u
ams.nominum.com
rwc.nominum.com zone
zone acm ebw n o m in u m n e ts o l
rw c w w w ftp am s
204.152.187.11
serves data for
204.152.187.11
isc.org zone only
Types of Name Servers
• Two main types of servers
– Authoritative – maintains the data
• Master – where the data is edited
• Slave – where data is replicated to
– Caching – stores data obtained from an authoritative
server
• No special hardware necessary
Name Server Architecture
• You can think of a name server as part of:
– database server, answering queries about the
parts of the name space it knows about (i.e., is
authoritative for),
– cache, temporarily storing data it learns from
other name servers, and
– agent, helping resolvers and other name servers
find data
Name Server Architecture
Zone
From data
Name Server Process
disk file
Authoritative Data Master
Zone transfer server
(primary master and
slave zones)
Cache Data
(responses from
other name servers)
Agent
(looks up queries
on behalf of resolvers)
Authoritative Data
Name Server Process
Authoritative Data
(primary master and
slave zones) Response
Cache Data
(responses from
other name servers)
Agent
(looks up queries Resolver
Query
on behalf of resolvers)
Using Other Name Servers
Name Server Process
Authoritative Data
(primary master and
slave zones)
Response
Cache Data
Response
(responses from
Another
other name servers)
name
Agent Query server
(looks up queries Resolver
Query
on behalf of resolvers)
Cached Data
Name Server Process
Authoritative Data
(primary master and
slave zones) Response
Cache Data
(responses from
other name servers)
Agent
(looks up queries Query Resolver
on behalf of resolvers)
Overview
• Introduction to the DNS
• DNS Components
– The name space
– The servers
– The resolvers
• DNS Structure and Hierarchy
• The DNS in Context
Name Resolution
• Name resolution is the process by which resolvers
and name servers cooperate to find data in the
name space
• Closure mechanism for DNS?
– Starting point: the names and IP addresses of the name
servers for the root zone (the “root name servers”)
– The root name servers know about the top-level zones
and can tell name servers whom to contact for all TLDs
The Resolution Process
• Let’s look at the resolution process step-by-
step:
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The workstation annie asks its configured name
server, dakota, for www.nominum.com’s address
dakota.west.sprockets.com
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The name server dakota asks a root name server, m, for
www.nominum.com’s address
m.root-servers.net
dakota.west.sprockets.com
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The root server m refers dakota to the com name servers
• This type of response is called a “referral”
m.root-servers.net
dakota.west.sprockets.com Here’s a list of the
com name servers.
Ask one of them.
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The name server dakota asks a com name server, f,
for www.nominum.com’s address
What’s the IP address
of
www.nominum.com?
m.root-servers.net
dakota.west.sprockets.com
f.gtld-servers.net
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The com name server f refers dakota to the
nominum.com name servers
Here’s a list of the
nominum.com
name servers.
Ask one of them.
m.root-servers.net
dakota.west.sprockets.com
f.gtld-servers.net
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The name server dakota asks a nominum.com name server,
ns1.sanjose, for www.nominum.com’s address
What’s the IP address
of
www.nominum.com?
m.root-servers.net
dakota.west.sprockets.com
ns1.sanjose.nominum.net
f.gtld-servers.net
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The nominum.com name server ns1.sanjose
responds with www.nominum.com’s address
m.root-servers.net
dakota.west.sprockets.com
annie.west.sprockets.com
ping www.nominum.com.
The Resolution Process
• The name server dakota responds to annie with
www.nominum.com’s address
Here’s the IP
address for
www.nominum.com
m.root-servers.net
dakota.west.sprockets.com
ns1.sanjose.nominum.net
f.gtld-servers.net
annie.west.sprockets.com
ping www.nominum.com.
Resolution Process (Caching)
• After the previous query, the name server dakota now knows:
– The names and IP addresses of the com name servers
– The names and IP addresses of the nominum.com name servers
– The IP address of www.nominum.com
• Let’s look at the resolution process again
annie.west.sprockets.com
ping ftp.nominum.com.
Resolution Process (Caching)
• The workstation annie asks its configured name
server, dakota, for ftp.nominum.com’s address
m.root-servers.net
dakota.west.sprockets.com
f.gtld-servers.net
annie.west.sprockets.com
ping ftp.nominum.com.
Resolution Process (Caching)
• dakota has cached a NS record indicating ns1.sanjose is an
nominum.com name server, so it asks it for
ftp.nominum.com’s address
What’s the IP address
of ftp.nominum.com?
m.root-servers.net
dakota.west.sprockets.com
ns1.sanjose.nominum.net
f.gtld-servers.net
annie.west.sprockets.com
ping ftp.nominum.com.
Resolution Process (Caching)
• The nominum.com name server ns1.sanjose
responds with ftp.nominum.com’s address
m.root-servers.net
dakota.west.sprockets.com
Here’s the IP
address for ns1.sanjose.nominum.net
ftp.nominum.com
f.gtld-servers.net
annie.west.sprockets.com
ping ftp.nominum.com.
Resolution Process (Caching)
• The name server dakota responds to annie with
ftp.nominum.com’s address
Here’s the IP
address for
ftp.nominum.com
m.root-servers.net
dakota.west.sprockets.com
ns1.sanjose.nominum.net
f.gtld-servers.net
annie.west.sprockets.com
ping ftp.nominum.com.
Iterative Name Resolution
Performance-wise,
Which
How about
works betterwhich
communication is cost?
better?
with caching?
Iterative versus Recursive
Resolution (2)
• Performance-wise, which is better?
– Recursive method puts higher performance demand
on each name server
"."
CO M A F IN T G O V
C o m m e r c i a l O r g a n iz a t i o n s A f g h a n is t a n I n t e r n a t io n a l T r e a t y O r g a n iz a t io n s G o v e r n m e n t a l O r g a n iz a t io n s
NET AL AR PA M IL
N e tw o rk In fra s tru c tu re A l b a n ia ( T r a n s it io n D e v ic e ) M ilit a r y O r g a n iz a t io n s
O RG D Z ED U
O t h e r O r g a n iz a tio n s A l g e r ia E d u c a t io n a l I n s t i t u t i o n s
. ..
YU
Y u g o s l a v ia
ZM
Z a m b ia
ZW
Z im b a b w e
Registries, Registrars, and Registrants
• A classification of roles in the operation of a domain name space
• Registry
– the name space’s database
– the organization which has edit control of that database
– the organization which runs the authoritative name servers for that
name space
• Registrar
– the agent which submits change requests to the registry on behalf of
the registrant
• Registrant
– the entity which makes use of the domain name
Registries, Registrars, and Registrants
Registry updates Master
zone updated
Registry Zone DB
Slaves
Registrar submits
updated
add/modify/delete
to registry
Registrants
Registrants
Overview
• Introduction to the DNS
• DNS Components
• DNS Hierarchy
• The DNS in Context
Load Concerns
• DNS can handle the load
– DNS root servers get approximately 3000
queries per second
• Empirical proofs (DDoS attacks) show root name
servers can handle 50,000 queries per second
– Limitation is network bandwidth, not the DNS protocol
– in-addr.arpa zone, which translates numbers to
names, gets about 2000 queries per second
Performance Concerns
• DNS is a very lightweight protocol
– Simple query – response
• Any performance limitations are the result
of network limitations
– Speed of light
– Network congestion
– Switching/forwarding latencies
Security Concerns
• Base DNS protocol (RFC 1034, 1035) is insecure
– DNS spoofing (cache poisoning) attacks are possible
• DNS Security Enhancements (DNSSEC, RFC
2565) remedies this flaw
– But creates new ones
• DoS attacks
• Amplification attacks
• DNSSEC strongly discourages large flat zones
– Hierarchy (delegation) is good
Questions?