Wyszukiwanie DNS w systemie Mac OS X wydaje się być popsute - ale tylko w pracy


8

Wyszukiwanie DNS w Mac OS X na zawsze bierze się z Safari i innych aplikacji korzystających z mDNSResponder. Te same wyszukiwania działają poprawnie, jeśli używam nslookup z wiersza poleceń, a także działają dobrze z mojego iPhone'a i iPada w tej samej sieci bezprzewodowej.

I to tylko w sieci w pracy; kiedy jestem w domu lub korzystam z iPhone'a, wszystkie wyszukiwania DNS działają poprawnie. Gdy jestem w sieci w pracy, przez Wi-Fi lub Ethernet, mam te problemy. Próbowałem użyć następujących poleceń:

launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

To kiedyś zapewniało chwilową ulgę (minuty) pod Snow Leopardem, ale teraz, pod Lionem, zazwyczaj nie zapewnia niczego.

Ani moje ustawienia Ethernet, ani Wi-Fi nie określają serwerów DNS; są automatycznie wypełniane z routera. Ale próbowałem podać własne, takie jak Google DNS lub OpenDNS, ale to nie rozwiązuje problemu.

Konfiguracja sieci to router podłączony do modemu kablowego, z którego wychodzą wszystkie porty Ethernet w biurze. Router Wi-Fi Airport Extreme jest również podłączony do routera głównego (w trybie mostu), a klienci Wi-Fi łączą się z nim.

Przeszukałem wszystko i na początku znalazłem inne rzeczy, które wyglądają na odpowiednie (np. Wyszukiwanie DNS kończy się niepowodzeniem, ale działa nslookup ), co sprawia, że ​​uważam, że te problemy z mDNSResponder nie są zbyt rzadkie, ale żadne z nich nie pasuje dokładnie, a ich rozwiązania nie pracował dla mnie jeszcze.

Ponadto: nie każde wyszukiwanie DNS, tylko większość. Wyszukiwania w Google pojawiają się natychmiast, ale Mapy Google ładują się wiecznie (kiedy patrzę na okno aktywności, zwykle są to skrypty i inne elementy pochodzące z jakiegoś serwera Google CDN). Nawet witryny, z których korzystamy na co dzień, a można by pomyśleć, że gdzieś w pamięci podręcznej (np. Php.net) wczytują się lub upłyną czas.

Ponadto: wszystko ładuje się poprawnie z przeglądarki na maszynie wirtualnej z systemem Windows XP, co według mnie jeszcze bardziej oskarża o mDNSResponder jako winowajcę - ale wszystko działa dobrze, gdy jestem w innej sieci.


próbowałeś spojrzeć na dane wyjściowe z opensnoop, aby zobaczyć, czy coś mówi? Byłbym również ciekawy, jeśli spojrzałeś na dane wyjściowe tcpdump, aby zobaczyć, czy są wysyłane żądania, na które nie ma odpowiedzi.
wielomian

Spojrzałem na oba, ale nie jestem do końca pewien, czego powinienem szukać - nie jestem pewien, co oznacza stan błędu. Jakieś wskazówki na temat tego, co może być niezwykłe?
Charles,

Odpowiedzi:


4

Powodem powolnego działania DNS w biurze, ale nie w domu, może być fakt, że router biurowy korzysta z protokołu IPv6, ale router domowy korzysta z protokołu IPv4 i że Lion lepiej korzysta z protokołu IPv6 niż Snow Leopard. Witryny, których to spowolnienie nie dotyczy, to prawdopodobnie te, które mają lepszą obsługę IPv6.

W tym artykule opisano środki, które pokazują, że IPv6 jest 2-3 razy wolniejszy niż IPv4 w DNS:
IPv6 spowolni (DNS)

W takim przypadku wyłączenie IPv6 na routerze biurowym (i tak w całej sieci biurowej) może rozwiązać problem.

Ten artykuł może być również przydatny: Jak wyłączyć IPv6 w systemie Mac OS X 10.7 Lion .


2

Miałem ten sam problem z komputerem MacBook Pro z systemem 10.6. Rzadko kiedykolwiek wyłączam maszynę. Zasadniczo w domu po prostu zamykam pokrywkę, wkładam ją do torby i zabieram do pracy. W pracy otwieram wieko i idę. Zauważyłem, że OS X nie wydaje się tak płynnie, jak chciałbym. Dostawałbym powolny DNS, duże ilości oczekujących zasobów sieciowych itp. To, co naprawia to dla mnie, to ręczne odłączanie się od każdej sieci przed zamknięciem komputera (tj. Wyłączenie lotniska przed zamknięciem pokrywy). Jeśli tego nie zrobię, moim trybem gotowości jest:

dscacheutil -flushcache

Tak czy inaczej działa dla mnie całkiem dobrze. W rzadkich przypadkach ponownie uruchamiam maszynę.


Gareth, właśnie zauważyłem twój komentarz do zmian, wróciłem i odpowiednio zmodyfikowałem wszystkie moje odpowiedzi. Przepraszam.
C0D3M0NK3Y

Próbowałem dscacheutil i restartowałem; bez względu na to, co robię, nadal mam te same problemy w sieci roboczej, ale tylko tam - działa idealnie w domu, niezależnie od tego, czy wyłączam maszynę przed powrotem do domu, czy po prostu uśpiam jak zwykle.
Charles,

0

Czy inne komputery Mac działają poprawnie w sieci biurowej?

Upewnij się, że przypisywane ustawienia sieciowe są spójne. Widziałem sytuację, w której serwer DHCP przypisywał domyślną bramę, która nie była w podsieci klienta. Windows wykorzystał to i działał dobrze, ale MacOS (poprawnie!) Odmówił wysłania na adres IP, który nie był w podsieci.

Gdy maska ​​podsieci zostanie zastosowana zarówno do adresu IP klienta, jak i do domyślnej bramy, wyniki powinny być równe. W przeciwnym razie jest to zła konfiguracja serwera DHCP.

Ale to nie brzmi dokładnie tak. Czy Twój komputer Mac jest skonfigurowany do pracy w trybie WiFi i Ethernet? Jeśli tak, spróbuj wyłączyć je pojedynczo.


Problem DHCP nie powinien powodować spowolnienia, chyba że powoduje to, że pakiety krążą po sieci biurowej.
harrymc

Wszystkie ustawienia sieciowe wyglądają dobrze. Ten sam problem występuje bez względu na to, czy korzystam tylko z Wi-Fi, tylko z Ethernetem, czy z obu.
Charles,
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.