Hostnames. HOSTS.TXT was a bottleneck. Once there was HOSTS.TXT. CSCE515 Computer Network Programming. Hierarchical Organization of DNS

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Hostnames. HOSTS.TXT was a bottleneck. Once there was HOSTS.TXT. CSCE515 Computer Network Programming. Hierarchical Organization of DNS"

Transcription

1 Hostnames CSCE 515: Computer Network Programming Address Conversion Function and DNS RFC 1034, RFC 1035 Wenyuan Xu Department of Computer Science and Engineering University of South Carolina IP Addresses are great for computers IP address includes information used for routing. IP addresses are tough for humans to remember. IP addresses are impossible to guess. ever guessed at the name of a WWW site? What if the server is moved to a different machine with a different address Once there was HOSTS.TXT Centralized for all the host in ARPAnet /etc/hosts were derived from HOSTS.TXT HOSTS.TXT was a bottleneck too much traffic generated by the updates in both directions. It was maintained by NIC and distributed by a single host The changes were ed to NIC in one way and ftped on the other way once or twice a week Main problems: traffic and load name collision consistency Internet started to grow up exponentially. Domain Name System (DNS) A distributed database used by TCP/IP applications to map between hostnames and IP addresses No single site on Internet knows all information; each site maintains its own database and let other sites query it Domain names comprise a hierarchy so that names are unique, yet easy to remember. Can you explain this in CS terms? Postal system: David on Main St. in White Plain, NY David on Main St. in Columbia, SC Hierarchical Organization of DNS arpa com edu gov int mil net org ae us zw in-addr cse vega Unnamed root vega.cse..edu Generic domains United Arab Emirates state www Country domains Zimbabwe

2 Host name structure Each host name is made up of a sequence of labels separated by periods. Each label can be up to 63 characters Do you know the char length limits of a total name? Examples: whitehouse.gov barney.the.purple.dinosaur.com vega.cse..edu Domain Name The domain name for a host is the sequence of labels that lead from the host (leaf node in the naming tree) to the top of the worldwide naming tree. A domain is a subtree of the worldwide naming tree. Top level domains Generic: edu, gov, com, net, org, mil, Countries each have a top level domain (2 letter domain name). cn, uk, it, zl, jp New top level domains include:.aero.biz.coop.info.name.pro arpa, a special domain used for address-toname mappings More on domain names Domain names can be either: absolute (ends with a period) engr..edu. relative does not ends with a period. Relative names have to be interpreted in some context to uniquely determine their true meaning. Domain names are case insensitive edu, Edu, EDU are the same To get a new domain To create a new domain, permission is required of the domain in which it will be included. company.com, get permission from whoever manage com cse..edu, get permission from.edu Can a machine inside computer ience building have a different domain? Yes, Naming follows organizational boundaries, not physical networks What do the hosts within the same domain have in common? Do they must have the same OS? Do they must belong to the same network? Do they must be administrated by the same person? They usually are logically related: geographically close same organization.

3 DNS Organization Distributed Database The organization that owns a domain name is responsible for running a DNS server that can provide the mapping between hostnames within the domain to IP addresses. So - some machine run by SC is responsible for everything within the.edu domain. DNS Zone A subtree of DNS tree that is administered separately Each zone contains name servers holding the information about that zone. arpa com edu gov int mil net org ae us zw in-addr Unnamed root United Arab Emirates Zimbabwe 118 cse state 130 vega www DNS Distributed Database Each zone has a primary name server and one or more secondary name server To avoid single point of failure secondary servers containing replicated databases..edu DNS server DNS Clients A DNS client is called a resolver. A call to gethostbyname()is handled by a resolver (typically part of the client)..edu DNS DB Authoritative.edu rpi.edu DNS rpi.edu DB DNS DNS DB DB Replicas Can a name server for a zone located outside the zone? Most Unix workstations have the file /etc/resolv.conf that contains the local domain and the addresses of DNS servers for that domain. /etc/resolv.conf domain cse..edu nslookup nslookup is an interactive resolver that allows the user to communicate directly with a DNS server. nslookup is usually available on Unix workstations. (dig and host are also DNS clients).

4 DNS Servers When a new system is added to a zone, DNS administrator for the zone assigns a name and an IP address and stores information in name server To resolve a name or address, client can send DNS query message to a name server of its zone DNS Servers (cont d) Servers handle requests for their domain directly. Servers handle requests for other domains by contacting remote DNS server(s). When a name server is queried, it first searches its database If found, reply with a DNS response message If not found, contact external DNS servers A name server caches external mappings received to reduce DNS traffic Authoritative record Cache record Server - Server Communication If a server is asked to provide the mapping for a host outside it s domain (and the mapping is not in the server cache): The server finds a nameserver for the target domain. The server asks the nameserver to provide the host name to IP translation. To find the right nameserver, use DNS! The Root DNS Server The root server needs to know the address of 1st (and many 2nd) level domain nameservers. edu com org jp yale Server Operation If a server has no clue about where to find the address for a hostname, ask the root server. The root server will tell you what nameserver to contact. A request may get forwarded a few times. DNS Data DNS databases contain more than just hostname-to-address records -- a set of resource records (five-tuple) Domain Name: Series of labels of alphanumeric characters or hyphens Each pair separated by period Time_to_live How long to hold the result in local cache Class For internet information it is always IN Type what kind of record this is Value Deription of resource For A type, Rdata is 32-bit IP address Main function of DNS is to map domain names onto resource records!

