Alderantzikatu eremuaren delegazioa /24 baino gutxiagoko azpisareetan BIND-en. Nola dabil

Egun batean, nire bezero bati esleitutako /28 azpisareko PTR erregistroak editatzeko eskubidea emateko zeregina izan nuen. Ez dut automatizaziorik kanpotik BIND ezarpenak editatzeko. Hori dela eta, beste bide bat hartzea erabaki nuen: bezeroari /24 azpisareko PTR zonaren zati bat delegatzea.

Badirudi - zer izan daiteke sinpleagoa? Azpisarea behar bezala erregistratu eta nahi dugun NSra bideratzen dugu, azpidomeinu batekin egiten den bezala. Baina ez. Ez da hain erraza (nahiz eta errealitatean orokorrean primitiboa den, baina intuizioak ez du lagunduko), horregatik idazten dut artikulu hau.

Berak asmatu nahi duenak irakur dezake RFC
Prestatutako irtenbide bat nahi duenak, ongi etorri katua.

Kopiatu-itsatsi metodoa gustatzen zaienak ez atzeratzeko, zati praktikoa argitaratuko dut lehenik, eta atal teorikoa gero.

1. Praktikatu. Eskuordetza eremua /28

Demagun azpisare bat dugula 7.8.9.0/24. Azpisarea delegatu behar dugu 7.8.9.240/28 dns bezeroari 7.8.7.8 (ns1.bezeroa.domeinua).

Hornitzailearen DNSan azpisare honen alderantzizko zona deskribatzen duen fitxategi bat aurkitu behar duzu. Utzi 9.8.7.in-addr.harp.
240tik 255era bitarteko sarrerak komentatzen ditugu, baldin badaude. Eta fitxategiaren amaieran honako hau idatziko dugu:

255-240  IN  NS      7.8.7.8
$GENERATE 240-255 $ CNAME $.255-240

ez ahaztu serie eremua handitzea eta egin

rndc reload

Honek hornitzailearen zatia osatzen du. Joan gaitezen bezeroaren dns-era.

Lehenik eta behin, sor dezagun fitxategi bat /etc/bind/master/255-240.9.8.7.in-addr.arpa honako eduki hau:

$ORIGIN 255-240.9.8.7.in-addr.arpa.
$TTL 1W
@                       1D IN SOA       ns1.client.domain. root.client.domain. (
                        2008152607      ; serial
                        3H              ; refresh
                        15M             ; retry
                        1W              ; expiry
                        1D )            ; minimum
@                       IN NS        ns1.client.domain.
@                       IN NS        ns2.client.domain.
241                     IN PTR          test.client.domain.
242                     IN PTR          test2.client.domain.
245                     IN PTR          test5.client.domain.

Eta barruan izeneko.konf gehitu gure fitxategi berriaren deskribapena:

zone "255-240.9.8.7.in-addr.arpa." IN {
        type master;
        file "master/255-240.9.8.7.in-addr.arpa";
};

B berrabiarazi lotura-prozesua.

/etc/init.d/named restart

Denak. Orain egiaztatu dezakezu.

#>  host 7.8.9.245 
245.9.8.7.in-addr.arpa is an alias for 245.255-240.9.8.7.in-addr.arpa.
245.255-240.9.8.7.in-addr.arpa domain name pointer test5.client.domain.

Kontuan izan PTR erregistroa ez ezik, CNAME ere ematen dela. Horrela izan beharko luke. Zergatik galdetzen ari bazara, ongi etorri hurrengo kapitulura.

2. Teoria. Nola dabil.

Zaila da kutxa beltz bat konfiguratzea eta araztea. Askoz errazagoa da barruan zer gertatzen den ulertzen baduzu.

Domeinu batean azpidomeinu bat delegatzen dugunean domeinu, orduan honelako zerbait idazten dugu:

client.domain.	NS	ns1.client.domain.
ns1.client.domain.	A	7.8.7.8

Arlo honen arduradunak ez garela esaten diegu galdetzen duten guztiei eta arduraduna nor den esaten dugu. Eta eskaera guztiak bezeroa.domeinua birbideratu 7.8.7.8ra. Egiaztatzean, hurrengo irudia ikusiko dugu (bezeroak bertan daukana baztertuko dugu. Berdin du):

# host test.client.domain
test.client.domain has address 7.8.9.241

