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.