TRust-DNS

A Rust based DNS server

TRust-DNS

TRust-DNS was started to answer a few problems that have been seen in BIND and other standard DNS servers on the internet.

DNSSec is difficult to manage and is often ignored by many configurations.
TRust-DNS is designed from the ground up to be easy to use and ensure that DNSSec and other security features are easy to use.

DynamicDNS should be easy to enable

Resilient to attacks
TRust-DNS is written in 100% safe Rust. Rust is a compiled language designed to offer a memory safe programming environment which drastically reduces the risk of data race conditions, memory leaks and unsafe access to uninitialized memory. These are common issues in other languages which can lead to security and availability issues of DNS servers.

WARNING!!!Under active development! Do not attempt to use in any production systems.

A note on sockets, this client is only using Rust stable, socket options are
currently feature restricted. This means that the Client is very dangerous to use
at the moment because it will wait forever for a response from the server.

In progress:

Support original (minus unused) RFC 1035 specification.
Client and Server code is written, but no daemon binary yet.

Authors and Contributors

Benjamin Fry (@bluejekyll) started TRustDNS in 2015, mostly to play with Rust.

License and Copyright

Copyright is held by Benjamin Fry, the project is license under the Apache 2.0 License. In order to have the flexibility of changing both the copyright and the license in the future, all code in TRustDNS repository will share this license and copyright.