Chapter 24 Chapter 24 Chapter 24 The Domain Name System The - - PowerPoint PPT Presentation

chapter 24 chapter 24 chapter 24 the domain name system
SMART_READER_LITE
LIVE PREVIEW

Chapter 24 Chapter 24 Chapter 24 The Domain Name System The - - PowerPoint PPT Presentation

Chapter 24 Chapter 24 Chapter 24 The Domain Name System The Domain Name System The Domain Name System (DNS) (DNS) (DNS) Raj Jain The Ohio State University Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/


slide-1
SLIDE 1

Raj Jain

The Ohio State University

24-1

Chapter 24 Chapter 24 Chapter 24 The Domain Name System The Domain Name System The Domain Name System (DNS) (DNS) (DNS)

Raj Jain The Ohio State University Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/

slide-2
SLIDE 2

Raj Jain

The Ohio State University

24-2

K Naming hierarchy K Server hierarchy K Name resolution K Other information in name servers

Overview

slide-3
SLIDE 3

Raj Jain

The Ohio State University

24-3

Why Names? Why Names? Why Names?

K Computers use addresses K Humans cannot remember IP addresses

⇒ Need names Example, Liberia for 164.107.51.28

K Simplest Solution: Each computer has a unique name

and has a built in table of name to address translation

K Problem: Not scalable K Solution: DNS (Adopted in 1983) K Hierarchical Names: Liberia.cis.ohio-state.edu

slide-4
SLIDE 4

Raj Jain

The Ohio State University

24-4

Name Hierarchy Name Hierarchy Name Hierarchy

reston com edu gov au us dec

  • hio-state

nsf co va cis netlab ee cnri Unnamed root ...

slide-5
SLIDE 5

Raj Jain

The Ohio State University

24-5

Name Hierarchy Name Hierarchy Name Hierarchy

K Unique domain suffix is assigned by Internet

Authority

K The domain administrator has complete control over

the domain

K No limit on number of subdomains or number of

levels

K computer.site.division.company.com K computer.site.subdivision.division.company.com K Domains within an organization do not have to be

uniform in number of subdomains or levels

slide-6
SLIDE 6

Raj Jain

The Ohio State University

24-6

Name Hierarchy (Cont) Name Hierarchy (Cont) Name Hierarchy (Cont)

K Name space is not related to physical interconnection,

e.g., math.ohio-state and cis.ohio-state could be on the same floor or in different cities

K Geographical hierarchy is also allowed, e.g.,

cnri.reston.va.us

K A name could be a subdomain or an individual object

slide-7
SLIDE 7

Raj Jain

The Ohio State University

24-7

Top Level Domains Top Level Domains Top Level Domains

Domain Name Assignment com Commercial edu Educational gov Government mil Military net Network

  • rg

Other organizations arpa Advanced Research Project Agency country code au, uk, ca

slide-8
SLIDE 8

Raj Jain

The Ohio State University

24-8

Server Hierarchy Server Hierarchy Server Hierarchy

peanut almond walnut candy soap foobar com peanut almond walnut candy soap foobar com

slide-9
SLIDE 9

Raj Jain

The Ohio State University

24-9

Server Hierarchy (Cont) Server Hierarchy (Cont) Server Hierarchy (Cont)

K Servers are organized in a hierarchy K Each server has an authority over a part of the naming

hierarchy

K The server does not need to keep all names. K It needs to know other servers who are responsible for

  • ther subdomains

K Contiguous space ⇒ A single node in the naming tree

cannot be split

K A given level of hierarchy can be partitioned into

multiple servers

slide-10
SLIDE 10

Raj Jain

The Ohio State University

24-10

Server Hierarchy (Cont) Server Hierarchy (Cont) Server Hierarchy (Cont)

K Authority ⇒ has the name to address translation table K Responsible ⇒ Either has the name to address

translation table or knows the server who has

K A single server can serve multiple domains, e.g.,

purdue.edu and laf.in.us

K Root server knows about servers for top-level

domains, e.g., com

K Each server knows the root server

slide-11
SLIDE 11

Raj Jain

The Ohio State University

24-11

Server Hierarchy: Example Server Hierarchy: Example Server Hierarchy: Example

Server for com Server for edu Server for gov Server for au Server for us

Server for dec.com Server for osu.edu Server for nsf.gov server for co.au Server for va.us

Root Server

slide-12
SLIDE 12

Raj Jain

The Ohio State University

24-12

Server Hierarchy: Better Server Hierarchy: Better Server Hierarchy: Better

