| <HTML> |
| <HEAD> |
| <TITLE> Dnsmasq - a DNS forwarder for NAT firewalls.</TITLE> |
| </HEAD> |
| <BODY BGCOLOR="WHITE"> |
| <H1 ALIGN=center>Dnsmasq</H1> |
| Dnsmasq is lightweight, easy to configure DNS forwarder and DHCP |
| server. It is designed to provide DNS and, optionally, DHCP, to a |
| small network. It can serve the names of local machines which are |
| not in the global DNS. The DHCP server integrates with the DNS |
| server and allows machines with DHCP-allocated addresses |
| to appear in the DNS with names configured either in each host or |
| in a central configuration file. Dnsmasq supports static and dynamic |
| DHCP leases and BOOTP for network booting of diskless machines. |
| <P> |
| Dnsmasq is targeted at home networks using NAT and |
| connected to the internet via a modem, cable-modem or ADSL |
| connection but would be a good choice for any small network where low |
| resource use and ease of configuration are important. |
| <P> |
| Dnsmasq is included in at least the following Linux distributions: Gentoo, Debian, |
| Smoothwall, IP-Cop, floppyfw, Firebox, Freesco and |
| Clarkconnect. It is also available as a FreeBSD port and is used in Linksys wireless routers. |
| <P> |
| Dnsmasq provides the following features: |
| <DIR> |
| |
| <LI> |
| The DNS configuration of machines behind the firewall is simple and |
| doesn't depend on the details of the ISP's dns servers |
| <LI> |
| Clients which try to do DNS lookups while a modem link to the |
| internet is down will time out immediately. |
| </LI> |
| <LI> |
| Dnsmasq will serve names from the /etc/hosts file on the firewall |
| machine: If the names of local machines are there, then they can all |
| be addressed without having to maintain /etc/hosts on each machine. |
| </LI> |
| <LI> |
| Dnsmasq will serve names from the DHCP leases file on the firewall machine: |
| If machines specify a hostname when they take out a DHCP lease, then they are |
| addressable in the local DNS. <B>UPDATE</B> Dnsmasq version 2 now offers an integrated DHCP server |
| instead of the lease file reader. This gives better control of the |
| interaction with new functions (for example fixed IP leasess and |
| attaching names to ethernet addresses centrally) it's also much |
| smaller than dnsmasq and ISC dhcpd which is important for router distros. |
| </LI> |
| <LI> |
| Dnsmasq caches internet addresses (A records and AAAA records) and address-to-name |
| mappings (PTR records), reducing the load on upstream servers and |
| improving performance (especially on modem connections). From version |
| 0.95 the cache honours time-to-live information and removes old |
| records as they expire. From version 0.996 dnsmasq does negative |
| caching. From version 1.2 dnsmasq supports IPv6 addresses, both |
| in its cache and in /etc/hosts. |
| </LI> |
| <LI> |
| Dnsmasq can be configured to automatically pick up the addresses of |
| it's upstream nameservers from ppp or dhcp configuration. It will |
| automatically reload this information if it changes. This facility |
| will be of particular interest to maintainers of Linux firewall |
| distributions since it allows dns configuration to be made automatic. |
| </LI> |
| <LI> |
| On IPv6-enabled boxes, dnsmasq can both talk to upstream servers via IPv6 |
| and offer DNS service via IPv6. On dual-stack (IPv4 and IPv6) boxes it talks |
| both protocols and can even act as IPv6-to-IPv4 or IPv4-to-IPv6 forwarder. |
| </LI> |
| <LI> |
| Dnsmasq can be configured to send queries for certain domains to |
| upstream servers handling only those domains. This makes integration |
| with private DNS systems easy. |
| </LI> |
| <LI> |
| Dnsmasq can be configured to return an MX record |
| for the firewall host. This makes it easy to configure the mailer on the local |
| machines to forward all mail to the central mailer on the firewall host. Never |
| lose root messages from your machines again! |
| </LI> |
| <LI> |
| For version 1.15 dnsmasq has a facility to work around Verisign's infamous wildcard A record |
| in the .com and .net TLDs |
| </LI> |
| </DIR> |
| |
| <H2>Download.</H2> |
| |
| Download dnsmasq <A HREF="http://www.thekelleys.org.uk/dnsmasq/"> here</A>. |
| The tarball includes this documentation, source, manpage and control files for building .rpms. |
| There are also pre-built i386 .rpms, and a |
| <A HREF="CHANGELOG"> CHANGELOG</A>. |
| Dnsmasq is part of the Debian distribution, it can be downloaded from |
| <A HREF="http://ftp.debian.org/debian/pool/main/d/dnsmasq/"> here</A> or installed using <TT>apt</TT>. |
| |
| |
| <H2>Building rpms.</H2> |
| Assuming you have the relevant tools installed, you can rebuild .rpms simply by running (as root) |
| |
| <PRE> |
| rpmbuild -ta dnsmasq-xxx.tar.gz |
| </PRE> |
| |
| Note for Suse users: you will need to re-compress the tar file as |
| bzip2 before building using the commands |
| <PRE> |
| gunzip dnsmasq-xxx.tar.gz |
| bzip2 dnsmasq-zzz.tar |
| </PRE> |
| |
| <H2>Links.</H2> |
| Ulrich 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> |
| |
| <H2>License.</H2> |
| Dnsmasq is distributed under the GPL. See the file COPYING in the distribution |
| for details. |
| |
| <H2>Contact.</H2> |
| Dnsmasq 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. |
| </BODY> |
| |