+ All Categories
Home > Documents > The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32...

The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32...

Date post: 23-Mar-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
80
The Domain Name System Antonio Carzaniga Faculty of Informatics University of Lugano October 8, 2014 © 2005–2007 Antonio Carzaniga
Transcript
Page 1: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

The Domain Name System

Antonio Carzaniga

Faculty of InformaticsUniversity of Lugano

October 8, 2014

© 2005–2007 Antonio Carzaniga

Page 2: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Outline

IP addresses and host names

DNS architecture

DNS process

DNS requests/replies

© 2005–2007 Antonio Carzaniga

Page 3: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

End Systems

Internet applications involve end system communication

Internet

© 2005–2007 Antonio Carzaniga

Page 4: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

End Systems

Internet applications involve end system communication

Internet

© 2005–2007 Antonio Carzaniga

Page 5: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

End Systems

Internet applications involve end system communication

Internet

© 2005–2007 Antonio Carzaniga

Page 6: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

End Systems

Internet applications involve end system communication

Internet

How does one end system address another end system?

© 2005–2007 Antonio Carzaniga

Page 7: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

© 2005–2007 Antonio Carzaniga

Page 8: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

© 2005–2007 Antonio Carzaniga

Page 9: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

◮ 128 bits (16 bytes) in IPv6

◮ e.g., fe80::211:43ff:fecd:30f5/64

© 2005–2007 Antonio Carzaniga

Page 10: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

◮ 128 bits (16 bytes) in IPv6

◮ e.g., fe80::211:43ff:fecd:30f5/64

Advantages

© 2005–2007 Antonio Carzaniga

Page 11: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

◮ 128 bits (16 bytes) in IPv6

◮ e.g., fe80::211:43ff:fecd:30f5/64

Advantages

◮ computers (e.g., routers) are good at processing bits

◮ especially in small packs of a size that is a power of two

© 2005–2007 Antonio Carzaniga

Page 12: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

◮ 128 bits (16 bytes) in IPv6

◮ e.g., fe80::211:43ff:fecd:30f5/64

Advantages

◮ computers (e.g., routers) are good at processing bits

◮ especially in small packs of a size that is a power of two

Disadvantages

© 2005–2007 Antonio Carzaniga

Page 13: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

IP Addresses

An end system is identified and addressed by its IP address

◮ 32 bits (4 bytes) in IPv4

◮ e.g., 195.176.181.10

◮ 128 bits (16 bytes) in IPv6

◮ e.g., fe80::211:43ff:fecd:30f5/64

Advantages

◮ computers (e.g., routers) are good at processing bits

◮ especially in small packs of a size that is a power of two

Disadvantages

◮ not practical for use by people

◮ i.e., not mnemonic

◮ e.g., “look it up on 64.233.183.104!”

© 2005–2007 Antonio Carzaniga

Page 14: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

Goal: help the human users of the Internet

◮ human-readable, mnemonic addresses, aliases

© 2005–2007 Antonio Carzaniga

Page 15: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

Goal: help the human users of the Internet

◮ human-readable, mnemonic addresses, aliases

Solution: domain name system (DNS)

© 2005–2007 Antonio Carzaniga

Page 16: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

Goal: help the human users of the Internet

◮ human-readable, mnemonic addresses, aliases

Solution: domain name system (DNS)

◮ host names

◮ e.g., www.google.com

© 2005–2007 Antonio Carzaniga

Page 17: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

Goal: help the human users of the Internet

◮ human-readable, mnemonic addresses, aliases

Solution: domain name system (DNS)

◮ host names

◮ e.g., www.google.com

Primary function of the domain name system

name→ IP address

maps a name to an IP address

© 2005–2007 Antonio Carzaniga

Page 18: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

© 2005–2007 Antonio Carzaniga

Page 19: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

Hierarchical name space

© 2005–2007 Antonio Carzaniga

Page 20: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

Hierarchical name space

Top-level domain

ch

© 2005–2007 Antonio Carzaniga

Page 21: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

Hierarchical name space

Top-level domain, . . .

ch

usi

© 2005–2007 Antonio Carzaniga

Page 22: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

Hierarchical name space

Top-level domain, . . .

ch

usi

inf

© 2005–2007 Antonio Carzaniga

Page 23: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Host Names

E.g., atelier.inf.usi.ch

Hierarchical name space

Top-level domain, . . .

ch

usi

inf

© 2005–2007 Antonio Carzaniga

Page 24: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Architecture of DNS

© 2005–2007 Antonio Carzaniga

Page 25: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Architecture of DNS

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

© 2005–2007 Antonio Carzaniga

Page 26: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Architecture of DNS

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.com

DNS servers

.edu

DNS servers

.ch

DNS servers

© 2005–2007 Antonio Carzaniga

