css432: applications 1 css432 domain name system textbook 9.3.1 instructor: joe mccarthy (based on...

9
CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

Upload: gwendoline-lawson

Post on 31-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 1

CSS432 Domain Name SystemTextbook 9.3.1

Instructor: Joe McCarthy(based on Prof. Fukuda’s slides)

Page 2: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 2

Name ServiceDNS

Basic concepts:Name space: set of possible names

identifiers

Bindings: association of names with values E.g., programming language variable bindings

Resolution: provides the value(s) of a name

Name ServerName• Variable length and mnemonic• Location independent

Value• System-provided fixed value• Location dependent

Page 3: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 3

Name Service

Hostscheltenham.cs.princeton.edu 192.12.69.17

192.12.69.17 80:23:A8:33:5B:9F Files

/usr/llp/tmp/foo (server, inode)

Users Larry Peterson [email protected]

(UID + host IP)

Name ServerName• Variable length and mnemonic• Location independent

Value• System-provided fixed value• Location dependent

DNS

Page 4: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 4

Unix system calls struct hostent h = gethostbyname( const char *hostname ); *(struct in_addr *)*h->h_addr_list; // returns IP list

DNS

Name Service

Page 5: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 5

Hierarchy

Nameuw1-320-00.bothell.washington.edu

(Currently, uw1-320-00.uwb.edu)

edu com

washington … mit

ucs

uw1-320-00 medusa

bothell

cisco … yahoo nasa … nsf arpa … navy acm … ieee

gov mil org net uk fr

homer goodall

DNS

Domain Name System

Page 6: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 6

Name Servers Partition hierarchy into zones

Rootname server

washingtonname server

Cisconame server

bothellname server

csname server

Each zone implemented by two or more name servers

edu com

washington … mit

ucs

uw1-320-00 medusa

bothell

cisco … yahoo nasa … nsf arpa … navy acm … ieee

gov mil org net uk fr

homer goodall

administrativeunit

DNS

Page 7: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 7

Resource Records Each name server maintains a collection of resource

records

(Name, Value, Type, Class, TTL)

Name/Value: not necessarily host names to IP addresses Type

A: Value is an IP address NS: Value is the corresponding Name Server’s name CNAME: Value is a Canonical NAME (alias) MX: Value is the domain name of this host’s Mail eXchange

server

Class: IN (Internet class) TTL: how long the resource record is valid

DNS

Page 8: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 8

Name Resolution Client

Initialized with its local name server’s address

appends its domain name (e.g., cs.princeton.edu) to a given host name (e.g., penguins)before a submission

Local name server needs to know root at only one place

(not each host). caches recent responses from

remote servers.

DNS

Page 9: CSS432: Applications 1 CSS432 Domain Name System Textbook 9.3.1 Instructor: Joe McCarthy (based on Prof. Fukuda’s slides)

CSS432: Applications 9

dig @server name type Find a root name server

dig edu ns edu a.gtld-server.net NS IN a.gtld-server.net 192.5.6.30 A IN

Find uwb.edu’s name servers dig @192.5.6.30 uwb.edu ns

uwb.edu, dns2.uwb.edu NS IN uwb.edu, dns4.uwb.edu NS IN dns2.uwb.edu 69.91.206.28 A dns4.uwb.edu 69.91.206.29 A

Find mercury.uwb.edu dig @69.91.206.28 metis.uwb.edu A

metis.uwb.edu 69.91.206.17 A

DNS

Name Resolution via dig