Intro to djbdns. A DNS server besides BIND. Nathan Straz. nate@techie.com. Intro to djbdns p.1/21



Similar documents
How to Configure the Windows DNS Server

Installing and Setting up Microsoft DNS Server

Understand Names Resolution

Copyright

Lesson 13: DNS Security. Javier Osuna GMV Head of Security and Process Consulting Division

Networking Domain Name System

Domain Name System. Heng Sovannarith

BIND versus DJBDNS: A Comparison of Performance, Ease of Configuration, and Security

DNS and BIND. David White

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

How to Add Domains and DNS Records

Networking Domain Name System

Using Webmin and Bind9 to Setup DNS Sever on Linux

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

KB Windows 2000 DNS Event Messages 1 Through 1614

ECE 4321 Computer Networks. Network Programming

DNS. Computer Networks. Seminar 12

- Domain Name System -

Copyright International Business Machines Corporation All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure

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

Talk-101 User Guide. DNSGate

How to set up the Integrated DNS Server for Inbound Load Balancing

Understanding DNS (the Domain Name System)

DNS: How it works. DNS: How it works (more or less ) DNS: How it Works. Technical Seminars Spring Paul Semple psemple@rm.

HTG XROADS NETWORKS. Network Appliance How To Guide: EdgeDNS. How To Guide

The Domain Name System

Networking Domain Name System

Internet Security [1] VU Engin Kirda

Simple DNS Configuration Example

CS3250 Distributed Systems

Transferring Your Internet Services

ENTERPRISE LINUX NETWORKING SERVICES

GL275 - ENTERPRISE LINUX NETWORKING SERVICES

DNS and Interface User Guide

CDN SERVICE ICSS ROUTE MANAGED DNS DEUTSCHE TELEKOM AG INTERNATIONAL CARRIER SALES AND SOLUTIONS (ICSS)

Domain Name System :49:44 UTC Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement

"Charting the Course... Enterprise Linux Networking Services Course Summary

How to Configure DNS Zones

CSIS 3230 Computer Networking Principles, Spring 2012 Lab 7 Domain Name System (DNS)

Configuring the BIND name server (named) Configuring the BIND resolver Constructing the name server database files

DNS Cache Poisoning Vulnerability Explanation and Remedies Viareggio, Italy October 2008

Lab - Observing DNS Resolution

Use Domain Name System and IP Version 6

Information Security Practice II. Installation and set-up of Web Server and FTP accounts

Local DNS Attack Lab. 1 Lab Overview. 2 Lab Environment. SEED Labs Local DNS Attack Lab 1

Understanding DNS By Robert Sterler

How To Guide Edge Network Appliance How To Guide:

Introduction to Network Operating Systems

Domain Name System (DNS) Fundamentals

GL-275: Red Hat Linux Network Services. Course Outline. Course Length: 5 days

Guardian Digital WebTool Firewall HOWTO. by Pete O Hara

THE MASTER LIST OF DNS TERMINOLOGY. v 2.0

Understanding DNS: Essential knowledge for all IT professionals

Working With Virtual Hosts on Pramati Server

1 Introduction: Network Applications

Configuring an External Domain

Lab Tasks 1. Configuring a Slave Name Server 2. Configure rndc for Secure named Control

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

DNS Resolving using nslookup

Reverse DNS considerations for IPv6

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

Zimbra :: The Leader in Open Source Collaboration. Administrator's PowerTip #3: June 21, 2007 Zimbra Forums - Zimbra wiki - Zimbra Blog

IPv6 support in the DNS

PasserellesNumeriquesCambodia (PNC)

Chapter 9: Name Services. 9.1 Introduction 9.2 Name services and the DNS 9.3 Directory services 9.6 Summary

Services: DNS domain name system

DNS : Domain Name System

darkstat - a network traffic analyzer Introduction Installation LinuxFocus article number by Mario M.

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