Page 27: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Architecture of DNS

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.com

DNS servers

.edu

DNS servers

.ch

DNS servers

.usi.ch

DNS server

.switch.ch

DNS server

© 2005–2007 Antonio Carzaniga

Page 28: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Architecture of DNS

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.com

DNS servers

.edu

DNS servers

.ch

DNS servers

.usi.ch

DNS server

.switch.ch

DNS server

inf.usi.ch

DNS server

© 2005–2007 Antonio Carzaniga

Page 29: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Architecture

Root servers: 13 “root” DNS servers know where the top-levelservers are (labeled A through M)

◮ see http://www.root-servers.org

© 2005–2007 Antonio Carzaniga

Page 30: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Architecture

Root servers: 13 “root” DNS servers know where the top-levelservers are (labeled A through M)

◮ see http://www.root-servers.org

Top-level domain servers: each one is associated with a

top-level domain (e.g., .com, .edu, .ch, .org, .tv)

© 2005–2007 Antonio Carzaniga

Page 31: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Architecture

Root servers: 13 “root” DNS servers know where the top-levelservers are (labeled A through M)

◮ see http://www.root-servers.org

Top-level domain servers: each one is associated with a

top-level domain (e.g., .com, .edu, .ch, .org, .tv)

Authoritative servers: for each domain, there is an

authoritative DNS server that holds the map of

publicly-accessible hosts within that domain

© 2005–2007 Antonio Carzaniga

Page 32: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Architecture

Root servers: 13 “root” DNS servers know where the top-levelservers are (labeled A through M)

◮ see http://www.root-servers.org

Top-level domain servers: each one is associated with a

top-level domain (e.g., .com, .edu, .ch, .org, .tv)

Authoritative servers: for each domain, there is an

authoritative DNS server that holds the map of

publicly-accessible hosts within that domain

Most root “servers” as well as servers at lower levels are

themselves implemenented by a distributed set of machines

© 2005–2007 Antonio Carzaniga

Page 33: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

© 2005–2007 Antonio Carzaniga

Page 34: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

© 2005–2007 Antonio Carzaniga

Page 35: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 36: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 37: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNSsee .ch at 62.2. . .

© 2005–2007 Antonio Carzaniga

Page 38: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 39: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNSsee .usi.ch at 195.176. . .

© 2005–2007 Antonio Carzaniga

Page 40: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS ?

© 2005–2007 Antonio Carzaniga

Page 41: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

see inf.usi.ch at . . .

© 2005–2007 Antonio Carzaniga

Page 42: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 43: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 44: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

How DNS Works

Hierarchical architecture that mirrors the hierarchical structure

of the namespace

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 45: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

© 2005–2007 Antonio Carzaniga

Page 46: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

© 2005–2007 Antonio Carzaniga

Page 47: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 48: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 49: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 50: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS?

© 2005–2007 Antonio Carzaniga

Page 51: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

?

© 2005–2007 Antonio Carzaniga

Page 52: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 53: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 54: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 55: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 56: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Recursive Queries

A client/server can request a recursive query

root

DNS servers

.ch

DNS servers

.usi.ch

DNS server

inf.usi.ch

DNS server

application

www.inf.usi.ch?

local DNS

195.176.181.10!

© 2005–2007 Antonio Carzaniga

Page 57: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Observations on DNS

© 2005–2007 Antonio Carzaniga

Page 58: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Observations on DNS

A lot of messages just to figure out where to connect to!

◮ DNS can indeed be a major bottleneck for some applications

(typically, the Web)

◮ it is also to a large extent a critical point of failure

© 2005–2007 Antonio Carzaniga

Page 59: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Observations on DNS

A lot of messages just to figure out where to connect to!

◮ DNS can indeed be a major bottleneck for some applications

(typically, the Web)

◮ it is also to a large extent a critical point of failure

It is a perfect demonstration of the “end-to-end principle”

◮ it implements a (crucial) network functionality at the

end-system level

© 2005–2007 Antonio Carzaniga

Page 60: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

Observations on DNS

A lot of messages just to figure out where to connect to!

◮ DNS can indeed be a major bottleneck for some applications

(typically, the Web)

◮ it is also to a large extent a critical point of failure

It is a perfect demonstration of the “end-to-end principle”

◮ it implements a (crucial) network functionality at the

end-system level

Any idea how to improve the performance and reliability of

DNS?

© 2005–2007 Antonio Carzaniga

Page 61: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Caching

Caching is clearly very important, as it can dramatically

◮ improve the performance of DNS

◮ reduce the load on the DNS infrastructure

© 2005–2007 Antonio Carzaniga

Page 62: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Caching

Caching is clearly very important, as it can dramatically

◮ improve the performance of DNS

◮ reduce the load on the DNS infrastructure

