تميمة الدب القطبي الخاصة بـNordBastion واقفة في قاعة حجرية نوردية مظلمة بجانب رف خوادم، رافعةً إحدى مخالبها نحو حجر رونِي هولوغرافي سماوي عائم يسرد أسماء نطاقات، بينما تتوزع أربعة أشعة استعلام عبر قوس رونِي نحو ثلاث كتل خوادم ضخمة بعيدة، ويُوقَف الشعاع الخامس بدرع كهرماني على شكل دائرة مشطوبة، وشفق قطبي يظهر من النافذة خلفها
دليل تطبيقي · الشبكة·15 دقيقة قراءة · 40 دقيقة تطبيق عملي

محلل DNS خاص بك.
السجل الوحيد الذي لا يفكر أحد في نقله.

كل نطاق تبحث عنه أجهزتك هو سطر موسوم بالوقت في ملف يملكه طرف آخر — ملف مزوّد خدمة الإنترنت لديك، أو محلل عام مجاني. ست خطوات لنقل ذلك الملف إلى جهاز تملكه أنت: Unbound يحلّل من الجذر، وAdGuard Home يُصفّي في المقدمة، وDNS مشفّر على شهادة حقيقية، ومنفذ 53 لا يواجه الإنترنت أبداً. يكلّف الخادم $3.90 شهرياً. اختُبر على Debian 12.

الخطوات الست
  1. 01

    الشكل

    عودي، لا تمريري

  2. 02

    إغلاق

    المنفذ 53، قبل أن يُفتح

  3. 03

    التحليل

    Unbound، مُصادِق

  4. 04

    التصفية

    AdGuard Home، DoH، DoT

  5. 05

    الوصول

    النفق أولاً، ثم العملاء

  6. 06

    تحقق

    التسريبات، وDNSSEC، ووقت التشغيل

قبل أن تبدأ · ما الذي يتسرّب فعلياً

DNS هو فهرس حياتك. وأنت لا تملكه افتراضياً.

شفّر القرص، مرّر حركة المرور عبر نفق، وادفع بـMonero، وسجّل دون بريد إلكتروني — ثم اترك حاسوبك المحمول يسأل محللاً لم تفكر فيه يوماً أن يترجم كل اسم مضيف يلامسه، استعلاماً تلو الآخر، بشكل صريح غير مشفّر، طوال اليوم. عملية البحث عن الاسم هي الجزء من الحزمة الذي يُصلّبه الناس أخيراً، وهي الجزء الذي ينتج أنظف سجل لما يفعله شخص ما فعلياً.

من المفيد أن نكون دقيقين بشأن ما يحويه ذلك السجل، لأن عبارة "DNS يُسرّب تصفحك" صحيحة ومتكاسلة في آن. سجل الاستعلامات هو قائمة أسماء نطاقات مع طوابع زمنية، منسوبة إلى عنوان IP الذي سأل عنها. إنه ليس الصفحات التي تقرأها، وعادة ليس عنوان URL الدقيق. إنه شيء أهدأ، وأفضل للتنميط: شكل حياة كاملة. البنك. جهة العمل. تطبيق المواعدة الذي يتحقق كل أربع دقائق. الموقع الطبي الذي زُرته مرة واحدة في الساعة 02:00. النطاقات الثلاثة التي لا تظهر أبداً إلا معاً لأنها تنتمي إلى نفس تطبيق المراسلة. لا يحتاج أحد إلى المحتوى حين يكون الفهرس بهذه الجودة.

أربعة أطراف يمكن أن تحمل ذلك الفهرس، والاستضافة الذاتية تنقله من الطرفين الأولين إلى الرابع:

الإعداد من يرى كل استعلام تجريه المرئي على السلك مجموعة إخفاء الهوية
محلل مزوّد خدمة الإنترنت، نص صريح (الافتراضي)مزوّد خدمة الإنترنت لديك، بالاسم والحسابكل شيء، لأي طرف على المسارمشتركوه
محلل عام، مشفّر (DoH/DoT)تلك الشركة الواحدة، مرتبطة بعنوان IP الخاص بكلا شيء سوى الوجهةالملايين
محللك الخاص، يُمرّر إلى منبعالمنبع الذي اخترته — دون تغييرلا شيء سوى الوجهةواحد
محللك الخاص، يعمل عودياً من الجذرلا أحد — كل نطاق لا يرى سوى أسمائه هولا شيء سوى الوجهةواحد، على عنوان IP ليس أنت

الصف الثالث هو الصف الذي يُوقِع الناس في الفخ. تثبيت محلل على خادمك الخاص ثم إخباره بتمرير كل شيء إلى 1.1.1.1 يغيّر شيئاً واحداً بالضبط: استعلاماتك تصل الآن إلى Cloudflare من عنوان IP مختلف. السجل لا يزال موجوداً، ولا يزال ملكاً لطرف آخر، وأنت أضفت جهازاً عليك صيانته مقابل لا شيء.

العمود الأخير هو الكلفة الصادقة، ويعود إليها هذا الدليل مرتين. المحلل الذي يستخدمه منزل واحد هو محلل استعلاماته تخص ذلك المنزل بلا لبس. ما يجعل هذه المقايضة تستحق أن تُقبَل هو أن عنوان IP الذي يقوم بالسؤال هو خادم نوردي مستأجر بلا أي وثيقة هوية خلفه — لا خط منزلي باسم مشترك، ولا حساب لدى شركة سحابية عملاقة ببطاقة مصرفية مسجلة. مجموعة إخفاء الهوية تتقلص؛ لكن الرابط بشخص بعينه هو ما ينكسر فعلياً.

الخطوة 01 · التشكيل

عودي، أم مجرد ترحيل؟ واحد فقط من الاثنين يستحق الخادم.

هناك جهازان مختلفان تماماً يختبئان خلف عبارة "خادم DNS الخاص بي"، وتبني كل الدروس التعليمية تقريباً الجهاز الخطأ. احسم هذا الأمر قبل أن تثبّت أي شيء، لأنه الفارق بين أداة خصوصية ووكيل لسياسة خصوصية طرف آخر.

المُمرِّر يأخذ استعلامك ويمرّره إلى محلل آخر — عادة Cloudflare أو Google أو Quad9 أو مزوّد خدمة الإنترنت لديك — ثم يخزّن مؤقتاً كل ما يعود. إنه بسيط وسريع، ويسلّم دفق استعلاماتك بأكمله لطرف ثالث واحد. كل دليل ينتهي بعبارة "والآن اضبط منبعك على 1.1.1.1" قد بنى واحداً من هذه.

المحلل العودي يقوم بالعمل بنفسه. للعثور على mail.example.com يسأل خادم جذر عمّن يدير .com، ثم يسأل خوادم .com عمّن يدير example.com، ثم يسأل خوادم أسماء example.com نفسها عن السجل. ثلاث أو أربع محادثات قصيرة مع ثلاث أو أربع جهات تشغيل مختلفة، لا يُخبَر أي منها بأي شيء عن الأخرى. ومع تفعيل تصغير QNAME، يذهب الأمر أبعد من ذلك: يُسأل الجذر فقط عن .com، وتُسأل خوادم .com فقط عن example.com. يُكشف الاسم الكامل لطرف واحد بالضبط — الطرف المُستضيف للاسم، وهو من كان سيستقبل اتصالك بعد ثلاثين جزءاً من الألف من الثانية على أي حال.

