COMS/CSEE 4140 Networking Laboratory Lecture 09 Salman Abdul Baset Spring 2008.

Slides:



Advertisements
Similar presentations
2.1 Installing the DNS Server Role Overview of the Domain Name System Role Overview of the DNS Namespace DNS Improvements for Windows Server 2008 Considerations.
Advertisements

Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
DNS Domain Name System. Domain names and IP addresses People prefer to use easy-to-remember names instead of IP addresses Domain names are alphanumeric.
DNS Domain Name System. Domain names and IP addresses People prefer to use easy-to-remember names instead of IP addresses Domain names are alphanumeric.
Domain Name System IP assigns 32-bit addresses to hosts (interfaces)
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.
70-294: MCSE Guide to Microsoft Windows Server 2003 Active Directory, Enhanced Chapter 2: Name Resolution and DNS.
King : Estimating latency between arbitrary Internet end hosts Krishna Gummadi, Stefan Saroiu Steven D. Gribble University of Washington Presented by:
Domain Name System (DNS) Network Information Center (NIC) : HOSTS.TXT.
CSEE W4140 Networking Laboratory Lecture 10: DNS Jong Yul Kim
Application Layer At long last we can ask the question - how does the user interface with the network?
Domain Name System: DNS
CSEE W4140 Networking Laboratory Lecture 10: DNS Jong Yul Kim
W4140 Network Laboratory Lecture 11 Nov 27 - Fall 2006 Shlomo Hershkop Columbia University.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 5 Introduction to DNS in Windows Server 2008.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
DOMAIN NAME SYSTEM. Introduction  There are several applications that follow client server paradigm.  The client/server programs can be divided into.
Domain Name System ( DNS )  DNS is the system that provides name to address mapping for the internet.
Chapter 25 Domain Name System
The Domain Name System (DNS)
DNS Domain Name Service References: Wikipedia 1.
Domain Name Services Oakton Community College CIS 238.
Name Resolution and DNS. Domain names and IP addresses r People prefer to use easy-to-remember names instead of IP addresses r Domain names are alphanumeric.
Ch25 Ameera Almasoud 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007.
Host Name Resolution. Overview Name resolution Name resolution Addressing a host Addressing a host Host names Host names Host name resolution Host name.
11.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 11: Introducing WINS, DNS,
DNS (Domain Name System)
Basic DNS Course Lecturer: Ron Aitchison. Module 1 DNS Theory.
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.,
The Domain Name System. Computer Center, CS, NCTU 2 History of DNS  Before DNS ARPAnet  HOSTS.txt contains all the hosts’ information  Maintained by.
DOMAIN NAME SYSTEM Based on Computer Networks and Internets, Comer CSIT 320 (Blum)1.
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.
DNS Domain Name System. Domain names and IP addresses People prefer to use easy-to-remember names instead of IP addresses Domain names are alphanumeric.
Domain names and IP addresses Resolver and name server DNS Name hierarchy Domain name system Domain names Top-level domains Hierarchy of name servers.
DNS: Domain Name System
25.1 Chapter 25 Domain Name System Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Domain Name System (DNS)
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.
Chapter 29 Domain Name System (DNS) Allows users to reference computer names via symbolic names translates symbolic host names into associated IP addresses.
Domain Name System CH 25 Aseel Alturki
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Lecture – DNS How to find things…. Domain Name System Associate human-friendly names with machine- friendly IP addresses Resolution of a given hostname.
Pharming Group 10: Phuc H. Dao Anita Lugonja. Motivation To give students an opportunity to learn about DNS poisoning To give students an opportunity.
Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York.
1 Kyung Hee University Chapter 18 Domain Name System.
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.
Domain Name System (DNS). DNS Server Service Overview of Domain Name System What Is a Domain Namespace? Standards for DNS Naming.
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.
Linux Operations and Administration
Domain Name System (DNS)
Web Server Administration Chapter 4 Name Resolution.
1 CMPT 471 Networking II DNS © Janice Regan,
1. Internet hosts:  IP address (32 bit) - used for addressing datagrams  “name”, e.g., ww.yahoo.com - used by humans DNS: provides translation between.
Internet Naming Service: DNS* Chapter 5. The Name Space The name space is the structure of the DNS database –An inverted tree with the root node at the.
Basics of the Domain Name System (DNS) By : AMMY- DRISS Mohamed Amine KADDARI Zakaria MAHMOUDI Soufiane Oujda Med I University National College of Applied.
1 Internet Service DNS & BIND OPS335 Seneca College of Applied Technology.
System Administration(SAD622S) Name of Presenter: Shadreck Chitauro Lecturer 18 July 2016 Faculty of Computing and Informatics.
Understand Names Resolution
Networking Applications
Chapter 25 Domain Name System.
IMPLEMENTING NAME RESOLUTION USING DNS
Net 323 D: Networks Protocols
Presentation transcript:

