blob: 37645b87fdcab9c7fd53ee200c17bfd8c14bacbb [file] [log] [blame]
Simon Kelley9e4abcb2004-01-22 19:47:41 +00001<HTML>
2<HEAD>
3<TITLE> Dnsmasq - a DNS forwarder for NAT firewalls.</TITLE>
4</HEAD>
5<BODY BGCOLOR="WHITE">
6<H1 ALIGN=center>Dnsmasq</H1>
7Dnsmasq is lightweight, easy to configure DNS forwarder and DHCP
8 server. It is designed to provide DNS and, optionally, DHCP, to a
9 small network. It can serve the names of local machines which are
10 not in the global DNS. The DHCP server integrates with the DNS
11 server and allows machines with DHCP-allocated addresses
12 to appear in the DNS with names configured either in each host or
13 in a central configuration file. Dnsmasq supports static and dynamic
14 DHCP leases and BOOTP for network booting of diskless machines.
15<P>
16 Dnsmasq is targeted at home networks using NAT and
17connected to the internet via a modem, cable-modem or ADSL
18connection but would be a good choice for any small network where low
19resource use and ease of configuration are important.
20<P>
21Dnsmasq is included in at least the following Linux distributions: Gentoo, Debian,
22Smoothwall, IP-Cop, floppyfw, Firebox, Freesco and
23Clarkconnect. It is also available as a FreeBSD port and is used in Linksys wireless routers.
24<P>
25Dnsmasq provides the following features:
26<DIR>
27
28<LI>
29The DNS configuration of machines behind the firewall is simple and
30doesn't depend on the details of the ISP's dns servers
31<LI>
32Clients which try to do DNS lookups while a modem link to the
33internet is down will time out immediately.
34</LI>
35<LI>
36Dnsmasq will serve names from the /etc/hosts file on the firewall
37machine: If the names of local machines are there, then they can all
38be addressed without having to maintain /etc/hosts on each machine.
39</LI>
40<LI>
41Dnsmasq will serve names from the DHCP leases file on the firewall machine:
42If machines specify a hostname when they take out a DHCP lease, then they are
43addressable in the local DNS. <B>UPDATE</B> Dnsmasq version 2 now offers an integrated DHCP server
44instead of the lease file reader. This gives better control of the
45interaction with new functions (for example fixed IP leasess and
46attaching names to ethernet addresses centrally) it's also much
47smaller than dnsmasq and ISC dhcpd which is important for router distros.
48</LI>
49<LI>
50Dnsmasq caches internet addresses (A records and AAAA records) and address-to-name
51mappings (PTR records), reducing the load on upstream servers and
52improving performance (especially on modem connections). From version
530.95 the cache honours time-to-live information and removes old
54records as they expire. From version 0.996 dnsmasq does negative
55caching. From version 1.2 dnsmasq supports IPv6 addresses, both
56in its cache and in /etc/hosts.
57</LI>
58<LI>
59Dnsmasq can be configured to automatically pick up the addresses of
60it's upstream nameservers from ppp or dhcp configuration. It will
61automatically reload this information if it changes. This facility
62will be of particular interest to maintainers of Linux firewall
63distributions since it allows dns configuration to be made automatic.
64</LI>
65<LI>
66On IPv6-enabled boxes, dnsmasq can both talk to upstream servers via IPv6
67and offer DNS service via IPv6. On dual-stack (IPv4 and IPv6) boxes it talks
68both protocols and can even act as IPv6-to-IPv4 or IPv4-to-IPv6 forwarder.
69</LI>
70<LI>
71Dnsmasq can be configured to send queries for certain domains to
72upstream servers handling only those domains. This makes integration
73with private DNS systems easy.
74</LI>
75<LI>
76Dnsmasq can be configured to return an MX record
77for the firewall host. This makes it easy to configure the mailer on the local
78machines to forward all mail to the central mailer on the firewall host. Never
79lose root messages from your machines again!
80</LI>
81<LI>
82For version 1.15 dnsmasq has a facility to work around Verisign's infamous wildcard A record
83in the .com and .net TLDs
84</LI>
85</DIR>
86
87<H2>Download.</H2>
88
89Download dnsmasq <A HREF="http://www.thekelleys.org.uk/dnsmasq/"> here</A>.
90The tarball includes this documentation, source, manpage and control files for building .rpms.
91There are also pre-built i386 .rpms, and a
92<A HREF="CHANGELOG"> CHANGELOG</A>.
93Dnsmasq is part of the Debian distribution, it can be downloaded from
94<A HREF="http://ftp.debian.org/debian/pool/main/d/dnsmasq/"> here</A> or installed using <TT>apt</TT>.
95
96
97<H2>Building rpms.</H2>
98Assuming you have the relevant tools installed, you can rebuild .rpms simply by running (as root)
99
100<PRE>
101rpmbuild -ta dnsmasq-xxx.tar.gz
102</PRE>
103
104Note for Suse users: you will need to re-compress the tar file as
105bzip2 before building using the commands
106<PRE>
107gunzip dnsmasq-xxx.tar.gz
108bzip2 dnsmasq-zzz.tar
109</PRE>
110
111<H2>Links.</H2>
112Ulrich Ivens has a nice HOWTO in German on installing dnsmasq at <A HREF="http://howto.linux-hardware-shop.de/dnsmasq.html">http://howto.linux-hardware-shop.de/dnsmasq.html</A>
113
114<H2>License.</H2>
115Dnsmasq is distributed under the GPL. See the file COPYING in the distribution
116for details.
117
118<H2>Contact.</H2>
119Dnsmasq was written by Simon Kelley. You can contact me at <A HREF="mailto:simon@thekelleys.org.uk">simon@thekelleys.org.uk</A>. Bugreports, patches, and suggestions for improvements gratefully accepted.
120</BODY>
121