الخاصية Unbound، عودي أي مُمرِّر AdGuard Home وحده
طرف واحد يرى كل استعلاملانعمنعم — منبعه
DNSSEC يُتحقق منه محلياًنعمموثوق من المنبعموثوق من المنبع
قوائم حظر وقواعد لكل جهازفقط عبر نطاقات محليةيعتمد على الخدمةنعم، بواجهة ويب
مستمعات DoH / DoT للعملاءDoT بشكل أصلي، وDoH عبر وكيليعتمد على الخدمةكلاهما، مدمج
زمن استجابة البدء البارد3–4 رحلات ذهاب وإيابرحلة ذهاب وإياب واحدةرحلة ذهاب وإياب واحدة
الإجابة الصحيحةنصف الخصوصية من الحزمةفقط كخيار احتياطي متعمّدنصف التصفية، في المقدمة

العمودان الأيمنان ليسا متنافسين — بل هما نصفا نفس البنية. يمتلك AdGuard Home المنفذ 53، ويطبّق قوائم الحظر، وينهي عمليات النقل المشفّرة؛ ويجلس Unbound خلفه على loopback ويقوم بالتحليل. لا يؤدي أي من النصفين عمل الآخر جيداً، والسلسلة كاملة تستهلك نحو مئة ميغابايت من RAM إجمالاً.

إذا كنت ستأخذ شيئاً واحداً فقط من هذه الصفحة، فليكن هذا: المحلل الذي يُمرّر إلى مزوّد DNS عام لم يجعل DNS الخاص بك خاصاً. لقد نقل السجل بمسافة قفزة واحدة وأضاف خادماً إلى قائمة صيانتك. العودية هي بيت القصيد بأكمله.

الخطوة 02 · الإغلاق

أغلق المنفذ 53 قبل أن يفتحه أي شيء. هذه ليست الخطوة الحذرة. إنها الخطوة الضرورية.

اطلب الخادم أولاً. في اللوحة: Order → VPS → Sentinel، صورة Debian 12، في أي معقل أقرب إلى الأجهزة التي ستستخدمه — Helsinki أو Stockholm أو Oslo أو Reykjavík. لا حاجة إلى عنوان بريد إلكتروني لفتح الحساب، وتُسوَّى الفاتورة بـMonero أو Bitcoin أو Lightning أو أي أصل آخر مدعوم، وهو أمر يهم هنا أكثر من المعتاد: القيمة الكاملة لمحلل شخصي تقوم على أن عنوان IP الذي يطرح السؤال غير قابل للتتبع إلى اسم.

ثم اتبع قائمة تصليب الساعة الأولى — مفاتيح SSH فقط، بلا تسجيل دخول بكلمة مرور، وتحديثات تلقائية غير مراقبة — لأن كل ما يلي يفترض خادماً غير مخترق أصلاً.

اقرأ هذا قبل أن تُشغّل الخدمة (daemon)

المحلل العودي الذي يجيب الإنترنت بأكمله يُسمى محللاً مفتوحاً، وستعثر عليه الماسحات التي تغطي الإنترنت بأكمله خلال ساعات من فتح المنفذ. يعمل DNS عبر UDP، وعناوين مصدر UDP يسهل تزويرها بلا أي عناء، ويمكن لاستعلام بحجم 60 بايت أن يُنتج استجابة أكبر بعشرات المرات — لذا فالمحلل المفتوح مُضخِّم مجاني لهجوم حجب خدمة ضد طرف ثالث. التسلسل الذي يتبع ذلك ثابت دائماً: تبدأ حركة المرور، وتصل بلاغات إساءة الاستخدام، ويُقطع توجيه العنوان (null-route). إنها الطريقة الأكثر شيوعاً على الإطلاق التي ينتهي بها أول خادم DNS. قاعدتان تمنعان ذلك كلياً: ارفض افتراضياً في إعداد المحلل، ولا تسمح أبداً بـ53/udp من 0.0.0.0/0 في جدار الحماية.

لذا يأتي جدار الحماية أولاً، بينما لا شيء يستمع بعد. تفترض القواعد أدناه نفق WireGuard على 10.8.0.0/24 — إذا لم تكن قد بنيت واحداً، فدليل WireGuard المرتبط في أسفل هذه الصفحة استراحة جانبية من خمس عشرة دقيقة، وهو وسيلة النقل التي يعمل عليها هذا التصميم بأكمله بأفضل حال.

ufw default deny incoming
ufw allow 22/tcp                      # or your moved SSH port
ufw allow 51820/udp                   # WireGuard
ufw allow in on wg0 to any port 53 proto udp
ufw allow in on wg0 to any port 53 proto tcp
ufw enable

# DNS is NOT opened to the world. Confirm it:
ufw status numbered | grep 53

لاحظ ما هو غائب عن قصد: لا توجد قاعدة تفتح 53 على الواجهة العامة. المنفذ 53 موجود فقط على wg0 وعلى loopback. إذا أضفت لاحقاً DNS-over-TLS أو DNS-over-HTTPS، فهذان TCP 853 وTCP 443، ويُصادَق عليهما بشهادة، ويحصلان على قواعدهما الخاصة في الخطوة 05 — يبقى منفذ UDP النصي الصريح مغلقاً بغض النظر.

الآن حرّر المنفذ. على Ubuntu — وعلى أي Debian فعّل فيه أحدهم ذلك — يستمع systemd-resolved أصلاً على 127.0.0.53:53، وسيرفض Unbound البدء بخطأ ربط (bind) يقضي الناس عشرين دقيقة في إساءة قراءته. تحقق أولاً، ثم عطّل فقط مستمع stub، مع إبقاء systemd-resolved كواجهة محلية من جهة العميل:

ss -lunp 'sport = :53'                # who owns UDP/53 right now?

mkdir -p /etc/systemd/resolved.conf.d
cat > /etc/systemd/resolved.conf.d/no-stub.conf <<'EOF'
[Resolve]
DNSStubListener=no
EOF
systemctl restart systemd-resolved
ss -lunp 'sport = :53'                # should now be empty

على Debian 12 نظيف، الأمر الأول لا يطبع شيئاً ولا يوجد ما تفعله. شغّله على أي حال — فهو يستغرق ثانية واحدة، والبديل هو تشخيص خطأ "address already in use" أمام خدمة لم تكن تعلم أنها تعمل.

الخطوة 03 · التحليل

Unbound، من الجذر. حزمة واحدة، وملف إعداد واحد، بلا منبع.

Unbound هو محلل عودي مُصادِق وذو ذاكرة مؤقتة من NLnet Labs. إنه مُحزَّم في كل مكان، وهو ما يشغّله جزء كبير من الإنترنت أصلاً، وهو يعمل عودياً من الصندوق مباشرة — عليك أن تبذل جهداً إضافياً كي تحوّله إلى مُمرِّر. ثبّته إلى جانب حزمة تلميحات الجذر كي يعرف مكان خوادم الجذر دون جلب قائمة من أي مكان:

