Script – named.conf.secondary

Posted by admin on Jun 18, 2009 in Scripts |

My Notes

#######
#
## Command Line Input – Create single secondary entry
#
#####

#!/bin/bash
# Edit IP variable to equal the IP address of the master name server
IP=10.0.0.1
echo -n “Enter Domain Name: ”
read name
echo “zone \”$name\” { type slave; masters { $IP; }; file \”/var/named/$name.sec\”; };” >> /etc/named.conf.secondary
#######
#  Make Secondary named.conf file
# FROM MASTER named.conf
#######

#!/bin/bash
IP=10.0.0.1
cat /etc/named.conf |grep zone |grep -v “type slave”|grep -v named.ca|cut -d \” -f2 > secondarylist.txt

dt=$(date)
echo “// Vitex Secondary Zones $dt” > named.conf.secondary

for i in $( cat secondarylist.txt ); do
   echo “zone \”$i\” { type slave; masters { $IP; }; file \”secondary/$i.sec\”; };” >> named.conf.secondary
   echo item: $i
done

 

############
#
# PHP version
#
#######

<?php

define(’IP’,'10.0.0.1′);
function Main($file=’named.conf.secondary’)

{
if (!strlen($file) ||
    !is_readable($file) ||
    !is_file($file)) die(’Could not open file.’);
$cnt = file($file);

$fmt = array(’zone “%s” {’);
$fmt[] = ‘     type slave;’;
$fmt[] = ‘     file “secondary/%s.sec”;’;
$fmt[] = ‘     masters { %s; };’;
$fmt[] = ‘};’;
$fmt = join(”\n”,$fmt);

foreach($cnt as $line)
printf($fmt.”\n\n”,rtrim(substr($line, 4)),rtrim(substr($line,4)),IP);
}

if ($_SERVER['argc'] < 2) printf(”Usage: %s <file>\n”,$_SERVER['argv'][0]);
else Main($_SERVER['argv'][1]);

?>

Tags: , , ,

Reply

Copyright © 2012 BenMcGrail.com All rights reserved.
Hosted by: VitexOnline.com