diff options
Diffstat (limited to 'scripts/nameserver_autogen')
| -rwxr-xr-x | scripts/nameserver_autogen/bind_tld_zonefile | 1 | ||||
| -rwxr-xr-x | scripts/nameserver_autogen/bind_tld_zonefile.sh | 44 | 
2 files changed, 35 insertions, 10 deletions
| diff --git a/scripts/nameserver_autogen/bind_tld_zonefile b/scripts/nameserver_autogen/bind_tld_zonefile index 344bb4e..fb224e5 100755 --- a/scripts/nameserver_autogen/bind_tld_zonefile +++ b/scripts/nameserver_autogen/bind_tld_zonefile @@ -1,4 +1,5 @@  #!/usr/bin/php +#does anyone use this?  <?php  print('$ttl 600'."\n");  chdir('../db/dom/ano'); diff --git a/scripts/nameserver_autogen/bind_tld_zonefile.sh b/scripts/nameserver_autogen/bind_tld_zonefile.sh index 72c1128..06eb802 100755 --- a/scripts/nameserver_autogen/bind_tld_zonefile.sh +++ b/scripts/nameserver_autogen/bind_tld_zonefile.sh @@ -3,33 +3,57 @@  #be sure to edit these variables first.  ANO_ZONEFILE=/etc/namedb/ano +RDNS_ZONEFILE=/etc/namedb/1.in-addr.arpa  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...  +echo -n "generating ipv4 reverse lookup zonefile for 1/8..." + +echo "; this zonefile genreated on: `date`" > "$RDNS_ZONEFILE" +echo '$TTL 3600' >> "$RDNS_ZONEFILE" +echo '@ IN SOA localhost. root.localhost. ('`date +" %Y%m%d%H"`' 60 300 3600000 3600 )' >> "$RDNS_ZONEFILE" +echo '@ IN NS localhost.' >> "$RDNS_ZONEFILE" +echo 'localhost. IN A 127.0.0.1' >> "$RDNS_ZONEFILE" + +for i in `ls /services/resdb/resdb/db/ip/01/*/*/ns/*`;do + f=$(basename $i) + a=$(basename $(dirname $i)) + b=$(basename $(dirname $(dirname $i))) + c=$(basename $(dirname $(dirname $(dirname $i)))) + printf "%d.%d IN NS %s\n" $[0x${b}] $[0x${c}] ${f}. +done >> "$RDNS_ZONEFILE" +echo done. + +echo -n generating .ano TLD zonefile...  + +echo "; this zonefile genreated on: `date`" > "$ANO_ZONEFILE" +echo '$TTL 3600' >> "$ANO_ZONEFILE" +echo '@ IN SOA localhost. root.localhost. ('`date +" %Y%m%d%H"`' 60 300 3600000 3600 )' >> "$ANO_ZONEFILE" +echo '@ IN NS localhost.' >> "$ANO_ZONEFILE" +echo 'localhost. IN A 127.0.0.1' >> "$ANO_ZONEFILE" +  for name in *;do   if [ -e "${name}/ns/" ];then    for server in "$name"/ns/*;do -   if grep '\.ano$' <<< $name > /dev/null;then +   if grep '\.ano$' <<< "$name" > /dev/null;then      true     fi -   if grep '\.ano$' <<< $server > /dev/null;then +   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" +    if grep ':' <<< "$ip" > /dev/null;then +     echo -e "${fqserver}.\tIN AAAA\t$ip" +    else +     echo -e "${fqserver}.\tIN A\t$ip" +    fi     done    done   fi -done >> $ANO_ZONEFILE +done >> "$ANO_ZONEFILE"  echo done.  echo might want to send a sighup to your named now. | 