COMS/CSEE 4140 Networking Laboratory Lecture 09 Salman Abdul Baset Spring 2008

2 Announcements  Prelab 8 and Lab report 7 due next week before your lab slot  Weekly project reports due before Friday 5pm

3 Agenda  DNS history  DNS concepts  Recursive and iterative queries  Caching  Resource records  mDNS  King tool

4 DNS History  hosts.txt file (<1983) Download a single file (hosts.txt) from a central server with FTP Names in hosts.txt are not structured. The hosts.txt file still works on most operating systems. It can be used to define local names.  Paul Mockapetris DNS RFC 882, 883 – updated by RFC 1032, 1033  DNS implementation Written by four Berkeley students (client/server) Renamed BIND in 1985 (Berkeley Internet Name Daemon)

5 Domain Names and IP addresses  People prefer to use easy-to-remember names instead of IP addresses  Domain names are alphanumeric names for IP addresses e.g., neon.ece.utoronto.ca, ietf.org  The domain name system (DNS) is an Internet-wide distributed database that translates between domain names and IP addresses  How important is DNS? Imagine what happens when the local DNS server is down.

6 Design Principles of DNS  Name space (domain namespace) Hierarchical and logical tree  Distributed (Delegation) Be maintained in a distributed manner Size of DNS database and frequency of updates Per organization – can additional layers of hierarchy  Names for hosts, servers, and others  Name space and protocols Notion of address in various protocols Names of hosts can be assigned without regard of location on a link layer network, IP network or autonomous system  In practice, allocation of the domain names generally follows the allocation of IP address, e.g., All hosts with network prefix /16 have domain name suffix virginia.edu

7 DNS Usage Assumptions  Size of the total database Proportional to number of hosts in the Internet ~110 million gTLDs (as of April 7, 2008)  Slow (days) and fast (min/sec) changing data  Access is critical than update guarantees!  Each organization is responsible for providing redundant DNS servers for its hosts.

8 Elements of DNS  Domain Name Space Specification for tree structured name space Resource Records (RR)  Name Servers Hold information about part of domain’s tree structure called Zone  Resolvers Programs that extract information from name servers in response to client requests

9 Resolver and Name Server 1. An application program on a host accesses the domain system through a DNS client, called the resolver 2. Resolver contacts DNS server, called name server 3. DNS server returns IP address to resolver which passes the IP address to application  Reverse lookups are also possible, i.e., find the hostname given an IP address

10 Managed by UofT DNS Name Hierarchy  DNS hierarchy can be represented by a tree  Root and top-level domains are administered by an Internet central name registration authority (ICANN)  Below top-level domain, administration of name space is delegated to organizations  Each organization can delegate further Managed by ECE Dept. Siblings should have different names

11 Domain Name System  Each node in the DNS tree represents a DNS name  Each branch below a node is a DNS domain. DNS domain can contain hosts or other domains (subdomains)  Example: DNS domains are., edu, virginia.edu, cs.virginia.edu

12 Domain Names  Hosts and DNS domains are named based on their position in the domain tree  Every node in the DNS domain tree can be identified by a unique Fully Qualified Domain Name (FQDN). The FQDN gives the position in the DNS tree.  A FQDN consists of labels (“cs”,“virginia”,”edu”) separated by a period (“.”)  There can be a period (“.”) at the end.  Each label can be up to 63 characters long  FQDN contains characters, numerals, and dash character (“-”)  FQDNs are not case-sensitive Note the dot