apt update && apt install -y unbound dns-root-data
unbound -V | head -2

تُثبّت حزمة dns-root-data تلميحات الجذر في /usr/share/dns/root.hints ومرساة ثقة جذر DNSSEC في /usr/share/dns/root.key، وتُبقي كليهما محدَّثين عبر قناة الحزم العادية. هذه هي الطريقة المملة والصحيحة للحصول عليهما؛ أما تنزيل root.hints من رابط URL في مهمة cron فهي الطريقة التي تفشل صامتة في نهاية المطاف.

/etc/unbound/unbound.conf.d/nb-resolver.conf

server:
    # ---- Who may ask. Deny first, allow narrowly.
    interface: 127.0.0.1@5335
    interface: 10.8.0.1
    access-control: 0.0.0.0/0 refuse
    access-control: ::0/0 refuse
    access-control: 127.0.0.0/8 allow
    access-control: 10.8.0.0/24 allow

    # ---- Privacy of the recursion itself.
    qname-minimisation: yes
    qname-minimisation-strict: no
    hide-identity: yes
    hide-version: yes
    rrset-roundrobin: yes

    # ---- DNSSEC. The anchor is maintained by the dns-root-data package.
    auto-trust-anchor-file: "/var/lib/unbound/root.key"
    root-hints: "/usr/share/dns/root.hints"
    harden-dnssec-stripped: yes
    harden-glue: yes
    harden-below-nxdomain: yes
    harden-large-queries: yes
    harden-short-bufsize: yes
    aggressive-nsec: yes
    val-clean-additional: yes

    # ---- Do not be a reflector, even by accident.
    refuse-any: yes
    ratelimit: 1000
    ip-ratelimit: 200
    edns-buffer-size: 1232

    # ---- Cache. This is where the 4 GB actually earns its keep.
    msg-cache-size: 128m
    rrset-cache-size: 256m
    cache-min-ttl: 60
    cache-max-ttl: 86400
    prefetch: yes
    prefetch-key: yes
    serve-expired: yes
    serve-expired-ttl: 3600

    # ---- Never chase a name that has no business being on the internet.
    private-address: 10.0.0.0/8
    private-address: 172.16.0.0/12
    private-address: 192.168.0.0/16
    private-address: 169.254.0.0/16
    private-address: fd00::/8
    private-address: fe80::/10

    num-threads: 2
    so-reuseport: yes
    verbosity: 0
    logfile: ""

remote-control:
    control-enable: yes
    control-interface: /run/unbound.ctl

أربعة من تلك الأسطر تقوم بالعمل الحقيقي وتستحق كل منها جملة.

  • 01access-control: 0.0.0.0/0 refuse — الإجابة الافتراضية للإنترنت هي "لا". كل ما يأتي بعدها استثناء كتبته أنت عن قصد. هذا السطر الوحيد هو ما يوقف قصة التضخيم من الخطوة 02 حتى قبل أن يضطر جدار الحماية للتدخل.
  • 02qname-minimisation: yes — يُسأل خوادم الجذر عن .com، لا عن اسم المضيف الكامل. RFC 9156، مفعّل افتراضياً في إصدارات Unbound الحالية، وهو سبب تسرّب المحلل العودي أقل مما يوحي به المخطط. أبقِ الوضع الصارم مُعطَّلاً: عدد صغير من النطاقات سيئة الإعداد لا يزال يتعطل تحته.
  • 03refuse-any: yes — تُعيد استعلامات ANY أكبر إجابة ممكنة مقابل أصغر سؤال ممكن، وهو بالضبط ما يريده هجوم التضخيم. لا شيء مشروع يحتاج إليها.
  • 04serve-expired: yes — حين يتعذّر الوصول إلى خادم مرجعي، سلّم الإجابة القديمة وحدّثها في الخلفية بدل الفشل. هذا هو الإعداد الذي يمنع انقطاعاً بعيداً من أن يبدو، لدى كل من في المنزل، وكأن الإنترنت معطّل.

لاحظ المستمعَين. loopback على المنفذ 5335 هو ما سيستخدمه AdGuard Home في الخطوة التالية؛ و10.8.0.1 هو عنوان النفق، كي تتمكن الأجهزة على VPN من استعلام Unbound مباشرة إن قررت تخطي طبقة التصفية. إذا لم تكن تشغّل WireGuard بعد، احذف سطر الواجهة الثاني هذا مؤقتاً — لن يبدأ Unbound بعنوان غير موجود على الخادم.

شغّله وأثبت أنه يعمل:

unbound-checkconf
systemctl restart unbound && systemctl enable unbound

apt install -y dnsutils
dig @127.0.0.1 -p 5335 nordbastion.com +short

# DNSSEC: the first must come back with the "ad" flag set,
# the second must FAIL — its signatures are deliberately broken.
dig @127.0.0.1 -p 5335 dnssec-tools.org +dnssec | grep -E 'flags:|status:'
dig @127.0.0.1 -p 5335 dnssec-failed.org  | grep 'status:'

علامة ad في الإجابة الأولى تعني أن Unbound تحقق من سلسلة التوقيعات من الجذر وحتى السجل وأنها صمدت. أما SERVFAIL في الإجابة الثانية فيعني أن التحقق رفض إجابة مُتلاعَباً بها بدل تمريرها إليك. إذا أعادت الثانية عنواناً بدلاً من ذلك، فالتحقق غير مفعّل ومرساة الثقة هي أول ما يجب فحصه.

الخطوة 04 · التصفية

AdGuard Home في المقدمة. قوائم الحظر، وقواعد لكل جهاز، والمستمعات المشفّرة.

هذه الخطوة اختيارية بالمعنى الدقيق — فـUnbound وحده محلل خاص أصلاً — ويريدها الجميع تقريباً على أي حال. يمنحك AdGuard Home قوائم حظر، وسياسات لكل عميل، وسجل استعلامات قابل للقراءة أثناء التصحيح، والأهم من ذلك، مستمعات DNS-over-TLS وDNS-over-HTTPS أصلية كي تتمكن الهواتف والمتصفحات من التحدث إلى محللك من شبكات لا يكون فيها VPN عملياً.

الترتيب سلسلة، وضبط المنافذ بشكل صحيح هو الحيلة بأكملها: يمتلك AdGuard Home المنفذ 53 ويواجه العملاء، ويجلس Unbound على 127.0.0.1:5335 ويواجه الإنترنت. لا شيء آخر على الخادم يستمع على المنفذ 53.

curl -fsSL https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
# Web interface: http://<vps>:3000 — reach it over the SSH tunnel below,
# never by opening 3000 to the internet.
ssh -N -L 3000:127.0.0.1:3000 root@<vps>

نفّذ معالج التشغيل الأول عبر ذلك النفق. اضبط مستمع الإدارة على 127.0.0.1 أو على عنوان النفق، وليس أبداً على 0.0.0.0، وامنحه كلمة مرور طويلة — هذه الواجهة يمكنها إعادة كتابة كل اسم تحلّه شبكتك، ما يجعلها حساسة بقدر حساسية المحلل نفسه.

