Geo DNS: rispondere in base a localizzazione

Introduzione

Geo DNS (o GeoDNS) è una tecnica che permette ai server DNS di restituire risposte diverse in base alla posizione geografica del client. In questa guida vediamo come funziona, quali vantaggi offre e come implementarlo.

Cos'è Geo DNS

Geo DNS è una funzionalità avanzata che usa l'IP del resolver (o ECS - EDNS Client Subnet) per determinare la nazione/regione del visitatore e restituire l'IP del server più vicino o adatto a quella area.

Come funziona

  1. Client effettua query DNS per esempio.it.
  2. Resolver invia query al server autoritativo, includendo (se supportato) la subnet del client tramite ECS.
  3. Il server autoritativo determina la regione geografica.
  4. Restituisce IP A diverso a seconda della regione.

Esempio scenario

Regione clientIP restituitoServer
Europa185.10.20.1Datacenter Milano
Nord America23.45.67.89Datacenter Virginia
Asia103.10.20.30Datacenter Singapore
Default185.10.20.1Milano

Casi d'uso

  • CDN: indirizzare a PoP più vicino.
  • Compliance GDPR: clienti EU su server EU.
  • Lingua/localizzazione: redirect a versioni locali del sito.
  • Latency optimization: ridurre RTT.
  • Failover regionale: spostare il traffico tra datacenter.
  • Pricing/restrictions: contenuti differenziati per area.

Provider che supportano Geo DNS

  • AWS Route 53: Geolocation routing policy.
  • Cloudflare: Load Balancing + Steering.
  • Google Cloud DNS: Geo routing policy.
  • NS1: Filter Chain con geo filter.
  • Constellix: ITO (Internet Traffic Optimizer).
  • Akamai EdgeDNS: GTM.
  • Azure DNS: Traffic Manager.

Esempio configurazione Route 53

  1. Crea hosted zone.
  2. Crea record A multipli con tipo Geolocation.
  3. Assegna a ciascun record una regione (continent, country, state).
  4. Imposta un record "Default" per regioni non coperte.

EDNS Client Subnet (ECS)

Per migliorare l'accuratezza, il resolver può includere via ECS la subnet del client originale, non solo l'IP del resolver. Cloudflare, OpenDNS, Google DNS supportano ECS in modalità opt-in per privacy.

Limiti

  • Accuratezza geografica IP non sempre perfetta.
  • VPN: il client appare in una regione diversa.
  • Resolver pubblici: senza ECS, la geolocalizzazione è quella del resolver (es. tutti i client su 8.8.8.8 sembrano essere in USA).
  • Database geo IP da mantenere aggiornati.
  • Cache pubbliche possono inquinare la geolocalizzazione.

Latency vs Geo

Spesso conviene il routing basato su latenza piuttosto che geografico:

  • Geo: usa la nazione del client.
  • Latency: usa misurazioni RTT effettive.

AWS Route 53 e simili supportano entrambi: si possono combinare.

Test Geo DNS

Verifica da regioni diverse con:

  • VPN multi-regione.
  • Strumenti come BGP.he.net, dnschecker.org (mostra IP da nodi nel mondo).
  • Servizi enterprise come Catchpoint o ThousandEyes.

Best practice

  • Imposta sempre una policy default.
  • Mantieni TTL relativamente alto (300-3600 s) per ridurre carico DNS.
  • Combina con health check per failover automatico.
  • Monitora distribuzione del traffico.

Hai bisogno di aiuto?

Se vuoi gestione DNS affidata a G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?