This is a clone/fork of https://github.com/miekg/dns
Go to file
Miek Gieben a90533a13f implement unknown RRs
RFC3597 - unknown rr are implemented. Currently Go dns
needs to now the type code, but must lack the actual implementation
of that type.
See IPSECKEY as an example.
2011-02-21 15:57:15 +01:00
_examples Fix funkensturm 2011-02-11 21:46:35 +01:00
ChangeLog small tweaks 2011-01-27 09:55:15 +01:00
LICENSE added LICENSE 2010-12-19 12:31:48 +01:00
Makefile Add unknown resource record parsing 2011-02-21 15:44:42 +01:00
README.markdown Bring funkensturm up to date for the new api 2011-02-10 12:26:26 +01:00
TODO implement unknown RRs 2011-02-21 15:57:15 +01:00
dns.go Add unknown resource record parsing 2011-02-21 15:44:42 +01:00
dns.y all in package dns 2011-02-15 09:03:45 +01:00
dns_test.go Fixes for the testcases 2011-01-26 16:04:51 +01:00
dnssec.go doc update 2011-02-11 22:21:41 +01:00
dnssec_test.go Cert RR added 2011-01-25 13:57:54 +01:00
edns.go docs edns0 2011-01-27 14:28:04 +01:00
keygen.go comment updates 2011-01-27 20:54:30 +01:00
msg.go implement unknown RRs 2011-02-21 15:57:15 +01:00
nsec3.go add start for nsec3 2011-01-27 15:52:58 +01:00
parse_test.go Set the algorithm too in the test 2011-01-18 11:34:48 +01:00
resolver.go Fix documentation 2011-02-10 16:23:34 +01:00
resolver_test.go add resolver here 2011-02-08 20:33:51 +01:00
server.go fix this server 2011-02-11 21:29:40 +01:00
server_test.go smaller api 2011-02-11 20:54:54 +01:00
string.go documentation updates 2011-01-27 09:29:11 +01:00
tsig.go support nsec3 and nsec3param 2011-02-03 20:39:43 +01:00
types.go implement unknown RRs 2011-02-21 15:57:15 +01:00

README.markdown

Alternative (more granular) approach to a DNS library.

Completely usable DNS library. Most widely used Resource Records are supported. DNSSEC types too. EDNS0 is (see edns.go), UDP/TCP queries, TSIG, AXFR (and IXFR probably) too. Both client and server side programming is supported.

Sample programs can be found in the _examples directory. They can be build with: make examples (after the dns package has been installed)

The major omission at the moment is parsing Resource Records from strings. (i.e. supporting the RFC 1035 zone file format). Also the IPv6 support needs to be tested

Everything else should be present and working. If not, drop me an email.

Have fun!

Miek Gieben - 2010, 2011 - miek@miek.nl

Supported RFCs and features include:

  • 1034/1035 - DNS standard
  • 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)
  • 4033/4034/4035 - DNSSEC + validation functions
  • 4255 - SSHFP
  • 4408 - SPF
  • 5001 - NSID
  • 5155 - NSEC
  • 5936 - AXFR

Loosely based upon:

  • ldns
  • NSD
  • Net::DNS
  • GRONG