Domain Name System Tony Kombol ITIS 3110.

Slides:



Advertisements
Similar presentations
Sergei Komarov. DNS  Mechanism for IP hostname resolution  Globally distributed database  Hierarchical structure  Comprised of three components.
Advertisements

Computer Networks: Domain Name System. The domain name system (DNS) is an application-layer protocol for mapping domain names to IP addresses Vacation.
DNS Session 4: Delegation and reverse DNS Joe Abley AfNOG 2006 workshop.
1 DNS. 2 BIND DNS –Resolve names to IP address –Resolve IP address to names (reverse DNS) BIND –Berkeley Internet Name Domain system Version 4 is still.
The Domain Name System. CeylonLinux DNS concepts using BIND 2 Hostnames IP Addresses are great for computers –IP address includes information used for.
Recursive Server. Overview Recursive Service Root server list localhost in-addr.arpa named.conf.
Domain Name System: DNS
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
DNS Domain Name Systems Introduction 1. DNS DNS is not needed for the internet to work IP addresses are all that is needed The internet would be extremely.
Domain Name System (DNS) Ayitey Bulley Session-1: Fundamentals.
Tony Kombol ITIS Who knows this? Who controls this? DNS!
Netprog: DNS and name lookups1 Address Conversion Functions and The Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Domain Names System The Domain Name System (DNS) is a hierarchical distributed naming system for computers, services, or any resource connected to the.
IIT Indore © Neminath Hubballi
Chapter 17 Domain Name System
© NLnet Labs, Licensed under a Creative Commons Attribution 3.0 Unported License.Creative Commons Attribution 3.0 Unported License Troubleshooting.
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Module 8 DNS Tools & Diagnostics. Objectives Understand dig and nslookup Understand BIND toolset Understand BIND logs Understand wire level messages.
Netprog: DNS and name lookups1 Address Conversion Functions and The Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York.
1 Kyung Hee University Chapter 18 Domain Name System.
© NLnet Labs, Licensed under a Creative Commons Attribution 3.0 Unported License.Creative Commons Attribution 3.0 Unported License Practicalities.
Tony Kombol ITIS DNS! overview history features architecture records name server resolver dnssec.
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
Security in DNS(DNSSEC) Yalda Edalat Pramodh Pallapothu.
Module 8 DNS Tools & Diagnostics. Dig always available with BIND (*nix) and windows Nslookup available on windows and *nix Dig on windows – unpack zip,
AfNOG-2003 Domain Name System (DNS) Ayitey Bulley
Web Server Administration Chapter 4 Name Resolution.
OPTION section It is the first section of the named.conf User can use only one option statement and many option-value pair under the section. Syntax is.
Ch 6: DNSSEC and Beyond Updated DNSSEC Objectives of DNSSEC Data origin authentication – Assurance that the requested data came from the genuine.
Domain Name System (DNS) Joe Abley AfNOG Workshop, AIS 2014, Djibouti Session-1: Fundamentals.
TCP/IP Protocol Suite 1 Chapter 17 Upon completion you will be able to: Domain Name System: DNS Understand how the DNS is organized Know the domains in.
Domain Name System INTRODUCTION to Eng. Yasser Al-eimad
Domain Name System DPNM Lab. Seongho Cho
Using Digital Signature with DNS. DNS structure Virtually every application uses the Domain Name System (DNS). DNS database maps: –Name to IP address.
1 Internet Service DNS & BIND OPS335 Seneca College of Applied Technology.
Domain Name System (DNS) Ayitey Bulley extended by Phil Regnauld DNS Fundamentals AfNOG 2006.
Track E0 AfNOG workshop April Abuja, Nigeria Introduction to the DNS.
System Administration(SAD622S) Name of Presenter: Shadreck Chitauro Lecturer 18 July 2016 Faculty of Computing and Informatics.
1 CMPT 471 Networking II DNS © Janice Regan,
Presentation_ID © 2001, Cisco Systems, Inc. All rights reserved
Domain Name Systems Introduction
Security Issues with Domain Name Systems
Domain Name System (DNS)
Domain Name System (DNS)
Networking Applications
Session-1: Fundamentals
Introduction to the DNS
Domain Name System: DNS
Module 5: Resolving Host Names by Using Domain Name System (DNS)
IMPLEMENTING NAME RESOLUTION USING DNS
Configuring and Troubleshooting DNS
LINUX ADMINISTRATION 1
DNS.
Data Communications and Networking DNS
DNS and Bind Presenter David Wood
Chapter 19 Domain Name System (DNS)
Managing Name Resolution
Domain Name System (DNS)
Chapter 25 Domain Name System
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Chapter 25 Domain Name System
DNS : Domain Name System
Domain Name System: DNS
Computer Networks Primary, Secondary and Root Servers
Computer Networks Presentation
ECDSA P-256 support in DNSSEC-validating Resolvers
The Domain Name System.
Presentation transcript:

