1- <?php
2- $ host ="IP-Adresse-ISP-CONFIG-Master-Server " ;
3- $ user ="MYSQL-USER " ;
4- $ password ="PASSWORD " ;
5- mysql_connect ($ host ,$ user ,$ password ) or die (mysql_error ());
6- mysql_select_db ("dbispconfig " );
7- $ result = "" ;
8- $ result = mysql_query ("SELECT id,origin,ns,ttl,mbox,serial,refresh,retry,expire,minimum FROM dns_soa; " );
9- function hostname2ipfunktion ($ tmp1 , $ timeout = 1 )
10- {
11- if ($ tmp1 == 0 )
12- {
13- $ query = `nslookup -timeout= $ timeout -retry=0 $ tmp1 `;
14- if (preg_match ('/\nAddress: (.*)\n/ ' , $ query , $ matches ))
15- return trim ($ matches [1 ]);
16- return $ tmp1 ;
17- }
18- }
19-
20- while ($ row = mysql_fetch_array ($ result ))
21- {
22- ### Hier ALLES Aktivieren bei Primary Nameserver ########################################################################################
23- $ varx11 =substr ($ row ["origin " ],0 ,-1 );
24- unlink ("/var/cache/bind/ $ varx11 " );
25- $ arr1 [$ x11 ]="zone \"$ varx11 \" in { type master; file \"$ varx11 \"; }; \n" ;
26- $ x11 =$ x11 +1 ;
27- $ result2 = mysql_query ("select name,type,aux,data from dns_rr where zone= $ row [id] ORDER BY name ASC; " );
28- $ arr3 [0 ]="\$TTL " .$ row ['ttl ' ]."\n@ IN SOA " .$ row ['ns ' ]." " .$ row ['mbox ' ]." ( \n " .$ row ['serial ' ]." ;Serial \n" ." " .$ row ['refresh ' ]." ;Refresh \n" ." " .$ row ['retry ' ]." ;Retry \n" ." " .$ row ['expire ' ]." ;Expire \n" ." " .$ row ['minimum ' ]." ) ;Minimum \n\n" ;
29-
30- $ xx1 =1 ;
31- while ($ row2 = mysql_fetch_row ($ result2 ))
32- {
33- $ arr2 [$ xx1 ]=$ row2 ['0 ' ]." IN " .$ row2 ['1 ' ]." " ;
34-
35- if ($ row2 ['2 ' ]>0 )
36- {
37- $ arr3 [$ xx1 ]=$ arr2 [$ xx1 ].$ row2 ['2 ' ]." " .$ row2 ['3 ' ]."\n" ;
38- }
39- else
40- {
41- $ arr3 [$ xx1 ]=$ arr2 [$ xx1 ].$ row2 ['3 ' ]."\n" ;
42- }
43- $ xx1 =$ xx1 +1 ;
44- }
45- $ f = fopen ("/var/cache/bind/ $ varx11 " , "a+ " );
46- foreach ($ arr3 as $ values ) fputs ($ f , $ values );
47- fclose ($ f );
48- $ arr2 =array ();
49- $ arr3 =array ();
50- ### ENDE Primärer Nameserver ###########################################################################################################
51-
52- ### Hier ALLES Aktivieren bei Secondary Nameserver ######################################################################################
53- # $tmp1 = substr($row["ns"],0,-1);
54- # $tmp2 = substr($row["origin"],0,-1);
55- # $nsip = hostname2ipfunktion($tmp1);
56- # if ($nsip == $tmp1) # {
57- # echo "$tmp2 $tmp1 Not a valid Nameserver";
58- # echo "\n";
59- # }
60- # else # {
61- # $arr1[$x11]="zone \"".$tmp2."\" in { type slave; file \"".$tmp2."\"; masters {".$nsip."; }; };\n";
62- # $x11=$x11+1;
63- # }
64- ### ENDE Secondary Nameserver ###########################################################################################################
65- }
66-
67- unlink ("/etc/bind/named.conf.local " );
68- $ fx = fopen ("/etc/bind/named.conf.local " , "a+ " );
69- foreach ($ arr1 as $ values ) fputs ($ fx , $ values );
70- fclose ($ fx );
71- exec ("/etc/init.d/bind9 reload " );
1+ <?php
2+ $ host ="IP-Adresse-ISP-CONFIG-Master-Server " ;
3+ $ user ="MYSQL-USER " ;
4+ $ password ="PASSWORD " ;
5+ mysql_connect ($ host ,$ user ,$ password ) or die (mysql_error ());
6+ mysql_select_db ("dbispconfig " );
7+ $ result = "" ;
8+ $ result = mysql_query ("SELECT id,origin,ns,ttl,mbox,serial,refresh,retry,expire,minimum FROM dns_soa; " );
9+ function hostname2ipfunktion ($ tmp1 , $ timeout = 1 )
10+ {
11+ if ($ tmp1 == 0 )
12+ {
13+ $ query = `nslookup -timeout= $ timeout -retry=0 $ tmp1 `;
14+ if (preg_match ('/\nAddress: (.*)\n/ ' , $ query , $ matches ))
15+ return trim ($ matches [1 ]);
16+ return $ tmp1 ;
17+ }
18+ }
19+
20+ while ($ row = mysql_fetch_array ($ result ))
21+ {
22+ ### Hier ALLES Aktivieren bei Primary Nameserver ########################################################################################
23+ $ varx11 =substr ($ row ["origin " ],0 ,-1 );
24+ unlink ("/var/cache/bind/ $ varx11 " );
25+ $ arr1 [$ x11 ]="zone \"$ varx11 \" in { type master; file \"$ varx11 \"; }; \n" ;
26+ $ x11 =$ x11 +1 ;
27+ $ result2 = mysql_query ("select name,type,aux,data from dns_rr where zone= $ row [id] ORDER BY name ASC; " );
28+ $ arr3 [0 ]="\$TTL " .$ row ['ttl ' ]."\n@ IN SOA " .$ row ['ns ' ]." " .$ row ['mbox ' ]." ( \n " .$ row ['serial ' ]." ;Serial \n" ." " .$ row ['refresh ' ]." ;Refresh \n" ." " .$ row ['retry ' ]." ;Retry \n" ." " .$ row ['expire ' ]." ;Expire \n" ." " .$ row ['minimum ' ]." ) ;Minimum \n\n" ;
29+
30+ $ xx1 =1 ;
31+ while ($ row2 = mysql_fetch_row ($ result2 ))
32+ {
33+ $ arr2 [$ xx1 ]=$ row2 ['0 ' ]." IN " .$ row2 ['1 ' ]." " ;
34+
35+ if ($ row2 ['2 ' ]>0 )
36+ {
37+ $ arr3 [$ xx1 ]=$ arr2 [$ xx1 ].$ row2 ['2 ' ]." " .$ row2 ['3 ' ]."\n" ;
38+ }
39+ else
40+ {
41+ $ arr3 [$ xx1 ]=$ arr2 [$ xx1 ].$ row2 ['3 ' ]."\n" ;
42+ }
43+ $ xx1 =$ xx1 +1 ;
44+ }
45+ $ f = fopen ("/var/cache/bind/ $ varx11 " , "a+ " );
46+ foreach ($ arr3 as $ values ) fputs ($ f , $ values );
47+ fclose ($ f );
48+ $ arr2 =array ();
49+ $ arr3 =array ();
50+ ### ENDE Primärer Nameserver ###########################################################################################################
51+
52+ ### Hier ALLES Aktivieren bei Secondary Nameserver ######################################################################################
53+ # $tmp1 = substr($row["ns"],0,-1);
54+ # $tmp2 = substr($row["origin"],0,-1);
55+ # $nsip = hostname2ipfunktion($tmp1);
56+ # if ($nsip == $tmp1) # {
57+ # echo "$tmp2 $tmp1 Not a valid Nameserver";
58+ # echo "\n";
59+ # }
60+ # else # {
61+ # $arr1[$x11]="zone \"".$tmp2."\" in { type slave; file \"".$tmp2."\"; masters {".$nsip."; }; };\n";
62+ # $x11=$x11+1;
63+ # }
64+ ### ENDE Secondary Nameserver ###########################################################################################################
65+ }
66+
67+ unlink ("/etc/bind/named.conf.local " );
68+ $ fx = fopen ("/etc/bind/named.conf.local " , "a+ " );
69+ foreach ($ arr1 as $ values ) fputs ($ fx , $ values );
70+ fclose ($ fx );
71+ exec ("/etc/init.d/bind9 reload " );
7272?>
0 commit comments