K Fewer servers

Server for dec.com Server for osu.edu Server for nsf.gov server for co.au Server for va.us

Root Server

slide-13
SLIDE 13

Raj Jain

The Ohio State University

24-13

Name Resolution Name Resolution Name Resolution

User Name Resolver Name Server Name Server Cache Cache Cache Query Response Query Response Query Response Data- base Data- base Name Server Cache Data- base Query Response

slide-14
SLIDE 14

Raj Jain

The Ohio State University

24-14

Name Resolution (Cont) Name Resolution (Cont) Name Resolution (Cont)

User Name Resolver Name Server Name Server Cache Cache Cache Query Referral Query Response Query Response Data- base Data- base Name Server Cache Data- base Query Response

slide-15
SLIDE 15

Raj Jain

The Ohio State University

24-15

Name Resolution (Cont) Name Resolution (Cont) Name Resolution (Cont)

K Each computer has a name resolver routine, e.g.,

gethostbyname in UNIX

K Each resolver knows the name of a local DNS server K Resolver sends a DNS request to the server K DNS server either gives the answer, forwards the

request to another server, or gives a referral

K Referral = Next server to whom request should be sent

slide-16
SLIDE 16

Raj Jain

The Ohio State University

24-16

Name Resolution (Cont) Name Resolution (Cont) Name Resolution (Cont)

K Resolvers use UDP (single name)

  • r TCP (whole group of names)

K Knowing the address of the root server is sufficient K Recursive Query:

