Dave Horner's Website - Yet another perspective on things...
Home Tech Talk Unix/Linux/BSD/etc MyDNS - mysql based dns server.
69 guests
Rough Hits : 2850724
moon and stars
how did u find my site?





 
nature of God





 
"For every complex problem, there is a solution that is simple, neat, and wrong."
-- H.L. Mencken
\begin{bmatrix} 1 & 0 & \ldots & 0 \\ 0 & 1 & 0 & \vdots \\ \vdots & 0 & \ddots & 0\\ 0 & \ldots & 0 & 1_{n} \end{bmatrix}

MyDNS - mysql based dns server.

Thursday, 26 February 2009 01:10
MyDNS - Next Generation DNS Server - looks like a new fork of MyDNS with more features...

MyDNS: Home - serve records directly from an SQL database
MyDNS is pretty neat in that you can use the mydnsimport to import zones from existing DNS servers with AXFR transfers. 'mydnsimport -axfr=bindserver.sample.net sample.net' (may have to perform permissions updates as described below)
Linux.com :: My domains, MyDNS
Installing MyDNS And The MyDNSConfig Control Panel On CentOS 5.1 | HowtoForge - Linux Howtos and Tutorials
Simple Dynamic DNS with MyDNS - Blink - scripts to do dynamic dns with mydns.


Testing your mydns server

Make sure you have "allow-axfr = yes" and "listen = 127.0.0.1" or "listen = *" in /etc/mydns.conf.
dig @localhost -t axfr
intoDNS: checks DNS and mail servers health


Permissions with MyDnsConfig

When I first installed MyDnsConfig, I got the following error:
Error: You don't have the permission to view this record or this record does not exist!
With a little work, I found a place to debug the queries...and this was the offending SQL.
SELECT * FROM soa WHERE id = 1 AND ((sys_userid = 1 AND sys_perm_user like '%u%') OR (sys_groupid IN (1,2) AND sys_perm_group like '%u%') OR sys_perm_other like '%u%')

So, looks like you need to make sure to set a default on the rr and soa table for sys_userid and sys_perm_user to match the sys_userid of admin. I used the mydnsimport tool to create records, and the defaults were 0 and empty string. Not good, not associated to any user!
--set the defaults to 1, and u for user based auth.
 ALTER TABLE `soa` CHANGE `sys_userid` `sys_userid` INT( 11 ) NOT NULL DEFAULT '1';
 ALTER TABLE `soa` CHANGE `sys_perm_user` `sys_perm_user` VARCHAR( 5 ) 
 CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'riud'; 
 ALTER TABLE `rr` CHANGE `sys_userid` `sys_userid` INT( 11 ) NOT NULL DEFAULT '1';
 ALTER TABLE `rr` CHANGE `sys_perm_user` `sys_perm_user` VARCHAR( 5 )
 CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 'riud';
 
--update the existing records
UPDATE soa SET `sys_userid`='1', `sys_groupid`='1', `sys_perm_user`='riud', `sys_perm_group`='riud';
UPDATE rr SET `sys_userid`='1', `sys_groupid`='1', `sys_perm_user`='riud', `sys_perm_group`='riud';

YoDNSConf - a fork of the MyDNSConfig project...


DNS servers (doesn't belong on this page, but hey, it works)

Free Secondary DNS
Free Secondary DNS Services
PUCK Free Secondary DNS Service
BuddyNS - Secondary DNS with no delays - Activate
OpenDNS > Use OpenDNS > Best Practices - opendns is free recursive dns servers with content filtering.
DynDNS.com: DNS Hosting, E-mail Delivery, VPS Hosting and Other Services - free dynamic DNS hosting. But, using something like MyDNS - mysql based dns server. would make it a little nicer. ;)
Using Google Public DNS - Google now provides free public DNS name resolution! *8.8.8.8 *8.8.4.4
namebench - Project Hosting on Google Code - Open-source DNS Benchmark Utility.
Unbound DNS Server Tutorial @ Calomel.org
NSD DNS Server Tutorial @ Calomel.org
FreeDNS - Free DNS - Dynamic DNS - Static DNS subdomain and domain hosting


DNS resolution (client code)

bagder/c-ares ยท GitHub - c-ares is a C library that performs DNS requests and name resolves asynchronously.


DNS encryption

DNSCrypt by jedisct1
Introduction to DNSCurve


rate limiting dns

Response Rate Limiting in the Domain Name System (DNS RRL) | Red Barn - BIND
Last Updated on Wednesday, 09 July 2014 07:32