Esempi di avvelenamento della cache DNS o altri criteri quando un client ignora una risposta

2

Esiste una serie concisa di regole che descrivono ciò che il 99% dei rispondenti DNS accetta?

Al contrario, ci sono un insieme di regole che definiscono quando le query DNS non sono valide?

Penserei che la risposta che sto cercando sia così:

If the DNS server encounters a FQDN that is not equal to the current traversal location, then it must discard any additional records that are sent in the query, and traverse the DNS hierarchy from the root.

    
posta random65537 10.02.2012 - 19:11
fonte

1 risposta

2

Immagino che ci sia una grande differenza tra ciò che fa accade e ciò che dovrebbe accadere. Inoltre, c'è una discreta quantità di incoerenza in questo comportamento che dipende (almeno teoricamente) dal fatto che il server pensi che dovrebbe fare query ricorsive o meno.

La sezione "Informazioni aggiuntive" è lì per evitare (altrimenti inevitabili) ulteriori ricerche, riducendo così sia il tempo di ricerca totale che il carico sul server DNS.

La "regola" come è stata ampiamente accettata dalla comunità divide i server in due gruppi: "nameserver autoritativi" e "risoluzione dei nameserver". Cioè, un server DNS viene utilizzato per servire un insieme specifico di domini, oppure viene usato per agire come proxy eseguendo ricerche DNS ricorsive su altri server per conto di un cliente.

Per i server dei nomi autorevoli, si applicano le seguenti regole:

  1. Non restituire alcun record per il quale il server non è l'autorità
  2. (Corollario) Non eseguire ricerche ricorsive (che violerebbero la regola 1)
  3. Non memorizzare nella cache nulla (che, naturalmente, sarebbe del tutto inutile se si seguono le regole 1 e 2, che è il punto)

Per risolvere i server dei nomi, si applicano le seguenti regole:

  1. Non memorizzare nella cache o restituire alcun record che non hai specificamente richiesto (o che avresti richiesto da quel server specifico)
  2. Non memorizzare nella cache o restituire alcun record proveniente da una fonte che non è autorevole per quel dominio (fare 2 probabilmente implica 1, che di nuovo è il punto)

Il risultato finale è che i domini arriveranno solo da autorevoli server dei nomi o dalla risoluzione dei server che hanno richiesto direttamente le informazioni ai server dei nomi autorevoli. Questo, per definizione, significa che l'avvelenamento della cache non sta accadendo.

Riceverai ulteriori informazioni da un server dei nomi quando penserà di avere informazioni aggiuntive che potrebbero aiutarti. Se stai cercando da un server dei nomi autorevole, le tue informazioni aggiuntive dovrebbero essere limitate solo a ciò che è memorizzato sul server. Ciò potrebbe significare che se la tua risposta è un CNAME a un dominio straniero, tutto ciò che ottieni è un elenco dei server di root. Ma se il server ha la risposta corretta per te (come quando il nome canonico è all'interno della stessa zona del record CNAME), allora dovresti ottenere le informazioni più specifiche disponibili.

Se, d'altra parte, stai facendo richieste a un risolutore di cache, allora il server farà spesso richieste aggiuntive in modo che la risposta che ottieni sia qualcosa che puoi usare. Questo è particolarmente vero nel caso dei record CNAME, ma può essere applicato anche in altri casi.

    
risposta data 12.02.2012 - 06:53
fonte

Leggi altre domande sui tag