5 Resource Record Type - 1 A Address type. Value of A type RRs is an IP address SOA Start of Authority Parameters (mostly to sync with other servers) and info about this zone MX Mail Exchange name of the receiving SMTP agent for the zone may be more than one MX RRs for one zone priorities are used Resource Record Type - 2 CNAME Canonical Name used to create aliases value is the canonical host name NS Name Server Value field is the name of the server who knows the IP addresses of the hosts that belongs to the domain given in the Domain_Name field. can be used to specify the names of the name servers in both current domain or in subordinate domains (for delegation purposes) There might be several DNS servers for each domain for fault tolerance Resource Record Type - 3 PTR Pointer type mostly used for reverse lookups Domain_Name field is an IP address; Value is the hostname HINFO Host Info. OS and processor type of information about the zone s server TXT Textual comments Portion of a possible DNS database cs.vu.nl IN NS flits.cs.vu.nl. cs.vu.nl IN NS star.cs.vu.nl. zephyr.cs.vu.nl IN A zephyr.cs.vu.nl IN HINFO Sun Unix star.cs.vu.nl IN A star.cs.vu.nl IN A star.cs.vu.nl IN HINFO Sun Unix Example for PTR record for Reverse Lookup Useful when you know the IP address and want to know the corresponding host name Suppose you would like to know the host name for IP address you have to query the DNS servers for the PTR entry in-addr.arpa. Be careful! numbers are in reverse order In order to find the host name, the host s name server should have an entry in-addr.arpa. PTR domain_name for this particular case domain_name is kennedy.cc.boun.edu.tr DNS Message Format HEADER QUERIES Response RESOURCE RECORDS Response AUTHORITY RECORDS Response ADDITIONAL INFORMATION

6 DNS Message Header 16 bit fields query identifier flags # of questions # of RRs # of authority RRs # of additional RRs Response Message Flags QR: Query=0, Response=1 AA: Authoritative Answer TC: response truncated (> 512 bytes) RD: recursion desired RA: recursion available rcode: return code Recursion A request can indicate that recursion is desired - this tells the server to find out the answer (possibly by contacting other servers). If recursion is not requested - the response may be a list of other name servers to contact. Question Format Name: domain name (or IP address) Query type (A, NS, MX, ) Query class (1 for IP) query name query type query class Response Resource Record Domain Name Response type Class (IP) Time to live (in seconds) Length of resource data Resource data domain name type resource data length time-to-live resource data class 3 1 UDP & TCP Both UDP and TCP are used: TCP for transfers of entire database to secondary servers (replication). UDP for lookups If more than 512 bytes in response - requestor resubmits request using TCP.

7 Lots more This is not a complete deription! If interested - look at: RFC 1034: DNS concepts and facilities. RFC 1035: DNS implementation and protocol specification. play with nslookup. Look at code for BIND (DNS server code). Name to Address Conversion There is a library of functions that act as DNS client (resolver). you don t need to write DNS client code to use DNS! With some OSs you need to explicitly link with the DNS resolver library: -lnsl (nsl is Name Server Library ) Suns (Solaris) need this! DNS library functions gethostbyname gethostbyaddr gethostbyname2 IPV6! gethostbyname struct hostent *gethostbyname( const char *hostname); struct hostent is defined in netdb.h: #include <netdb.h> struct hostent struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; official name (canonical) other names AF_INET or AF_INET6 address length (4 or 16) char **h_addr_list; }; array of ptrs to addresses hostent picture h_name h_aliases h_addrtype h_length h_addr_list null null Official Name alias 1 alias 2 IP address 1 IP address 2

8 Which Address? On success, gethostbyname returns the address of a hostent that has been created. has an array of ptrs to IP addresses Usually use the first one: #define h_addr h_addr_list[0] gethostbyname and errors On error gethostbyname return null. Gethostbyname sets the global variable h_errno to indicate the exact error: HOST_NOT_FOUND TRY_AGAIN NO_RECOVERY NO_DATA NO_ADDRESS All defined in netdb.h Getting at the address: char **h_addr_list; h = gethostbyname("joe.com"); sockaddr.sin_addr.s_addr = *(h->h_addr_list[0]); This won't work!!!! h_addr_list[0] is a char*! struct sockaddr_in { uint8_t sin_len; sa_family_t sin_family; in_port_t sin_port; struct in_addr sin_addr; char sin_zero[8]; }; struct in_addr { in_addr_t s_addr; };// IPV4 address Using memcpy You can copy the 4 bytes (IPv4) directly: h = gethostbyname("joe.com"); memcpy(&sockaddr.sin_addr, h->h_addr_list[0], sizeof(struct in_addr)); Network Byte Order All the IP addresses returned via the hostent are in network byte order! gethostbyaddr struct hostent *gethostbyaddr( const char *addr size_t len, int family); sizeof(struct in_addr) AF_INET (could be AF_INET6)

9 Some other functions uname: get hostname of local host getservbyname : get port number for a named service getservbyaddr : get name for service associated with a port number

