DNS
DNS records: Type = cname
name is alias name for some "canonical" (the real) name ex. IBM.com is servereast.backup2.ibm.com
DNS records: Type = ns
name is domain (ex. foo.com) value is hostname of authoritative name server for this domain (networkutopia.com, dns1.networkutopia.com, NS)
DNS records: Type = A
name is hostname value is IP address (dns1.networkutopia.com, 212.212.212.., A)
DNS caching
once any name server learns mapping, it caches the mapping Cache entries disappear after some time TLD server typically cached in local name servers
Authoritative DNS servers
organization's DNS servers, providing authoritative hostname to IP mappings for organization's servers (e.g. Web, mail) can be maintained by organization or service provider
People have many identifiers..
SSN, name, passport #
recursive query
puts task of name resolution on contacted server "I don't know but, I will ask this server for you" - subsequent servers react in same way once server is found mapping is backtracked to client
DNS protocol
query and reply messages, both with same message format
Inserting records into DNS
register name at DNS registrar (GoDaddy.com) provide names, IP of authoritative name server registrar inserts 2 RRs into com TLD server
Top-level domain(TLD) servers
responsible for .com, .org, .net, .edu, etc... Network solutions maintains servers for .com TLD Educause for .edu TLD
load distribution
set of IP addresses for one canonical name
Why not centralize DNS?
single point of failure, traffic volume, distant centralized database, maintenance
Client wants amazon.com
(1) client queries a root server to find .com DNS server (2) client queries .com DNS server to get amazon.com DNS server (3) client queries amazon.com DNS server to get IP address for amazon.com
Internet hosts, routers have many identifiers...
IP address(32-bit): user for addressing datagrams "name": for readability by humans
Root name servers
contacted by local name server that cannot resolve a name root name server then contacts authoritative name server gets mapping(address) returns mapping to local name server
Iterated query
contacted server replies with name of server to contact "I don't know this name, but ask this server"
DNS records
distributed db storing resource records (name, value, type)
Local Name Server
does not strictly belong to hierarchy each ISP (residential ISP, company, university) has one when host makes DNS query, query is sent to its local DNS server (acts as proxy to hierarchy)
DNS - application layer protocol
host, routers, name servers to communicate to resolve names(address/name translation)
DNS services
hostname to IP translation host aliasing(creating name) mail server aliasing
Domain Name System (DNS) - distributed database
implemented in hierarchy of many name servers
DNS updating
update/ notify mechanisms under design by IETF
DNS Records: Type = MX
value is name of mailserver associated with name