Jak przetestować zapis kleju DNS?


24

Witaj Właśnie skonfigurowałem serwer DNS dla mojej domeny example.org z 2 serwerami nazw ns1.example.org i ns2.example.org. Próbowałem ustanowić rekord kleju dla ns1 i ns2 u mojego rejestratora.

Wydaje się, że działa na razie, gdy wykonuję wykopanie example.org, ale kiedy wykonuję whois example.org, to wyświetla listę ns1.example.org i ns2.example.org, ale nie ich adres IP, który powinien być ustawiony jako rekord kleju .

Zastanawiam się więc, jak mogę sprawdzić, czy istnieje płyta z klejem? Czy robię to z whois? Widziałem rekordy whois .com i .net, które mają zarówno nazwę domeny, jak i adres IP serwerów nazw, czy .org jest inny? Jaki jest właściwy sposób na przetestowanie tego?

Dzięki.

Odpowiedzi:


44

Rekordy kleju istnieją tylko w strefie nadrzędnej nazwy domeny.

Dlatego w przypadku example.orgnazwy domeny najpierw znajdź .orgserwery nazw:

% dig +short org. NS
a0.org.afilias-nst.info.
a2.org.afilias-nst.info.
b0.org.afilias-nst.org.
b2.org.afilias-nst.org.
c0.org.afilias-nst.info.
d0.org.afilias-nst.org.

Następnie, dla wielu z nich, które masz ochotę na testowanie, wyraźnie poproś te serwery nazw o NSrekordy dla Twojej domeny:

% dig +norec @a0.org.afilias-nst.info. example.org. NS

Powinieneś odzyskać prawidłową listę NSrekordów w „SEKCJI ODPOWIEDZI”. W przypadku serwerów nazw, które mają poprawnie skonfigurowany klej, powinieneś zobaczyć te rekordy kleju A(i / lub AAAA) w „SEKCJI DODATKOWEJ”.


W mojej domenie dodatkowa sekcja zawiera rekord kleju, ale także kilka innych rekordów NS, które nie są częścią kleju, który ustawiłem w rejestrze. Jak odróżnić je od siebie?
Calimo

7

Aby sprawdzić, czy skonfigurowano rekord GLUE:

dig +trace @a.root-servers.net ns0.nameserverhere.com

Jeśli skonfigurowano KLEJ, powinieneś zobaczyć rekord, który kończy się na:

“Recevied XXX bytes from x.GTLD-SERVERS.NET.”

Istnieją również strony, które zrobią to za Ciebie, takie jak http://www.intodns.com/


Dzięki, intodny działały świetnie, otrzymując wszystkie zielone kleszcze na kleju i NS. Nie dostaję jednak polecenia kopania. Otrzymałem wiadomość Odebrano. W szczególności otrzymałem: „Otrzymałem 433 bajtów z 192.33.4.12 # 53 (c.root-servers.net) w 183 ms.” Ale potem kończy się na: „Przekroczono limit czasu połączenia; nie można było nawiązać połączenia z serwerem”. Otrzymuję również podobne komunikaty, gdy używa losowej liczby dla części ns, np. Ns384289.example.org.

9
ten test diagnostyczny wykopu jest całkowicie niepoprawny ...
Alnitak

Wiem, że to stare, ale bardzo pomocne. Przekazałem wyniki do sed / awk, aby porównać katalog główny z serwerem nazw, aby zidentyfikować niedopasowane rekordy NS.
jeffatrackaid

4

Oto mały skrypt powłoki, który implementuje odpowiedź Alnitaka:

#!/bin/sh
S=${IFS}
IFS=.
for P in $1; do
  TLD=${P}
done
IFS=${S}

echo "TLD: ${TLD}"
DNSLIST=$(dig +short ${TLD}. NS)
for DNS in ${DNSLIST}; do
  echo "Checking ${DNS}"
  dig +norec +nocomments +noquestion +nostats +nocmd @${DNS} $1 NS
done

Przekaż nazwę domeny jako parametr:

./checkgluerecords.sh example.org

3

dig +tracejest zasadniczo najprostszym sposobem na sprawdzenie łańcucha delegacji. Jednak rekordy kleju znajdują się w dodatkowej sekcji i domyślnie dane wyjściowe śledzenia nie obejmują dodatkowej sekcji. Trzeba będzie wyraźnie określić, że ma to być uwzględnione w danych wyjściowych.

dig +trace +additional example.com


Jeśli chodzi o sprawdzenie poprawności łańcucha delegacji, prawdopodobnie będziesz chciał również zobaczyć wiarygodne NSzapisy, w tym przypadku:

dig +trace +additional example.com NS

0

Możesz także użyć whois, tam gdzie rejestr go obsługuje, do bezpośredniego sprawdzenia istnienia kleju dla danego serwera nazw. Na przykład, aby sprawdzić jeden z serwerów nazw serverfault.com:

whois ns-860.awsdns-43.net.

Aby uzyskać bardziej zwięzłą odpowiedź:

whois ns-860.awsdns-43.net. | grep "No match\|IP" | xargs

Uwaga: Z pewnością będzie to działać dla serwerów nazw w przestrzeni nazw .net i .com, ale prawdopodobnie nie dla większości innych rejestrów.


1
whois naprawdę nie jest właściwym narzędziem do zapytania o istnienie kleju. digjest bardziej odpowiednie.
sendmoreinfo

Nie zgadzam się: możesz bezpośrednio sprawdzić istnienie kleju za pomocą whois (tj. Bez potrzeby domeny delegowanej na ten serwer nazw), ale teraz, gdy sprawdziłem, że nie jest tak w przypadku .org TLD. Moja odpowiedź jest poprawna dla .net / .com, ale nie takie było pierwotne pytanie, więc przypuszczam, że nie jest to dobra odpowiedź na to pytanie.
user3166580

Myślę też, że kluczową kwestią dla oryginalnego postu jest to, że jeśli klej nie istniałby w strefie nadrzędnej organizacji, wówczas nie byłoby możliwości delegowania domeny na serwery nazw. tzn. ponieważ nie możesz mieć bez nazwy serwerów nazw w trybie bailiwick.
user3166580

Twoja odpowiedź jest poprawna dla żadnej TLD. whoisnie ma nic wspólnego z działającym DNS i nie jest narzędziem do wyświetlania klejów. Za pomocą whois można wyszukiwać serwery nazw istniejące w rejestrach, ale fakt, że serwer nazw jest tutaj przechowywany w obiekcie, nie oznacza, że ​​jest on używany przez domenę, w której jest bailiwick, i jest to jedyny przypadek, który musi zostać opublikowany jako klej.
Patrick Mevzek,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.