The Domain Name System

Similar documents
The Domain Name System

The Domain Name System

Application Layer Protocols

Advanced Networking. Domain Name System

Advanced Networking. Domain Name System. Purpose of DNS servers. Purpose of DNS servers. Purpose of DNS servers

Writing Assignment #1. A Technical Description for Two Different Audiences. Yuji Shimojo WRTG 393. Instructor: Claudia M. Caruana

Networking Applications

CS519: Computer Networks. Lecture 6: Apr 5, 2004 Naming and DNS

The Application Layer: Sockets, DNS

Introduction to Computer Networking

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer

Internet Engineering. DNS Message Format. Contents. Robert Elz.

DNS and HTTP. A High-Level Overview of how the Internet works

DNS and CDNs : Fundamentals of Computer Networks Bill Nace

A DNS Tutorial

DNS & Iodine. Christian Grothoff.

Course Organization. The Internet as a Blackbox: Applications. Opening the Blackbox: The IP Protocol Stack

CSCE 463/612 Networks and Distributed Processing Spring 2018

Introduction to the Domain Name System

IP ADDRESSES, NAMING, AND DNS

Chapter 2 Application Layer. Lecture 5 DNS. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

CS 43: Computer Networks. 10: Naming and DNS September 24, 2018

MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration. Chapter 5 Introduction to DNS in Windows Server 2008

Domain Name Service. DNS Overview. October 2009 Computer Networking 1

Lecture 7: Application Layer Domain Name System

Computer Networks. Domain Name System. Jianping Pan Spring /25/17 CSC361 1

ECE 650 Systems Programming & Engineering. Spring 2018

Computer Networking Course Introduction

Domain Name System.

CS 3640: Introduction to Networks and Their Applications

Configuring DNS. Finding Feature Information

Computer Networking Introduction

EECS 489 HW-1. Problem 1:

CS4/MSc Computer Networking. Lecture 3: The Application Layer

Managing Caching DNS Server

DNS. Introduction To. everything you never wanted to know about IP directory services

Domain Name System (DNS) Session-1: Fundamentals. Computers use IP addresses. Why do we need names? hosts.txt does not scale

Domain Name System (DNS)

Domain Name System (DNS) DNS Fundamentals. Computers use IP addresses. Why do we need names? hosts.txt does not scale. The old solution: HOSTS.

Configuring DNS. Finding Feature Information. Prerequisites for Configuring DNS

Lecture 05: Application Layer (Part 02) Domain Name System. Dr. Anis Koubaa

CPS 706 Computer Networks (Fall 2011)

Naming in Distributed Systems

Domain Name System (DNS) Session-1: Fundamentals. Joe Abley AfNOG Workshop, AIS 2017, Nairobi

APNIC elearning: DNS Concepts

More Internet Support Protocols

Networking Revision. TCP/IP Protocol Stack & OSI reference model. Basic Protocols. TCP/IP Model ANTHONY KAO NETWORKING FINAL EXAM SPRING 2014 REVISION

Chapter 19. Domain Name System (DNS)

Protocol Classification

Lecture 6 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

DNS Basics BUPT/QMUL

Domain Name System (DNS)

To use DNS, you must have a DNS name server on your network.

You can specify IPv4 and IPv6 addresses while performing various tasks in this feature. The resource

Network Applications and the Web

RHCE BOOT CAMP BIND. Wednesday, November 28, 12

Applications & Application-Layer Protocols: (SMTP) and DNS

Distributed Systems. Distributed Systems Within the Internet Nov. 9, 2011

CIS 551 / TCOM 401 Computer and Network Security. Spring 2006 Lecture 16

CSE 124 Networked Services Fall 2010

ECE 4450:427/527 - Computer Networks Spring 2017

How to Add Domains and DNS Records

Chapter 2: Application layer

Naming Computer Networking. Overview. DNS: Domain Name System. Obvious Solutions (1) Obvious Solutions (2)

Chapter 2 part B: outline

DNS. Some advanced topics. Karst Koymans. Informatics Institute University of Amsterdam. (version 17.2, 2017/09/25 12:41:57)

ECE 435 Network Engineering Lecture 7

The Domain Name System

This time. Digging into. Networking. Protocols. Naming DNS & DHCP

Lecture 4: Basic Internet Operations

2.5 DNS The Internet s Directory Service

Communications Software. CSE 123b. CSE 123b. Spring Lecture 11: Domain Name System (DNS) Stefan Savage. Some pictures courtesy David Wetherall

CSE 123b Communications Software. Overview for today. Names and Addresses. Goals for a naming system. Internet Hostnames

Some advanced topics. Karst Koymans. Tuesday, September 16, 2014

The Network Layer. Antonio Carzaniga. April 22, Faculty of Informatics University of Lugano Antonio Carzaniga

The Network Layer. Antonio Carzaniga. November 24, Faculty of Informatics Università della Svizzera italiana

Network concepts introduction & wireshark. workshop

DNS. Karst Koymans & Niels Sijm. Friday, September 14, Informatics Institute University of Amsterdam

How to Configure the DNS Server

Domain Name System (DNS) 김현철 ( 화 ) 정보통신융합서울대학교컴퓨터공학부

ICS 351: Networking Protocols

CSE 486/586 Distributed Systems

Objectives. Upon completion you will be able to:

CS454/654 Midterm Exam Fall 2004

CSCI-1680 DNS Rodrigo Fonseca

DNS. DNS is an example of a large scale client-server application.

CSE 124: IP ADDRESSES, NAMING, AND DNS. George Porter Oct 4, 2017

