ECE 650 Systems Programming & Engineering. Spring 2018

Similar documents
CompSci 356: Computer Network Architectures. Lecture 20: Domain Name System (DNS) and Content distribution networks Chapter 9.3.1

Protocol Classification

S Computer Networks - Spring What and why? Structure of DNS Management of Domain Names Name Service in Practice

DNS Basics BUPT/QMUL

Networking Applications

A DNS Tutorial

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

APNIC elearning: DNS Concepts

CSE 265: System & Network Administration

CSCE 463/612 Networks and Distributed Processing Spring 2018

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

Introduction to the Domain Name System

The Domain Name System

DNS Concepts. Acknowledgements July 2005, Thimphu, Bhutan. In conjunction with SANOG VI. Bill Manning Ed Lewis Joe Abley Olaf M.

IP Addresses. An IPv4 address looks like this

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

Development of the Domain Name System

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

Domain Name System.

DNS and Modern Network Services. Amin Vahdat CSE 123b April 27, 2006

Client Server Concepts, DNS, DHCP

Name Services and DNS

EECS 122: Introduction to Computer Networks DNS and WWW. Internet Names & Addresses

Linux Network Administration

Higher layer protocols

Advanced Networking. Domain Name System

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

Introduction to Network. Topics

page 1 Plain Old DNS WACREN, DNS/DNSSEC Regional Workshop Ouagadougou, October 2016

Network+ Guide to Networks 6 th Edition. Chapter 4 Introduction to TCP/IP Protocols

0 0& Basic Background. Now let s get into how things really work!

CSc 450/550 Computer Networks Domain Name System

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

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

Electrical Engineering Department EE 400, Experiment # 4 IP Addressing and Subnetting

IP ADDRESSES, NAMING, AND DNS

CSE 124 January 27, Winter 2017, UCSD Prof. George Porter

2. Introduction to Internet Applications

The Application Layer: Sockets, DNS

DNS Configuration Guide. Open Telekom Cloud

The Domain Name System

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

DNS & Iodine. Christian Grothoff.

DOMAIN NAME SYSTEM (DNS) BEYAZIT BESTAMİ YÜKSEL

SOFTWARE ARCHITECTURE 9. NAME RESOLUTION.

INTERNET ARCHITECTURE & PROTOCOLS

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

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

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

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

Overview General network terminology. Chapter 9.1: DNS

CSE 124 January 18, Winter 2017, UCSD Prof. George Porter

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

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

CSE 124 January 12, Winter 2016, UCSD Prof. George Porter

Application Layer Protocols

The Internet. Overview. Network building blocks

Application Protocols in the TCP/IP Reference Model

Outline Applications. Central Server Hierarchical Peer-to-peer. 31-Jan-02 Ubiquitous Computing 1

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

DNS/DNSSEC Workshop. In Collaboration with APNIC and HKIRC Hong Kong. Champika Wijayatunga Regional Security Engagement Manager Asia Pacific

Services: DNS domain name system

More Internet Support Protocols

Welcome! Acknowledgements. Introduction to DNS. cctld DNS Workshop October 2004, Bangkok, Thailand

Configuring DNS. Finding Feature Information

Assigning IP Address and Domain Name Server

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

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Domain Name System

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

Miscellaneous. Name Service. Examples. Outline Domain Name System Peer-to-Peer Networks

Hands-On Microsoft Windows Server 2008

Resource Records. Host Address Name-to-address mapping for the zone. Table 1: Resource Records

Networking Basics. EC512 Spring /15/2015 EC512 - Prof. Thomas Skinner 1

Session 2. Background. Lecture Objectives

Resource Records APPENDIXA

Domain Name System (DNS) Services

Domain Name System (DNS)

Configuration of Authoritative Nameservice

CS 3640: Introduction to Networks and Their Applications

CS155b: E-Commerce. Lecture 3: Jan 16, How Does the Internet Work? Acknowledgements: S. Bradner and R. Wang

UCI University of California, Irvine

DNS Review Quiz. Match the term to the description: A. Transfer of authority for/to a subdomain. Domain name DNS zone Delegation C B A

3. Loading the IP/TCP system on one machine and saving the world: All sites

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

IPv6 Support in the DNS. Athanassios Liakopoulos 6DEPLOY IPv6 Training, Skopje, June 2011