ثم عيّن منبعاً واحداً بالضبط: في Settings → DNS settings، امسح القائمة الافتراضية وأدخل نسخة Unbound الخاصة بك. سطر واحد، لا شيء آخر. إذا تُرك محلل عام في ذلك الحقل، فكل ما تحقق في الخطوة 01 يكون قد أُلغي.

127.0.0.1:5335

أبقِ "Parallel requests" مُعطَّلاً — فمع منبع واحد لا يفعل شيئاً سوى مضاعفة حركة المرور — وأطفئ "Use private reverse DNS resolvers" ما لم تكن تشغّل فعلاً نطاقاً داخلياً. اضبط خوادم bootstrap على شيء تثق به؛ إذ تُستخدم فقط لتحليل أسماء مضيفي خوادم المنبع، ومع منبع بعنوان IP صريح لن تُستشار إطلاقاً.

قوائم الحظر: ابدأ ضيقاً. الغريزة الأولى هي تفعيل كل شيء في صفحة القوائم والاستمتاع بالعدّاد. قاوم ذلك. كل قائمة هي مجموعة من القرارات التقديرية اتخذها طرف آخر بشأن ما يُسمح لأجهزتك بالوصول إليه، والأعطال هادئة ومربكة — صفحة تُحمَّل جزئياً، وزر لا يفعل شيئاً، وتطبيق بنكي يرفض الفتح. ابدأ بمرشّح AdGuard DNS الافتراضي، أو بقائمة مجمّعة واحدة جيدة الصيانة مثل OISD، وعش معها لمدة أسبوعين، ولا تُضف المزيد إلا بعد ذلك. احتفظ بقائمة سماح واستخدمها بلا تردد.

سجل الاستعلامات هو الجزء المحرج

لقد بنيت للتو جهازاً غرضه منع طرف آخر من الاحتفاظ بقائمة كل اسم تحلّه أجهزتك — وأول ما يفعله AdGuard Home هو الاحتفاظ بتلك القائمة بعينها، مفعّلة افتراضياً، لمدة تسعين يوماً. إنه مفيد فعلاً أثناء ضبط قوائم الحظر، وهو أكثر ملف حساسية على الخادم على الإطلاق. قرّر عن قصد: 24 ساعة كافية للإجابة عن "ماذا طلب هذا الجهاز للتو؟"، والصفر هو الإعداد الصادق بمجرد انتهاء الضبط، وتسعون يوماً قرار لا ينبغي لأحد أن يتخذه بترك الإعداد الافتراضي كما هو. Settings → General → Query log، واضبط مدة الاحتفاظ بالإحصاءات وأنت هناك.

وجّه جدار الحماية نحو الترتيب الجديد — يمتلك AdGuard Home الآن المنفذ 53 على واجهة النفق، ولا يمكن الوصول إلى Unbound إلا عبر loopback. لا شيء يتغيّر بشأن الواجهة العامة: لا تزال بلا أي DNS عليها إطلاقاً.

الخطوة 05 · الوصول

طريقتان للدخول. النفق هو الجيد؛ وDNS المشفّر هو المحمول.

محلل لا يستطيع أحد الوصول إليه غير مفيد، ومحلل يستطيع الجميع الوصول إليه هو نمط الفشل من الخطوة 02. هناك إجابتان جيدتان بالضبط، وينتهي الأمر بمعظم الناس إلى تشغيل كلتيهما — النفق في المنزل وعلى الحاسوب المحمول، وDNS المشفّر على الهاتف وعلى الشبكات التي يُصفّى فيها UDP.

الخيار أ — عبر WireGuard. الأفضل من الاثنين، وسبب استمرار هذا الدليل في الإشارة إلى دليل WireGuard. يبقى المنفذ 53 غير مرئي للإنترنت، والاستعلام نفسه لا يعبر أبداً شبكة غير موثوقة بأي شكل، ولا توجد شهادة يجب تجديدها. إذا كان VPS مخرج VPN الخاص بك أصلاً، فهذا سطر واحد في إعداد كل طرف:

# On the client, in the [Interface] section of the peer config:
DNS = 10.8.0.1

دقيقة واحدة تعضّ الناس: على Linux، يضبط wg-quick ذلك العنوان عبر resolvconf أو systemd-resolved، وإذا لم يكن أي منهما مثبّتاً فإنه لا يفعل شيئاً بصمت بينما يعمل النفق بشكل مثالي. تحقق باستخدام resolvectl status أو بقراءة /etc/resolv.conf بعد رفع النفق — نفق يعمل مع محلل قديم لا يزال مُعدّاً هو بالضبط التسرب الذي يدور حوله هذا التمرين بأكمله.

الخيار ب — DNS-over-TLS وDNS-over-HTTPS. ضروري حين لا يمكن للجهاز أن يبقى على النفق دائماً. كلاهما يُصادَق عليه بشهادة، وهو ما يعني اسم مضيف: وجّه سجل A نحو VPS، ثم دع AdGuard Home يحمل الشهادة مباشرة أو ضعه خلف وكيل عكسي يُنهي TLS نيابة عنك أصلاً. المستمعان هما 853/tcp لـDoT و443/tcp لـDoH.

ufw allow 853/tcp                     # DNS-over-TLS
ufw allow 443/tcp                     # DNS-over-HTTPS
# 53/udp is still NOT open on the public interface. It never will be.
ufw status

امنح نقطة نهاية DoH مساراً لا يمكن تخمينه — يتيح لك AdGuard Home تقديمه تحت /dns-query/<random>، ومسار مختلف لكل شخص يعني أن الوصول يمكن إلغاؤه لشخص واحد في كل مرة دون تدوير أي شيء للجميع. إنه ليس توثيقاً بأي معنى قوي، لكنه يمنع مستمعاً عاماً من أن يكون محللاً مفتوحاً بخطوات إضافية.

العميل أين يقيم الإعداد النقل الذي يتحدثه
Android 9 وما بعدهالإعدادات → الشبكة → DNS الخاص → اسم المضيفDNS-over-TLS فقط
iOS وmacOSملف تعريف DNS مُوقَّع بصيغة .mobileconfigDoH أو DoT، على مستوى النظام
Windows 11الإعدادات → الشبكة → تعيين خادم DNSDoH، لكل مهايئ
Firefoxالإعدادات → الخصوصية → DNS over HTTPS → مخصّصDoH، على مستوى المتصفح فقط
الموجّه (الشبكة بأكملها)WAN DNS، أو خيار DHCP رقم 6DNS عادي — فمرّره عبر نفق

صف الموجّه هو الصف الذي يستحق التفكير فيه. توزيع محللك عبر DHCP يغطي كل جهاز في المنزل دفعة واحدة، بما فيها الأجهزة التي لا تملك شاشة إعدادات — لكن القفزة من الموجّه إلى VPS تصبح عندها DNS عادياً عبر الإنترنت المفتوح، وهو بالضبط ما انطلقت لإيقافه. شغّل النفق على الموجّه نفسه، أو تقبّل أن الميل الأخير غير مشفّر ودع العودية تكون هي المكسب.

