BIND: pojednostavite konfiguraciju pomoću direktive $GENERATE

Konfiguracija DNS sustava je, vjerujemo, jedna od stvari koji sistem-inženjer početnik ne voli raditi.  Kriptična konfiguracija, ovisnost o drugim poslužiteljima, papirologija koja se mora slati ukoliko se rade veće promjene - sve to odbija od istraživanja mogućnosti DNS sustava.

No, nakon inicijalne konfiguracije (koja je olakšana ukoliko imate paket bind9-cn) stvari kasnije idu nešto lakše, jer je potrebno samo dodavati nove hostove u konfiguraciju.  Ni to nije bez opasnosti, jer jedna zaboravljena točka na kraju zapisa može omesti rada DNS servisa.  Kod unošenja većeg broja hostova ovo je svakako moguće, a kako bi umanjili ovu mogućnost, možemo rabiti direktivu $GENERATE.

Direktivu $GENERATE možemo shvatiti kao petlju u nekom programskom jeziku jer ima varijablu koja se povećava u svakoj iteraciji, u nekom određenom rasponu kojeg vi određujete. Najlakše je objasniti kako to izgleda preko primjera:

$GENERATE 1-254 $ PTR pc$.vasadomena.hr.

Da ste umjesto preko direktive $GENERATE išli ručnim unosom, morali biste unijeti preko 250 redaka u ovom obliku:

1 PTR pc1.vasadomena.hr.
2 PTR pc2.vasadomena.hr.
3 PTR pc3.vasadomena.hr.
...
254 PTR pc254.vasadomena.hr.

Sada možemo vidjeti kako $GENERATE radi. Nakon same direktive navodimo raspon brojeva u kojem želimo da se varijabla povećava, zatim samu varijablu (označava se jednostavno sa '$'), te ostatak DNS zapisa kojeg želimo generirati. Dakle, sve je upravo kao u nekoj programskoj  petlji, gdje će se varijabla uvećati u svakoj novoj iteraciji.

U primjeru smo rabili PTR zapis za reverznu zonu s privatnim adresama (0/16.0.168.192.in-addr.arpa), što je zgodno kada adrese dodjeljujete preko DHCP-a, kada možete navesti cijele poolove adresa koje možda imate u LAN-u:

$GENERATE 10-100 $ PTR dhcpdjel-$.vasadomena.hr.
$GENERATE 101-200 $ PTR dhcpstud-$.vasadomena.hr.

Moramo napomenuti da radi jasnoće rabimo skraćeni oblik zapisa, puni zapis bi zapravo izgledao ovako:

10.0.168.192.in-addr.arpa PTR dhcpdjel-10.vasadomena.hr.

$GENERATE vrijedi i za ove zapise: A (address), AAAA (IPv6 address), NS (Name Server), CNAME (Canonical Name odnosno Alias) i DNAME (Delegation Name odnosno Alias za domene). Opet ćemo posegnuti za primjerom, kada jednostavno želite uniformne nazive za računala u vašoj mreži:

$GENERATE 10-254 pc$.vasadomena.hr. A 161.53.X.$

što će se pretvoriti u niz adresnih (A) zapisa :

pc10.vasadomena.hr. A 161.53.X.10
pc11.vasadomena.hr. A 161.53.X.11
...
pc254.vasadomena.hr. A 161.53.X.254

Napomena: oznaka "X" je naravno konkretna adresa vaše mreže, ne stoji kao varijabla ili bilo što slično!

Nadamo se da smo vam ovim člankom uštedili nešto tipkanja, te spriječili razne sitne greške unutar zonskih datoteka koje mogu spriječiti normalan rad vašeg DNS poslužitelja.

Kuharice: 
Kategorije: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (1 vote)