Domain Name System Tony Kombol ITIS 3110

DNS!

overview history features architecture records name server resolver dnssec

before dns Mapping IP addresses was done using a hosts file stored on every computer Master HOSTS.TXT was at Stanford Research Institute now SRI International Computers had to update their copy of the host file any time a change was made mapping A more scalable solution was required

history DNS was the solution Invented in 1983 at UCB Server rewritten in 1985, became BIND Berkeley Internet Name Domain Originally on Unix Distributed database of name and IP address mapping Supports other record types

Side note Dozens of versions of DNS now available https://en.wikipedia.org/wiki/Comparison_of_DNS_server_software

features DNS is split into zones A zone can be split into sub-zones A zone can delegate control of a sub-zone to another server A sub-zone may be under the control of a different organization

features Replication Read-only copies of entire zones can be sent to other servers Replication can be used for load-balancing or failure mitigation

features Caching Query responses can be cached to speed subsequent queries Every query response has an associated lifetime that it will be cached for

Who controls DNS records? Nobody and Everybody Nobody No single entity controls the mappings Everybody! Every entity controls their own mappings

dns explained

structure DNS is a tree-like structure Split into ‘zones’ Servers for the root zone are all over the world All records in a zone are maintained by the same entity A portion of a zone can be delegated to another entity

IANA Internet Assigned Numbers Authority Original group Maintained the Top level domain names Original .com, .edu, .net, .org, … Country Code .us, .ca, .uk, .tv, … Generic Top Level (ICANN era) .aero, .biz, .guitars, … ICANN (Internet Corporation for Assigned Names and Numbers) Currently performs the actual work https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains

structure Controlled by IANA Controlled by owners of the domain

structure

records Everything is a resource record Resource records map a key to a value

Key Resource Records

Key Resource Records

start of authority SOA record is required for every zone Contains: Authoritative name server and email contact Serial number of zone Refresh, retry, and expire times for zone replication Cache time-to-live for negative responses

example zone Note: @ is shorthand for the domain name Email address, note the . instead of the @ $TTL 20m example.com. IN SOA  ns.example.com. admin08.uncc.edu. (          2009102003      ; serial          2d              ; refresh          15m             ; retry          2w              ; expire          30m             ; negative cache TTL          ) @ IN NS ns1.example.com.  @ IN NS ns2.example.com. @ A 10.3.254.17 www  A 10.3.254.17 test CNAME www ns1 A 10.3.254.2 ns2.example.com. A 10.3.254.10 Note: @ is shorthand for the domain name

What is that number in the second position in some records? General formula: name (optional) ttl (optional) address-class record type data Format my vary depending on the record type Sample MX record: mydomain.com. 14400 IN MX 10 mydomain.com. mydomain.com. 14400 IN MX 30 server2.mydomain.com Record type data Domain: mydomain.com. Address class and record type Optional TTL override

glue records Used to delegate a sub-zone to another server Prevent circular dependencies Hard-coded A (or AAAA) records of the sub-zone’s DNS servers Normal NS records use domain names See previous example Problem if the name server finds itself Fixed by the name server setting an IP address These are set in the parent name servers

name server Server-side of DNS Runs on port 53 TCP only used when: uses udp or tcp TCP only used when: Response is too big for UDP UDP not responding

name server Can have authority over zero or more zones Server with zero zones is a caching name server Many different name server implementations are available We will be using BIND in the lab BIND9 BIND 10 has been released to the world

