
Spiego come ho configurato i DNS sul mio Linux-desk con l'aiuto di Copilot-AI. Ecco i passaggi principali cominciando dalla chat con il mio AI Agent:
[CopilotAI:]
Stai usando systemd‑resolved con DNS locale 127.0.0.53, che a sua volta inoltra le query al tuo router 192.168.1.1, con fallback su Cloudflare (1.1.1.1) e Google (8.8.8.8). È una configurazione valida, ma non è la più sicura né la più veloce possibile.
[Me:]
...continuo ad avere problemi con siti che usano DNS-based geo-routing tipo "xyblabla.com/it"
[CopilotAI:]
Capito ... se anche con il router TIM come DNS primario continui ad avere problemi di geo-routing con siti come "xyblabla.com/it", allora il problema non è la tua configurazione, ma come systemd‑resolved invia le query.
Systemd‑resolved non passa il tuo IP ai DNS TIM. Anche se tu imposti DNS=192.168.1.1 la tua subnet locale non viene inoltrata tramite EDNS Client Subnet (ECS). Molti siti che fanno geo‑routing (come "xyblabla") si basano proprio su ECS. Risultato:
il router TIM riceve la query senza ECS
il resolver TIM risponde con un nodo CDN “generico”
il sito ti vede come fuori Italia o “non localizzato correttamente”
SOLUZIONE-> "bypassare systemd‑resolved per i siti con geo‑routing"
Per mettere in pratica questa soluzione proposta ci sarebbero varie opzioni, io decido di disattivare systemd‑resolved e usare direttamente i DNS di TIM. Concordo quindi con l'AI la configurazione definitiva ottimale per le mie esigenze e procedo come segue:
Disattivo systemd‑resolved
sudo systemctl disable --now systemd-resolved
sudo rm /etc/resolv.conf
Creo un resolv.conf statico e lo edito con i contenuti proposti da AI
sudo nano /etc/resolv.conf
# resolv.conf statico definitivo - my edition
# DNS primari con supporto ECS (geo-routing corretto)
nameserver 208.67.222.222 # OpenDNS
nameserver 8.8.8.8 # Google DNS
# Fallback affidabili con ECS
nameserver 208.67.220.220 # OpenDNS secondary
nameserver 8.8.4.4 # Google secondary
# Timeout e retry più rapidi
options timeout:1
options attempts:2
options rotate
E per finire un ultimo intervento che impedisca a NetworkManager qualsiasi azione sul file appena creato. Quindi edito N.M. e do il comando finale.
sudo nano /etc/NetworkManager/NetworkManager.conf
[main]
dns=none
sudo systemctl restart NetworkManager