|The Time-To-Live field to be set on outgoing packets. Records that are likely to be fixed (not dynamic) are given a 3-day ttl. Examples are the IP address of the NS record, and the CNAME, MX, NS, and SOA records. All other records are given the ttl specified in this option. The default is 86400 seconds (one day). This option should be set to 10 seconds for dynamic IP address ranges.|
|Listen port. Default is 53.|
|inface-ip is the network card you want to listen on. If omitted, it defaults to 0.0.0.0 meaning all interfaces.|
|-d||Fork twice into the background (to run as a daemon process); otherwise sheerdns runs in the foreground.|
An entry such as *.test.com will return results as expected. This means you should
echo 192.0.2.1 > /var/sheerdns/sheerdnshash *.test.com/*.test.com/A dig @localhost A lsdjkfhalsdfkjh.test.com
Note that quotes around the asterisk. This means the filename has an asterisk in it which is never a good idea on Unix systems.
These examples assume that you have already invoked sheerdns, that you know what kind of records are appropriate to create, that you do not guess, and that you realize that the examples are merely shown for demonstration and not as a recommendation for the kinds of records really required.
Add mutiple A records for test.com for round robin sharing:
echo 192.0.2.1 > /var/sheerdns/sheerdnshash test.com/test.com/A echo 192.0.2.2 >> /var/sheerdns/sheerdnshash test.com/test.com/A echo 192.0.2.3 >> /var/sheerdns/sheerdnshash test.com/test.com/A dig @localhost A test.com dig @localhost A test.com dig @localhost A test.com
Add a PTR records for test.com:
echo test.com > /var/sheerdns/sheerdnshash 192.0.2.1/192.0.2.1/PTR echo test.com > /var/sheerdns/sheerdnshash 192.0.2.2/192.0.2.2/PTR echo test.com > /var/sheerdns/sheerdnshash 192.0.2.3/192.0.2.3/PTR echo ns.ispfortest.net > /var/sheerdns/sheerdnshash 192.0.2/192.0.2/NS dig @localhost PTR 18.104.22.168.in-addr.arpa
Add an MX record for test.com with (IMPORTANT) both its forward, reverse, and nameserver lookups:
echo mail.test.com > /var/sheerdns/sheerdnshash test.com/test.com/MX echo 22.214.171.124 > /var/sheerdns/sheerdnshash mail.test.com/mail.test.com/A echo mail.test.com > /var/sheerdns/sheerdnshash 126.96.36.199/188.8.131.52/PTR echo ns.ispfortest.net > /var/sheerdns/sheerdnshash test.com/test.com/NS dig @localhost MX test.com
Add an SOA record for test.com. Note that although SOA records are only required for zone transfers, some institutions may demand them. The only configurable data item in the SOA record is the authoritative nameserver which is inserted as follows:
echo ns.ispfortest.net > /var/sheerdns/sheerdnshash test.com/test.com/SOA dig @localhost SOA test.com
Add an CNAME record for www.test.com. If you use a CNAME, you should only have one line in the CNAME file, and it should be the only file in the domains directory, and the CNAME should not appear anywhere as the text of any other records. I repeat: "If you use a CNAME, you should only have one line in the CNAME file, and it should be the only file in the domains directory, and the CNAME should not appear anywhere as the text of any other records.". Do I need to say it a third time?
echo "I will not leave out the next command" rm -f /var/sheerdns/sheerdnshash www.test.com/www.test.com/* grep -w www[.]test[.]com find /var/sheerdns/ -type f && \ echo "This DNS setup is broken" echo "I will not leave out the previous command" echo test.com > /var/sheerdns/sheerdnshash www.test.com/www.test.com/CNAME dig @localhost A www.test.com
Using sheerdns as a root nameserver. Note that for root domains, the hash is especially omitted:
> /var/sheerdns/NS > /var/sheerdns/SOA for i in \ a:184.108.40.206 h:220.127.116.11 c:18.104.22.168 g:22.214.171.124 \ f:126.96.36.199 b:188.8.131.52 j:184.108.40.206 k:220.127.116.11 \ l:18.104.22.168 m:22.214.171.124 i:126.96.36.199 e:188.8.131.52 ; do N=echo $i | cut -f1 -d:.root-servers.net echo $i | cut -f2 -d: > /var/sheerdns/sheerdnshash $N/$N/A echo $N >> /var/sheerdns/NS echo $N >> /var/sheerdns/SOA done dig @localhost SOA . dig @localhost NS .
There are no applicable environment variables.
sheerdns has no configuration file. It just works.
No bugs are known at present.
sheerdns makes use of the directory /var/sheerdns/*/* to lookup entries. These directories are created on startup. No errors are reported if the directories could not be created.
Hmmm, more than I have time to read. Start with RFC-1035.
http://freshmeat.net/ will always have links to the latest sheerdns.tar.gz source file as well as this page.
Paul Sheer <firstname.lastname@example.org>
dig(1), nslookup(8), BIND, MyDNS, djbdns, tinydns, Dents.
|-->||SHEERDNS (1)||Jan 11 2000|