DNS Domain Name System

DNS Domain Name System Domain Name System DNS Domain Name System The domain name system is usually used to translate a host name into an IP address Domain names comprise a hierarchy so that names are unique, yet easy to remember.

More information

DHCP, DNS, SNMP. Prepared by : Swapan Purkait Director. Nettech Private Ltd

DHCP, DNS, SNMP. Prepared by : Swapan Purkait Director. Nettech Private Ltd For Summer Training on Computer Networking visit DHCP, DNS, SNMP Prepared by : Swapan Purkait Director Nettech Private Limited swapan@nettech.in + 91 93315 90003 First Question How does your computer know

More information

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace Motivation Domain Name System (DNS) IP addresses hard to remember Meaningful names easier to use Assign names to IP addresses Name resolution map names to IP addresses when needed Namespace set of all

More information

Elementary Name and Address Conversions

Elementary Name and Address Conversions Elementary Name and Address Conversions Domain name system gethostbyname Function RES_USE_INET6 resolver option gethostbyname2 Function and IPv6 support gethostbyaddr Function uname and gethostname Functions

More information

DNS : Domain Name System

DNS : Domain Name System 1/30 DNS : Domain Name System Surasak Sanguanpong nguan@.ac.th http://www...ac.th/~nguan Last updated: May 24, 1999 Outline 2/30 DNS basic name space name resolution process protocol configurations Why

More information

CS640: Computer Networks. Naming /ETC/HOSTS

CS640: Computer Networks. Naming /ETC/HOSTS CS640: Computer Networks Aditya Akella Lecture 17 Naming and the DNS Naming Need naming to identify resources Once identified, resource must be located How to name resource? Naming hierarchy How do we

More information

Elementary Name and Address. Conversions

Elementary Name and Address. Conversions Elementary Name and Address Domain name system Conversions gethostbyname Function RES_USE_INET6 resolver option gethostbyname2 Function and IPv6 support gethostbyaddr Function uname and gethostname Functions

More information

Application-layer Protocols

Application-layer Protocols Application-layer Protocols Based on Notes by D. Hollinger Based on UNIX Network Programming, Stevens, Chapter 9 Also Java Network Programming and Distributed Computing, Chapter 3,8 Also Online Java Tutorial,

More information

Applications and Services. DNS (Domain Name System)

Applications and Services. DNS (Domain Name System) Applications and Services DNS (Domain Name Service) File Transfer Protocol (FTP) Simple Mail Transfer Protocol (SMTP) Malathi Veeraraghavan Distributed database used to: DNS (Domain Name System) map between

More information

CS3250 Distributed Systems

CS3250 Distributed Systems CS3250 Distributed Systems Lecture 4 More on Network Addresses Domain Name System DNS Human beings (apart from network administrators and hackers) rarely use IP addresses even in their human-readable dotted

More information

Lecture 2 CS 3311. An example of a middleware service: DNS Domain Name System

Lecture 2 CS 3311. An example of a middleware service: DNS Domain Name System Lecture 2 CS 3311 An example of a middleware service: DNS Domain Name System The problem Networked computers have names and IP addresses. Applications use names; IP uses for routing purposes IP addresses.

More information

Domain Name System (DNS) Fundamentals

Domain Name System (DNS) Fundamentals Domain Name System (DNS) Fundamentals Mike Jager Network Startup Resource Center mike.jager@synack.co.nz These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International

More information

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 34 DNS & Directory

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 34 DNS & Directory Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 34 DNS & Directory Good day. Today we will take up two topics, DNS and

More information

A DNS Tutorial. Copyright

A DNS Tutorial.  Copyright http://ntrg.cs.tcd.ie/undergrad/4ba2/multicast/ Copyright Table of Contents What is a DNS?... 3 Why do we need a DNS?... 3 Why do computers prefer addresses based on numbers?... 3 What is a Domain Name,

More information

Domain Name System. CS 571 Fall 2006. 2006, Kenneth L. Calvert University of Kentucky, USA All rights reserved

Domain Name System. CS 571 Fall 2006. 2006, Kenneth L. Calvert University of Kentucky, USA All rights reserved Domain Name System CS 571 Fall 2006 2006, Kenneth L. Calvert University of Kentucky, USA All rights reserved DNS Specifications Domain Names Concepts and Facilities RFC 1034, November 1987 Introduction

More information

Internetworking with TCP/IP Unit 10. Domain Name System

Internetworking with TCP/IP Unit 10. Domain Name System Unit 10 Domain Name System Structure 10.1 Introduction 10.2 Fully Qualified Domain Names (FQDNs) Generic Domains Country Domains 10.3 Mapping domain names to IP addresses 10.4 Mapping IP Addresses to Domain

More information

Domain Name System (DNS) Session-1: Fundamentals. Ayitey Bulley abulley@ghana.com

Domain Name System (DNS) Session-1: Fundamentals. Ayitey Bulley abulley@ghana.com Domain Name System (DNS) Session-1: Fundamentals Ayitey Bulley abulley@ghana.com Computers use IP addresses. Why do we need names? Names are easier for people to remember Computers may be moved between

