Delegowanie a / 22 jest łatwe, to delegowanie 4 / 24s. A / 14 to delegacja 4/16 itd.
RFC2317 obejmuje przypadki specjalne z maską sieci dłuższą niż / 24. Zasadniczo nie ma super-czystego sposobu na delegowanie stref inaddr.arpa na nic poza granicami oktetów, ale można to obejść. Powiedzmy, że chcę delegować 172.16.23.16/29, które byłyby adresami IP 172.16.23.16 -> 172.16.23.23.
Jako właściciel strefy 23.16.172.in-addr.arpa, mógłbym umieścić to w pliku strefy 23.16.172.rev, aby przekazać ten zakres mojemu klientowi:
16-29 IN NS ns1.customer.com
16-29 IN NS ns2.customer.com
16 IN CNAME 16.16-29.23.16.172.in-addr.arpa.
17 IN CNAME 17.16-29.23.16.172.in-addr.arpa.
18 IN CNAME 18.16-29.23.16.172.in-addr.arpa.
19 IN CNAME 19.16-29.23.16.172.in-addr.arpa.
20 IN CNAME 20.16-29.23.16.172.in-addr.arpa.
21 IN CNAME 21.16-29.23.16.172.in-addr.arpa.
22 IN CNAME 22.16-29.23.16.172.in-addr.arpa.
23 IN CNAME 23.16-29.23.16.172.in-addr.arpa.
Widać więc, że definiuję nową strefę (16-29.23.16.172.in-addr.arpa.) I deleguję ją na serwery nazw moich klientów. Następnie tworzę CNAME z adresów IP, które mają być delegowane na odpowiedni numer w nowo delegowanej strefie.
Jako klient, któremu zostały delegowane, zrobiłbym coś takiego w pliku named.conf:
zone "16-29.23.16.172.in-addr.arpa" {
type master;
file "masters/16-29.23.16.172.rev";
};
A potem w pliku .rev chciałbym po prostu zrobić PTR jak każdą normalną strefę in-addr.arpa:
17 IN PTR office.customer.com.
18 IN PTR www.customer.com.
(etc)
Jest to w pewnym sensie czysty sposób, aby to zrobić i sprawia, że doświadczony klient jest szczęśliwy, ponieważ mają strefę in-addr.arpa do umieszczania PTR itp. Krótszy sposób, aby to zrobić dla klientów, którzy chcą kontrolować zwrotny DNS, ale nie Chcąc założyć całą strefę, wystarczy po prostu pojedynczy rekord CNAME o podobnych nazwach w głównej strefie.
W takim przypadku my, jako delegaci, mielibyśmy coś takiego w naszym pliku 23.16.172.rev:
16 IN CNAME 16.customer.com.
17 IN CNAME 17.customer.com.
18 IN CNAME 18.customer.com.
19 IN CNAME 19.customer.com.
20 IN CNAME 20.customer.com.
21 IN CNAME 21.customer.com.
22 IN CNAME 22.customer.com.
23 IN CNAME 23.customer.com.
Jest to więc koncepcja podobna do drugiego pomysłu, ale zamiast tworzyć nową strefę i delegować ją do klienta, CNAME zapisujesz rekordy nazwom w już istniejącej głównej strefie klienta.
Klient miałby coś takiego w swoim pliku strefy customer.com:
office IN A 172.16.23.17
17 IN PTR office.customer.com.
www IN A 172.16.23.18
18 IN PTR www.customer.com.
(etc)
To zależy tylko od rodzaju klienta. Tak jak powiedziałem, zależy to tylko od typu klienta. Doświadczony klient woli założyć własną strefę in-addr.arpa i pomyśli, że bardzo dziwnie jest mieć PTR w strefie nazwy domeny. Niezbyt doświadczony klient będzie chciał, aby „po prostu działał” bez konieczności wykonywania dodatkowej konfiguracji.
Prawdopodobnie istnieją inne metody, opisując tylko te dwie, które znam.
Właśnie myślałem o moim stwierdzeniu o tym, jak / 22 i / 14 są łatwe i zastanawiałem się, dlaczego to prawda, ale wszystko między 25 a 32 jest trudne. Nie testowałem tego, ale zastanawiam się, czy możesz przekazać klientowi / 32 w następujący sposób:
16 IN NS ns1.customer.com.
17 IN NS ns1.customer.com.
(etc)
Następnie, po stronie klienta, łapiesz cały / 32:
zone "16.23.16.172.in-addr.arpa" { type master; file "masters/16.23.16.172.rev"; };
zone "17.23.16.172.in-addr.arpa" { type master; file "masters/17.23.16.172.rev"; };
(etc)
A następnie w indywidualnym pliku miałbyś coś takiego:
@ IN PTR office.customer.com.
Oczywistym minusem jest to, że jeden plik na / 32 jest rodzajem brutto. Ale założę się, że to zadziała.
Wszystko, o czym wspomniałem, to czysty DNS, jeśli jakikolwiek serwer DNS ci na to nie pozwala, to dlatego, że ogranicza pełną funkcjonalność DNS. Moje przykłady używają oczywiście BIND, ale zrobiliśmy to po stronie klienta, używając Windows DNS i BIND. Nie widzę powodu, dla którego nie działałby z żadnym serwerem.
Tak, bardzo dobra jest RFC 2317 .
Również mój artykuł (po francusku).
źródło
BIND ma własne makro $ GENERATE do tworzenia sekwencji rekordów PTR, ale zakłada także pełen klasy świat i nie będzie dla ciebie zbyt przydatne. Nie znam żadnych innych serwerów, które mają specjalne wsparcie dla stref odwrotnych CIDR, chociaż podejrzewam, że jest na to zapotrzebowanie!
PowerDNS ma ładny interfejs zaplecza, który pozwoliłby Ci napisać własny, jeśli problem jest wystarczająco duży, aby był wart wysiłku. Możesz także prototypować za pomocą „PipeBackend”. Możesz nawet wykonać magiczne czynności SQL za pomocą interfejsów MySQL / PostgreSQL - zwłaszcza, że Postgres ma typ danych „cidr”.
źródło
http://aa.net.uk/kb-domains-reversedns.html (mniej więcej w połowie) wyjaśnia, w jaki sposób mój dostawca usług internetowych wykonuje zwrotny DNS. Podejrzewam, że każdy sposób, w jaki to zrobisz, będzie brzydki jak diabli.
źródło