MacBook nie może korzystać z Internetu, ale zarówno nslookup, jak i ping działają


12

Mam użytkownika z nowym wysokiej klasy komputerem MacBook Pro, który nie może korzystać z Internetu. Może łączyć się z naszą siecią przewodową lub bezprzewodową i wykonywać takie czynności, jak przeglądanie udziałów plików, ale nie może uzyskać dalszych korzyści.

Kiedy sprowadziłem maszynę do testowania, stwierdziłem, że mogę dobrze wykonać nslookup i mogę pingować adresy zwrócone przez nslookup. Jestem nawet w stanie wyświetlić strony internetowe, wpisując adres IP bezpośrednio w pasku adresu. Jednak gdy próbuję pingować nazwę domeny zamiast adresu IP, po prostu tam jest. Najwyraźniej mogę albo rozpoznać nazwę, albo komunikować się z adresem, ale nie jednocześnie.

Znów objawy te występują zarówno w sieci przewodowej, jak i bezprzewodowej. Inne komputery w naszej sieci, w tym kilka innych komputerów Mac, nie mają tego problemu.

Jakieś pomysły?

Odpowiedzi:


8

Jest mDNSResponderuruchomiony? Nawet jeśli tak jest, spróbuj zrobić sudo killall mDNSResponderi pozwól na launchdautomatyczne ponowne uruchomienie. (Jeśli próbowałeś zrestartować system, a problem nadal występował, prawdopodobnie nie jest to przyczyną).

mDNSResponder jest obecnie kluczowym elementem infrastruktury usługi rozpoznawania nazw DNS w systemie Mac OS X. Kilka narzędzi, takich jak nslookupwłasny kod rozpoznawania DNS lub wywoływanie interfejsów API niskiego poziomu, które unikają mDNSResponder i używają bardziej tradycyjnej biblioteki uniksowego mechanizmu rozpoznawania DNS, ale większość aplikacji i narzędzi, które wywołują zwykłe interfejsy API, będzie polegać na rozpoznawaniu nazw przez mDNSResponder.

Możesz także sprawdzić, jak skonfigurowałeś DNS w panelu Sieć w Preferencjach systemowych i spojrzeć na /etc/resolv.conf(uwaga: brak „e” w „resolv”). ipconfig getpacket en0(zamień en0 na identyfikator warstwy podstawowego interfejsu sieciowego BSD) może być przydatne, aby zobaczyć, jakie informacje o serwerze DNS otrzymujesz od DHCP. Zobacz także sekcję „LOGOWANIE” strony podręcznika, mDNSResponder(8)aby uzyskać więcej wskazówek na temat uzyskiwania informacji na temat rozwiązywania problemów / debugowania z mDNSResponder.


Trwało to przez kilka restartów, ale fakt, że nslookup zwraca adres, podczas gdy cokolwiek innego, co wymaga rozwiązania, nadal wskazuje, że mDNSResponder jest dobrym kandydatem na problem.
— Joel Coehoorn

Niesamowite, jaką różnicę robi kolejny rok doświadczenia. Przychodzę dziś do przeglądu, ponieważ ktoś głosował na to pytanie, a większość twojej odpowiedzi jest teraz dla mnie drugą naturą, gdzie przedtem strzelałem w ciemno. To powiedziawszy, powiedziałem to już teraz, ale mDNS / Bonjour to świetny parujący stos, którego Apple nigdy nie powinien wypuścić na sprzęt produkcyjny.
— Joel Coehoorn,

Och, a uczeń rozwiązał ten problem, zanim mieliśmy maszynę z powrotem, aby to wypróbować, ale czytając teraz objawy i sugestie, jestem pewien, że to był problem i że może być konieczna ponowna instalacja usługi Bonjour.
— Joel Coehoorn

@Joel Dzięki za kontynuację. Miło jest usłyszeć, kiedy Odpowiedź była pomocna.
— Spiff

2

Odkryłem, że główną przyczyną tego problemu na wielu moich komputerach Mac (cóż, Hackintoshes) było spanie / zawieszanie się na dysku. Jeśli to się nie powiedzie, przy następnym uruchomieniu mDNSResponder jest w stanie uszkodzonym, a sudo killall mDNSResponderpolecenie to naprawia.


1

Być może ręcznie określiłeś serwery DNS w ustawieniach Maca? Sprawdź swoje ustawienia, tak jak to pokazano tutaj , usuń wszystkie serwery DNS, które tam masz, zastąp adres IP punktu dostępu (a nawet po prostu pozostaw puste, DNS należy ustawić przez DHCP).


DNS jest ustawiany przez dhcp i pokazuje prawidłowe serwery dns.
— Joel Coehoorn,

1

Ponieważ to kluczowe, ale nieudokumentowane polecenie zmienia się szaleńczo w różnych wersjach MacOS, kopiuję i wklejam poniżej super pomocnej listy referencyjnej z

„NAJLEPSZE PRZEWODNIKI NA PLANECIE” Neila Gee https://coolestguidesontheplanet.com/clear-the-local-dns-cache-in-osx/

Jak wyczyścić lokalną pamięć podręczną DNS (gdy adresy URL po prostu nie rozwiązują problemu tak, jak tego chcesz)

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)

a także obejmuje Windows i Linux


0

Naprawdę walczyłem z tym i próbowałem wszystkich kroków. działało dla mnie wchodzenie w preferencje sieciowe i usuwanie zarówno kart Ethernet, jak i kart lotniskowych, a następnie ich ponowne dodawanie

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.