More information

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

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Concept. DNS - Domain Name System Application Protocols in the TCP/IP Reference Model Application Protocols in the TCP/IP Reference Model File Transfer E-Mail Network Management Protocols of the application layer are common communication

More information

DNS - Domain Name System

DNS - Domain Name System DNS - Domain Name System TCP/IP class 1 outline introduction naming scheme protocol format record types how it works reverse lookup implementation - named config files summary - futures 2 bibliography

More information

Application Protocols in the TCP/IP Reference Model

Application Protocols in the TCP/IP Reference Model Application Protocols in the TCP/IP Reference Model File Transfer E-Mail Network Management WWW Virtual Terminal Name Service File Transfer HTTP FTP Telnet SMTP DNS SNMP TFTP Internet protocols TCP UDP

More information

THE DOMAIN NAME SYSTEM DNS

THE DOMAIN NAME SYSTEM DNS Announcements THE DOMAIN NAME SYSTEM DNS Internet Protocols CSC / ECE 573 Fall, 2005 N. C. State University copyright 2005 Douglas S. Reeves 2 Today s Lecture I. Names vs. Addresses II. III. IV. The Namespace

More information

The Domain Name System

The Domain Name System DNS " This is the means by which we can convert names like news.bbc.co.uk into IP addresses like 212.59.226.30 " Purely for the benefit of human users: we can remember numbers (e.g., telephone numbers),

More information

Porting applications & DNS issues. socket interface extensions for IPv6. Eva M. Castro. ecastro@dit.upm.es. dit. Porting applications & DNS issues UPM

Porting applications & DNS issues. socket interface extensions for IPv6. Eva M. Castro. ecastro@dit.upm.es. dit. Porting applications & DNS issues UPM socket interface extensions for IPv6 Eva M. Castro ecastro@.upm.es Contents * Introduction * Porting IPv4 applications to IPv6, using socket interface extensions to IPv6. Data structures Conversion functions

More information

Application Layer: DNS

Application Layer: DNS Application Layer: DNS Prof. Andrzej Duda duda@imag.fr http://duda.imag.fr 1 Overview Learn about protocols by examining popular application-level protocols DNS - name service 2 Applications and application-layer

More information

CS 348: Computer Networks. - DNS; 22 nd Oct 2012. Instructor: Sridhar Iyer IIT Bombay

CS 348: Computer Networks. - DNS; 22 nd Oct 2012. Instructor: Sridhar Iyer IIT Bombay CS 348: Computer Networks - DNS; 22 nd Oct 2012 Instructor: Sridhar Iyer IIT Bombay Domain Name System Map between host names and IP addresses People: many identifiers: name, Passport #, Internet hosts:

More information

The Domain Name System (DNS)

The Domain Name System (DNS) The Domain Name System (DNS) Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/ 24-1 Overview Naming hierarchy hierarchy Name resolution Other information in name servers 24-2

More information

ECE 4321 Computer Networks. Network Programming

ECE 4321 Computer Networks. Network Programming ECE 4321 Computer Networks Network Programming Name Space System.Net Domain Name System (DNS) To resolve computer naming Host database is split up and distributed among multiple systems on the Internet

More information

Domain Name System. 188lecture12.ppt. Pirkko Kuusela, Markus Peuhkuri, Jouni Karvo

Domain Name System. 188lecture12.ppt. Pirkko Kuusela, Markus Peuhkuri, Jouni Karvo Domain Name System 88lecture2.ppt Pirkko Kuusela, Markus Peuhkuri, Jouni Karvo S-38.88 - Computer Networks - Spring 2003 Outline What and why? Structure of DNS Management of Domain Names Name Service in

More information

19 Domain Name System (DNS)

19 Domain Name System (DNS) CHAPTER 9 Domain Name System (DNS) I n this chapter, we discuss the second application program, Domain Name System (DNS). DNS is a client/server application program used to help other application programs.

More information

The Application Layer. CS158a Chris Pollett May 9, 2007.

The Application Layer. CS158a Chris Pollett May 9, 2007. The Application Layer CS158a Chris Pollett May 9, 2007. Outline DNS E-mail More on HTTP The Domain Name System (DNS) To refer to a process on the internet we need to give an IP address and a port. These

More information

Internet-Praktikum I Lab 3: DNS

Internet-Praktikum I Lab 3: DNS Kommunikationsnetze Internet-Praktikum I Lab 3: DNS Mark Schmidt, Andreas Stockmayer Sommersemester 2015 kn.inf.uni-tuebingen.de Motivation for the DNS Problem IP addresses hard to remember for humans

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS FALL 2011 Lecture 19: DNS Prof. Alan Mislove (amislove@ccs.neu.edu) Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Human Involvement

More information

DNS. Computer Networks. Seminar 12

DNS. Computer Networks. Seminar 12 DNS Computer Networks Seminar 12 DNS Introduction (Domain Name System) Naming system used in Internet Translate domain names to IP addresses and back Communication works on UDP (port 53), large requests/responses

More information

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014.

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014. Application Layer Mahalingam Mississippi State University, MS September 15, 2014 Outline 1 DNS Records DNS Components 2 Message Transfer Fetching Emails 3 Applications We will focus on 3 applications DNS

