Come testare il record di colla DNS?


24

Ciao, ho appena impostato un server DNS per il mio dominio example.org con 2 server dei nomi ns1.example.org e ns2.example.org. Ho tentato di impostare un record di colla per ns1 e ns2 presso il mio registrar.

Sembra funzionare per ora quando faccio un dig esempio.org ma quando faccio un whois esempio.org elenca ns1.example.org e ns2.example.org ma non il loro indirizzo IP che dovrebbe essere impostato come un record di colla .

Quindi mi chiedo come posso verificare l'esistenza di un record di colla? Lo faccio con whois? Ho visto i record whois .com e .net che hanno sia il nome di dominio che l'indirizzo IP per i server dei nomi, .org è diverso? Qual è il modo corretto di testarlo?

Grazie.

Risposte:


44

I record di colla esistono sempre e solo nella zona padre di un nome di dominio.

Quindi nel caso del tuo example.orgnome di dominio, prima trova i .orgserver dei nomi:

% 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.

Quindi, per quanti di questi desideri provare, chiedi esplicitamente a quei server dei nomi i NSrecord per il tuo dominio:

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

È necessario recuperare l'elenco corretto dei NSrecord nella "SEZIONE RISPOSTA". Per tutti i server dei nomi che hanno una colla correttamente configurata, dovresti vedere quei record di colla A(e / o AAAA) visualizzati nella "SEZIONE ADDITONALE".


Per il mio dominio, la sezione aggiuntiva contiene il record di colla, ma anche diversi altri record NS che non fanno parte della colla che ho impostato nel registro. Come faccio a distinguerli?
Calimo,

7

Per verificare se è stato impostato un record GLUE:

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

Se la GLUE è installata dovresti vedere un record che termina con:

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

Ci sono anche siti che lo faranno per te come http://www.intodns.com/


Grazie, intodns ha funzionato alla grande, ottenendo tutte le zecche verdi sulla colla e roba NS. Non ho ricevuto il comando dig però. Ho ricevuto un messaggio ricevuto. In particolare, ho ottenuto questo: "Ricevuto 433 byte da 192.33.4.12 # 53 (c.root-servers.net) in 183 ms." Ma poi termina con: "timeout della connessione; non è stato possibile raggiungere nessun server" Ricevo anche messaggi simili quando si utilizza un numero casuale per la parte ns, ad esempio ns384289.example.org.

9
quel test diagnostico di scavo è completamente sbagliato ...
Alnitak,

So che questo è vecchio ma molto utile. Ho convogliato i risultati in sed / awk per confrontare root e nameserver per identificare i record NS non corrispondenti.
jeffatrackaid,

4

Ecco un piccolo script di shell che implementa la risposta di Alnitak:

#!/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

Passa il nome del dominio come parametro:

./checkgluerecords.sh example.org

3

dig +traceè generalmente il modo più semplice per ispezionare la catena di delegazioni. Tuttavia, i record di colla si trovano nella sezione aggiuntiva e per impostazione predefinita l'output di traccia non include la sezione aggiuntiva. Dovrai specificare esplicitamente che vuoi che sia incluso nell'output.

dig +trace +additional example.com


Se l'idea è quella di verificare l'integrità della catena di delega, probabilmente vorrai vedere anche i NSrecord autorevoli , in questo caso:

dig +trace +additional example.com NS

0

Puoi anche usare whois, dove il registro lo supporta, per controllare direttamente la colla esistente per un determinato server dei nomi. Ad esempio, per controllare uno dei server dei nomi di serverfault.com:

whois ns-860.awsdns-43.net.

Per una risposta più concisa:

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

Nota: questo funzionerà sicuramente per i server dei nomi nello spazio dei nomi .net e .com, ma probabilmente non per la maggior parte degli altri registri.


1
whois non è davvero lo strumento giusto per chiedere l'esistenza di colla. digè più appropriato.
sendmoreinfo,

Non sono d'accordo: puoi verificare direttamente l'esistenza della colla con whois (cioè senza bisogno di un dominio che è stato delegato a quel server dei nomi), ma ora che ho verificato che non è il caso di TLD .org. La mia risposta è corretta per .net / .com, ma non è questa la domanda originale, quindi suppongo che non sia una buona risposta a quella domanda.
user3166580,

Penso anche che il punto chiave del post originale sia che, se la colla non esistesse nella zona padre dell'organizzazione, non saresti stato in grado di delegare il dominio ai server dei nomi. cioè perché non è possibile avere server dei nomi in-bailiwick senza glueless.
user3166580,

La tua risposta è corretta per nessuno dei TLD. whoisnon ha nulla a che fare con il DNS operativo e non è lo strumento da utilizzare per vedere le colle. Puoi usare whois per cercare i nameserver esistenti nei registri, ma il fatto che il nameserver sia memorizzato in un oggetto qui non significa che sia usato dal dominio in cui è bailiwick che è l'unico caso che deve essere pubblicato come colla.
Patrick Mevzek,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.