إعداد أخير يستحق معرفته: المتصفح الذي يُفعَّل فيه DNS-over-HTTPS سيستخدم محلله الخاص ويتجاهل بصمت إعداد النظام، سواء أكان هناك نفق أم لا. يُشحَن كل من Firefox وChrome بهذا مفعّلاً افتراضياً في بعض المناطق. إما وجّه المتصفح أيضاً إلى نقطة نهايتك، أو أطفئ DoH فيه كي يتبع نظام التشغيل.

الخطوة 06 · التحقق

أربعة فحوصات. ثلاثة منها تفشل في أول بناء يقوم به أي شخص.

1. هل هو مفتوح على الإنترنت؟ شغّل هذا من جهاز ليس على النفق — هاتف على بيانات الجوال، أو VPS آخر، أو أي شيء. انتهاء المهلة هو الإجابة الصحيحة والمرغوبة. أما استجابة فعلية فتعني أن كل ماسح على الإنترنت سيجده أيضاً، وعليك العودة إلى الخطوة 02 فوراً.

dig @<public-ip-of-vps> +timeout=3 example.com
# Expected: ";; connection timed out; no servers could be reached"

2. هل يستخدمه الجهاز فعلاً؟ هذا هو الفحص الذي يفشل غالباً، والفشل غير مرئي: النفق يعمل، والإعداد يبدو صحيحاً، ولا يزال نظام التشغيل يسأل المحلل الذي منحه إياه المقهى عبر DHCP. اسأل المحلل نفسه من يظن أنك، ثم تأكد من الجانب الآخر.

# On the client — which resolver is the system actually using?
resolvectl status | grep -A2 'Current DNS'        # Linux
scutil --dns | grep nameserver                    # macOS

# On the server — does the query actually arrive?
tail -f /var/log/syslog | grep -i unbound &
unbound-control stats_noreset | grep total.num.queries

ثم حمّل إحدى صفحات اختبار تسرب DNS العامة من الجهاز واقرأ النتيجة. إذا ذكرت مزوّد VPS الخاص بك، فالمسار صحيح. إذا ذكرت مزوّد خدمة الإنترنت لديك أو محللاً عاماً كبيراً، فثمة شيء أعلى من النفق لا يزال يجيب.

3. هل التحقق مفعّل فعلاً؟ كرّر أمري dig من الخطوة 03 عبر السلسلة بأكملها هذه المرة — العميل، فAdGuard Home، فUnbound — بدلاً من مواجهة Unbound مباشرة. يجب أن يفشل اسم بتوقيع معطوب هنا أيضاً. إذا تُرك لدى AdGuard Home منبع ثانٍ في مكان ما ضمن إعداداته، فهنا يظهر ذلك.

4. هل تقوم الذاكرة المؤقتة بعملها؟ بعد يوم من الاستخدام العادي، ينبغي أن تكون نسبة الإصابة بين سبعين وتسعين بالمئة. نسبة أقل بكثير تعني عادة أن الذاكرة المؤقتة صغيرة جداً أو أن cache-min-ttl يُتجاهل لأن كل شيء في المنبع له TTL قصير جداً؛ ونسبة أعلى بكثير على شبكة مزدحمة علامة سعيدة على أن prefetch يعمل.

unbound-control stats_noreset | grep -E 'total.num.(queries|cachehits)'
# hit rate = cachehits / queries

ثم القراران التشغيليان. أولاً: ماذا يحدث حين تُعاد تشغيل هذا الخادم. كل جهاز موجَّه إليه يفقد تحليل الأسماء، وهو ما سيبلّغ عنه الجميع في المنزل بأن الإنترنت معطّل. اضبط الخدمة على إعادة التشغيل عند الفشل والبدء عند الإقلاع، ثم أعد تشغيل VPS مرة واحدة عن قصد وراقبه يعود. ثانياً: خطة احتياطية. إما أن تُدرج محللاً عاماً كثانوي على أجهزتك وتقبل أن تلك الاستعلامات تخرج من سيطرتك أثناء الانقطاع، أو تشغّل نسخة ثانية على VPS ثانٍ في معقل مختلف. كلا الخيارين مدافَع عنه. أما اكتشاف هذا السؤال الساعة 23:00 من ليلة أحد فليس كذلك.

systemctl enable unbound AdGuardHome
systemctl show unbound -p Restart -p RestartUSec
reboot        # then, from a client: dig nordbastion.com +short
الجزء الصادق · ما لا يفعله هذا

إنه يغلق قناة واحدة. وأربع قنوات أخرى لا تزال مفتوحة.

المحلل الخاص تحسّن حقيقي، وهو ليس عباءة إخفاء. أي شخص يبيعه على أنه كذلك يبيع شيئاً آخر. إليك قائمة بما يبقى مرئياً بعد إنجاز كل ما سبق، لأن معرفة شكل الانكشاف المتبقي هي الفارق بين دفاع حقيقي وبطانية طمأنينة زائفة.

الاتصال لا يزال يحدث. بعد جزء من الألف من الثانية من عملية البحث، يفتح جهازك اتصال TCP على العنوان الذي تعلمه للتو. أي طرف يراقب خطك يرى ذلك العنوان. بالنسبة لموقع على عنوان IP خاص به، العنوان هو الموقع. DNS المشفّر يزيل السؤال؛ لكنه لا يزيل الإجابة.

مصافحة TLS تكشف اسم الموقع عادةً. يُرسَل Server Name Indication بشكل صريح غير مشفّر في بداية كل اتصال HTTPS تقريباً، لذا يقرأ المراقب السلبي اسم المضيف على أي حال. يُصلح Encrypted Client Hello هذا الأمر، لكنه منشور بشكل متفاوت — حيث يدعمه كل من المتصفح والموقع يُخفى الاسم، وحيث لا يدعمانه فلا يُخفى. لا تفترض أنه مفعّل.

مشغّل المحلل هو أنت الآن، وأنت شخص واحد. كل خادم مرجعي يتحدث معه محللك يرى عنوان IP واحداً يسأل عن نطاقه. وعبر نطاقات كثيرة، لذلك العنوان نمط مميز، وذلك النمط هو منزل. هذه هي كلفة مجموعة إخفاء الهوية من الفصل الأول، والشيء الوحيد الذي يخفف منها هو ألا يكون العنوان قابلاً للتتبع إلى اسم — VPS بلا KYC مدفوع بالعملات المشفرة — والأمثل أن يكون نفس العنوان الذي تخرج منه حركة مرورك أصلاً.

يستطيع المزوّد رؤية الحزم، كالعادة. يعمل VPS على عتاد يملكه طرف آخر في مركز بيانات يملكه طرف آخر. لا يفحص NordBastion حركة مرور العملاء، ويصف تقرير الشفافية وإشعار أمر المراقبة السري (warrant canary) ما سيحدث إن طُلب منه ذلك — لكن التصريح المعماري الصادق هو أن الجهاز الذي تستأجره هو جهاز يستطيع طرف آخر الوصول إليه فيزيائياً. ما تغيّره الاستضافة الذاتية هو أنه لا يوجد سجل استعلامات على مستوى المنتج، ولا خط تحليلات، ولا سياسة خصوصية يمكن تعديلها؛ بل توجد فقط عملية تحمل ذاكرة مؤقتة في RAM، أعددتها أنت، في ولاية قضائية اخترتها عن قصد.

