dns/README.markdown

61 lines
1.4 KiB
Markdown
Raw Normal View History

2011-02-10 19:01:43 +11:00
# Alternative (more granular) approach to a DNS library.
2010-12-29 01:44:19 +11:00
2011-01-16 09:05:56 +11:00
Completely usable DNS library. Most widely used Resource Records are
2011-07-06 03:54:20 +10:00
supported including the DNSSEC types.
Feaures:
* EDNS0 is (see edns.go)
* UDP/TCP queries, IPv4 and IPv6
* TSIG
* AXFR (and IXFR probably)
* Client and server side programming (mimicing the http package)
* Asynchronous queries (client/server)
2010-12-29 01:44:19 +11:00
Sample programs can be found in the `_examples` directory. They can
be build with: `make examples` (after the dns package has been installed)
2011-01-02 08:07:47 +11:00
The major omission at the moment is parsing Resource Records from
2011-01-27 19:29:11 +11:00
strings. (i.e. supporting the RFC 1035 zone file format).
2011-02-10 19:01:43 +11:00
Everything else should be present and working. If not, drop me an email.
2010-12-29 01:44:19 +11:00
Have fun!
Miek Gieben - 2010, 2011 - miek@miek.nl
2010-12-19 09:46:37 +11:00
## Supported RFCs and features include:
2011-01-27 19:29:11 +11:00
* 103{4,5} - DNS standard
2011-01-27 19:29:11 +11:00
* 1982 - Serial Arithmetic
* 1876 - LOC record (incomplete)
* 1995 - IXFR
* 1996 - DNS notify
* 2181 - RRset definition
* 2537 - RSAMD5 DNS keys
* 2065 - DNSSEC (updated in later RFCs)
* 2671 - EDNS
* 2782 - SRV
* 2845 - TSIG
* 2915 - NAPTR
* 3110 - RSASHA1 DNS keys
* 3225 - DO bit (DNSSEC OK)
* 340{1,2,3} - NAPTR
2011-02-22 02:24:14 +11:00
* 3597 - Unkown RRs
* 403{3,4,5} - DNSSEC + validation functions
2011-01-27 19:29:11 +11:00
* 4255 - SSHFP
* 4408 - SPF
2011-03-22 19:44:33 +11:00
* 4509 - SHA256 Hash in DS
* 4635 - HMAC SHA TSIG
2011-01-27 19:29:11 +11:00
* 5001 - NSID
* 5155 - NSEC
2011-07-07 18:00:42 +10:00
* 5933 - GOST
2011-01-27 19:29:11 +11:00
* 5936 - AXFR
## Loosely based upon:
* `ldns`
* `NSD`
* `Net::DNS`
* `GRONG`