Horiek. Halako A erregistro bat dagoela eta bere ip-a 7.8.9.241 dela jakinarazi ziguten. Ez alferrikako informaziorik.

Nola egin daiteke gauza bera azpisare batekin?

Zeren gure DNS zerbitzaria RIPEn erregistratuta dago, orduan gure saretik PTR IP helbidea eskatzean, lehen eskaera guretzat izango da oraindik. Logika domeinuen berdina da. Baina nola sartu azpisare bat zonako fitxategi batean?

Saia gaitezen honela sartzen:

255-240  IN  NS      7.8.7.8

Eta... miraria ez zen gertatu. Ez dugu inolako eskaera birbideratzerik jasotzen ari. Gauza da bind-ek ez dakiela alderantzizko zona fitxategiko sarrera hauek IP helbideak direnik, eta are gehiago ez duela barrutiaren sarrera ulertzen. Berarentzat, hau azpidomeinu sinboliko moduko bat besterik ez da. Horiek. lotzeko ez da desberdintasunik egongo "255-240"Eta"gure superbezeroa". Eta eskaerak joan behar duen lekura joan dadin, eskaeraren helbideak honela izan behar du: 241.255-240.9.8.7.in-addr.arpa. Edo honela karaktere azpidomeinu bat erabiltzen badugu: 241.guresuperclient.9.8.7.in-addr.arpa. Hau ohikoarekin ezberdina da: 241.9.8.7.in-addr.harp.

Zaila izango da horrelako eskaera bat eskuz egitea. Eta funtzionatzen badu ere, oraindik ez dago argi nola aplikatu bizitza errealean. Azken finean, eskatuta 7.8.9.241 Hornitzailearen DNSak oraindik erantzuten digu, ez bezeroarenak.

Eta hor sartzen dira jokoan CNAME.

Hornitzailearen aldetik, azpisareko IP helbide guztien alias bat egin behar duzu eskaera bezeroaren DNSra birbidaliko duen formatuan.

255-240  IN  NS      ns1.client.domain.
241     IN  CNAME   241.255-240
242     IN  CNAME   242.255-240
ΠΈ Ρ‚.Π΄.

Hau langileentzat da =).

Eta alferrarentzat, beheko diseinua egokia da:

255-240  IN  NS      ns1.client.domain.
$GENERATE 240-255 $ CNAME $.255-240

Orain eskatu informazioa helbidean 7.8.9.241 - 241.9.8.7.in-addr.harp hornitzailearen DNS zerbitzarian bihurtuko da 241.255-240.9.8.7.in-addr.arpa eta dns bezeroarengana doa.

Bezeroaren aldetik horrelako eskaerak kudeatu beharko ditu. Horren arabera, eremu bat sortzen dugu 255-240.9.8.7.in-addr.arpa. Bertan, printzipioz, /24 azpisare osoko edozein ipentzako alderantzizko sarrerak jar ditzakegu, baina hornitzaileak bidaltzen dizkigun horiei buruz bakarrik galdetuko digute, beraz, ezin izango dugu jolastu =).
Ilustratzeko, berriro ere emango dut alderantzizko zona fitxategi baten edukiaren adibidea bezeroaren aldetik:

$ORIGIN 255-240.9.8.7.in-addr.arpa.
$TTL 1W
@                       1D IN SOA       ns1.client.domain. root.client.domain. (
                        2008152607      ; serial
                        3H              ; refresh
                        15M             ; retry
                        1W              ; expiry
                        1D )            ; minimum
@                       IN NS        ns1.client.domain.
@                       IN NS        ns2.client.domain.
241                     IN PTR          test.client.domain.
242                     IN PTR          test2.client.domain.
245                     IN PTR          test5.client.domain.

Hornitzailearen aldetik CNAME erabiltzen dugulako da, eta IP helbidearen bidezko datuen eskaerari erantzunez bi erregistro jasotzen ditugu, ez bat.

#>  host 7.8.9.245 
245.9.8.7.in-addr.arpa is an alias for 245.255-240.9.8.7.in-addr.arpa.
245.255-240.9.8.7.in-addr.arpa domain name pointer test5.client.domain.

Eta ez ahaztu ACL behar bezala konfiguratzea. Ez duelako zentzurik PTR zona bat zeuretzat hartzea eta kanpoko inori ez erantzutea =).

Iturria: www.habr.com

Gehitu iruzkin berria