DNS

تعذر حل DNS على Mac

عندما يفشل DNS، يتعذر على Mac تحويل اسم مثل apple.com إلى عنوان IP. قد يعمل الاتصال، لكن تفشل كل المواقع عند استخدام أسمائها.

ينطبق على: macOS 13 Ventura والإصدارات الأحدث لخطوات إعدادات النظام. تعمل أوامر Terminal على جميع إصدارات macOS الحالية.تاريخ التحقق: 29 أكتوبر 2026

الأعراض

  • تعرض المتصفحات رسالة «تعذّر العثور على الخادم» أو خطأ مماثل لمواقع كثيرة.
  • تعرض أدوات Terminal رسالة «Could not resolve host» أو «nodename nor servname provided».
  • تستمر التطبيقات التي تستخدم عناوين IP في العمل، لكن الأسماء لا تعمل.
  • تبدأ المشكلة بعد تغيير الشبكات أو الاتصال بـ VPN أو ضبط خوادم DNS مخصصة.

الأسباب المحتملة

  • لا يوجد اتصال. ليس لدى Mac مسار يعمل إلى الإنترنت، لذا لا يمكن إرسال استعلامات DNS.
  • خوادم DNS خاطئة أو يتعذر الوصول إليها. قد يتوقف خادم DNS الذي أدخلته يدويًا عن العمل، أو قد يكون محظورًا على هذه الشبكة.
  • فشل DNS الخاص بالموجّه. ترسل شبكات كثيرة استعلامات DNS إلى الموجّه. إذا توقف الموجّه عن الرد، تفشل الأسماء على كل جهاز.
  • VPN أو ملف تعريف أو مرشّح يغيّر DNS. يمكن لشبكات VPN وملفات DNS المشفّرة ومرشّحات المحتوى إرسال الاستعلامات إلى خوادم أخرى.
  • إجابات قديمة في الذاكرة المؤقتة. يحتفظ Mac بالإجابات لبعض الوقت. بعد انتقال موقع، قد تفشل إجابة قديمة.

كيفية التحقق

  1. تأكد من أن الاتصال يعمل. أرسل اختبارات ping إلى عنوان IP حتى لا يُستخدم DNS.

    ping -c 3 1.1.1.1
  2. أرسل اختبارات ping إلى اسم. إذا عمل عنوان IP وفشل الاسم، فالمشكلة في DNS.

    ping -c 3 apple.com
  3. اطلب اسمًا من محلّل macOS. يستخدم هذا المسار نفسه الذي تستخدمه معظم التطبيقات.

    dscacheutil -q host -a name apple.com

    المخرجات السطران ip_address وipv6_address. عدم وجود أسطر يعني فشل البحث.

  4. اعرض إعداد DNS الذي يستخدمه macOS الآن. المحلّل الأول هو الافتراضي.

    scutil --dns
  5. اعرض خوادم DNS التي ضبطتها يدويًا لخدمة Wi-Fi.

    networksetup -getdnsservers Wi-Fi

    المخرجات قائمة بعناوين IP، أو رسالة تفيد بعدم ضبط خوادم DNS. عندئذٍ توفر الشبكة الخوادم.

كيفية الإصلاح

  1. أزل خوادم DNS التي أدخلتها يدويًا. اختر قائمة Apple > إعدادات النظام > الشبكة.

  2. انقر على خدمة الشبكة، ثم التفاصيل، ثم DNS. حدد كل خادم أضفته وانقر على زر الإزالة.

  3. يمكنك أيضًا مسحها في Terminal. استخدم الكلمة empty بدلًا من عناوين الخوادم.

    networksetup -setdnsservers Wi-Fi empty

    يتطلب كلمة سر مسؤول.

  4. امسح ذاكرة DNS المؤقتة. راجع مسح ذاكرة DNS المؤقتة على Mac.

    sudo killall -HUP mDNSResponder

    يتطلب كلمة سر مسؤول.

  5. احصل على عنوان وخوادم DNS جديدة من الموجّه. راجع تجديد عقد DHCP على Mac.

  6. افصل VPN للاختبار. إذا عملت الأسماء بعدها، فافحص إعدادات DNS الخاصة بـ VPN. راجع استعلامات DNS تخرج خارج VPN على Mac.

  7. إذا فشل DNS على جميع الأجهزة، فأعد تشغيل الموجّه.

باستخدام Kilobat

  1. يقيس Kilobat بحث DNS واحدًا ويعرض المحلّلات المستخدمة. انظر إلى dnsMilliseconds وdnsServers وcaptivePortal.

    kilobat diagnose --json
  2. لموقع أو API واحد، اعثر على الطبقة التي تفشل. يفحص DNS قبل الاتصال.

    kilobat why api.example.com
  3. واجهة CLI مجانية. في التطبيق، تعرض علامة تبويب الحالة خوادم DNS ووقت البحث. راجع معرفة سبب تعذّر اتصال موقع أو API واحد.

الأسئلة

لماذا يعمل ping إلى 1.1.1.1 بينما تفشل المواقع؟

لا يستخدم ping إلى عنوان IP خدمة DNS. إذا نجح وفشلت الأسماء، فالمشكلة في DNS لا الاتصال.

لماذا يعمل dig بينما تفشل التطبيقات؟

يرسل dig الاستعلامات إلى الخوادم في /etc/resolv.conf. تستخدم التطبيقات محلّل macOS، الذي يمكنه أيضًا استخدام قواعد VPN والقواعد الخاصة بكل نطاق.

هل سيعطيني الموجّه خوادم DNS مجددًا؟

نعم. عندما تكون قائمة DNS في إعدادات الشبكة فارغة، يستخدم macOS الخوادم التي توفرها الشبكة عبر DHCP.

المصادر

تم التحقق في 29 أكتوبر 2026.