Module 2. Configuring and Troubleshooting DNS. Contents:

THE MASTER LIST OF DNS TERMINOLOGY. First Edition

Domain Name System (DNS) Session-1: Fundamentals. Ayitey Bulley

NET0183 Networks and Communications

Lab - Observing DNS Resolution

Polycom RealPresence Resource Manager System Getting Started Guide

Basic DNS Course. Module 1. DNS Theory. Ron Aitchison ZYTRAX, Inc. Page 1 of 24

LinkProof DNS Quick Start Guide

Collax Active Directory

ENTERPRISE LINUX NETWORKING SERVICES

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

Windows 2008 Server. Domain Name System Administración SSII

DNS Domain Name System

Course 2277: Implementing, Managing, and Maintaining a Microsoft Windows Server 2003 Network Infrastructure: Network Services

DNS and BIND Primer. Pete Nesbitt linux1.ca. April 2012

Installing GFI MailSecurity

Introduction to DNS CHAPTER 5. In This Chapter

Configuring a Domain to work with your Server

Implementing Cisco TelePresence Video Solution, Part 1

DNS Root NameServers

Creating a master/slave DNS server combination for your Grid Infrastructure

Configuring DNS. Finding Feature Information

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt

3. The Domain Name Service

CipherMail Gateway Quick Setup Guide

Application Protocols in the TCP/IP Reference Model

Configuration Network Management Card-2

Transcription:

Intro to djbdns A DNS server besides BIND Nathan Straz nate@techie.com Intro to djbdns p.1/21

Today s Topics Overview of DNS Overview of djbdns djbdns by example local cache network cache private domain Comparison to BIND Intro to djbdns p.2/21

What is DNS? Domain Name System System used to bind names to IP addresses Provides additional information about domains such as mail servers and name servers Documented in RFC1034 and RFC1035 Circa November 1987 A distributed database Intro to djbdns p.3/21

DNS Records SOA Start of Authority, defines the primary name server and contact for a domain. A Address, binds a name to an IP address PTR Pointer, used to look up the name of an IP address NS Name Server, defines the IP address and name of a name server for a domain MX Mail Exchanger, defines the IP address and name of a mail server responsible for a domain Each record has a Time To Live which dictates how long a record can be cached. Intro to djbdns p.4/21

DNS Organization root The top of the DNS food chain. Delegates authority of TLDs to other name servers. tld Top Level Domains. Delegates authority of domain names to other name servers. domains Company and institution level addresses. real-time.com, mn-linux.org, etc cache A name server without any authority. It looks up records for clients and caches records. It s placed on a network to speed up DNS queries by reducing the number of queries the need to go outside of the network. Intro to djbdns p.5/21

How a DNS query works What is the address of network-surveys.cr.yp.to? Does this server know anything about this name? No, ask a root name server. A root name server looks at the address and says, "All I know about this name is that the name server for to is 198.6.1.82." So we ask 198.6.1.82 and get, "All I know about this name is that the name server for yp.to is 131.193.178.181." So we ask 131.193.178.181 and get, "I know network-surveys.cr.yp.to and the address is 131.193.178.100." Intro to djbdns p.6/21

What is djbdns? An alternative to BIND Written by Dan Bernstein, author of Qmail A collection of servers that handle different aspects of DNS Handles DNS caching, authorative servers, zone transfers, and open relay lists. Homepage: http://cr.yp.to/djbdns.html Useful site: http://djbdns.org/ Intro to djbdns p.7/21

Why use djbdns? There is a $500 reward for the first person to publish a security hole in djbdns. All servers run as a non-root user in a chroot jail. The servers are much easier to configure than BIND. Less than 7,000 instructions in djbdns, compared to nearly 100,000 instructions in BIND 9. Uses a fixed about of memory for the cache which is easily tuned. No waiting for the DNS database to load before queries can be answered. Intro to djbdns p.8/21