ما اشتريته فعلياً، وبدقة: أغنى مصدر وأرخصه للبيانات السلوكية عنك لم يعد يُجمَع من قِبل طرف يقوم نموذج عمله على جمعه. هذا ادعاء ضيق، لكنه ادعاء حقيقي. لا شيء في هذه الصفحة بديل عن Tor حين يستدعي نموذج التهديد استخدام Tor — ولذلك، فدليل خدمة onion أدناه هو القراءة الصادقة التالية.

التحجيم · ما الذي تطلبه

DNS صغير. اطلب بناءً على ما يعيش على الخادم غير ذلك.

الفئة شهرياً الموارد ما يشغّله براحة
Sentinel$3.902 vCPU · 4 GB · 120 GBمحلل + WireGuard لمنزل واحد. الإجابة الصحيحة.
Garrison$7.904 vCPU · 8 GB · 240 GBنفس الشيء، بالإضافة إلى Vaultwarden وSearXNG وهدف نسخ احتياطي
Ravelin$16.908 vCPU · 16 GB · 480 GBفريق صغير، خمسة وعشرون طرفاً على النفق، وخدمات أخرى إلى جانب ذلك
خادم Sentinel ثانٍ$3.90في معقل آخرالمحلل الاحتياطي، كي لا يكون الانقطاع انقطاعاً للإنترنت

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

ملاحظات ميدانية · ست فخاخ

ست طرق يمكن أن يسوء بها الأمر. خمس منها صامتة.

الفخ 01 · صاخب

المحلل المفتوح، وقطع التوجيه بعد أسبوع

قاعدة زائدة واحدة في جدار الحماية، أو سطر access-control تُرك على allow. تعثر الماسحات على المنفذ خلال ساعات، وتبدأ حركة مرور التضخيم، ويصل بلاغ إساءة الاستخدام، ويُعتِّم العنوان. ارفض افتراضياً، اسمح فقط للنفق، واختبر من خارج الشبكة.

الفخ 02 · عديم الجدوى

محلل خاص يُمرّر إلى محلل عام

AdGuard Home مثبّت، والمنبع تُرك على القائمة الافتراضية، وكل شيء يعمل بشكل رائع — وسجل الاستعلامات لا يزال يتراكم لدى شركة اسمها في حقل الإعدادات. عيّن منبعاً واحداً، واجعله Unbound الخاص بك.

الفخ 03 · غير مرئي

النفق يعمل والجهاز لم يسألك أبداً

لم يستطع wg-quick دفع إعداد DNS لأن resolvconf غير مثبّت، أو أن متصفحاً يقوم بـDNS-over-HTTPS الخاص به. كل شيء يبدو صحيحاً، وكل عملية بحث لا تزال تذهب إلى الشبكة التي تجلس عليها. تحقق من جانب المحلل، لا من شاشة إعدادات العميل.

الفخ 04 · مربك

قائمة الحظر عطّلت تطبيق البنك، بعد ثلاثة أسابيع

لا شيء يُعلن عن نفسه كعطل DNS — صفحة تُحمَّل جزئياً، وزر لا يفعل شيئاً. ست قوائم عدوانية مفعّلة منذ اليوم الأول تجعل هذا غير قابل للتتبع. ابدأ بواحدة، أضف ببطء، احتفظ بقائمة سماح، وأبقِ سجل استعلامات كافياً للإجابة عن السؤال.

الفخ 05 · ساخر

تسعون يوماً من سجل الاستعلامات، محفوظة افتراضياً

البنية بأكملها موجودة لمنع طرف ما من الاحتفاظ بهذه القائمة، وطبقة التصفية تحتفظ بها افتراضياً، على القرص، لمدة ثلاثة أشهر. اضبط مدة الاحتفاظ عن قصد — 24 ساعة أثناء الضبط، وصفر بعد ذلك — وتذكّر أنها تغطي الجميع على الشبكة، لا أنت وحدك.

الفخ 06 · مفاجئ

إعادة تشغيل واحدة، ويصبح المنزل بلا إنترنت

المحلل يصبح بنية تحتية في اللحظة التي يعتمد فيها عليه أشخاص آخرون. فعّل كلتا الخدمتين عند الإقلاع، واضبط Restart=on-failure، وأعد التشغيل مرة واحدة عن قصد لإثبات ذلك، وقرّر الخطة الاحتياطية قبل أن تحتاجها لا أثناء الحاجة إليها.

الأسئلة الشائعة · DNS خاص

أسئلة، أجوبة.

أحد عشر سؤالاً تُطرح أثناء بناء هذا — بما فيها السؤالان اللذان يحسمان ما إذا كان الأمر يستحق البناء أصلاً.

هل تشغيل محلل خاص بي فعلاً أكثر خصوصية من استخدام Quad9 أو Cloudflare؟

إنه مختلف، وهو أفضل بالطريقة التي تهم أكثر من غيرها — لكن الإجابة الصادقة لها نصفان. ما تكسبه: مع محلل عودي، لا يرى أي طرف واحد أبداً دفق استعلاماتك كاملاً. تعرف خوادم الجذر أن أحداً ما سأل عن .com، وتعرف خوادم .com أن أحداً ما سأل عن example.com، ولا يعرف الاسم الكامل سوى مشغّل example.com — ولا يرى أي منهم الأسماء الألف التالية التي تبحث عنها. أما المحلل العام، في المقابل، فيرى كل استعلام على حدة، بالترتيب، مع الطوابع الزمنية، إلى الأبد، وسياسة خصوصيته هي الشيء الوحيد الفاصل بين تلك القائمة وأي طرف آخر. ما تخسره: المحلل الشخصي له مجموعة إخفاء هوية قوامها واحد. الاستعلامات الخارجة من محلل عام كبير تختلط باستعلامات ملايين الأشخاص الآخرين؛ أما الاستعلامات الخارجة من محللك فهي لك أنت بلا لبس. تستحق هذه المقايضة أن تُقبَل عندما لا يكون عنوان IP الخاص بالمحلل مرتبطاً بهويتك — وهو بالضبط ما يمنحك إياه VPS بلا KYC مدفوع بالعملات المشفرة، وبالضبط ما لا تمنحه شركة سحابية عملاقة تحتفظ ببطاقتك المصرفية. ضع المحلل خلف نفس VPS الذي تخرج منه شبكة VPN الخاصة بك أصلاً ولن تتقلص مجموعة إخفاء الهوية إطلاقاً، لأن ذلك العنوان كان أصلاً يقوم بتصفحك.

هل استضافة DNS بنفسي ستجعل تصفحي أسرع؟