DHCP and DDNS Services for Threat Defense

Application Protocols

0 TCP/IP overview. 0.1 The Internet

DHCP and DDNS Services

CIS 551 / TCOM 401 Computer and Network Security

Naming. To do. q What s in a name q Flat naming q Structured naming q Attribute-based naming q Next: Content distribution networks

RHCE BOOT CAMP BIND. Wednesday, November 28, 12

Midterm Results Computer Networking. Outline. Midterm Distribution. Average Std.Dev. 13.9!!! Max 97 Min 40.

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

Resource Records APPENDIX

June Gerd Liefländer System Architecture Group Universität Karlsruhe (TH), System Architecture Group

Domain Name System (DNS)

Chapter 19. Domain Name System (DNS)

Networking Overview. CS Computer Security Profs. Vern Paxson & David Wagner

Transcription:

ECE 650 Systems Programming & Engineering Spring 2018 Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS) Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke)

Dynamic Host Configuration Protocol (DHCP) (It s just one slide) 2

Dynamic Host Configuration Protocol (DHCP) DHCP: Allow hosts to enter a network and ask what IP should I use for myself? How it works: 1. Client sends an IP broadcast DISCOVERY request (destination 255.255.255.255 UDP port 67) 2. DHCP server on network sends an OFFER with IP address and other config (gateway router, DNS servers, maybe other stuff) Note: multiple offers might be provided by multiple DHCP servers (but usually it s just one) 3. Client sends a broadcast REQUEST for one of the offers 4. DHCP server sends ACKNOWLEDGE back 5. Client now has an IP address and basic config info DHCP can also be used to start network-boot (PXE), commonly used for diskless clusters, OS auto-install, etc. 3

Domain Name System (DNS) (Many slides) 4

Purpose of DNS Map an easy-to-remember name to an IP address IP Address IPv4: four numbers separated by decimals, e.g. 120.74.53.1 Each number called an 'octet' with a value of 0-255 Some are reserved as special, e.g. 127.0.0.1 = localhost IPv6: eight hex numbers separated by colons Implications Without DNS, to send IP packet, must remember IP addresses manually!...and they could change! With DNS, we can use the name directly: www.google.com or www.cnn.com DNS also provides inverse look-up that maps IP address to name 5

Design Goals of DNS Primary goal is a consistent namespace used to refer to resources Consistent: same names should refer to same resources Resources: IP addresses, mail servers Enable distributed management Size of the name database will be large Updates (changes, additions, removals) will be frequent Design goals determine its structure Hierarchical name space Distributed directory service 6

Before there was DNS... There was the HOSTS.TXT file (or what about /etc/hosts now) Maintained at SRI Network Information Center (NIC) Before DNS (1985), the name-to-ip address was done by downloading this single file from a central server with FTP No hierarchical structure to the file Still works on most OSes; can be used to define local names 7

DNS Architecture Components Domain namespace and resource records Name servers Name resolution 8

Domain Namespace.(root) org edu com gov Top-level domains duke mit ece cs www smtp Domain namespace is a hierarchical and logical tree structure Label from a node to root in the DNS tree represents a DNS name Each subtree below a node is a DNS domain DNS domain can contain hosts or other domains (subdomains) Examples of DNS domains:.edu, duke.edu, ece.duke.edu 9

Domain Namespace.(root) org edu com gov Top-level domains duke mit ece cs www smtp Red is managed by Duke Green is managed by ECE Below top-level domain, administration of name space is delegated to organizations Each organization can further delegate 10

Domain Names Names of hosts can be assigned independent of host locations on a link layer network or IP network This means the host name can remain the same Even if IP address of the host changes (e.g. DHCP) 11

Fully Qualified Domain Names.(root) org edu com gov Top-level domains duke mit ece cs www smtp Every node in the DNS domain tree can be identified by a FQDN Fully Qualified Domain Name FDQN (from right to left) consists of labels ( ece, duke, edu ) separated by a period from the root to the node Each label can be up to 63 characters; full DNS name <= 255 chars FDQN contains characters, digits, dashes; not case-sensitive 12