daemontools daemon management tools written by DJB restarts daemons if they die or disappear uses the file system as the configuration database They don t follow any established standards a symlink in /service is used to register services svc is used to start and stop services Intro to djbdns p.9/21

Pieces of djbdns dnscache A local DNS cache. It handles recursive queries from local clients like web browsers, mail servers, ftp servers, etc. It collects responses from remote DNS servers. It caches the responses to save time later. It can be configured as a local or external cache. tinydns A DNS server. It does not handle recursive queries. It only ansswers queries using local data. rbldns A specialized DNS server for handling lists of IP addresses. It s a more efficient server for lists like RBL or ORBS. Intro to djbdns p.10/21

Pieces of djbdns (cont.) walldns A reverse DNS wall. It s used for giving out generic responses to reverse DNS queries. This makes sure IP addresses get names while not revealing private host names. axfrdns, axfr-get A zone transfer server and client to handle DNS-over-TCP requests. Intro to djbdns p.11/21

Initial Installation Install daemontools with your favorite packaging system Install djbdns with your favorite packaging system Create users for use by the daemons dnslog User to handle the DNS server logs dnscache User to run dnscache as tinydns User to run tinydns as axfrdns User to run axfrdns as Start svscan Intro to djbdns p.12/21

Creating servers dnscache-conf acct logacct D ip acct Account to run dnscache as, usually dnscache logacct Account used to handle the logs D The root directory of this server instance ip The IP address that dnscache will listen on ln -s D /service D/root/ip tells dnscache which addresses to accept queries from D/root/servers tells dnscache which name servers to look at for specific domains. Intro to djbdns p.13/21

dnscache config options These files are in D/env IP IP address that dnscache listens to IPSEND IP address that dnscache sends packets from. Default is 0.0.0.0, which is an alias for the machine s primary IP. FORWARDONLY Treats servers/@ as a list of other caches and forwards all requests to those servers. CACHESIZE The amount of memory dnscache will use for caching. Default 1 megabyte. ROOT The directory dnscache will use as its chroot jail. Intro to djbdns p.14/21

Example: local cache A caching name server on the loopback device. 1. dnscache-conf dnscache dnslog /var/dnscache/local 127.0.0.1 2. ln -s /var/dnscache/local /service/ Intro to djbdns p.15/21

Example: external cache A caching name server on a network address. 1. dnscache-conf dnscache dnslog /var/dnscachex 192.168.42.2 2. ln -s /var/dnscachex /service/ 3. touch /var/dnscachex/root/ip/192.168.42 Intro to djbdns p.16/21

Example: use local DNS servers Tell your caching name server to consult internal DNS servers for certain names. For addresses ending in.straz, ask 192.168.42.2 For reverse lookups in 192.168.42.0/24, ask 192.168.42.2 1. echo "192.168.42.2" > D/root/servers/straz 2. echo "192.168.42.2" > D/root/servers/42.168.192.inaddr.arpa Intro to djbdns p.17/21

Example: private DNS Create your own private TLD for home Create DNS server for straz TLD on 192.168.42.2 Add host candle.straz as 192.168.42.2 Add host marvin.straz as 192.168.42.32 Intro to djbdns p.18/21

Example: private DNS (cont.) 1. tinydns-conf tinydns dnslog /var/tinydns 127.0.0.1 2. ln -s /var/tinydns /service/ 3. cd /var/tinydns/root 4../add-ns straz 192.168.42.2 5../add-host candle.straz 192.168.42.2 6../add-host marvin.straz 192.168.42.32 7. make Intro to djbdns p.19/21

Example: Change the cache size Change the cache size to 5MB 1. svc -d /service/dnscache 2. echo "5000000" > /service/dnscache/env/cachesize 3. echo "15000000" > /service/dnscache/env/datalimit 4. svc -u /service/dnscache Intro to djbdns p.20/21

That s all folks Questions? Intro to djbdns p.21/21