أبطأ قليلاً في أول بحث عن اسم، وأسرع بشكل ملحوظ في كل تكرار لاحق، وتعادل تقريباً في المُحصّلة. المحلل العودي الذي يبدأ من ذاكرة باردة عليه أن يسير عبر سلسلة التفويض — الجذر، فالنطاق العلوي، فالخادم المرجعي — أي ثلاث أو أربع رحلات ذهاب وإياب بدل الرحلة الواحدة إلى محلل عام كانت لديه الإجابة مخزّنة مؤقتاً أصلاً من استعلام شخص آخر. حالما تصبح ذاكرتك المؤقتة دافئة، وهو ما يستغرق نحو يوم واحد في منزل عادي، تُقدَّم الأسماء الشائعة من RAM في أقل من جزء من الألف من الثانية بكثير وتصبح في المقدمة. فعّل prefetch كي تُحدَّث السجلات الشائعة قبل انتهاء صلاحيتها فتختفي حالة البدء البارد في معظمها. المكان الوحيد الذي قد تخسر فيه أداءً فعلياً هو تحديد الموقع الجغرافي لشبكات CDN: يُرسل المحللون العامون الكبار نسخة مبتورة من موقع شبكتك إلى الخادم المرجعي (EDNS Client Subnet) كي تختار شبكة CDN حافة قريبة منك. لا يرسل Unbound هذه المعلومة، عن قصد. إذا كان محللك في نفس منطقتك، فهذا لا يغيّر شيئاً يُذكر. أما إذا كان المحلل في Reykjavík وأنت في سنغافورة، فستمنحك بعض شبكات CDN حافة أوروبية وستشعر بذلك.

هل أحتاج إلى اسم نطاق لهذا؟

فقط من أجل النقل المشفّر. DNS العادي عبر نفق WireGuard لا يحتاج إلى نطاق، ولا شهادة، ولا أي انكشاف عام على الإطلاق — يستمع المحلل على عنوان خاص مثل 10.8.0.1 ويجيب فقط الأطراف الموجودة على النفق. هذا الإعداد هو الأبسط والأكثر خصوصية في هذا الدليل. تحتاج إلى نطاق في اللحظة التي تريد فيها DNS-over-TLS أو DNS-over-HTTPS، لأن كليهما يُصادَق عليه بشهادة، والشهادة تُصدَر باسم. هذا هو الإعداد الذي يُختار عندما لا يمكن للأجهزة أن تبقى دائماً على VPN — حاسوب عمل محمول، أو هاتف على شبكة تحظر UDP، أو فرد من العائلة لن يحافظ على نفق قائم. إذا سجّلت نطاقاً بالفعل، فسجّله في مكان لا يتطلب نفس الهوية التي حرصت عليها في مواضع أخرى، وأبقِ خصوصية WHOIS مفعّلة.

Unbound أم AdGuard Home — هل أحتاج كليهما؟

إنهما يحلّان مشكلتين مختلفتين، والجمع بينهما ليس تكراراً بلا فائدة. Unbound هو المحلل: يسير عبر DNS بدءاً من الجذر، ويتحقق من توقيعات DNSSEC، ويخزّن النتائج مؤقتاً. أما AdGuard Home فليس محللاً على الإطلاق — إنه واجهة تصفية أمامية بواجهة ويب ومستمعات مشفّرة، ويُمرّر كل ما لا يحظره إلى منبع. شغّل AdGuard Home وحده وسيكون منبعه محللاً عاماً، ما يعيد دفق استعلاماتك بأكمله إلى سجل طرف آخر. شغّل Unbound وحده وستحصل على محلل خاص فعلاً بلا قوائم حظر، ولا قواعد لكل جهاز، ولا واجهة. أما مُتسلسلين — AdGuard على 53، وUnbound على 127.0.0.1:5335 بصفته منبعه الوحيد — فتحصل على تصفية ونقل مشفّر أمام محلل يجيب من الجذر. إذا أردت أصغر سطح هجوم ممكن ولم يهمّك حظر الإعلانات، فإن Unbound وحده إجابة محترمة تماماً، وهو النصف من الحزمة الذي يحقق الخصوصية فعلياً.

ما هو المحلل المفتوح، ولماذا يمثّل مشكلة كبيرة؟

المحلل المفتوح هو محلل عودي يجيب استعلامات قادمة من أي عنوان مصدر على الإنترنت. إنه مشكلة كبيرة لأن DNS يعمل عبر UDP، وعناوين مصدر UDP يسهل تزويرها بلا أي عناء، ويمكن لاستعلام صغير أن يُنتج إجابة كبيرة. يرسل المهاجم إلى خادمك استعلاماً بحجم 60 بايت مع عنوان ضحية مُزوَّر كمصدر؛ فيرسل خادمك بأمانة إلى الضحية استجابة أكبر بعشرات المرات. اضرب ذلك في آلاف المحللات المفتوحة وستحصل على هجوم حجب خدمة موزَّع بالانعكاس والتضخيم، وخادمك أحد بنادقه. في الواقع العملي، التسلسل سريع ويمكن توقعه: تعثر الماسحات التي تغطي الإنترنت بأكمله على المنفذ 53 المفتوح حديثاً خلال ساعات، وتبدأ حركة المرور، وتصل بلاغات إساءة الاستخدام، ويقطع المزوّد توجيه العنوان (null-route) لحماية شبكته. هذا ليس افتراضاً نظرياً وليس نادراً — إنه الطريقة الأكثر شيوعاً على الإطلاق التي ينتهي بها أول خادم DNS بشكل سيئ. الإصلاح يكلّف قاعدة واحدة في جدار الحماية وسطراً واحداً في الإعداد: ارفض افتراضياً، واسمح فقط لنفقك.

هل يُخفي DNS المشفّر عن مزوّد خدمة الإنترنت لدي المواقع التي أزورها؟

إنه يُخفي عملية البحث، لا الزيارة نفسها. يعني DNS-over-TLS وDNS-over-HTTPS أن مزوّد خدمة الإنترنت لديك لم يعد يرى سؤالاً نصياً صريحاً يقول example.com. ما يظل يراه هو الاتصال الذي تجريه بعد جزء من الألف من الثانية: عنوان IP الوجهة، و— ما لم يدعم الطرفان Encrypted Client Hello — اسم الخادم في مصافحة TLS، بشكل صريح غير مشفّر. بالنسبة لموقع على عنوان IP مخصص، العنوان وحده يكشف هويته؛ وبالنسبة لموقع خلف شبكة CDN كبيرة، العنوان مشترك وSNI هو ما يفضحه. إذن فـDNS المشفّر يرفع كلفة التسجيل السلبي ويزيل أرخص وأسهل سطح مراقبة موجود، لكنه لا يجعل تصفحك غير مرئي. إذا كان نموذج التهديد هو مزوّد خدمة الإنترنت لديك أو شبكة معادية ترى كل شيء، فالأداة المناسبة لذلك هي النفق — DNS المشفّر يسدّ التسرب الذي قد يظل موجوداً في VPN وحدها، حين يستمر نظام التشغيل باستخدام محلل مزوّد خدمة الإنترنت خارج النفق.

ما الحجم الذي يحتاجه VPS؟

