ilab
play

iLab DNS and DNSSEC Dominik Scholz Slides by Benjamin Hof ilab1 - PowerPoint PPT Presentation

iLab DNS and DNSSEC Dominik Scholz Slides by Benjamin Hof ilab1 @list.net.in.tum.de Chair of Network Architectures and Services Department of Informatics Technical University of Munich Lab 5 17ws 1 / 32 Outline Domain Name System


  1. iLab DNS and DNSSEC Dominik Scholz Slides by Benjamin Hof ilab1 @list.net.in.tum.de Chair of Network Architectures and Services Department of Informatics Technical University of Munich Lab 5 – 17ws 1 / 32

  2. Outline Domain Name System Authoritative name server Resolver Security 2 / 32

  3. Outline Domain Name System Authoritative name server Resolver Security 3 / 32

  4. The quest for memorable names ◮ IP addresses hard to remember for humans ◮ symbolic names mapped to addresses address resolution 1. host files ◮ file with mappings ◮ copy between all machines ◮ /etc/hosts 2. protocol: Domain Name System ◮ by Paul Mockapetris in 1983 ◮ wide deployment in 1988 4 / 32

  5. Domain Name System ◮ application layer protocol on UDP, TCP ◮ glibc call getaddrinfo(3) ◮ distributed name database ◮ deployed globally ◮ hierarchical structure ◮ extensible ◮ e.g. DNSSEC: security extensions inside the protocol itself 5 / 32

  6. Distributed hierarchical name space . net edu org lwn tum gnu debian cs ma ei mail Fully qualified domain name (FQDN) by label concatenation: mail.cs.tum.edu. 6 / 32

  7. Distributed hierarchical name space root zone (empty label) . top level domain net edu org second level domain lwn tum gnu debian cs ma ei mail Fully qualified domain name (FQDN) by label concatenation: mail.cs.tum.edu. 6 / 32

  8. Name server Name servers can fulfill different functions: 1. authoritative name servers ◮ operated by a site on the Internet 2. resolver ◮ asked to resolve names ◮ contacts authoritative name servers Example Knot and unbound 7 / 32

  9. Outline Domain Name System Authoritative name server Resolver Security 8 / 32

  10. Zone ◮ subtree of the global name space ◮ delegated by parent ◮ managed by one organization ◮ hosted on an authoritative name server Example tum.edu. delegated by edu., containing www.tum.edu. and mail.in.tum.edu. 9 / 32

  11. Authoritative name server ◮ only knows about its own part of the name space ◮ responsible, “authoritative”, for its zone ◮ may serve multiple zones ◮ usually primary and secondary servers exist for a zone ◮ synchronized with zone transfer ◮ avoid disappearance of the zone in case of outage ◮ load balancing 10 / 32

  12. Zones: example . net edu org lwn tum gnu debian cs ma ei mail 11 / 32

  13. Resource record ◮ zone contains resource records (RR) example.net. 3600 IN A 198.51.100.5 owner TTL class type RDATA domain name where RR is found 12 / 32

  14. Resource record ◮ zone contains resource records (RR) example.net. 3600 IN A 198.51.100.5 owner TTL class type RDATA validity period in seconds when cached 12 / 32

  15. Resource record ◮ zone contains resource records (RR) example.net. 3600 IN A 198.51.100.5 owner TTL class type RDATA only Internet is relevant for us 12 / 32

  16. Resource record ◮ zone contains resource records (RR) example.net. 3600 IN A 198.51.100.5 owner TTL class type RDATA record type, e.g. IPv4 address 12 / 32

  17. Resource record ◮ zone contains resource records (RR) example.net. 3600 IN A 198.51.100.5 owner TTL class type RDATA resource data: e.g. 32 bit IPv4 address 12 / 32

  18. Resource records owner TTL class type RDATA i.example.net. 3600 IN AAAA 2001:db8::1 like.example.net. 3600 IN AAAA 2001:db8:af23::eb2 dns.example.net. 3600 IN A 192.0.2.25 i.example.net. 3600 IN A 192.0.2.205 13 / 32

  19. Resource records owner type RDATA i.example.net. AAAA 2001:db8::1 like.example.net. AAAA 2001:db8:af23::eb2 dns.example.net. A 192.0.2.25 i.example.net. A 192.0.2.205 i.example.net. AAAA 2001:db8::2 ◮ RRset for i.example.net. type AAAA with more than one record! ◮ note: TTL and class usually omitted 13 / 32

  20. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later 14 / 32

  21. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] 14 / 32

  22. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] ; RRset with two records: NS example.net. NS ns1 ; primary authoritative NS example.net. NS ns2.registrar.example. ; secondary 14 / 32

  23. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] ; RRset with two records: NS example.net. NS ns1 ; primary authoritative NS example.net. NS ns2.registrar.example. ; secondary ns1 A 198.51.100.1 14 / 32

  24. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] ; RRset with two records: NS example.net. NS ns1 ; primary authoritative NS example.net. NS ns2.registrar.example. ; secondary ns1 A 198.51.100.1 example.net. MX 10 mail ; priority to order multiple MX RRs 14 / 32

  25. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] ; RRset with two records: NS example.net. NS ns1 ; primary authoritative NS example.net. NS ns2.registrar.example. ; secondary ns1 A 198.51.100.1 example.net. MX 10 mail ; priority to order multiple MX RRs mail AAAA 2001:db8::1 A 198.51.100.2 14 / 32

  26. Zone file and record types $ORIGIN example.net. ; everything will be relative to this $TTL 1h ; default TTL could be overwritten later example.net. IN SOA ns1 hostmaster [. . . ] ; RRset with two records: NS example.net. NS ns1 ; primary authoritative NS example.net. NS ns2.registrar.example. ; secondary ns1 A 198.51.100.1 example.net. MX 10 mail ; priority to order multiple MX RRs mail AAAA 2001:db8::1 A 198.51.100.2 webmail CNAME mail ; alias for a canonical name 14 / 32

  27. Delegation sub.example.net. NS ns.sub.example.net. ns.sub.example.net. A 198.51.100.3 ◮ make ns.sub.example.net. responsible for the sub.example.net. zone ◮ glue record to make the new name server findable ◮ possible misconfigurations 1. missing glue records 2. delegation loops 15 / 32

  28. Outline Domain Name System Authoritative name server Resolver Security 16 / 32

  29. Resolving name server tasks ◮ query: owner, class, type ◮ resolve a query from the root downwards ◮ cache responses based on TTL ◮ changes might only be visible after days Allow access only from your network, never open for everybody 17 / 32

  30. DNS packet layout IP UDP DNS header query answer authoritative additional ID, flags, records number of RRs header c,s QR query or response s AA authoritative answer s TC truncation (TCP as fallback) c RD recursion desired s RA recursion available s 4 bit response code: no error, name error, server failure, refused ◮ number of resource records in each section 18 / 32

  31. DNS packet layout IP UDP DNS header query answer authoritative additional ID, flags, records number of RRs record sections ◮ query: only one record with owner, type, class ◮ answer: answer RRs ◮ authoritative section: name server delegation ◮ additional section: glue records, EDNS pseudo record packet size limited to 512 octets 18 / 32

  32. Lookup stub forwarder recursor IP? in.tum.de. ◮ recursive queries 19 / 32

  33. Lookup k.root-servers.net. 2001:7fd::1 in.tum.de. A de. NS a.nic.de. a.nic.de. A 194.0.0.53 stub forwarder recursor in.tum.de. ◮ recursive queries ◮ iterative queries ◮ glue 19 / 32

  34. Lookup k.root-servers.net. a.nic.de. in.tum.de. A tum.de. NS dns1.lrz.de. stub forwarder recursor dns1.lrz.de A 129.187.19.183 in.tum.de. ◮ recursive queries ◮ iterative queries ◮ glue 19 / 32

  35. Lookup k.root-servers.net. a.nic.de. in.tum.de. A stub forwarder recursor dns1.lrz.de. in.tum.de. A 131.159.0.35 in.tum.de. ◮ recursive queries ◮ iterative queries ◮ glue 19 / 32

  36. Lookup k.root-servers.net. a.nic.de. stub forwarder recursor dns1.lrz.de. in.tum.de. ◮ recursive queries ◮ iterative queries ◮ glue 19 / 32

  37. Lookup k.root-servers.net. a.nic.de. stub forwarder recursor dns1.lrz.de. 131.159.0.35 in.tum.de. ◮ recursive queries ◮ iterative queries ◮ glue 19 / 32

  38. Reverse lookup IPv4 ◮ PTR record type ◮ special domain in-addr.arpa. ◮ 198.51.100.5 → 5.100.51.198.in-addr.arpa. ◮ small subnets require lots of CNAMEs IPv6 ◮ ip6.arpa. ◮ can be delegated per nibble ◮ 2001:db8::1 is: 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa. 20 / 32

  39. Outline Domain Name System Authoritative name server Resolver Security 21 / 32

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend