OCaml implementation of the DNS protocol
OCaml Other
Pull request Compare This branch is 15 commits behind mirage:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
async
examples
lib
lib_test
lwt
mirage
.gitignore
.merlin
.travis-ci-post.sh
.travis.yml
CHANGES
LICENSE
Makefile
Makefile.config
README.md
TODO.md
_oasis
_tags
mirage-dns.opam
myocamlbuild.ml
opam
setup.ml

README.md

Build Status

This is a pure OCaml implementation of the DNS protocol. It is intended to be a reasonably high-performance implementation, but clarity is preferred rather than low-level performance hacks.

To build it, please use the OPAM package manager (1.2+):

opam pin add dns .

This will install the dependencies needed and give you a working development version of the library.

Packages:

  • lib/ contains the core DNS protocol, which is packed into the Dns module.
  • lib_test/ contains unit tests and sample uses of the library. In particular, time_server is a simple dynamic responder.

Areas that need work:

  • We need an Lwt-based client iterative resolver Patches for this are highly welcome!
  • EDNS0 extensions
  • DNSSEC extensions (using nocrypto)
  • TC bit and TCP fallback
  • mDNS resolver