أصغر بكثير مما يتوقع الناس. إجابات DNS بحجم بضع مئات من البايتات، والعمل اللازم لكل استعلام هو بحث بسيط عبر جدول تجزئة (hash)، لذا فمحلل منزل أو فريق صغير خامل تقريباً طوال الوقت. خادم Sentinel — 2 vCPU، و4 GB، بـ$3.90 شهرياً — سيخدم عشرات الأجهزة دون أن يغادر متوسط الحِمل الصفر تقريباً، ومعظم تلك الـ4 GB متاح لإنفاقه على الذاكرة المؤقتة، وهي المورد الوحيد الذي يحسّن التجربة فعلياً. أعطِ Unbound بضع مئات من الميغابايتات من ذاكرة الرسائل ومجموعات السجلات (RRset) المؤقتة وستستقر نسبة الإصابة بين ثمانين وتسعين بالمئة. سبب اختيار حجم أكبر ليس DNS أبداً: بل لأن نفس الخادم يُنهي أيضاً نفق WireGuard الخاص بك، أو يشغّل Vaultwarden، أو يحمل مستودع نسخ احتياطي. عرض النطاق الترددي ليس مشكلة على الإطلاق — فمحلل منزلي مزدحم ينقل بضع مئات من الميغابايتات شهرياً.

ماذا يحدث عند إعادة تشغيل VPS أو توقف المحلل عن العمل؟

يتوقف كل جهاز مُعدّ لاستخدامه عن تحليل الأسماء، وهو ما سيصفه من يستخدمونه بأن "الإنترنت معطّل". هذه هي الكلفة التشغيلية الحقيقية لاستضافة DNS بنفسك، وتستحق قراراً لا اكتشافاً مفاجئاً. ثلاثة خطوط دفاع، بترتيب تصاعدي من حيث الجهد. أعدّ محللاً ثانوياً على أجهزتك — محللاً عاماً مثل Quad9 أو dns0.eu — واقبل أن تلك الاستعلامات ستخرج من سيطرتك أثناء الانقطاع؛ هذا ما ينبغي أن يفعله معظم الناس. أو شغّل نسخة ثانية على VPS ثانٍ في معقل آخر واذكر الاثنين معاً، ما يُبقي كل شيء داخلياً مقابل ثمن خادم ثانٍ بـ$3.90. أو، على النفق، شغّل ذاكرة مؤقتة محلية صغيرة جداً على كل جهاز عميل كي يصبح الانقطاع القصير غير محسوس. أياً كان ما تختاره، عيّن Restart=on-failure على الوحدة، وفعّلها عند الإقلاع، واختبر إعادة التشغيل مرة واحدة عن قصد — فالمحلل الذي لا يعود من تلقاء نفسه سيختار دائماً أسوأ لحظة ليثبت ذلك.

هل ستُعطّل قوائم الحظر أشياء؟

نعم، أحياناً، والطريقة التي تتعامل بها مع ذلك هي الفارق بين إعداد يدوم وآخر يُنتزع خلال أسبوعين. تُدار قوائم الحظر بأشخاص يتخذون قرارات تقديرية، ومن حين لآخر يلتقط أحد هذه القرارات شيئاً تحتاجه: نقطة نهاية للكشف عن الاحتيال تابعة لبنك، أو أداة تتبع شحنة، أو مسار تسجيل دخول يُعاد توجيهه عبر نطاق تحليلات. الخلل مربك لأنه لا يبدو كأنه مشكلة DNS — فالصفحة تُحمَّل جزئياً، أو الزر لا يفعل شيئاً. ثلاث عادات تُصلح ذلك. ابدأ بقائمة واحدة متحفظة بدل ست قوائم عدوانية. احتفظ بقائمة سماح وأضف إليها بلا تردد. وأبقِ سجل الاستعلامات مفعّلاً لمدة كافية للإجابة عن "ماذا طلب هذا الجهاز للتو، وماذا رفضنا؟" — وهي اللحظة التي تكتشف فيها أن المحلل المُصفِّي هو بذاته جهاز يسجّل كل شيء، وأن إعداد مدة الاحتفاظ لديه قرار خصوصية تتخذه نيابة عن الجميع على الشبكة.

هل يمكنني مشاركة المحلل مع العائلة أو الأصدقاء؟

نعم، وهي واحدة من أفضل أسباب بنائه — خادم واحد بـ$3.90 يمكنه تنظيف DNS لمنزل بأكمله أو لحفنة من الأصدقاء. قاعدتان تجعلان ذلك آمناً. أولاً، شاركه عبر النفق أو عبر نقطة نهاية مشفّرة موثّقة، ولا تفتح أبداً المنفذ 53 للعالم؛ ومع DNS-over-HTTPS يمكنك إعطاء كل شخص مساراً مميزاً كي يمكن إلغاء وصوله فردياً، ويمكن لـAdGuard Home عندها تطبيق تصفية مختلفة لكل عميل. ثانياً، كن واضحاً مع نفسك حول ما تتحمّله: أنت الآن تحمل سجل استعلامات كل من يستخدمه. اضبط مدة الاحتفاظ على صفر أو على يوم واحد، وأخبرهم بما هو هذا الإعداد، وتذكّر أنه إن كانت خصوصيتك أنت هي ما تحميه يوماً، فمحلل يستخدمه خمسة أشخاص هو أيضاً محلل يصعب فيه إسناد أي استعلام بمفرده إلى أي واحد منهم بعينه.

هل يمانع NordBastion إن شغّلت محلل DNS على VPS؟

لا مانع إطلاقاً — فالمحلل الخاص المُحكَم الوصول هو حِمل عمل عادي، وسياسة الاستخدام المقبول لا تقول شيئاً بشأنه. ما تهتم به السياسة فعلاً، وما تهتم به كل شبكة جادة، هو أن يُستخدم محلل مفتوح كعاكس تضخيم ضد طرف ثالث، لأن حركة الهجوم تغادر شبكتنا وتحطّ على شبكة طرف آخر. اتبع الخطوة 02 ولن يحدث ذلك أبداً: ارفض افتراضياً، اسمح بالنفق، وحدّد معدل ما تبقى. إذا أردت تشغيل محلل عام عن قصد كخدمة للآخرين، فتلك محادثة تستحق أن تُجرى مسبقاً لا بعد وصول أول بلاغ إساءة استخدام — فالمتطلبات التقنية (تحديد معدل الاستجابة، منع ANY، والمراقبة) معروفة جيداً، والمشكلة هي تشغيل محلل مفتوح عن طريق الخطأ، لا تشغيله عن قصد.

احصل على الخادم

محلل خاص بك، على عنوان IP ليس اسمك. بدون KYC، مدفوع بالعملات المشفرة.

Sentinel — 2 vCPU و4 GB بـ$3.90 شهرياً، في Helsinki أو Stockholm أو Oslo أو Reykjavík. يكفي للمحلل، ونفق WireGuard الذي ينبغي أن يعيش خلفه، وأي شيء آخر تقرر التوقف عن استئجاره. بلا بريد إلكتروني عند التسجيل، وبلا وثيقة هوية، وبلا أي سجل على مستوى المنتج لأي شيء تبحث عنه.

آخر مراجعة · 2026-10-12 · المصادر · توثيق Unbound وAdGuard Home، وRFC 9156 (تصغير QNAME)، وRFC 7858 (DNS-over-TLS)، وRFC 8484 (DNS-over-HTTPS)، وsystemd-resolved(8) · الدورية · سنوياً

استضافة خاصة، مبنية في الشمال.