Chrome utilizza un server DNS diverso dal sistema operativo?


11

Sto eseguendo Chrome su Linux. Ho DNS locale per risolvere * .myname.com in 127.0.0.2 (digito "host whatever.myname.com" o "host myname.com" e vedo l'indirizzo corretto). Tuttavia in Chrome quando digito "myname.com" viene reindirizzato a "www.myname.com" e risolve il sito Web "reale" che non desidero.

Solo quando digito "test.myname.com", non "www.myname.com", Chrome lo risolve correttamente in 127.0.0.2. Immagino che Chrome stia cercando di fare qualcosa di strano con www.anything.com e anything.com.

Come sistemarlo?

PS: il DNS locale che sto usando è dnsmasq. Se inserisco esplicitamente myname.com in / etc / hosts Chrome lo risolve correttamente in 127.0.0.2, ma non riesco a utilizzare il carattere jolly in / etc / hosts.

PPS: posso confermare su chrome: // net-internals / # dns che Chrome correttamente myname.com e www.myname.com nel vero IP pubblico.

Risposte:


6

Chrome infatti utilizzava il proprio client DNS che parla con più server DNS (il DNS locale, il DNS del router, il DNS del router in IPv6). Vado su chrome: // flags e disabilito "DNS asincrono incorporato". Ora funziona.


2
Il flag "DNS asincrono incorporato" è stato rimosso da Google Chrome, disabilitando così la "correzione" per questo. chromium.googlesource.com/chromium/src/+/… (da superuser.com/a/887191/109126 )
jcisio

5
Questa opzione è stata rimossa da Chrome, rimuovere la risposta per evitare confusione o downvotes: D
sorin

1
C'è ancora qualche tipo di problema qui. Sto usando Chrome 56 su Linux Mint e ci vogliono diversi minuti per risolvere gli indirizzi dopo la connessione a una VPN. Firefox lo fa immediatamente. Sembra che Chrome impieghi un po 'di tempo per vedere le modifiche /etc/resolv.conf.
orodbhen,

1
È ancora valido in Chrome per Android. L'opzione si chiama "Risolutore DNS asincrono" (chrome: // flags / # enable-async-dns)
MaxChinni

1
non esiste tale opzione in 69+ e la disabilitazione di chrome: // flags / # enable-new-preconnect (menziona DNS) non aiuta
vladkras

1

È possibile modificare le impostazioni del proxy e forzarlo a utilizzare l'indirizzo desiderato.

Apri un nuovo file, con estensione .pac, quei file vengono utilizzati dal sistema per determinare i proxy, copialo nel contenuto del file:

function FindProxyForURL(url, host) {
    if (host=='www.myname.com' || host=='myname.com'){
        return 'PROXY 127.0.0.2';
    }
    // All other domains should connect directly without a proxy
    return "DIRECT";
}

vai alle impostazioni del proxy Chrome e in "url per la configurazione automatica del proxy" inserisci il percorso per quel file.

non è necessario disporre di un server DNS, è possibile reindirizzarlo a porte diverse sulla macchina e programmarlo per le proprie esigenze.


1
L'ho usato quando ho usato Mac, perché in OS XI posso usare il file .pac per l'intero sistema. Non in Linux AFAIK (non funziona con wget, curl ecc.).
jcisio,

che linux hai? (ho Kubuntu e funziona)
Ohad Cohen,

Archlinux + KDE. Non credo che le impostazioni di Chrome possano cambiare il comportamento del sistema operativo nella console.
jcisio,

le impostazioni del proxy Chrome aprono solo le impostazioni del proxy di sistema
Ohad Cohen,

Grazie, ho appena provato con xubuntu nel mio netbook. Impossibile aprire le impostazioni del proxy systme (la pagina chrome: // linux-proxy-config / ha dato un errore). Proverò con il mio Archlinux più tardi.
jcisio,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.