13 Top-level domains (TLDs)  IANA classifies TLD into three types gTLD (generic): 3-character code indicates the function of the organization  Used primarily within the US .com,.net etc.–.mil and.gov reserved for use by US ccTLD (country code): 2-character country or region code  Examples: us, va, jp, de iTLD (infrastructure): A special domain (in-addr.arpa) used for IP address-to-name mapping  Pseudo domains.local for the Zeroconf protocol  Reserved TLD.example,.invalid,.localhost,.test

14 Top-level domains (TLDs)   iTLD.arpa,.root  gTLD.aero,.asia,.biz,.cat,.com,.coop,.edu,.gov,.info,.int,.jobs,.mil,.mobi,.museum,.name,.net,.org,.pro,.tel,.travel  ccTLD >200 countries  Non-conventional usage del.icio.us, inter.net

15 TLD Distribution  Total 110 million records  Source:

16 Hierarchy of Name Servers  The resolution of the hierarchical name space is done by a hierarchy of name servers  Each server is responsible (authoritative) for a contiguous portion of the DNS namespace, called a zone.  Zone is a part of the subtree  DNS server answers queries about hosts in its zone

17 Authority and Delegation  Authority for the root domain is with the Internet Corporation for Assigned Numbers and Names (ICANN)  ICANN delegates to accredited registrars (for gTLDs) and countries for country code top level domains (ccTLDs)  Authority can be delegated further  Chain of delegation can be obtained by reading domain name from right to left.  Unit of delegation is a “zone”.

18 DNS Domain and Zones  Domain.edu conceptually contains all data for columbia.edu, cs.columbia.edu, yale.edu, etc.  Zone for.edu contains nameserver reference for yale.edu and columbia.edu and all data for harvard.edu.edu domain.edu zone

19 DNS Domain and Zones  Each zone is anchored at a specific domain node, but zones are not domains.  A DNS domain is a branch of the namespace  A zone is a portion of the DNS namespace generally stored in a file (It could consists of multiple nodes)  A server can divide part of its zone and delegate it to other servers

20 Primary & Secondary Name Servers  For each zone, there must be a primary name server and a secondary name server The primary server (master server) maintains a zone file which has information about the zone. Updates are made to the primary server The secondary server copies data stored at the primary server. Adding a host:  When a new host is added (“gold.cs.virginia.edu”) to a zone, the administrator adds the IP information on the host (IP address and name) to a configuration file on the primary server

21 Root Name Servers  The root name servers know how to find the authoritative name servers for all top- level zones.  There are only 13 root name servers  Root servers are critical for the proper functioning of name resolution A.ROOT-SERVERS.NET B.ROOT-SERVERS.NET C.ROOT-SERVERS.NET D.ROOT-SERVERS.NET E.ROOT-SERVERS.NET F.ROOT-SERVERS.NET G.ROOT-SERVERS.NET H.ROOT-SERVERS.NET I.ROOT-SERVERS.NET J.ROOT-SERVERS.NET K.ROOT-SERVERS.NET L.ROOT-SERVERS.NET M.ROOT-SERVERS.NET

22 Agenda  DNS history  DNS concepts  Recursive and iterative queries  Caching  Resource records  mDNS  King tool

23 Domain Name Resolution 1. User program issues a request for the IP address of a hostname 2. Local resolver formulates a DNS query to the name server of the host 3. Name server checks if it is authorized to answer the query. a) If yes, it responds. b) Otherwise, it will query other name servers, starting at the root tree 4. When the name server has the answer it sends it to the resolver.

24 Recursive and Iterative Queries  There are two types of queries: Recursive queries Iterative (non-recursive) queries  The type of query is determined by a bit in the DNS query  Recursive query: When the name server of a host cannot resolve a query, the server issues a query to resolve the query  Iterative queries: When the name server of a host cannot resolve a query, it sends a referral to another server to the resolver.

25 Recursive Queries  In a recursive query, the resolver expects the response from the name server  If the server cannot supply the answer, it will send the query to the “closest known” authoritative name server (here: In the worst case, the closest known server is the root server)  The root sever sends a referral to the “edu” server. Querying this server yields a referral to the server of “virginia.edu”  … and so on

26 Iterative Queries  In an iterative query, the name server sends a closest known authoritative name server a referral to the root server.  This involves more work for the resolver