How does caching work in DNS?

© 2005–2007 Antonio Carzaniga

Page 63: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Caching

Caching is clearly very important, as it can dramatically

◮ improve the performance of DNS

◮ reduce the load on the DNS infrastructure

How does caching work in DNS?

Same as always

◮ a DNS server may cache a reply (i.e., the mapping) for a name n

◮ if the server receives a subsequent request for n, it may

respond directly with the cached address, even though the

server is not the authoritative server for that domain

© 2005–2007 Antonio Carzaniga

Page 64: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Features

DNS is essentially a “directory service” database

The database contains resource records (RRs)

© 2005–2007 Antonio Carzaniga

Page 65: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Features

DNS is essentially a “directory service” database

The database contains resource records (RRs)

name value type ttl

www.inf.usi.ch 195.176.181.10 A . . .

research.inf.usi.ch 195.176.181.11 A . . .

. . . . . . . . . . . .

© 2005–2007 Antonio Carzaniga

Page 66: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Features

DNS is essentially a “directory service” database

The database contains resource records (RRs)

name value type ttl

www.inf.usi.ch 195.176.181.10 A . . .

research.inf.usi.ch 195.176.181.11 A . . .

. . . . . . . . . . . .

Name and value have the intuitive meaning

© 2005–2007 Antonio Carzaniga

Page 67: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Features

DNS is essentially a “directory service” database

The database contains resource records (RRs)

name value type ttl

www.inf.usi.ch 195.176.181.10 A . . .

research.inf.usi.ch 195.176.181.11 A . . .

. . . . . . . . . . . .

Name and value have the intuitive meaning

What about type?

© 2005–2007 Antonio Carzaniga

Page 68: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types

© 2005–2007 Antonio Carzaniga

Page 69: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types

A this is the main mapping host_name→ address, so

name is a host name and value is its (IP) address

© 2005–2007 Antonio Carzaniga

Page 70: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types

A this is the main mapping host_name→ address, so

name is a host name and value is its (IP) address

NS this is a query for a name server, so name is a domain

name and value is the authoritative name server for

that domain. For example,

name value type ttl

usi.ch one.ti-edu.ch NS . . .

© 2005–2007 Antonio Carzaniga

Page 71: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types

A this is the main mapping host_name→ address, so

name is a host name and value is its (IP) address

NS this is a query for a name server, so name is a domain

name and value is the authoritative name server for

that domain. For example,

name value type ttl

usi.ch one.ti-edu.ch NS . . .

CNAME this is a query for a canonical name. The canonical

name is the “primary” name of a host. A host may

have one or more mnemonic aliases. For example,

name value type ttl

www.google.com www.l.google.com CNAME . . .

© 2005–2007 Antonio Carzaniga

Page 72: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types (2)

© 2005–2007 Antonio Carzaniga

Page 73: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types (2)

MX this is a query for the mail exchange server for a given

domain, so name is a host or domain name and value

is the name of the mail server that handles (incoming)

mail for that host or domain. For example,

name value type ttl

lu.usi.ch spamfilter.usilu.net MX . . .

© 2005–2007 Antonio Carzaniga

Page 74: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Query Types (2)

MX this is a query for the mail exchange server for a given

domain, so name is a host or domain name and value

is the name of the mail server that handles (incoming)

mail for that host or domain. For example,

name value type ttl

lu.usi.ch spamfilter.usilu.net MX . . .

. . . several other types

© 2005–2007 Antonio Carzaniga

Page 75: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Protocol

© 2005–2007 Antonio Carzaniga

Page 76: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Protocol

DNS is a connectionless protocol

Runs on top of UDP (port 53)

© 2005–2007 Antonio Carzaniga

Page 77: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Protocol

DNS is a connectionless protocol

Runs on top of UDP (port 53)

DNS has query and reply messages

◮ since DNS is connectionless, queries and replies are linked by

an identifier

© 2005–2007 Antonio Carzaniga

Page 78: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Protocol

DNS is a connectionless protocol

Runs on top of UDP (port 53)

DNS has query and reply messages

◮ since DNS is connectionless, queries and replies are linked by

an identifier

Both queries and replies have the same format

◮ a DNS message can carry queries and answers

© 2005–2007 Antonio Carzaniga

Page 79: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Message Format

© 2005–2007 Antonio Carzaniga

Page 80: The Domain Name SystemIP Addresses An end system is identified and addressed by its IP address 32 bits (4 bytes) in IPv4 e.g., 195.176.181.10 128 bits (16 bytes) in IPv6 e.g., fe80::211:43ff:fecd:30f5/64

DNS Message Format

0 31

identification flags

# of queries # of answers RRs

# of authority RRs # of additional RRs

questions

answers

authority

additional information

© 2005–2007 Antonio Carzaniga


Recommended