resolving addresses Two ways an address can be resolved Iteratively Recursively Iterative usually used by servers  Returns partial responses (or errors) Recursive usually used by clients Returns complete responses (or errors) Will recurse until a server responds with an iterative lookup

resolving addresses looking for example.microsoft.com http://i.technet.microsoft.com/cc775637.8918bf2b-e317-48c4-aeba-10f73127d1b3(en-us,WS.10).gif

clients Besides Web browsers: nslookup, host, and dig all DNS clients  Talk directly to a DNS server Bypasses host’s resolver library  dig is recommended as it is very informative part of dnsutils

Dig Tutorial Dig Online YouTube Domain Information Groper http://www.youtube.com/watch?v=bdHl-w3V_4w

dig $ dig www.google.com ; <<>> DiG 9.6.0-APPLE-P2 <<>> www.google.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27210 ;; flags: qr rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 0   ;; QUESTION SECTION: ;www.google.com.            IN            A ;; WHEN: Wed Jan 26 15:35:14 2011 ;; MSG SIZE rcvd: 148

dig (cont.) ;; ANSWER SECTION:www.google.com.    38207   IN    CNAME    www.l.google.com. www.l.google.com.    173   IN    A        74.125.47.103 www.l.google.com.    173   IN    A        74.125.47.104 www.l.google.com.    173   IN    A        74.125.47.105 www.l.google.com.    173   IN    A        74.125.47.106 www.l.google.com.    173   IN    A        74.125.47.147 www.l.google.com.    173   IN    A        74.125.47.99   ;; Query time: 7 msec ;; SERVER: 4.2.2.2#53(4.2.2.2) ;; WHEN: Wed Jan 26 15:35:14 2011 ;; MSG SIZE  rcvd: 148

response codes Help you troubleshoot when DNS has problems Below are a few you might encounter NOERROR Query completed successfully NXDOMAIN Query returned with a “no such domain” error SERVFAIL Unable to contact the server

resolver library DNS lookups on a host are handled by the resolver library /etc/resolv.conf Specifies DNS servers  /etc/nsswitch.conf Specifies how addresses lookups are performed  Handles other databases as well

getent Retrieves information from: E.G. config files databases E.G. getent hosts Retrieves the contents of the hosts file getent hosts localhost Retrieves the contents for localhost in the hosts file getent works on a variety of data formats

getent $ getent hosts www.google.com 74.125.47.106      www.l.google.com www.google.com 74.125.47.147      www.l.google.com www.google.com 74.125.47.99       www.l.google.com www.google.com 74.125.47.103      www.l.google.com www.google.com 74.125.47.104      www.l.google.com www.google.com 74.125.47.105      www.l.google.com www.google.com

/etc/resolv.conf search unc.edu oit.unc.edu domain unc.edu nameserver 152.2.21.1 nameserver 152.2.253.100

security considerations Implementations of DNS (e.g. bind) have a history of security flaws Any server in your path can modify responses Any server in your path can see requests Zone transfers are a security hole

DNSSEC

dnssec Extension to DNS to cryptographically sign responses Guarantees resource records have not been tampered with Ensures NXDOMAIN responses are genuine Implemented using resource records

dnssec records record description DNSKEY Public key DS Delegation signer, added to parent zone, validates this zone NSEC Next secure record, for validating negative responses NSEC3 NSEC replacement RRSIG DNSSEC signature

dnssec Uses public-private key cryptography Two key sets Zone-signing key Key-signing key

zone-signing key Used to sign all records in a zone Should be switched out often since it will be used often Stored in a DNSKEY resource record

key-signing key Used to sign a zone-signing key Stored in a DNSKEY resource record A pointer to KSK’s resource record and its digest are stored in a DS record in parent zone Creates a chain of trust

NSEC records NSEC records create a linked-list of all records in a zone NXDOMAIN responses can reference the NSEC records that would come before and after the query This proves that there is no record exists Shows if someone inserted a fake record

NSEC records

NSEC3 Records Replace NSEC records Linked list of the hash of each record in a zone NXDOMAIN responses can reference the two NSEC records that would come before and after the query

dnssec limitations All DNS servers in lookup chain must support DNSSEC to ensure results are genuine DNSSEC allows walking of a domain via NSEC records Fixed in RFC5155 with introduction of NSEC3 records