[MaraDNS list] "students"

JFC Morfin jefsey at jefsey.com
Tue Jul 26 18:25:16 EDT 2011


Thank you for this information. I plan to explore it as follows.

I am talking of students interested in the best DNS use and extension 
architecture. I observed three progressive types of interest among 
the few people I explained the DNS this year and how MaraDNS/Deadwood 
could be a key part of the solution. This year I want to tell them:

1. "here is the code and the how to compile and use (using your doc) 
under windows and linux (and hopefully inferno). Play, get familiar, 
etc. with it!"
2. what managing environement would you need to develop for a 
MaraDNS/Deadwood DNS? Let discuss, develop, test and deploy together!
3. "what would you like to add/change to MaraDNS/Deadwood to adapt it 
to your own ideas on their environment?"
     In that third case a function prototyping system, is of the 
essence. You seem to tell that TinyDeadwood could be a good test-bed 
for functional evaluation. This is great!

Let proceed step by step. May be can I spend time on this in august; 
before the new academic year begining.
Best
jfc


At 13:47 26/07/2011, Sam Trenholme wrote:
> > I hope MaraDNS2.0/Deadwood are included in this :-)
>
>Yes, they are.  I plan on adding Nick's version of Duende to the next
>MaraDNS release (with the name duende-debian) and I already have the
>documentation for compiling MaraDNS 2.0 as well as Deadwood in
>Windows:
>
>http://agza.vk.tj http://agzb.vk.tj [1]
>
>If you're looking for something that is simple that students can look
>at, I recommend the 2.3 branch of Deadwood, which is a lot simpler
>than Deadwood 3.0 (no messy recursion) and a lot cleaner than MaraDNS
>2.0 (my C coding has gotten better over the years):
>
>http://maradns.org/deadwood/tiny/
>
>This code has a lot of things worth showing students:
>
>* A simple finite state machine for parsing dwoodrc files
>
>* Caching via a hashed one-dimensional "associative array" object
>(keys and values are always strings)
>
>* select() model to allow multiple simultaneous clients without messy
>threading or inelegant fork()ing.
>
>* Windows service code (included in the code because Windows basically
>forces me to do so) as well as UNIX daemonization by Nick's favorite
>MaraDNS/Deadwood program, Duende.  Allows you to compare and contrast
>the two approaches.
>
>* Cross-platform socket code.  Allows comparison between how a native
>Windows application handles sockets compared to Linux and other UNIX
>clones.
>
>This code goes to an upstream DNS server, grabs a DNS record as-is
>from that server and passes it on to the client requesting the DNS
>record.  Caching is done via a LRU linked list (yes, like many
>programmers, I independently re-invented the LRU) and it is possible
>to store the cache in a file.
>
>CERN (you know, the lab who helped invent the World Wide Web which I'm
>using to write this email right now) uses this package, and it's very
>good for people who don't need full recursion in a 32k binary (i386).
>
>- Sam
>
>[1] vk.tj is my own personal link shortening domain, so it can be
>trusted.  If you want to preview a link, use a form like
>http://preview.agza.vk.tj or http://agza.vk.tj/+ (these are the two
>standard ways of previewing a shortened URL)



More information about the list mailing list