Presentation on theme: "Module 7 Advanced Zone Files. Objectives Understand failover strategies using DNS Understand domain delegation Understand Glue Records Understand the."— Presentation transcript:
Module 7 Advanced Zone Files
Objectives Understand failover strategies using DNS Understand domain delegation Understand Glue Records Understand the SRV RR Understand the NAPTR RR
Load Balancing/Failover Basic Strategy Multiple RRs Mail Servers – 2 strategies MX natural failover/load balancing Multiple RRs RRs delivered in round-robin order BIND provides alternate controls
Mail Servers – MX RRs ; mail server Resource Records for the zone (domain) 3w IN MX 10 mail.example.com. ; the second mail server has lower priority and is ; external to the zone (domain) - backup IN MX 20 mail.example.net. 3w = TTL Priority 10 simply means you can add a more important mail server with only one change
Mail Servers – Multiple RRs ; zone file fragment IN MX 10 mail.example.com. IN MX 10 mail1.example.com. IN MX 10 mail2.example.com..... mail IN A 192.168.0.4 mail1 IN A 192.168.0.5 mail2 IN A 192.168.0.6 OR ; zone file fragment IN MX 10 mail.example.com..... mail IN A 192.168.0.4 IN A 192.168.0.5 IN A 192.168.0.6
Mail Servers No difference in two approaches All local mail servers must have access to common mail filestore Backup servers (priority 20) are configured to forward mail to real (priority 10) mail servers MX RRs can be set to very high TTLs A or AAAA RRs may change
Mail Server Reverse Map ; reverse-map file fragment ; for 0.168.192.IN-ADDR.ARPA.... 4 PTR mail.example.com. 5 PTR mail.example.com. 6 PTR mail.example.com.
Other Services Typically uses multiple A (AAAA) RRs Multiple RRs called RRsets In case of web - browser will do IP failover in 2 – 3 minutes Dynamic updating of IP with short TTL will failover in 30 minutes (MSIE) DNS load balances on IP address Works for flat loads If transaction loads vary must use load- balancer
Load Balance – Multiple RRs ; example.com zone file fragment.... ftp IN A 192.168.0.4 ftp IN A 192.168.0.5 ftp IN A 192.168.0.6 www IN A 192.168.0.7 www IN A 192.168.0.8 ; example.com zone file fragment.... ftp IN A 192.168.0.4 IN A 192.168.0.5 IN A 192.168.0.6 www IN A 192.168.0.7 IN A 192.168.0.8
Parent and Child domains Parent of any domain is the next level in the hierarchy Parent contains NS RRs which are not Authoritative Child contains NS RRs which are Authoritative
Parent and Child domains
DNS Subdomain Delegation www.ramq.example.com Two methods Full delegation Needs separate name servers Complete control to delegated authority Method used by domain system Multiple zone files Virtual subdomain Does not need name servers Single zone file to maintain
Parent Zone File ; IPv4 zone file for example.com $TTL 2d ; default TTL for zone $ORIGIN example.com. ; base domain-name ; Start of Authority record defining the key characteristics of the zone (domain) @ IN SOA ns1.example.com. hostmaster.example.com. ( 2003080800 ; se = serial number 12h ; ref = refresh 15m ; ret = update retry 3w ; ex = expiry 2h ; min = minimum ) ; name servers Resource Records for the domain IN NS ns1.example.com. ; the second name server is ; external to this zone (domain). IN NS ns2.example.net. ; mail server Resource Records for the zone (domain) 3w IN MX 10 mail.example.com. ; the second mail server has lower priority and is ; external to the zone (domain) IN MX 20 mail.example.net. ; domain hosts includes NS and MX records defined previously ; plus any others required ns1 IN A 192.168.254.2 mail IN A 192.168.254.4 joe IN A 192.168.254.6 www IN A 192.168.254.7 ; aliases ftp (ftp server) to an external location ftp IN CNAME ftp.example.net.
DNS Subdomain Delegation ;; subdomain definitions in the same zone file ; $ORIGIN directive simplifies and clarifies definitions $ORIGIN ramq.example.com. ; all subsequent RRs use this ORIGIN ; two name servers for the subdomain @ IN NS ns3.ramq.example.com. ; the preceding record could have been written without the $ORIGIN as ; ramq.example.com. IN NS ns3.ramq.example.com. ; or @ IN NS ns3 ; the second name server points back to preceding ns1 IN NS ns1.example.com. ; A records for name server ns3 required - the glue record ns3 IN A 10.10.0.24 ; glue record ; the preceding record could have been written as ; ns3.ramq.example.com. A 10.10.0.24 if it's less confusing
Child Zone File ; zone file for subdomain us.example.com $TTL 2d ; zone default of 2 days $ORIGIN ramq.example.com. IN SOA ns3.ramq.example.com. hostmaster.ramq.example.com. ( 2003080800 ; serial number 2h ; refresh = 2 hours 15m ; update retry = 15 minutes 3w12h ; expiry = 3 weeks + 12 hours 2h20m ; minimum = 2 hours + 20 minutes ) ; subdomain name servers IN NS ns3.ramq.example.com. IN NS ns1.example.com. ; see following notes ; subdomain mail server IN MX 10 mail.ramq.example.com. ; A records for preceding name servers ns3 IN A 10.10.0.24 ns1.example.com. IN A 192.168.0.3 ; 'glue' record ; A record for preceding mail server mail IN A 10.10.0.25 ; next record defines our ftp server ftp IN A 10.10.0.28
Full Subdomain Delegation One of the Parent name servers provides NS services (slave) – common but not essential Mail is also delegated – not essential could use mail.example.com Needs one DNS server in this case (ns3.ramq.example.com) Zone file controlled by delegated authority Can delegate further
Virtual Subdomains $ORIGIN ramq.example.com. IN MX 10 mail ; preceding record could have been written as ; ramq.example.com. IN MX 10 mail.ramq.example.com. ; A record for subdomain mail server mail IN A 10.10.0.28 ; the preceding record could have been written as ; mail.ramq.example.com. A 10.10.0.28 if it's less confusing ftp IN A 10.10.0.29 ; the preceding record could have been written as ; ftp.ramq.example.com. A 10.10.0.29 if it's less confusing.... ; other subdomain definitions as required $ORIGIN mderr.example.com.
Virtual Subdomain Requires no new name servers Functionally identical to full delegation Zone file controlled by main zone administrators Shows delegation of mail – not essential – could use mail.example.com Further delegation possible under control of main zone administrators
GLUE Records Widely and erroneously used term Glue is a A (AAAA) RR pointing to a authoritative name server for the child zone Glue is essential At the parent For in-zone name servers All others are technically normal A (AAAA) RRs
Glue – Why Essential? Client needs A RR to get to host Client needs a name server to get to host record Client needs A RR of name server to get name server Not required if out-of-zone – normal lookup for out-of-zone will get an in- zone name server glue record!
DNS – SRV RR SRV provides a means to find a host that offers a service within domain srvce = symbolic name of service (standardized by IANA) _ftp prot = protocol name _tcp name = domain (zone name) can be omitted (substitution) srvce.prot.name ttl class rr pri weight port target
DNS – SRV RR pri = relative priority – lower is more important like the MX RR (0 – 65535) weight = when pri is the same defines the frequency of delivery of the SRV (0 – 65535) port = the port number of the service (only time that DNS deals with ports and allows for non-standard ports) srvce.prot.name ttl class rr pri weight port target
DNS – SRV RR target = name of the host that provides the service srvce.prot.name ttl class rr pri weight port target
SRV RR $ORIGIN example.com. ….. ; left hand name is _http._tcp.example.com = query target _http._tcp SRV 10 1 80 slow.example.com. SRV 10 3 80 fast.example.com. ; if neither slow or fast available, switch to ; an external backup web server but use port 8100 not port 80 SRV 20 0 8100 backup.example.net. slow A 192.168.254.3 fast A 192.168.254.4
SRV RR Extensive use made by modern services such as: SIP (voip) LDAP Windows AD (kerberos and others) Web browsers rarely use SRV
NAPTR RRs NAPTR (Naming Authority Pointer Record) is a general purpose RR for Dynamic Delegation Discover System (DDDS). Sister or SRV. Application unique format. order = low is highest like MX pref = if order is same pref (lower is highest) is used to find best RR NAPTR order pref flag params regexp replace
NAPTR RRs flag = Optional. Enclosed in quotes. Unique to application params = Optional. Enclosed in quotes. Unique to application. regexp = regular expression applied to Application User String (AUS) NAPTR order pref flag params regexp replace
NAPTR RRs replace = Replaces the Application User String (AUS). Dot if not used. NAPTR order pref flag params regexp replace
ENUM Use of NAPTR ENUM is a service which allows a telephone number to be converted into one or more methods to reach a human Domain name is.e164.arpa Assume we want to contact +44-111- 555-1212 (AUS = +441115551212) First Well Known Rule (ENUM specific) creates 220.127.116.11.18.104.22.168.22.214.171.124.E164.ARPA – DNS lookup
ENUM Use of NAPTR
; zone file fragment for 126.96.36.199.188.8.131.52.E164.ARPA $TTL 2d ; zone TTL default = 2 days or 172800 seconds $ORIGIN 184.108.40.206.220.127.116.11.E164.ARPA..... 18.104.22.168 NAPTR ( 10 ;order 100 ; preference "U" ; flag "E2U+sip" ;svc "!^\\+44111555(.+)$!sip:7\\email@example.com!" ;ere.) ; replace NAPTR 10 101 "u" "E2U+pres" "!^.*$!mailto:firstname.lastname@example.org!".
ENUM Result First NAPTR RR gives sip:email@example.com "!^\\+44111555(.+)$!sip:7\\firstname.lastname@example.org!" If this fails second NAPTR gives mailto:email@example.com "!^.*$!mailto:firstname.lastname@example.org!" Regular Expression Quick Key ! = delimiter, () group, $ = EoL, \1 = backref (group), ^ = SoL + = 1 or more times, * = 0 or more times \ escaped for DNS only (\\1), on-wire escape char removed (\1)
Quick Quiz Normal strategy for load balancing? MX failover/load balancing strategies? Does virtual subdomain delegation require name servers? What is the parent of ramq.example.com Are NS RRs in the parent authoritative Are GLUE records necessary for out-of- zone name servers? What do SRV records do?
Zone File Exercise Zone files for domain delegation Full delegation Parent is gov.lc Child is nic.gov.lc Mail will go to the parent domain Two NS servers ns1.nic.gov.lc, ns2.nic.gov.lc