More information

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

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Domain Name System Application Protocols in the TCP/IP Reference Model Application Protocols in the TCP/IP Reference Model File Transfer E-Mail Network Management Protocols of the application layer are common communication

More information

Domain Name System DNS

Domain Name System DNS CE443 Computer Networks Domain Name System DNS Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought by

More information

Distributed Systems. 09. Naming. Paul Krzyzanowski. Rutgers University. Fall 2015

Distributed Systems. 09. Naming. Paul Krzyzanowski. Rutgers University. Fall 2015 Distributed Systems 09. Naming Paul Krzyzanowski Rutgers University Fall 2015 October 7, 2015 2014-2015 Paul Krzyzanowski 1 Naming things Naming: map names to objects Helps with using, sharing, and communicating

More information

DNS. Computer networks - Administration 1DV202. fredag 30 mars 12

DNS. Computer networks - Administration 1DV202. fredag 30 mars 12 DNS Computer networks - Administration 1DV202 DNS History Who needs DNS? The DNS namespace How DNS works The DNS database The BIND software Server and client configuration The history of DNS RFC 882 and

More information

DNS. The Root Name Servers. DNS Hierarchy. Computer System Security and Management SMD139. Root name server. .se name server. .

DNS. The Root Name Servers. DNS Hierarchy. Computer System Security and Management SMD139. Root name server. .se name server. . Computer System Security and Management SMD139 Lecture 5: Domain Name System Peter A. Jonsson DNS Translation of Hostnames to IP addresses Hierarchical distributed database DNS Hierarchy The Root Name

More information

DNS & IPv6. Agenda 4/14/2009. MENOG4, 8-9 April 2009. Raed Al-Fayez SaudiNIC CITC rfayez@citc.gov.sa, www.nic.net.sa. DNS & IPv6.

DNS & IPv6. Agenda 4/14/2009. MENOG4, 8-9 April 2009. Raed Al-Fayez SaudiNIC CITC rfayez@citc.gov.sa, www.nic.net.sa. DNS & IPv6. DNS & IPv6 MENOG4, 8-9 April 2009 Raed Al-Fayez SaudiNIC CITC rfayez@citc.gov.sa, www.nic.net.sa Agenda DNS & IPv6 Introduction What s next? SaudiNIC & IPv6 About SaudiNIC How a cctld Registry supports

More information

SOCKETS. Sockets. COMP476 Networked Computer Systems. Socket Functions. Sequence of Socket Calls

SOCKETS. Sockets. COMP476 Networked Computer Systems. Socket Functions. Sequence of Socket Calls Sockets SOCKETS Socket functions provide an application programmer interface (API) to send and receive data over a network. COMP476 Networked Computer Systems Socket Functions Sequence of Socket Calls

More information

Part 5 DNS Security. SAST01 An Introduction to Information Security 2015-09-21. Martin Hell Department of Electrical and Information Technology

Part 5 DNS Security. SAST01 An Introduction to Information Security 2015-09-21. Martin Hell Department of Electrical and Information Technology SAST01 An Introduction to Information Security Part 5 DNS Security Martin Hell Department of Electrical and Information Technology How DNS works Amplification attacks Cache poisoning attacks DNSSEC 1 2

More information

3. The Domain Name Service

3. The Domain Name Service 3. The Domain Name Service n Overview and high level design n Typical operation and the role of caching n Contents of DNS Resource Records n Basic message formats n Configuring/updating Resource Records

More information

Domain Name System (DNS)

Domain Name System (DNS) Chapter 18 CSC465 Computer Networks Spring 2004 Dr. J. Harrison These slides are based on the text TCP/IP Protocol Suite (2 nd Edition) Domain Name System (DNS) CONTENTS NAME SPACE DOMAIN NAME SPACE DISTRIBUTION

More information

Distributed Systems. 22. Naming. 2013 Paul Krzyzanowski. Rutgers University. Fall 2013

Distributed Systems. 22. Naming. 2013 Paul Krzyzanowski. Rutgers University. Fall 2013 Distributed Systems 22. Naming Paul Krzyzanowski Rutgers University Fall 2013 November 21, 2013 2013 Paul Krzyzanowski 1 My 15 MacBook Pro The rightmost computer on my desk Paul s aluminum laptop, but

More information

Domain Name System Richard T. B. Ma

Domain Name System Richard T. B. Ma Domain Name System Richard T. B. Ma School of Computing National University of Singapore CS 3103: Compute Networks and Protocols Names Vs. Addresses Names are easier for human to remember www.comp.nus.edu.sg

More information

Motivation. Users can t remember IP addresses. Implemented by library functions & servers. - Need to map symbolic names (www.stanford.

Motivation. Users can t remember IP addresses. Implemented by library functions & servers. - Need to map symbolic names (www.stanford. Motivation 2 cs.princeton.edu User 1 user @ cs.princeton.edu Name server Mail program 192.12.69.5 3 TCP 192.12.69.5 4 192.12.69.5 5 IP Users can t remember IP addresses - Need to map symbolic names (www.stanford.edu)

More information

Fig 1A portion of the Internet domain name space.

Fig 1A portion of the Internet domain name space. 1 Asst. Lecturar ahmed S. Kareem DNS The Domain Name System Although programs theoretically could refer to hosts, mailboxes, and other resources by their network (e.g., IP) addresses, these addresses are

More information

Elementary TCP Sockets

Elementary TCP Sockets Elementary TCP Sockets Chapter 4 UNIX Network Programming Vol. 1, Second Ed. Stevens Networks: TCP/IP Socket Calls 1 IPv4 Socket Address Structure Internet socket address structure is named sockaddr_in

More information

Naming. Name Service. Why Name Services? Mappings. and related concepts

Naming. Name Service. Why Name Services? Mappings. and related concepts Service Processes and Threads: execution of applications or services Communication: information exchange for coordination of processes But: how can client processes (or human users) find the right server

More information

Teldat Router. DNS Client

Teldat Router. DNS Client Teldat Router DNS Client Doc. DM723-I Rev. 10.00 March, 2003 INDEX Chapter 1 Domain Name System...1 1. Introduction...2 2. Resolution of domains...3 2.1. Domain names resolver functionality...4 2.2. Functionality

More information

Aalto University School of Electrical Engineering Internet Protocols Name Resolution & Server sockets

Aalto University School of Electrical Engineering Internet Protocols Name Resolution & Server sockets Internet Protocols Name Resolution & Server sockets Pasi Sarolahti 27.1.2016 Agenda Module 1 exercises IPv6 Name Resolution IPv6 address hunt Server sockets Multiplexed I/O Overview of round 2 exercises

More information

NET0183 Networks and Communications

NET0183 Networks and Communications NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/2009 1 NET0183 Networks and Communications by Dr Andy Brooks DNS is a distributed database implemented in a hierarchy of many

More information

Forouzan: Chapter 17. Domain Name System (DNS)

Forouzan: Chapter 17. Domain Name System (DNS) Forouzan: Chapter 17 Domain Name System (DNS) Domain Name System (DNS) Need System to map name to an IP address and vice versa We have used a host file in our Linux laboratory. Not feasible for the entire

More information

Introduction to DNS CHAPTER 5. In This Chapter

Introduction to DNS CHAPTER 5. In This Chapter 297 CHAPTER 5 Introduction to DNS Domain Name System (DNS) enables you to use hierarchical, friendly names to easily locate computers and other resources on an IP network. The following sections describe

More information

Domain Name System (or Service) (DNS) Computer Networks A15

Domain Name System (or Service) (DNS) Computer Networks A15 Domain Name System (or Service) (DNS) Computer Networks A15 DNS Outline Infrastructure Services DNS Hierarchical Structure Root Name Servers Top-Level Domain Servers Authoritative Name Servers Local Name

More information

Goal of this session

Goal of this session DNS refresher Overview Goal of this session What is DNS? How is DNS built and how does it work? How does a query work? Record types Caching and Authoritative Delegation: domains vs zones Finding the error:

More information

netkit lab dns Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group Version Author(s)

netkit lab dns Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group Version Author(s) Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group netkit lab dns Version Author(s) E-mail Web Description 2.2 G. Di Battista, M. Patrignani, M.

More information

Atomicity Strong need consistency 6

Atomicity Strong need consistency 6 CS640: Naming Computer AdityaAkella Lecture and the 17DNS Networks DNS Today Design The Road Ahead 2 Need Once How identified, naming to identify Naming Challenge: area? Naming DNS: to do name we hierarchy

More information

More Internet Support Protocols

More Internet Support Protocols Domain Name System (DNS) Ch 2.5 More Internet Support Protocols Problem statement: Average brain can easily remember 7 digits On average, IP addresses have 10.28 digits We need an easier way to remember

More information

Outline Lecture 18 DNS. Names

Outline Lecture 18 DNS. Names Outline Lecture 18 Design Khaled Harras School of Computer Science University Today 15 441 Computer Networks Based on slides from previous 441 lectures Names and Directories Names What do names do? Identify

More information

The Domain Name System

The Domain Name System Internet Engineering 241-461 Robert Elz kre@munnari.oz.au kre@coe.psu.ac.th http://fivedots.coe.psu.ac.th/~kre DNS The Domain Name System Kurose & Ross: Computer Networking Chapter 2 (2.5) James F. Kurose

More information

Domain Name System. Overview. Domain Name System. Domain Name System

Domain Name System. Overview. Domain Name System. Domain Name System Overview Domain Name System We look first at how the Domain Name System (DNS) is implemented and the role it plays in the Internet We examine some potential DNS vulnerabilities and in particular we consider

More information

- Domain Name System -

- Domain Name System - 1 Name Resolution - Domain Name System - Name resolution systems provide the translation between alphanumeric names and numerical addresses, alleviating the need for users and administrators to memorize

More information

Domain Name System. DNS is an example of a large scale client-server application. Copyright 2014 Jim Martin

Domain Name System. DNS is an example of a large scale client-server application. Copyright 2014 Jim Martin Domain Name System: DNS Objective: map names to IP addresses (i.e., high level names to low level names) Original namespace was flat, didn t scale.. Hierarchical naming permits decentralization by delegating

More information

Domain Name System (DNS) Reading: Section in Chapter 9

Domain Name System (DNS) Reading: Section in Chapter 9 Domain Name System (DNS) Reading: Section in Chapter 9 RFC 1034, STD 13 Name Syntax and rules for delegating authority over names Specify implementation of a distributed system that maps names to addresses

More information

ITEC310 Computer Networks II

ITEC310 Computer Networks II ITEC310 Computer Networks II Chapter 25 Domain Name System Department of Information Technology Eastern Mediterranean University Objectives 2/56 After completing this chapter you should be able to do the

More information

Network Protocol Suites

Network Protocol Suites UNIX Systems Programming Networking with Sockets (Curry, chp.14) Dr. Kivanç Dinçer CENG-332 Lectures Spring 2000 1 Networking Concepts Host Names Each host on the network has a unique host name. On the

More information

What is a socket? Socket Programming. Socket: An interface between an application process and transport layer

What is a socket? Socket Programming. Socket: An interface between an application process and transport layer Socket Programming Kameswari Chebrolu Dept. of Electrical Engineering, IIT Kanpur What is a socket? Socket: An interface between an application process and transport layer The application process can send/receive

More information

Domain Name Server. Training Division National Informatics Centre New Delhi

Domain Name Server. Training Division National Informatics Centre New Delhi Domain Name Server Training Division National Informatics Centre New Delhi Domain Name Service (DNS) I. History of DNS II. DNS structure and its components III. Functioning of DNS IV. Possible Configurations

More information

Introduction to the Domain Name System

Introduction to the Domain Name System CHAPTER 14 The Domain Name System (DNS) handles the growing number of Internet users. DNS translates names, such as www.cisco.com, into IP addresses, such as 192.168.40.0 (or the more extended IPv6 addresses),

More information

Socket Programming. Kameswari Chebrolu Dept. of Electrical Engineering, IIT Kanpur

Socket Programming. Kameswari Chebrolu Dept. of Electrical Engineering, IIT Kanpur Socket Programming Kameswari Chebrolu Dept. of Electrical Engineering, IIT Kanpur Background Demultiplexing Convert host-to-host packet delivery service into a process-to-process communication channel

More information

Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org

Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org TCP/IP Protocol Suite Application Layer DHCP DNS SNMP HTTP SMTP POP Transport Layer UDP TCP ICMP IGMP Network Layer IP Link Layer ARP ARP

More information

416 Distributed Systems. Feb 24, 2016 DNS and CDNs

416 Distributed Systems. Feb 24, 2016 DNS and CDNs 416 Distributed Systems Feb 24, 2016 DNS and CDNs Outline DNS Design Content Distribution Networks 2 Naming How do we efficiently locate resources? DNS: name à IP address Challenge How do we scale this

More information

The Domain Name System

The Domain Name System The Domain Name System Antonio Carzaniga Faculty of Informatics University of Lugano October 9, 2012 2005 2007 Antonio Carzaniga 1 IP addresses and host names Outline DNS architecture DNS process DNS requests/replies

More information

Names vs. Addresses. Flat vs. Hierarchical Space. Domain Name System (DNS) Computer Networks. Lecture 5: Domain Name System

Names vs. Addresses. Flat vs. Hierarchical Space. Domain Name System (DNS) Computer Networks. Lecture 5: Domain Name System Names vs. Addresses Computer Networks Lecture 5: Domain Name System Names are easier for human to remember www.umich.edu vs. 141.213.4.4 Addresses can be changed without changing names move www.umich.edu

More information

IPv6 support in the DNS

IPv6 support in the DNS IPv6 support in the DNS How important is the DNS? Getting the IP address of the remote endpoint is necessary for every communication between TCP/IP applications Humans are unable to memorize millions of

More information

Understand Names Resolution

Understand Names Resolution Understand Names Resolution Lesson Overview In this lesson, you will learn about: Domain name resolution Name resolution process steps DNS WINS Anticipatory Set 1. List the host name of 4 of your favorite

More information

DNS at NLnet Labs. Matthijs Mekking

DNS at NLnet Labs. Matthijs Mekking DNS at NLnet Labs Matthijs Mekking Topics NLnet Labs DNS DNSSEC Recent events NLnet Internet Provider until 1997 The first internet backbone in Holland Funding research and software projects that aid the

More information

Agenda. Network Services. Domain Names. Domain Name. Domain Names Domain Name System Internationalized Domain Names. Domain Names & DNS

Agenda. Network Services. Domain Names. Domain Name. Domain Names Domain Name System Internationalized Domain Names. Domain Names & DNS Agenda Network Services Domain Names & DNS Domain Names Domain Name System Internationalized Domain Names Johann Oberleitner SS 2006 Domain Names Naming of Resources Problems of Internet's IP focus IP

More information

The Domain Name System (DNS)

The Domain Name System (DNS) The Domain Name System (DNS) Each Internet host is assigned a host name and an IP address Host names are structured character strings, e.g., www.cs.iastate.edu IP addresses are 32 bit integers, e.g., 129.186.3.6

More information

Outline. Definition. Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP. Names, Identifiers and Addresses

Outline. Definition. Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP. Names, Identifiers and Addresses Outline Definition Names, Identifiers and Addresses Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP CS550: Advanced Operating Systems 2 A name in a distributed system is

More information

Distributed Name Services

Distributed Name Services Distributed Name Services A distinct service that is used by client processes to obtain attributes such as addresses of resources or objects when given their names Introducing Name Services Naming is fundamental

More information

Lecture 4. Naming System in the Internet

Lecture 4. Naming System in the Internet Lecture 4. Naming System in the Internet Three levels of addressing Host names symbolic name, arbitrary length, arbitrary # of fields Why names at all? Numeric addr. tough for humans to remember Numeric

More information

Chapter 2. Outline 9/9/14 DNS

Chapter 2. Outline 9/9/14 DNS Chapter 2 Outline DNS " Overview " Recursive and Iterative Queries " Resource record and DNS query " DNS Protocol " DNS Caching " DNS Services " Reverse DNS lookup 1 DNS (Domain Name System) Internet host

More information

Understanding DNS (the Domain Name System)

Understanding DNS (the Domain Name System) Understanding DNS (the Domain Name System) A white paper by Incognito Software January, 2007 2007 Incognito Software Inc. All rights reserved. Understanding DNS (the Domain Name System) Introduction...2

More information

The Application Layer: DNS

The Application Layer: DNS Recap SMTP and email The Application Layer: DNS Smith College, CSC 9 Sept 9, 0 q SMTP process (with handshaking) and message format q Role of user agent access protocols q Port Numbers (can google this)

More information

DNS Domain Name System

DNS Domain Name System DNS Domain Name System Domain names and IP addresses People prefer to use easy-to-remember names instead of IP addresses Domain names are alphanumeric names for IP addresses e.g., neon.cs.virginia.edu,

More information

Current & Future Internet Architectures

Current & Future Internet Architectures A Comparison of Current & Future Internet Architectures Part 2: Domain Name System (DNS) & Name Resolution in ICN by Assist. Prof. M. Şükrü Kuran HOSTNAME Definition URL Web Page http://en.wikipedia.org/wiki/file:forerunnerle_25_atm_network_interface_(1).jpg

More information

Distributed Systems. 6. Name Services

Distributed Systems. 6. Name Services Distributed Systems 6. Name Services Werner Nutt 1 Naming Concepts Names = strings used to identify objects (files, computers, people, processes, objects) Textual names (human readable) used to identify

More information

Computer Network Programming

Computer Network Programming Computer Network Programming Socket Address Structures Dr. Sam Hsu Computer Science & Engineering Florida Atlantic University Socket Address Structures IPv4 Socket Address Structures IPv6 Socket Address

More information

How-to: DNS Enumeration

How-to: DNS Enumeration 25-04-2010 Author: Mohd Izhar Ali Email: johncrackernet@yahoo.com Website: http://johncrackernet.blogspot.com Table of Contents How-to: DNS Enumeration 1: Introduction... 3 2: DNS Enumeration... 4 3: How-to-DNS

More information

IPv6 Support in the DNS. Workshop Name Workshop Location, Date

IPv6 Support in the DNS. Workshop Name Workshop Location, Date IPv6 Support in the DNS Workshop Name Workshop Location, Date Agenda How important is the DNS? DNS Resource Lookup DNS Extensions for IPv6 Lookups in an IPv6-aware DNS Tree About Required IPv6 Glue in

More information

Domain Name System (DNS)

Domain Name System (DNS) Lab Objectives Domain Name System (DNS) Acquiring skills related to the Domain Name System (DNS) functions Practical studying of DNS protocol in the process of its functioning Background Information DNS

More information

DNS Conformance Test Specification For Client

DNS Conformance Test Specification For Client DNS Conformance Test Specification For Client Revision 1.0 Yokogawa Electric Corporation References This test specification focus on following DNS related RFCs. RFC 1034 DOMAIN NAMES - CONCEPTS AND FACILITIES

More information

Chapter 23 The Domain Name System (DNS)

Chapter 23 The Domain Name System (DNS) CSC521 Communication Protocols 網 路 通 訊 協 定 Chapter 23 The Domain Name System (DNS) 吳 俊 興 國 立 高 雄 大 學 資 訊 工 程 學 系 Outline 1. Introduction 2. Names For Machines 3. Flat Namespace 4. Hierarchical Names 5.

More information

1 DNS Packet Structure

1 DNS Packet Structure Fundamentals of Computer Networking Project 1 Primer: DNS Overview CS4700/CS5700 Fall 2009 17 September 2009 The DNS protocol is well-documented online, however, we describe the salient pieces here for

More information

Naming. Distributed Software Systems

Naming. Distributed Software Systems Naming Distributed Software Systems Naming Entities A name in a distributed system is a string of bits or characters that is used to refer to an entity Types of names Address: an access point of an entity

More information

The Domain Name System: An Integral Part of the Internet. By Keiko Ishioka

The Domain Name System: An Integral Part of the Internet. By Keiko Ishioka The Domain Name System: An Integral Part of the Internet By Keiko Ishioka The Domain Name System (otherwise known as the Domain Name Server system) (DNS) is a distributed database that is accessed by anyone

More information

The Domain Name System. Author: Paul Mockapetris 1987

The Domain Name System. Author: Paul Mockapetris 1987 The Domain Name System Author: Paul Mockapetris 1987 The old approach: ARPANET : Host name to IP address mapping using a centralized database (i.e., HOSTS.TXT file) maintained by the Network Information

More information