MacBook non può usare internet, ma nslookup e ping funzionano entrambi


12

Ho un utente con un nuovo MacBook Pro di fascia alta che non può usare Internet. Può connettersi alla nostra rete cablata o wireless e fare cose come sfogliare le condivisioni di file, ma non può andare oltre.

Quando ho portato la macchina per il test, ho scoperto che avrei potuto fare un nslookup bene e sono in grado di eseguire il ping degli indirizzi restituiti da nslookup. Sono anche in grado di visualizzare le pagine Web inserendo direttamente l'indirizzo IP nella barra degli indirizzi. Tuttavia, quando provo a eseguire il ping del nome di dominio anziché dell'indirizzo IP, si trova lì. Quindi, a quanto pare, posso fare la risoluzione dei nomi o comunicare con un indirizzo, ma non entrambi contemporaneamente.

Ancora una volta, questi sintomi si verificano sia sulla rete cablata che wireless. Altre macchine sulla nostra rete, inclusi alcuni altri Mac, non presentano questo problema.

Qualche idea?

Risposte:


8

Sta mDNSRespondercorrendo? Anche se lo è, prova a fare un sudo killall mDNSRespondere lascialo launchdriavviare automaticamente. (Se avessi già provato a riavviare il sistema e il problema persistesse, probabilmente questa non è la causa.)

Oggigiorno mDNSResponder è una parte fondamentale dell'infrastruttura di risoluzione DNS di Mac OS X. Alcuni strumenti come nslookupcontenere il proprio codice resolver DNS o richiamano API di basso livello che evitano mDNSResponder e utilizzano una libreria di risolutore DNS Unix più tradizionale, ma la maggior parte delle app e strumenti che chiamano semplicemente le API normali si affideranno a mDNSResponder per fare la risoluzione dei nomi.

Puoi anche controllare come hai configurato il DNS nel pannello Network delle Preferenze di Sistema e guardare /etc/resolv.conf(nota: no 'e' in "resolv"). ipconfig getpacket en0(sostituire en0 con l'identificatore del livello BSD dell'interfaccia di rete principale) può essere utile per vedere quali informazioni sul server DNS stanno ricevendo la macchina dal DHCP. Vedi anche la sezione "LOGGING" della mDNSResponder(8)pagina man per ulteriori suggerimenti su come ottenere informazioni sulla risoluzione dei problemi / debug da mDNSResponder.


Questo è persistito in diversi riavvii, ma il fatto che nslookup restituisca un indirizzo mentre qualsiasi altra cosa che deve fare la risoluzione fallisce indica ancora mDNSResponder come un buon candidato per il problema.
Joel Coehoorn,

Incredibile che differenza faccia l'esperienza di un altro anno. Vengo a rivederlo oggi perché qualcuno ha votato per la domanda, e la maggior parte della tua risposta è ora di seconda natura per me, dove prima stavo girando alla cieca. Detto questo, l'ho già detto prima, ma mDNS / Bonjour è una grande pila fumante che Apple non avrebbe mai dovuto scatenare in apparecchiature di produzione.
Joel Coehoorn,

Oh, e lo studente ha finito per risolvere questo problema prima di riavere la macchina per provare questo, ma leggendo i sintomi e il suggerimento ora, sono certo che questo era il problema e che potrebbe essere necessaria la reinstallazione del servizio Bonjour.
Joel Coehoorn,

@Joel Grazie per il follow-up. È bello sentire quando una risposta è stata utile.
Spiff

2

Ho scoperto che la causa principale di questo problema su molti dei miei Mac (beh, Hackintoshes) stava dormendo / sospendendo su disco. Se fallisce, al prossimo avvio mDNSResponder è in uno stato corrotto e il sudo killall mDNSRespondercomando lo corregge.


1

Forse hai specificato manualmente i server DNS nelle impostazioni del tuo Mac? Controlla le tue impostazioni come mostrato qui , rimuovi tutti i server DNS che potresti avere lì, sostituiscili con il tuo IP del punto di accesso (o lascialo vuoto, il DNS dovrebbe essere impostato tramite DHCP).


Il DNS è impostato tramite dhcp e mostra i server DNS corretti.
Joel Coehoorn,

1

Poiché questo comando cruciale ma non documentato cambia in modo esasperante in diverse versioni di MacOS, copio e incolla sotto l'elenco di riferimenti super utili da

"GUIDE PIÙ RAFFREDDATE SUL PIANETA" di Neil Gee https://coolestguidesontheplanet.com/clear-the-local-dns-cache-in-osx/

Come cancellare la cache DNS locale (quando gli URL non si risolvono nel modo desiderato)

sudo killall -HUP mDNSResponder (OSX 10.10.4, 10.11.0, macOS Sierra 10.12.0)

sudo discoveryutil mdnsflushcache (OSX 10.10.0 - 10.10.3)

sudo killall -HUP mDNSResponder (OSX 10.9,10.8,10.7)

sudo dscacheutil -flushcache (OSX 10.5,10.6)

e include anche Windows e Linux


0

Ho davvero lottato con questo e ho provato tutti i passaggi. ciò che ha funzionato per me è stato andare nelle preferenze di rete ed eliminare sia gli adattatori Ethernet che quelli aeroportuali, quindi aggiungerli nuovamente

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.