view scripts/nameserver_autogen/bind_tld_zonefile.sh @ 1120:8e01b8361e9e draft

changed add_dom to not even bother with anything head -c -1 related. should still work. added a comment at the top of dec2hex to suggest a shorter version that should work. added a script for generating zonefiles for bind
author epoch <epoch@hacking.allowed.org>
date Mon, 27 May 2013 05:16:01 +0000
parents
children c95369b825a2
line wrap: on
line source

#!/bin/bash
#made for bash. not sure if all /bin/sh work.
#be sure to edit these variables first.

ANO_ZONEFILE=/etc/namedb/ano
RESDB_PATH=/services/resdb/resdb

echo "; this zonefile genreated on: `date`" > $ANO_ZONEFILE
echo '$TTL 3600' >> $ANO_ZONEFILE
echo '@ IN SOA localns root ('`date +" %Y%m%d00"`' 60 300 3600000 3600 )' >> $ANO_ZONEFILE
echo '@ IN NS localns' >> $ANO_ZONEFILE
echo 'localns IN A 127.0.0.1' >> $ANO_ZONEFILE

cd ${RESDB_PATH}/db/dom/ano

echo -n generating zonefile... 
for name in *;do
 if [ -e "${name}/ns/" ];then
  for server in "$name"/ns/*;do
   if grep '\.ano$' <<< $name > /dev/null;then
    true
   fi
   if grep '\.ano$' <<< $server > /dev/null;then
    true
   fi
   fqserver=`cut -d/ -f3- <<< $server`
   echo -e "${name}\tIN NS\t${fqserver}."
   for ip in `cat ${server}`;do 
    echo -e "${fqserver}.\tIN A\t$ip"
   done
  done
 fi
done >> $ANO_ZONEFILE
echo done.
echo might want to send a sighup to your named now.