DNS Security. * pers/dnssec/dnssec.html. IT352 Network Security Najwa AlGhamdi

12. Name & Address 최양희서울대학교컴퓨터공학부

Lesson 9: Configuring DNS Records. MOAC : Administering Windows Server 2012

CIS 551 / TCOM 401 Computer and Network Security

Chapter 5 Naming (2)

DNS. David Malone. 19th October 2004

FTP. Mail. File Transfer Protocol (FTP) FTP commands, responses. Electronic Mail. TDTS06: Computer Networks

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS.

DNS. A Massively Distributed Database. Justin Scott December 12, 2018

Manual Configuration Stateful Address Configuration (i.e. from servers) Stateless Autoconfiguration : IPv6

DNS. dr. C. P. J. Koymans. September 16, Informatics Institute University of Amsterdam. dr. C. P. J. Koymans (UvA) DNS September 16, / 46

Table of Contents DNS. Short history of DNS (1) DNS and BIND. Specification and implementation. A short history of DNS. Root servers.

Network concepts introduction & wireshark

Transcription:

The Domain Name System Antonio Carzaniga Faculty of Informatics University of Lugano October 8, 2014

Outline IP addresses and host names DNS architecture DNS process DNS requests/replies

Internet applications involve end system communication End Systems Internet

Internet applications involve end system communication End Systems Internet

Internet applications involve end system communication End Systems Internet

Internet applications involve end system communication End Systems Internet How does one end system address another end system?

IP Addresses An end system is identified and addressed by its IP address

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

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

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

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

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

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!

Host Names Goal: help the human users of the Internet human-readable, mnemonic addresses, aliases

Host Names Goal: help the human users of the Internet human-readable, mnemonic addresses, aliases Solution: domain name system (DNS)

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

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 maps a name to an IP address name IP address

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

Host Names E.g.,atelier.inf.usi.ch Hierarchical name space

Host Names E.g.,atelier.inf.usi.ch Hierarchical name space Top-level domain ch

Host Names E.g.,atelier.inf.usi.ch Hierarchical name space Top-level domain,... ch usi

Host Names E.g.,atelier.inf.usi.ch Hierarchical name space Top-level domain,... usi inf ch

Host Names E.g.,atelier.inf.usi.ch Hierarchical name space Top-level domain,... usi inf ch

Architecture of DNS 2005 2007 Antonio Carzaniga

Architecture of DNS Hierarchical architecture that mirrors the hierarchical structure of the namespace

Architecture of DNS Hierarchical architecture that mirrors the hierarchical structure of the namespace root.com.edu.ch

Architecture of DNS Hierarchical architecture that mirrors the hierarchical structure of the namespace root.com.edu.ch.switch.ch.usi.ch

Architecture of DNS Hierarchical architecture that mirrors the hierarchical structure of the namespace root.com.edu.ch.switch.ch.usi.ch inf.usi.ch

DNS Architecture Root servers: 13 root know where the top-level servers are (labeled A through M) see http://www.root-servers.org 2005 2007 Antonio Carzaniga

DNS Architecture Root servers: 13 root know where the top-level servers 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

DNS Architecture Root servers: 13 root know where the top-level servers 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 that holds the map of publicly-accessible hosts within that domain 2005 2007 Antonio Carzaniga

DNS Architecture Root servers: 13 root know where the top-level servers 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 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

How DNS Works 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS?.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace local DNS? root.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS see.ch at 62.2....ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS?.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root.ch local DNS see.usi.ch at 195.176....usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS?.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS.ch see inf.usi.ch at....usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS.ch?.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS.ch.usi.ch application www.inf.usi.ch? 195.176.181.10! inf.usi.ch 2005 2007 Antonio Carzaniga

How DNS Works Hierarchical architecture that mirrors the hierarchical structure of the namespace root local DNS 195.176.181.10!.ch.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

Recursive Queries 2005 2007 Antonio Carzaniga

Recursive Queries A client/server can request a recursive query

Recursive Queries A client/server can request a recursive query root local DNS?.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query local DNS? root.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query root? local DNS.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS.ch?.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS.ch.usi.ch application www.inf.usi.ch?? inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS.ch.usi.ch application www.inf.usi.ch? 195.176.181.10! inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS.ch 195.176.181.10!.usi.ch application www.inf.usi.ch? inf.usi.ch 2005 2007 Antonio Carzaniga

Recursive Queries A client/server can request a recursive query root local DNS 195.176.181.10!.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS 195.176.181.10!.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Recursive Queries A client/server can request a recursive query root local DNS 195.176.181.10!.ch.usi.ch application www.inf.usi.ch? inf.usi.ch

Observations on DNS 2005 2007 Antonio Carzaniga

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

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

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?

DNS Caching Caching is clearly very important, as it can dramatically improve the performance of DNS reduce the load on the DNS infrastructure

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?

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 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

DNS Features DNS is essentially a directory service database The database contains resource records (RRs)

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...............

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

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?

DNS Query Types 2005 2007 Antonio Carzaniga

DNS Query Types A this is the main mapping host_name address, so name is a host name and value is its (IP) address

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

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

DNS Query Types (2) 2005 2007 Antonio Carzaniga

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...

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

DNS Protocol 2005 2007 Antonio Carzaniga

DNS Protocol DNS is a connectionless protocol Runs on top of UDP (port 53)

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

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

DNS Message Format 2005 2007 Antonio Carzaniga

DNS Message Format 0 31 identification flags # of queries # of answers RRs # of authority RRs # of additional RRs questions answers authority additional information