Top-Level Domains Three types of top-level domains: Generic Top Level Domains (gtld) 3 char code indicates the function of the organization Use primarily within the US (e.g. gov, mil, edu, org, com, net) Country Code Top Level Domain (cctld) 2 char country or region code (e.g. us, jp, uk) Reverse Domain Special domain used for IP address-to-name mapping in-addr.arpa More than 200 top-level domains 13

DNS Architecture Domain name space and resource records (RRs) Domain namespace is a hierarchical tree structure A domain can be delegated to an organization We'll discuss resource records shortly Name servers Domain name hierarchy exists only in the abstract A host's name servers are specified in /etc/resolv.conf Name resolution 14

Hierarchy of Name Servers Resolution of the hierarchical namespace is done by hierarchy of name servers Namespace is partitioned into zones. A zone is a contiguous portion of the DNS namespace Each server is responsible (authoritative for a zone) DNS server answers queries about host names in its zone org server uci.edu server root server edu server.virginia.edu server gov server com server cs.virginia.edu server 15

DNS Domains and Zones Each zone is anchored at a specific domain node A DNS domain is a subtree of the namespace A zone is a portion of the DNS namespace Generally stored in a file Could consist of multiple nodes A server can divide part of its zone and delegate it to other servers A name server implements the zone information as a collection of resource records (RRs) 16

Name Servers Each zone has a primary and secondary name server For reliability Primary server maintains a zone file with zone info Updates made to the primary server Secondary server copies data stored at the primary server Adding a new host: When new host is added (e.g. newmachine.ece.duke.edu ) Administrator adds the IP info on the host (IP address, name) to a configuration file on the primary server 17

Root Name Servers Root name servers know how to find authoritative name servers for all top-level zones There are 13 (virtual) root name servers Root servers are critical for proper functioning of name resolution 18

Resource Records A zone file includes a collection of Resource Records (RRs) (Name, Value, Type, Class, TTL) Name and Value Type specifies how the Value should be interpreted e.g. NS means name is a domain and value is name of authoritative name server for this domain e.g. A means a machine name and IP address Class: allows other entities to define record types ( IN for Internet is most widely used currently) TTL: how long should the RR be cached (more on this later) 19

Resource Records $TTL 86400 Max age of cached data in seconds mylab.com. IN SOA PC4.mylab.com. admin@mylab.com. ( 1 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ; minimum ttl ) ; mylab.com. IN NS PC4.mylab.com. ; Start of authority (SOA) record. Means: This name server is authoritative for the zone Mylab.com PC4.mylab.com is the name server admin@mylab.com is the email address of the person in charge localhost A 127.0.0.1 PC4.mylab.com. A 10.0.1.41 PC3.mylab.com. A 10.0.1.31 PC2.mylab.com. A 10.0.1.21 PC1.mylab.com. A 10.0.1.11 Name server (NS) record: one entry for each authoritative name server Address (A) records: one entry for each host address 20

1. User program issues a request for the IP address of a hostname gethostbyname() Domain Name Resolution 2. Local resolver formulates a DNS query to the name server of the host HTTP Hostname (neon.tcpip-lab.edu) IP address (128.143.71.21) Resolver 3. Name server checks if it is authorized to answer the query. If yes, it responds. Otherwise, it will query other name servers, starting at the root tree IP address (128.143.71.21) Hostname (neon.tcpip-lab.edu) 4. When the name server has the answer it sends it to the resolver. Name server 21

Inverse Query.(root) org edu com gov arpa ece duke mit cs in-addr www smtp 150.45.38.128 What is the host name for IP address 150.45.38.128? IP address is converted to domain name: 150.45.38.128.in-addr.arpa Resolver sends query for this address 22

Caching To reduce DNS traffic, name servers cache info e.g. Domain name / IP address mappings When entry for a query is cached, 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 Caching-only servers Only purpose is to cache results Do not contain zone info or a zone database file 23

Two kinds of negative responses Negative Caching Name in question does not exist Name in record exists, but requested data does not Negative responses will be cached too 24

DNS with DHCP integration Modern follow-ons When a new host uses DHCP to get on the network, the DHCP server can tell the DNS server about it, then the DNS server can answer requests for that host by name Multicast DNS (mdns) and Link-Local Multicast Name Resolution (LLMNR) Resolve hostnames when there s no local DNS server Allows automagic host discovery on individual networks Zero configuration they re self-organizing protocols 25