Пошук DNS Mac OS X, схоже, заплутався - але лише на роботі


8

Пошуки DNS Mac OS X беруть назавжди від Safari та інших програм, які використовують mDNSResponder. Ті ж пошуки працюють добре, якщо я використовую nslookup з командного рядка, і вони також чудово працюють з мого iPhone та iPad в одній бездротовій мережі.

І це лише в мережі на роботі; коли я вдома або прив’язаний до свого iPhone, усі пошукові записи DNS працюють нормально. Коли я працюю в мережі через Wi-Fi або Ethernet, у мене виникають ці проблеми. Я намагався використовувати наступні команди:

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

Це колись забезпечувало тимчасове полегшення (хвилин) під Сніжним Леопардом, але зараз, під Левом, воно взагалі нічого не забезпечує.

Ні мої настройки Ethernet, ні Wi-Fi не визначають сервери DNS; вони автоматично заповнюються з маршрутизатора. Але я спробував вказати власну, як-от Google DNS або OpenDNS, і це не вирішує проблему.

Налаштування мережі - це маршрутизатор, підключений до кабельного модему, з нього відходять усі порти Ethernet в офісі. WiFi-маршрутизатор Airport Extreme також підключається до основного маршрутизатора (в режимі мосту), і до нього підключаються клієнти WiFi.

Я шукав у всьому світі і виявив інші речі, які спочатку виглядають застосовними (наприклад, пошук DNS не вдається, але працює nslookup ), що дозволяє мені думати, що ці проблеми mDNSResponder не надто рідкісні, але жодна з них точно не відповідає, і їх рішення не відповідають працював для мене ще.

Також: це не кожен пошук DNS, а лише більшість. Пошуки Google з’являються миттєво, але завантажуються Карти Google назавжди (коли я дивлюся у вікно активності, зазвичай це сценарії та інше, що надходить із якогось сервера Google CDN). Навіть сайти, якими ми користуємось щодня, і ви можете подумати, що їх буде заховано в іншому місці (наприклад, php.net) для завантаження або вичерпання.

Також: все завантажується добре з браузера у віртуальній машині Windows XP, що, на мене, ще більш звинувачує в mDNSResponder як винуватця, - але все працює добре, коли я перебуваю в будь-якій іншій мережі.


Ви спробували подивитися на висновок з opensnoop, щоб побачити, чи він щось говорить? Мені б також цікаво, якщо ви подивилися на вихід tcpdump, щоб побачити, чи надсилаються запити, на які не відповідають.
многочлен

Я поглянув на обидва, але я не зовсім впевнений, що мені слід шукати - я не впевнений, що таке стан помилок. Будь-які вказівки на те, що може бути незвичним?
Чарльз

Відповіді:


4

Причиною того, що DNS повільно працює в офісі, але не вдома, може бути в тому, що маршрутизатор офісу використовує IPv6, але ваш домашній маршрутизатор використовує IPv4, а Lion краще використовувати IPv6, ніж Snow Leopard. Вероятно, веб-сайти, на які не впливає це уповільнення, є тими, які мають кращу підтримку IPv6.

Дивіться цю статтю щодо заходів, які показують, що IPv6 у 2-3 рази повільніше, ніж IPv4 у DNS:
IPv6 сповільнить вас (DNS)

Якщо це так, відключення IPv6 на маршрутизаторі офісу (і так у всій офісній мережі) може вирішити проблему.

Ця стаття також може бути корисною: Як відключити IPv6 на Mac OS X 10.7 Lion .


2

У мене була та сама проблема з моїм MacBook Pro під керуванням 10.6. Я рідко коли-небудь вимикаю свою машину. В основному вдома я просто закриваю кришку і кладу її в мішок і приймаю на роботу. На роботі відкриваю кришку і виходжу. Що я помітив, це те, що OS X, здається, не здійснює цей перехід так легко, як хотілося б. Я отримав би повільний DNS, велику кількість очікуваних мережевих ресурсів тощо. Що для мене виправляє, це відключення вручну від кожної мережі перед тим, як закрити машину (тобто вимкнути аеропорт перед тим, як закрити кришку). Якщо я цього не роблю, моє очікування:

dscacheutil -flushcache

Будь-який спосіб для мене працює досить добре. У рідкісних випадках перезавантажую машину.


Гарет, я щойно помітив твій коментар до змін, я повернувся назад і відповідно змінив усі свої відповіді. Мої вибачення.
C0D3M0NK3Y

Я спробував dscacheutil і перезапустив; незалежно від того, чим я займаюся, у мене все ще є ті ж проблеми в робочій мережі, але тільки там - ідеально працює вдома, чи закриваю машину перед тим, як їхати додому, чи просто вкладаю її спати як завжди.
Чарльз

0

Чи правильно працюють інші Macs в офісній мережі?

Переконайтесь, що присвоєні мережеві налаштування є несумісними. Я бачив ситуацію, коли сервер DHCP призначив шлюз за замовчуванням, який не був у підмережі клієнта. Windows пішла вперед і використовувала це, і працювала чудово, але MacOS (правильно!) Відмовився надсилати на IP-адресу, яка не була в підмережі.

Коли маска підмережі застосовується як до IP-адреси клієнта, так і до шлюзу за замовчуванням, результати повинні бути рівними. В іншому випадку це погана конфігурація сервера DHCP.

Але це не схоже на точну ситуацію. Чи налаштований ваш Mac для використання як WiFi, так і Ethernet на роботі? Якщо так, спробуйте вимкнути один раз.


Проблема DHCP не повинна спричиняти уповільнення, якщо тільки це не призведе до того, щоб пакети обходили та обходили мережу офісу.
harrymc

Налаштування мережі всі здаються нормальними. Це ж питання виникає, чи я лише в Wi-Fi, лише в Ethernet або в обох.
Чарльз
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.