Introduzione
Questo documento descrive la subnet client EDNS (ECS) e il suo funzionamento con Cisco Umbrella.
Che cos'è ECS?
Il DNS tradizionale è una richiesta inviata a un server DNS che risponde con un singolo record A. Questa discussione è semplificata se si parla solo dei record A. Lo stesso processo si applica ai record IPv6 e AAAA. Con l'avvento delle reti CDN (Content Delivery Network) ampiamente distribuite e dei servizi DNS ricorsivi, la geolocalizzazione è sempre più importante per un'esperienza ottimale.
Il DNS tradizionale geolocalizza la risposta a una domanda DNS nel server DNS autorevole e fornisce una risposta che corrisponde meglio all'origine della query DNS. Per usare un esempio metaforico, prendete una rubrica. Tradizionalmente, l'unica rubrica pertinente era quella locale, quindi si trova sempre il negozio locale. Una richiesta di "chiamare il ferramenta di Jim". Oggi, dove un singolo indirizzo Web ha molte sedi in tutto il mondo, è fondamentale per una buona esperienza di connessione a un server vicino. Con i server DNS ricorsivi e le reti più distribuite, l'IP di origine della query DNS non è necessariamente la migliore fonte di dati di geolocalizzazione.
Figura 2: Esempio per un utente del New Jersey che cerca una risposta da un DNS autorevole

Nella nostra metafora della rubrica, un'azienda può avere 50 sedi in tutto il mondo, ma come lettore, sapete qual è quella più vicina e chiamatela. Jim sta andando bene, quindi la nostra richiesta di "chiamare il ferramenta di Jim" potrebbe portarti al negozio del New Jersey o di Chicago a seconda di chi chiedi. ECS esegue lo stesso servizio, ma per una ricerca DNS. EDNS Client Subnet (ECS) è un meccanismo per l'indirizzo IP di origine desiderato di una query DNS da incorporare nelle informazioni EDNS di un pacchetto DNS. Il server DNS autorevole che supporta il servizio ECS legge queste informazioni di origine e risponde con il record A del server migliore possibile. Per la metafora della rubrica telefonica, il servizio ECS equivale a una nota che specifica la rubrica telefonica dell'area da esaminare. Questa richiesta potrebbe essere "chiamare il ferramenta di Jim a Belvidere, NJ" ed è possibile fornire una risposta ideale. Per maggiori informazioni, visitate la home page del progetto ECS su umbrella.cisco.com.
Server ECS e DNS ricorsivi
Cisco Umbrella, come altri servizi DNS ricorsivi, rappresenta una sfida per la geolocalizzazione basata su DNS. In genere, gli utenti richiedono il DNS all'ISP, che interroga l'autorità DNS. Ciò fornisce una geolocalizzazione nativamente buona per gli intervalli IP della rete dell'ISP.
I provider DNS ricorsivi si trovano al di fuori della rete di un ISP e possono essere collocati ovunque. Cisco Umbrella gestisce molti centri dati con indirizzi IP anycast e le query DNS possono raggiungere una delle diverse posizioni di resolver in tutto il mondo. Più frequentemente viene eseguita una query sulla posizione più vicina; tuttavia, ciò dipende dalle route ottimali con ogni ISP. Soprattutto, quando si tratta di servizi web ampiamente distribuiti come le CDN, il resolver Umbrella più vicino potrebbe non essere vicino alla posizione del richiedente e potrebbe ricevere un server CDN di scarsa qualità in risposta. Ad esempio, un utente in Costa Rica potrebbe colpire il centro dati di Cisco Umbrella a Miami e ricevere contenuti da una rete CDN di Miami. Per la nostra metafora della rubrica, è come chiamare l'operatore e chiedere il numero dell'hardware di Jim. In base alla posizione dell'operatore, si riceve la risposta in base a tale area. Chicago restituisce Jim di Wheaton e Miami può restituire Jim di South Beach.
Figura 2: Esempio per un utente del New Jersey che cerca una risposta da Cisco Umbrella

L'ECS è prezioso per le CDN per i provider DNS ricorsivi, in quanto la subnet di origine originale può essere trasmessa tramite ECS all'infrastruttura DNS autorevole della CDN. Una query tramite Umbrella a un server dei nomi abilitato ECS include la rete di Classe C dell'utente richiedente (/24 blocco CIDR) alla query DNS autorevole e restituisce e memorizza nella cache (in base a TTL) la risposta pertinente. Per la nostra metafora della rubrica, questo è chiamare l'operatore e richiedere l'hardware di Jim vicino a San José, Costa Rica. L'operatore di Miami avrebbe risposto con il numero di Jim di San Pedro.
In conclusione, ECS consente a un utente, in qualsiasi parte del mondo, di eseguire query su un server dei nomi in qualsiasi parte del mondo e di ricevere una risposta personalizzata in base alla posizione di origine, anche se utilizza un server DNS ricorsivo lontano (che supporta ECS). Il risultato finale è il server CDN più veloce possibile da qualsiasi parte del mondo tramite qualsiasi servizio DNS supportato.
ECS e Cisco Umbrella
Cisco Umbrella supporta ECS per i resolver DNS autorevoli basati su un consenso esplicito per i proprietari dei server dei nomi. Molte CDN godono di una geolocalizzazione rapida e precisa per gli utenti Umbrella, mentre alcune CDN e servizi non supportano ancora ECS.
Conoscere un servizio che non utilizza ancora ECS? Contattare la rete CDN e chiedere informazioni sull'implementazione di ECS. Prima che Umbrella possa inviare i dati ECS, è necessario che ECS sia supportato dai server dei nomi autorevoli.
I proprietari del sito possono contattare EMC all'indirizzo umbrella-support@cisco.com per convalidare l'implementazione e iniziare a ricevere i dati ECS da Cisco Umbrella. Sono supportati i dati ECS IPv6 e IPv4. Includere un elenco di server dei nomi (per nome) da convalidare e un dominio in base al quale eseguire la convalida.
Utilizzo di ECS in dig
Lo sapevi che Ding supporta ECS in modo nativo nelle query DNS a partire dalla versione 9.10? Aggiungere "+subnet=<subnet>" direttamente al file dig rispetto al server dei nomi autorevole. Nota: questi dati vengono eliminati se si esegue una query direttamente su Umbrella e vengono sostituiti con l'origine /24. Per ulteriori informazioni, vedere l'articolo https://support.opendns.com/hc/en-us/articles/227987687.
dig +subnet=208.67.222.0/24 <domain> @<nameserver>
Nella risposta cercare questa sottosezione per verificare che un server dei nomi utilizzi i dati ECS:
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
; CLIENT-SUBNET: 208.67.222.0/24/32
Proprietari autorevoli del server dei nomi
Stai utilizzando ECS sul tuo server dei nomi e stai cercando di sbloccarne il potenziale per gli utenti Cisco Umbrella in tutto il mondo? Per iniziare a inviare i dati ECS ai server dei nomi, visitare il sito Web all'indirizzo umbrella-support@cisco.com. Includere nella richiesta un elenco dei domini del server dei nomi e un dominio di esempio abilitato per ECS utilizzabile per convalidare la configurazione. Costruiamo insieme un Internet più veloce.