Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York.

Slides:



Advertisements
Similar presentations
Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
Advertisements

 This Class  Chapter 9  Next Class  Wrap up this semester  Demo/discuss programming assignments  Review what we have learned  Questionnaire/Feedback.
1 DNS. 2 BIND DNS –Resolve names to IP address –Resolve IP address to names (reverse DNS) BIND –Berkeley Internet Name Domain system Version 4 is still.
Domain Name System (or Service) (DNS) Computer Networks Computer Networks Term B10.
The Domain Name System. CeylonLinux DNS concepts using BIND 2 Hostnames IP Addresses are great for computers –IP address includes information used for.
1 Computer Networks Application layer. 2 Application Layer So far –Socket programming, Network API Today –Application layer functions –Specific applications.
Domain Name System (or Service) (DNS) Computer Networks Computer Networks Spring 2012 Spring 2012.
20101 The Application Layer Domain Name System Chapter 7.
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts, routers: –IP address (32 bit) - used for addressing datagrams –“name”, e.g., gaia.cs.umass.edu.
McGraw-Hill©The McGraw-Hill Companies, Inc., Chapter 25 Domain Name System.
Domain Name System (DNS) Network Information Center (NIC) : HOSTS.TXT.
2: Application Layer1 Chapter 2 Application Layer Computer Networking: A Top Down Approach, 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
Application Layer session 1 TELE3118: Network Technologies Week 12: DNS Some slides have been taken from: r Computer Networking: A Top Down Approach.
Domain Name System: DNS
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
CPSC 441: DNS1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes derived.
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Domain Name System ( DNS )  DNS is the system that provides name to address mapping for the internet.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
The Domain Name System (DNS)
Domain Name Services Oakton Community College CIS 238.
CS640: Computer Networks Aditya Akella Lecture 17 Naming and the DNS.
Electronic Mail Three major components: SMTP user agents mail servers
NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/20091 NET0183 Networks and Communications by Dr Andy Brooks.
CS 4396 Computer Networks Lab
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts: – IP address (32 bit) - used for addressing datagrams – “name”, e.g.,
Domain Name System (DNS)
Ch-9: NAME SERVICES By Srinivasa R. Gudipati. To be discussed.. Fundamentals of Naming Services Naming Resolution The Domain Name System (DNS) Directory.
Chapter 16 – DNS. DNS Domain Name Service This service allows client machines to resolve computer names (domain names) to IP addresses DNS works at the.
Computer Networks Mozafar Bag-Mohammadi Lecture 5 Naming and the DNS.
CS 471/571 Domain Name Server Slides from Kurose and Ross.
Petrozavodsk State University, Alex Moschevikin, 2003NET TECHNOLOGIES Domain Name System HISTORY File hosts (the size of Internet became more than 1000.
DNS: Domain Name System
1 DNS: Domain Name System People: many identifiers: m SSN, name, Passport # Internet hosts, routers: m IP address (32 bit) - used for addressing datagrams.
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
14 DNS : The Domain Name System. 14 Introduction - Problem Computers are used to work with numbers Humans are used to work with names ==> IP addresses.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Network Protocols Chapter 25 (Data Communication & Networking Book): Domain Name System (DNS) 1.
Chapter 17 Domain Name System
1 Application Layer Lecture 6 Imran Ahmed University of Management & Technology.
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CS640: Computer Networks Aditya Akella Lecture 17 Naming and the DNS.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
Domain Name System CH 25 Aseel Alturki
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Netprog: DNS and name lookups1 Address Conversion Functions and The Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
1 Kyung Hee University Chapter 18 Domain Name System.
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
CPSC 441: DNS 1. DNS: Domain Name System Internet hosts: m IP address (32 bit) - used for addressing datagrams m “name”, e.g., - used by.
Configuring Name Resolution and Additional Services Lesson 12.
EE 122: Lecture 20 (Domain Name Server - DNS) Ion Stoica Nov 15, 2001 (* based on the some on-line slides of J. Kurose & K. Rose and of Raj Jain)
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
DNS DNS overview DNS operation DNS zones. DNS Overview Name to IP address lookup service based on Domain Names Some DNS servers hold name and address.
Lecture 5: Web Continued 2-1. Outline  Network basics:  HTTP protocols  Studies on HTTP performance from different views:  Browser types [NSDI 2014]
Web Server Administration Chapter 4 Name Resolution.
1. Internet hosts:  IP address (32 bit) - used for addressing datagrams  “name”, e.g., ww.yahoo.com - used by humans DNS: provides translation between.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
COMP 431 Internet Services & Protocols
Networking (Cont’d). Congestion Control l Is achieved by informing nodes along a route that congestion has occurred and asking them to reduce their packet.
1 Chapter 10: Application Layer Reference: Chapter 7 - “Computer Networks”, Andrew S. Tanenbaum, 4th Edition, Prentice Hall, 2003.
Spring 2006 CPE : Application Layer_DNS 1 Special Topics in Computer Engineering Application layer: Domain Name System Some of these Slides are.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Domain Name System (DNS)
Networking Applications
Chapter 9: Domain Name Servers
Chapter 19 Domain Name System (DNS)
DNS: Domain Name System
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
The Application Layer: Sockets, DNS
Domain Name System: DNS
Presentation transcript:

Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York University

DNS: Domain Name System Internet hosts are identified by: –IP address (32 bit) - used for addressing datagrams –“name”, e.g., sparky.cs.unyu.edu - used by humans How to map between IP addresses and name ?

DNS: in the beginning... When the Internet was ARPANET, a simple text file hosts contained names and IP Addresses. As the number of hosts grew, this approach was unacceptable. –hosts file became too big –worse, host naming conflicts occurred To deal with this, the Domain Name System was conceived (RFC 1034, 1035)

DNS: the basic idea... Divide the name space in domains (.edu,.gov, country, etc.) Allocate servers to handle each domain. Further subdivide each domain as needed –for example,.edu domain has servers for nyu, yale, etc. So, the name space is represented by a tree

The DNS Hierarchy T7.25 A portion of the domain name space

DNS: name servers To avoid problems with single server, the DNS name space is divided into zones Each zone holds some part of the name tree and some server that acts as the “authority” for that zone. Usually, one authoritative server and some number of secondary name servers.

DNS: zones T7.28 Division of name space into zones

DNS: Resolvers Each host has a resolver –Typically a library that applications can use –Local name servers hand-configured (e.g. /etc/resolv.conf) –Can be full resolvers (have a cache) or stub resolvers (just the library functions)

DNS name servers: types local name servers: –each ISP, company has local (default) name server –host DNS query first goes to local name server authoritative name server: –can perform name/address translation for that host’s name (it is the AUTHORATIVE name server) –By definition, an authoritative name server for a given host always has the name to IP address mapping for that host in its database (not cache!)

DNS: Root name servers contacted by local name server that can not resolve name root name server: –contacts authoritative name server if name mapping not known –gets mapping –returns mapping to local name server ~ dozen root name servers worldwide

DNS: name resolution algorithm Consult local DNS, if name known and valid, done. Else local DNS... Consults root server, if name known and valid, done. Else root server... Consults authoritative server for hostname –this process is repeated until name is resolved (or not!) –results are passed back to each requestor –known as recursive query

DNS: example query - find linda.cs.yale.edu 1. Send query to local DNS for cs.vu.nl 2. Send query to Edu name server 3. Send query to Yale name server 4. Send query to cs name server at Yale Results flow back

DNS: another example host surf.eurecom.fr wants IP address of gaia.cs.umass.edu 1. Contacts its local DNS server, dns.eurecom.fr 2. dns.eurecom.fr contacts root name server, if necessary 3. root name server contacts authoritative name server, dns.umass.edu, if necessary requesting host surf.eurecom.fr root name server authoritative name server dns.umass.edu local name server dns.eurecom.fr

DNS: yet another example! Root name server: may not know authoritative name server may know intermediate name server: who to contact to find authoritative name server requesting host surf.eurecom.fr root name server local name server dns.eurecom.fr authoritative name server dns.cs.umass.edu intermediate name server dns.umass.edu 7 8

DNS: recursive vs. iterated queries recursive query: puts burden of name resolution on contacted name server heavy load? iterated query: contacted server replies with name of server to contact “I don’t know this name, but ask this server” requesting host surf.eurecom.fr root name server local name server dns.eurecom.fr authoritative name server dns.cs.umass.edu intermediate name server dns.umass.edu 7 8 iterated query

Caching in DNS Server always caches answers Host can cache answers cache entries timeout (disappear) after some time (ttl) Caching –Improves efficiency –Eliminates unnecessary search –Works well because high locality of reference

DNS Database Composed of resource records (RR) Each record has a type field that gives the semantics of name and value ttl is the time to live of the record in seconds RR format: (name, value, type,ttl)

DNS: Reliability DNS servers are replicated –Name service available if  one replica is up –Queries can be load balanced between replicas UDP used for queries –Need reliability so, why not TCP? –Try alternate servers on timeout –Exponential back-off when retrying same server –Same identifier for all queries –Don’t care which server responds

DNS: RR Types A, NS Type=A –name is hostname –value is IP address –most important record type! Type=NS –name is domain (e.g. foo.com) –value is IP address of authoritative name server for this domain

DNS: RR Types CNAME, MX Type=CNAME –name is an alias name for some “canonical” (the real) name –value is canonical name Type=MX –value is hostname of mail server associated with name –example: mail.com = ?

DNS: RR Types PTR, SOA Type=PTR (pointer) –name is canonical IN-ADDR.ARPA domain address –value is host name Type=SOA (start of authority) –Names host as server for zone –Value contains update parameters

DNS: protocol, messages DNS protocol : query and reply messages, both with same message format msg header (12 bytes) identification: 16 bit # for query, reply to query uses same # flags: –query or reply –recursion desired –recursion available –reply is authoritative

DNS: request/reply message format identification flags number of questionsnumber of answer RRs number of authority RRsnumber of additional RRs Questions (variable number) Answer RRs (variable number) Authority RRs (variable number) Additional RRs (variable number) Name, type fields for a query RRs in reponse to query records for authoritative servers additional “helpful” info that may be used

DNS Questions If DNS uses UDP, how do: –Replies get back to requestors? –Resolvers handle simultaneous requests? –We differentiate “no such host” from network errors?

DNS Inverse Lookup Inverse lookup: –given an IP address, find the host name Problem: –How is this done without enduring horrendously long searches?

DNS Inverse Lookup The problem in more detail: –The Domain Name System provides for a mapping of symbolic names to IP addresses. These names are organized in a hierarchical name space. –While it is a simple matter in principle to search the database for an IP address given its symbolic name because this hierarchical structure, the inverse process cannot follow the hierarchy.

DNS Inverse Lookup How is it done? RFC 1035 –The Internet uses a special domain to support gateway location and Internet address to host mapping. The domain root is at IN- ADDR.ARPA. –Domain names in IN-ADDR.ARPA domain have up to four labels in addition to the IN-ADDR.ARPA suffix. – Each label represents one octet of an Internet address. –DNS database contains PTR resource records PTR are pointers from an address to a name –Example in-addr.arpa = who? –Why are the address octets in reverse order?

DNS Zone Transfer RFC 1035 requires that every zone must have at least two name servers (WHY?) How to keep the zone data consistent for each name server? Answer: DNS zone transfer protocol

DNS Zone Transfer Protocol SOA record defines “refresh” time SOA record defines a “serial” identifier that increases in value whenever the zone data changes. Secondary name servers request SOA record from primary whenever “refresh” time expires. If “serial” value has changed, then request a transfer of the zone data (RR) via TCP