Il mio registrar di domini e DNS forniscono attualmente ignora le richieste DNS a domini sconosciuti. Per ignorare intendo buchi neri e non risponde mai, il che fa sì che i miei client DNS e le librerie del resolver riprovino, eseguano il back-off e infine il timeout.
dig @NS3.DNSOWL.COM somedomainthatdoesntexist.org
...
;; connection timed out; no servers could be reached
Nel sondare altri servizi di nomi di dominio popolari, vedo che questo comportamento è piuttosto unico poiché altri provider restituiscono un RCODE di 5 (RIFIUTATO):
dig @DNS1.NAME-SERVICES.COM somedomainthatdoesntexist.org
dig @NS-284.AWSDNS-35.COM somedomainthatdoesntexist.org
dig @NS21.DOMAINCONTROL.COM somedomainthatdoesntexist.org
Tutti restituiscono qualcosa di simile al seguente:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 64732
o
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 31219
Restituire REFUSED
o NXDOMAIN
immediatamente è appropriato IMHO invece di far cadere la richiesta sul piano della sala server.
Quando mi lamento con il mio fornitore del fatto che i loro server non rispondano, mi chiedono di citare la RFC che i loro server stanno violando. So che è strano che mi stiano chiedendo di dimostrare che i loro server dovrebbero rispondere a tutte le richieste, ma così sia.
Domande :
- Sono d'accordo che, a meno che non ci siano ID di richiesta duplicati o una sorta di risposta DOS, un server dovrebbe sempre rispondere alla richiesta. È corretto?
- Quale RFC e sezione specifica dovrei citare per supportare la mia stipulazione?
Per me, è male non rispondere a una query DNS. La maggior parte dei client esegue il backoff e quindi ritrasmette la stessa query allo stesso server DNS o a un altro server. Non solo rallentano i client, ma fanno sì che la stessa query venga ripetuta dai propri server o da altri server a seconda dei server dei nomi autorevoli e delle voci NS.
In RFC 1536 e 2308 vedo molte informazioni sulla memorizzazione nella cache negativa per motivi di prestazioni e per interrompere la ritrasmissione della stessa query. Nel 4074 vedo informazioni sulla restituzione di una risposta vuota con un RCODE di 0, quindi il client sa che non ci sono informazioni ipv6 che dovrebbero indurre il cliente a chiedere informazioni sui RR che sono un altro esempio di risposta vuota.
Ma non riesco a trovare un RFC che dice che un server DNS dovrebbe rispondere a una richiesta, probabilmente perché è implicito.
Il problema specifico si verifica quando migra il mio dominio (e i record DNS associati) sui loro server o i primi X minuti dopo aver registrato un nuovo dominio con il loro servizio. C'è un ritardo tra il momento in cui i server dei nomi autorevoli cambiano (che è abbastanza dannatamente veloce in questi giorni) e i loro server che iniziano a pubblicare i miei record DNS. Durante questo periodo di ritardo, i client DNS pensano che i loro server siano autorevoli ma non rispondono mai a una richiesta, anche con a REFUSED
. Capisco il ritardo che va bene ma non sono d'accordo con la decisione di non rispondere alle richieste DNS. Per la cronaca, capisco come aggirare queste limitazioni nel loro sistema, ma sto ancora lavorando con loro per migliorare i loro servizi per essere più in linea con il protocollo DNS.
Grazie per l'aiuto.
Modificare:
Entro un paio di mesi dalla pubblicazione di questo e dal seguito con il mio provider, hanno cambiato i loro server per tornare NXDOMAIN
per domini sconosciuti.