Give me an answer (Don't give me a referral)

K Iterative Query:

Give me an answer or a referral to the next server

K Resolvers use recursive query. K Servers use iterative query.

slide-17
SLIDE 17

Raj Jain

The Ohio State University

24-17

DNS Optimization DNS Optimization DNS Optimization

K Spatial Locality: Local computers referenced more

  • ften than remote

K Temporal Locality: Same set of domains referenced

repeatedly ⇒ Caching

K Each entry has a time to live (TTL) K Replication: Multiple servers. Multiple roots.

Ask the geographically closest server.

slide-18
SLIDE 18

Raj Jain

The Ohio State University

24-18

Abbreviations Abbreviations Abbreviations

K Servers respond to a full name only K However, humans may specify only a partial name K Resolvers may fill in the rest of the suffix, e.g.,

Liberia.cis = Liberia.cis.ohio-state.edu

K Each resolver has a list of suffixes to try

slide-19
SLIDE 19

Raj Jain

The Ohio State University

24-19

DNS Message Format DNS Message Format DNS Message Format

Number of Authority Number of Additional Question Section ... Answer Section ... Authority Section ... Additional Information Section ... Number of Questions Number of Answers Identification Parameter

slide-20
SLIDE 20

Raj Jain

The Ohio State University

24-20

Format (Cont) Format (Cont) Format (Cont)

K Format of the query section entries: K Format of other section entries:

Query Type Query Class Query Domain Name ... Time to live Resource Data Length Resource Domain Name Type Class Resource Data

slide-21
SLIDE 21

Raj Jain

The Ohio State University

24-21

DNS Message Format DNS Message Format DNS Message Format

K Length = 0 ⇒ End of names. Length < 64

Two msbs (most significant bits) = 11 ⇒ Pointer

K Resource data contains serial (version) number of the

zone, refresh interval, retry interval, expiry interval, mailbox of the responsible person, etc.

slide-22
SLIDE 22

Raj Jain

The Ohio State University

24-22

DNS Message Format (Cont) DNS Message Format (Cont) DNS Message Format (Cont)

Bit Meaning Operation: 0=Query, 1=Response 1-4 Query type: 0=Standard, 1=Inverse, 2,3

  • bsolete

5 Set if answer authoritative 6 Set if message truncated 7 Set if recursion desired 8 Set if recursion available 9-11 Reserved 12-15 Response type: 0=No error, 1=Format error, 2=Server Failure, 3=Name does not exist

slide-23
SLIDE 23

Raj Jain

The Ohio State University

24-23

Inverse Mapping Inverse Mapping Inverse Mapping

K Given an address, what is the name? K nnn.nnn.nnn.nnn.in-addr.arpa

slide-24
SLIDE 24

Raj Jain

The Ohio State University

24-24

Types of DNS Entries Types of DNS Entries Types of DNS Entries

K DNS is used not just for name to address resolution K But also for finding mail server, pop server,

responsible person, etc for a computer

K DNS database has multiple types K Record type A ⇒ Address of X K Record type MX ⇒ Mail exchanger of X K CNAME entry = Alias name (like a file link), "see

name"

K www.foobar.com = hobbes.foobar.com

slide-25
SLIDE 25

Raj Jain

The Ohio State University

24-25

Resource Record Types Resource Record Types Resource Record Types

Type Meaning A Host Address CNAME Canonical Name (alias) HINFO CPU and O/S MINFO Mailbox Info MX Mail Exchanger NS Authoritative name server for a domain PTR Pointer to a domain name (link) RP Responsible person SOA Start of zone authority (Which part of naming hierarchy implemented) TXT Arbitrary Text

slide-26
SLIDE 26

Raj Jain

The Ohio State University

24-26

Summary Summary Summary

K DNS: Maps names to addresses K Names are hierarchical. Administration is also

hierarchical.

K No standard for number of levels K Replication and caching is used for performance

  • ptimization.
slide-27
SLIDE 27

Raj Jain

The Ohio State University

24-27

Homework Homework Homework

K Read Chapter 24 and RFC 1034 and 1035 K Submit answer to exercise 24.1

slide-28
SLIDE 28

Raj Jain

The Ohio State University

24-28

DNS: References DNS: References DNS: References

K D. Comer, “Computer Networks and Internets,”

Prentice Hall, NJ, 1997, Chapter 24.

K D. Comer, “Internetworking with TCP/IP,” Vol 1, 3rd

Ed, Prentice Hall, 1995, Chapter 22.

K U. Black, “TCP/IP and Related Protocols,” 2nd Ed,

McGraw-Hill, Chapter 4.

slide-29
SLIDE 29

Raj Jain

The Ohio State University

24-29

DNS: RFCs DNS: RFCs DNS: RFCs

K [RFC2065] D. Eastlake, C. Kaufman, "Domain Name System Security

Extensions", 01/03/1997, 41 pages. (Updates RFC1034)

K [RFC2052] A. Gulbrandsen, P. Vixie, "A DNS RR for specifying the

location of services (DNS SRV)", 10/31/1996, 10 pages.

K [RFC2010] B. Manning, P. Vixie, "Operational Criteria for Root Name

Servers", 10/14/1996, 7 pages.

K [RFC1995] M. Ohta, "Incremental Zone Transfer in DNS", 08/28/1996, 8

  • pages. (Updates RFC1035)

K [RFC1956] D. Engebretson, R. Plzak, "Registration in the MIL Domain",

06/06/1996, 2 pages.

K [RFC1912] D. Barr, "Common DNS Operational and Configuration Errors",

02/28/1996, 16 pages.

K [RFC1877] S. Cobb, "PPP Internet Protocol Control Protocol Extensions for

Name Server Addresses", 12/26/1995, 6 pages.

slide-30
SLIDE 30

Raj Jain

The Ohio State University

24-30

K [RFC1876] C. Davis, P. Vixie, T. Goodwin, I. Dickinson, "A Means for

Expressing Location Information in the Domain Name System", 01/15/1996, 18 pages. (Updates RFC1034)

K [RFC1816] F. Networking Council (FNC), "U.S. Government Internet

Domain Names", 08/03/1995, 8 pages.

K [RFC1811] F. Networking Council, "U.S. Government Internet Domain

Names", 06/21/1995, 3 pages.

K [RFC1788] W. Simpson, "ICMP Domain Name Messages", 04/14/1995, 7

pages.

K [RFC1779] S. Kille, "A String Representation of Distinguished Names",

03/28/1995, 8 pages.

K [RFC1737] K. Sollins, L. Masinter, "Functional Requirements for Uniform

Resource Names", 12/20/1994, 7 pages.

K [RFC1713] A. Romao, "Tools for DNS debugging", 11/03/1994, 13 pages.

(FYI 27)

K [RFC1685] H. Alvestrand, "Writing X.400 O/R Names", 08/11/1994, 11

  • pages. (RTR 12)
slide-31
SLIDE 31

Raj Jain

The Ohio State University

24-31

K [RFC1664] C. Allocchio, A. Bonito, B. Cole, S. Giordano, R. Hagens,

"Using the Internet DNS to Distribute RFC1327 Mail Address Mapping Tables", 08/11/1994, 23 pages.

K [RFC1649] R. Hagens, A. Hansen, "Operational Requirements for X.400

Management Domains in the GO-MHS Community", 07/18/1994, 14 pages.

K [RFC1591] J. Postel, "Domain Name System Structure and Delegation",

03/03/1994, 7 pages.

K [RFC1537] P. Beertema, "Common DNS Data File Configuration Error",

10/06/1993, 9 pages.

K [RFC1536] A. Kumar, J. Postel, C. Neuman, P. Danzig, S. Miller,

"Common DNS Implementation Errors and Suggested Fixes.", 10/06/1993, 12 pages.

K [RFC1535] E. Gavron, "A Security Problem and Proposed Correction With

Widely Deployed DNS Software", 10/06/1993, 5 pages.

K [RFC1485] S. Hardcastle-Kille, "A String Representation of Distinguished

Names (OSI-DS 23 (v5))", 07/28/1993, 7 pages.

slide-32
SLIDE 32

Raj Jain

The Ohio State University

24-32

K [RFC1480] A. Cooper, J. Postel, "The US Domain", 06/28/1993, 47 pages. K [RFC1464] R. Rosenbaum, "Using the Domain Name System To Store

Arbitrary String Attributes", 05/27/1993, 4 pages.

K [RFC1401] Internet Architecture Board, L. Chapin, "Correspondence

between the IAB and DISA on the use of DNS throughout the Internet", 01/13/1993, 8 pages.

K [RFC1394] P. Robinson, "Relationship of Telex Answerback Codes to

Internet Domains", 01/08/1993, 15 pages.

K [RFC1386] A. Cooper, J. Postel, "The US Domain", 12/28/1992, 31 pages. K [RFC1383] C. Huitema, "An Experiment in DNS Based IP Routing",

12/28/1992, 14 pages.

K [RFC1279] S. Kille, "X.500 and Domains", 11/27/1991, 13 pages. K [RFC1183] R. Ullman, P. Mockapetris, L. Mamakos, C. Everhart, "New

DNS RR Definitions", 10/08/1990, 11 pages.

K [RFC1178] D. Libes, "Choosing a Name for Your Computer", 09/04/1990,

8 pages. (FYI 5)

slide-33
SLIDE 33

Raj Jain

The Ohio State University

24-33

K [RFC1101] P. Mockapetris, "DNS encoding of network names and other

types", 04/01/1989, 14 pages. (Updates RFC1034)

K [RFC1035] P. Mockapetris, "Domain names - implementation and

specification", 11/01/1987, 55 pages. (STD 13) (Updated by RFC1348, RFC1995, RFC1996)

K [RFC1034] P. Mockapetris, "Domain names - concepts and facilities",

11/01/1987, 55 pages. (STD 13) (Updated by RFC1982, RFC2065, RFC1876, RFC1101)

K [RFC1033] M. Lottor, "Domain administrators operations guide",

11/01/1987, 22 pages.

K [RFC1032] M. Stahl, "Domain administrators guide", 11/01/1987, 14 pages. K [RFC1031] W. Lazear, "MILNET name domain transition", 11/01/1987, 10

pages.

K [RFC0982] H. Braun, "Guidelines for the specification of the structure of

the Domain Specific Part DSP of the ISO standard NSAP address", 04/01/1986, 11 pages.

slide-34
SLIDE 34

Raj Jain

The Ohio State University

24-34

K [RFC0974] C. Partridge, "Mail routing and the domain system",

01/01/1986, 7 pages. (STD 14)

K [RFC0973] P. Mockapetris, "Domain system changes and observations",

01/01/1986, 10 pages. (Updates RFC0882)

K [RFC0921] J. Postel, "Domain name system implementation schedule -

revised", 10/01/1984, 13 pages. (Updates RFC0897)

K [RFC0920] J. Postel, J. Reynolds, "Domain requirements", 10/01/1984, 14

pages.

K [RFC0897] J. Postel, "Domain name system implementation schedule",

02/01/1984, 8 pages. (Updates RFC0881) (Updated by RFC0921)

K [RFC0883] P. Mockapetris, "Domain names: Implementation

specification", 11/01/1983, 73 pages.

K [RFC0882] P. Mockapetris, "Domain names: Concepts and facilities",

11/01/1983, 31 pages. (Updated by RFC0973)

K [RFC0881] J. Postel, "Domain names plan and schedule", 11/01/1983, 10

  • pages. (Updated by RFC0897)
slide-35
SLIDE 35

Raj Jain

The Ohio State University

24-35

K [RFC0830] Z. Su, "Distributed system for Internet name service",

10/01/1982, 16 pages.

K [RFC0819] Z. Su, J. Postel, "Domain naming convention for Internet user

applications", 08/01/1982, 18 pages.

K [RFC0799] D. Mills, "Internet name domains", 09/01/1981, 6 pages.