مقارنة بروتوكولات DNS المشفرة: DoT و DoH و DoQ

مقارنة Plain DNS و DoT و DoH و DoQ من حيث الطبقات، المنافذ، الفروقات في الأداء، وسياقات الاستخدام، مع تقديم توصيات عملية للاختيار والتكوين.

نظرة سريعة على المصطلحات

  • Plain DNS: DNS نصي واضح، يستخدم UDP/53 افتراضيًا، مع الانتقال إلى TCP/53 عند الحاجة (كالاستجابات المقطوعة، نقل المنطقة، إلخ).
  • DoT: DNS over TLS، يستخدم TCP فوق TLS، منفذ افتراضي 853 (RFC 7858/8310).
  • DoH: DNS over HTTPS، يستخدم HTTPS (HTTP/2 أو HTTP/3)، منفذ افتراضي 443 (RFC 8484).
  • DoQ: DNS over QUIC، يستخدم QUIC + TLS 1.3، منفذ افتراضي UDP/853 (RFC 9250، مخصص في IANA على 853/udp).

العلاقات الطبقية (نموذج TCP/IP مبسط)

  • طبقة التطبيق: HTTP، HTTPS، DNS (DoH ضمن تغليف HTTPS في طبقة التطبيق)
  • طبقة الأمان: TLS (توفر التشفير لـ TCP أو QUIC)
  • طبقة النقل: TCP، UDP، QUIC
  • طبقة الشبكة: IP
  • طبقة الربط: Ethernet
  • الطبقة الفيزيائية: كابل مجدول/ألياف/لاسلكي

النقاط الأساسية

  • Plain DNS يعمل فوق UDP/TCP دون تشفير.
  • DoT = TCP + TLS + DNS (منفذ مخصص 853).
  • DoH = TCP/QUIC + TLS + HTTP(S) + DNS (يستخدم 443، مشترك مع HTTPS العادي).
  • DoQ = QUIC + TLS 1.3 + DNS (منفذ مخصص UDP/853).
graph TB
    subgraph طبقة التطبيق
        A[HTTP]
        A2[HTTPS]
        C[DNS]
        D[DoH DNS over HTTPS]
    end

    subgraph طبقة الأمان
        E[TLS]
    end

    subgraph طبقة النقل
        F[TCP]
        G[UDP]
        H[QUIC]
    end

    subgraph طبقة الشبكة
        I[IP]
    end

    subgraph طبقة الربط
        J[Ethernet]
    end

    subgraph الطبقة الفيزيائية
        K[كابل مجدول/ألياف/لاسلكي]
    end

    A2 --> F
    A2 --> H
    A --> F
    C --> F
    C --> G
    D --> A2
    E --> F
    E --> H
    F --> I
    G --> I
    H --> I
    I --> J
    J --> K

    style D fill:#e1f5fe
    style E fill:#fff3e0

معلومات أساسية وتصحيح أخطاء شائعة

  • Plain DNS يستخدم UDP/53 افتراضيًا، وعند حدوث قطع في الاستجابة (bit TC) أو الحاجة لنقل موثوق، ينتقل إلى TCP/53.
  • DoT يبني نفق TLS فوق TCP لنقل حزم DNS، منفذ افتراضي 853؛ يمكن إعادة استخدام الاتصال الطويل لخفض تكلفة الربط.
  • DoH يُدخل DNS كمورد ضمن HTTPS (application/dns-message)، غالبًا باستخدام HTTP/2 أو HTTP/3، منفذ 443، يسهل الاختلاط مع HTTPS العادي.
  • DoQ يستخدم QUIC مباشرة (مبنية على UDP) لحمل DNS، وتتميز بتأخير منخفض وتجنب ازدحام الطابور، لكن تغطية البيئة لا تزال في نمو.
  • القول بأن “QUIC أسرع دائمًا بنسبة X%” ليس دقيقًا؛ الأداء الفعلي يعتمد على حالة الشبكة (فقدان الحزم، التذبذب، زمن الانتقال) وقدرة إعادة استخدام الاتصال وتفاصيل التنفيذ ونشر الخادم.
  • DoH ليس “وضع DNS داخل HTTP يجعله أسرع/أبطأ بالضرورة”، الأداء يعتمد على إعادة استخدام الاتصال، جودة الشبكة، والتنفيذ؛ في كثير من الحالات يكون DoH/3 و DoT متماثلين أو أفضل.
  • DoT يمكنه التحقق من اسم المضيف باستخدام SNI؛ DoH يعتمد على التحقق القياسي من شهادة HTTPS ومطابقة اسم المضيف.
  • DNS المشفر لا يمنع التنصت والتلاعب على خط الاتصال فقط، ولا يعني “الخصوصية الكاملة”. قد لا يزال محلل DNS يسجل الاستعلامات؛ اختر مزودًا موثوقًا واطلع على سياسة الخصوصية.