27 Recursive vs. Iterative Queries  Recursive [Con] resource intensive – DNS server maintains state [Pro] Cache namespace – helpful for other queries  Iterative [Pro] DNS server never maintains state [Con] Caching is local to a machine – others cannot benefit from it

28 Caching  To reduce DNS traffic, name servers caches information on domain name/IP address mappings  When an entry for a query is in the cache, the server does not contact other servers  Note: If an entry is sent from a cache, the reply from the server is marked as “unauthoritative”

29 Resource Records  The database records of the distributed data base are called resource records (RR)  Resource records are stored in configuration files (zone files) at name servers.

30 Resource Record Types  (Name, Value, Type, TTL)  Type=A, name=hostname, value=IPv4 address  Type=AAAA, name=hostname, value=IPv6 address  Type=NS, name=domain value=hostname of authoritative DNS server nslookup –query=ns google.com  Type=CNAME, name=hostname, value=canonical host name (columbia.edu, ns1.columbia.edu, CNAME)  Type=MX, name=mail server hostname, value=canonical name of mail server  Type=PTR, name=address (IP), value=hostname  Type=SRV, name=service name, value=canonical hostname

31 Resource Records Max. age of cached data in seconds * Start of authority (SOA) record. Means: “This name server is authoritative for the zone Mylab.com” * PC4.mylab.com is the name server * is the address of the person in charge Name server (NS) record. One entry for each authoritative name server Address (A) records. One entry for each hostaddress Slave refresh time Slave retry time Slave expiration time Cache time for RR

32 DNS Summary  Domain name space  Domain and zone  Zone and resource record

33 DNS Example  nslookup google.com

34 DNS Example

35 DNS Example

36 DNS Example  Query 1  >nslookup google.com ns.google.com  Server: ns1.google.com  Address:  Name: google.com  Addresses: , ,  Query 2  >nslookup google.com  Server: disco.cs.columbia.edu  Address:  Non-authoritative answer:  Name: google.com  Addresses: , ,

37 Agenda  DNS history  DNS concepts  Recursive and iterative queries  Caching  Resource records  mDNS  King tool

38 mDNS  Multicast DNS (mDNS) name-to-address translation on a local network Multicast address:  Self-assigned local name It only has significance on the local network..local. Subdomain Name conflict resolution Default name:.local, SALMAN_PDA.local MDNS: Standard query ANY SALMAN_PDA.local MDNS: Standard query response A PTR SALMAN_PDA.local SALMAN_PDA.local

39 King Tool How to estimate latency between two arbitrary hosts accurately? A B C C can measure latency between A and B Source: King tool slides by Krishna Gummadi

40 King: A Latency Measurement Tool  Estimate latency between arbitrary end hosts  Requires no additional infrastructure leverages existing DNS infrastructure enabling a large fraction of Internet hosts to be measured  Provides highly accurate latency estimates  Fast and light-weight requires only a few DNS queries per estimate We hope that King will be used in many unanticipated ways like in the case of Ping and Traceroute

41 Name Server near Host A Name Server near Host B Host BHost A Actual Latency Between End Hosts Latency Estimated By King How King Works: The Basic Idea  Challenge 1: How to find name servers that are close to end hosts  Challenge 2: How to estimate latency between two name servers

42 Challenge 2: How do we estimate the latency between name servers? Our Client C (King) Name Server B foo.bar Name Server A 1. Request Q: Resolve xyz.foo.bar 4. Reply Q (Forwarded) 2. Request Q (Forwarded) 3. Reply Q: IP addr of xyz.foo.bar

43 Success of Recursive DNS  For King to work, name servers must support recursive queries in a large random sample, > 75% of name servers supported recursion translates to > 90% success rate given a pair  as we can measure from A->B, or B->A

44 Example  Estimating latency between MIT and google.com  time nslookup mit.edu bitsy.mit.edu  Server: bitsy.mit.edu  Address: #53  Name: mit.edu  Address:  real 0m0.013s  user 0m0.000s  sys 0m0.008s   time nslookup x.google.com bitsy.mit.edu  Server: bitsy.mit.edu  Address: #53  ** server can't find x.google.com.columbia.edu: NXDOMAIN  real 0m0.061s  user 0m0.000s  sys 0m0.008s