graph TD
    subgraph عائلة DNS
        A[Plain DNS UDP/TCP + DNS]

        subgraph DNS المشفر
            B[DoT TCP + TLS + DNS]
            C[DoH HTTP/2,3 + TLS + DNS]
            D[DoQ QUIC + TLS 1.3 + DNS]
        end

        subgraph القاعدة الناقلة
            E[TCP]
            F[UDP]
            G[QUIC]
        end
    end

    A --> B
    A --> C
    A --> D

    B --> E
    C --> E
    C --> G
    D --> G
    A --> F

    style A fill:#f3e5f5
    style B fill:#e8f5e8
    style C fill:#e3f2fd
    style D fill:#fff3e0

نظرة عامة على المقارنة

البروتوكولطبقة النقلالتشفيرالتغليفالمنفذ الافتراضيالسمات النموذجية
Plain DNSUDP/TCPلا يوجدDNS أصلي53بسيط وفعال، نصي واضح، عرضة للقرصنة/التعديل
DoTTCPTLS 1.2/1.3DNS853منفذ مخصص، غالبًا ما يُحظر بالمنفذ، دعم جيد على مستوى النظام
DoHTCP/QUICTLS 1.2/1.3HTTP/2-3 + DNS443مشترك مع HTTPS في المنفذ، اخترق عالي، دعم أولي من المتصفح
DoQQUICTLS 1.3DNS853/UDPتأخير منخفض، يتجنب ازدحام الطابور، البيئة في تطور

الأداء والتأخير

  • إعادة استخدام الاتصال: DoT/DoH/DoQ يمكنها جميعًا إعادة استخدام الاتصال الطويل لخفض تكلفة الربط؛ DoH/2 و DoH/3 و DoQ تدعم أيضًا التعددية داخل اتصال واحد.
  • ازدحام الطابور: TCP يعاني من “ازدحام الطابور” على مستوى التطبيق؛ HTTP/2 يخفف ذلك عبر التعددية لكنه لا يزال عرضة لفقدان TCP، في حين أن QUIC (DoH/3، DoQ) يتجنب ازدحام الطابور على مستوى النقل، وهو أفضل في شبكات عالية الفقد/المتنقلة.
  • تأخير الحزمة الأولى: عند الاتصال الأولي، DoT يحتاج إلى TCP+TLS؛ DoH/2 مشابه؛ DoH/3/DoQ مبني على QUIC، أسرع في إعادة الاتصال والانتقال. الاختلاف في الأحمال الطويلة يعتمد أكثر على التنفيذ وظروف الشبكة.
  • القدرة على الوصول: DoH يستخدم منفذ 443، الأقل عرضة للحظر البسيط بالمنفذ؛ DoT يستخدم 853، غالبًا ما يُحظر ب一刀切؛ DoQ يستخدم 853/UDP، قد يُحظر أو لا يُسمح به في الوقت الحالي.

دعم العميل والنظام

  • المتصفحات: عائلة Chromium و Firefox تدعم DoH افتراضيًا (يمكنها الترقية تلقائيًا إلى محلل يدعم DoH أو استخدام قائمة مزودين مدمجين).
  • Windows: Windows 11 يدعم DoH أصليًا.
  • Android: Android 9+ يوفر “DNS خاص” (DoT على مستوى النظام). تغطية DoH على مستوى النظام تعتمد على الإصدار/الصانع.
  • منصات Apple: iOS 14+/macOS 11+ تدعم DoT و DoH عبر ملفات الوصف أو NetworkExtension.

نصائح النشر والاختيار

  • شبكات عادية/مقيدة (مثل Wi‑Fi عام، الحاجة لاختراق الحظر البسيط): أولوية لـ DoH (منفذ 443)، يمكن تفعيل HTTP/3.
  • خروج موحد على مستوى النظام (الراوتر، البوابة، DNS خاص Android): أولوية لـ DoT (853)، مع إضافة DoH كخيار احتياطي إذا سمح الشبكة.
  • شبكات عالية الفقد/المتنقلة: أولوية لـ DoH/3 أو DoQ المزودين بـ QUIC (حسب دعم المحلل والعميل).
  • سيناريوهات المؤسسة/الامتثال: اختر حسب السياسة (DoH يمكن دمجه مع بنية HTTPS الحالية؛ DoT يسهل الفصل عن واجهة تحكم DNS).

ملخص

  • الأولوية لـ DoH (443، اخترق قوي)، إذا كان متاحًا ففعّل HTTP/3.
  • إذا كنت بحاجة لوحدة على مستوى النظام: أولوية لـ DoT (853) + اتصال دائم، مع DoH (443) كخيار احتياطي عند الضرورة.
  • إذا كان محللك وعميلك يدعمان ذلك: جرّب DoQ (غالبًا تجربة أفضل في الشبكات المتنقلة).

المراجع القياسية

  • RFC 7858, RFC 8310 (DNS over TLS)
  • RFC 8484 (DNS over HTTPS)
  • RFC 9250 (DNS over QUIC)

خدمات DNS موصى بها

-宁屏 DNS: https://www.nullprivate.com تدعم DoT, DoH (تدعم HTTP3)، دعم أصلي للإعلانات وتقسيم المسار.