table of contents
- trixie-backports 4.31.0-1~bpo13+1
- testing 4.31.0-1
- unstable 4.31.0-1
| RESOLVED.CONF(5) | resolved.conf | RESOLVED.CONF(5) |
الاسم¶
resolved.conf, resolved.conf.d - ملفات تهيئة تحليل أسماء الشبكة
موجز¶
الوصف¶
تتحكم ملفات التهيئة هذه في تحليل أسماء DNS المحلية و LLMNR.
أدلة الضبط والأسبقية¶
يُضبط التشكيل المبدئي أثناء التجميع، لذا لا يلزم التشكيل إلا عند الحاجة للانحراف عن تلك القيم المبدئية. يُحمل ملف التشكيل الرئيس من أحد الأدلة المدرجة حسب ترتيب الأولوية، ويُستخدم أول ملف يُعثر عليه فقط: /etc/systemd/، و /run/systemd/، و /usr/local/lib/systemd/ [1]، و /usr/lib/systemd/. تحتوي نسخة المورد من الملف على مدخلات مُعلقة تظهر القيم المبدئية كدليل للمدير. يمكن أيضًا إنشاء تجاوزات محلية عن طريق إنشاء ملفات تكميلية (drop-ins)، كما هو موضح أدناه. يمكن أيضًا تحرير ملف التشكيل الرئيس لهذا الغرض (أو نسخة في /etc/ إذا كانت مشحونة تحت /usr/)، ومع ذلك يوصى باستخدام الملفات التكميلية للتشكيل المحلي بدلاً من إجراء تعديلات على ملف التشكيل الرئيس.
بالإضافة إلى ملف الإعداد الرئيس، تُقرأ قصاصات الإعداد الإضافية من /usr/lib/systemd/*.conf.d/ و /usr/local/lib/systemd/*.conf.d/ و /etc/systemd/*.conf.d/. لهذه الإضافات أولوية أعلى وتتجاوز ملف الإعداد الرئيس. تُفرز الملفات في الأدلة الفرعية للإعداد *.conf.d/ حسب أسماء ملفاتها بترتيب معجمي، بغض النظر عن الدليل الفرعي الذي توجد فيه. عندما تحدد ملفات متعددة نفس الخيار، بالنسبة للخيارات التي تقبل قيمة واحدة فقط، فإن المدخلة في الملف الأخير في الترتيب هي التي تسود، وبالنسبة للخيارات التي تقبل قائمة من القيم، تُجمع المدخلات كما تظهر في الملفات المرتبة.
عندما تحتاج الحزم إلى تخصيص الضبط، يمكنها تثبيت ملفات تكميلية (drop-ins) تحت /usr/. تُحجز الملفات في /etc/ لمدير النظام المحلي، الذي قد يستخدم هذا المنطق لتخطي ملفات الضبط المثبتة من قبل حزم المورّد. يجب استخدام الملفات التكميلية لتخطي ملفات الحزم التكميلية، بما أن ملف الضبط الرئيس له أسبقية أدنى. ويُوصى ببدء جميع أسماء الملفات في تلك المجلدات الفرعية برقم من خانتين وواصلة، لتبسيط الترتيب. كما يحدد هذا مفهوم أولويات الملفات التكميلية للسماح لموردي أنظمة التشغيل بشحن ملفات تكميلية ضمن نطاق محدد أدنى من النطاق الذي يستخدمه المستخدمون. وهذا من شأنه أن يقلل من خطر تخطي ملفات الحزم التكميلية للملفات التكميلية التي حددها المستخدمون عرضًا. ويُوصى باستخدام النطاق 10-40 للملفات التكميلية في /usr/ والنطاق 60-90 للملفات التكميلية في /etc/ و /run/، للتأكد من أن الملفات التكميلية المحلية والعابرة تأخذ الأولوية على الملفات التكميلية التي يشحنها مورد نظام التشغيل.
لتعطيل ملف تشكيل مقدم من المورد، فإن الطريقة الموصى بها هي وضع وصلة رمزية إلى /dev/null في دليل التشكيل في /etc/، بنفس اسم ملف تشكيل المورد.
الخيارات¶
الخيارات التالية متاحة في القسم [Resolve]:
DNS=
أُضيف في الإصدارة 213.
FallbackDNS=
أُضيف في الإصدارة 216.
Domains=
أي نطاقات غير مسبوقة بـ "~" تُستخدم كلواحق بحث عند تحليل أسماء المضيفين أحادية التسمية (أسماء النطاقات التي لا تحتوي على نقطة)، لتأهيلها إلى أسماء نطاقات مؤهلة بالكامل (FQDNs). تُعالج "نطاقات البحث" هذه بدقة بالترتيب الذي تُحدد به، حتى يُعثر على الاسم مع اللاحقة المضافة. لأسباب توافقية، إذا لم يُحدد هذا الإعداد، تُستخدم نطاقات البحث المدرجة في /etc/resolv.conf مع الكلمة الأساسية search بدلاً من ذلك، إذا كان هذا الملف موجوداً وتم تكوين أي نطاقات فيه.
النطاقات المسبوقة بـ "~" تُسمى "نطاقات توجيه فقط". جميع النطاقات المدرجة هنا (كل من نطاقات البحث ونطاقات التوجيه فقط بعد إزالة البادئة "~") تُحدد مسار بحث يُوجه استعلامات DNS بشكل تفضيلي إلى هذه الواجهة. يكون لمسار البحث هذا تأثير فقط عندما تكون خوادم DNS مناسبة لكل وصلة معروفة. يمكن تعريف هذه الخوادم عبر إعداد DNS= (انظر أعلاه) وديناميكياً في وقت التشغيل، مثلاً من عقود DHCP. إذا لم تكن خوادم DNS لكل وصلة معروفة، فلا تأثير لنطاقات التوجيه فقط.
استخدم البناء "~." (المكون من "~" للإشارة إلى نطاق توجيه فقط و "." للإشارة إلى نطاق جذر DNS الذي هو اللاحقة الضمنية لجميع نطاقات DNS) لاستخدام خوادم DNS المعرفة لهذه الوصلة بشكل تفضيلي لجميع النطاقات.
انظر "البروتوكولات والتوجيه" في systemd-resolved.service(8) للتفاصيل حول كيفية استخدام نطاقات البحث ونطاقات التوجيه فقط.
لاحظ أن تكوين نطاق MulticastDNS "local" كنطاق بحث أو توجيه له تأثير توجيه عمليات البحث لهذا النطاق إلى DNS أحادي الإرسال الكلاسيكي. يمكن استخدام هذا لتوفير توافق مع التثبيتات القديمة التي تستخدم هذا النطاق في سياق DNS أحادي الإرسال، ضد تعيين IANA لهذا النطاق لأغراض MulticastDNS البحتة. نطاقات البحث والتوجيه هي مفهوم DNS أحادي الإرسال، لا يمكن استخدامها لحل عمليات البحث أحادية التسمية عبر MulticastDNS.
أُضيف في الإصدارة 229.
LLMNR=
أُضيف في الإصدارة 216.
MulticastDNS=
أُضيف في الإصدارة 234.
DNSSEC=
إذا ضُبط على صحيح، تُتحقق جميع عمليات بحث DNS محلياً بواسطة DNSSEC (باستثناء LLMNR و Multicast DNS). إذا اكتُشف أن الرد على طلب بحث غير صالح، يُعاد فشل بحث إلى التطبيقات. لاحظ أن هذا الوضع يتطلب خادم DNS يدعم DNSSEC. إذا لم يدعم خادم DNS DNSSEC بشكل صحيح، ستفشل جميع عمليات التحقق.
إذا ضُبط على "allow-downgrade"، تُحاول عملية التحقق من DNSSEC، لكن إذا لم يدعم الخادم DNSSEC بشكل صحيح، يُعطّل وضع DNSSEC آلياً. لاحظ أن هذا الوضع يجعل التحقق من DNSSEC عرضة لهجمات "الخفض"، حيث قد يتمكن المهاجم من تحفيز خفض إلى وضع غير DNSSEC عن طريق تركيب رد DNS يوحي بأن DNSSEC غير مدعوم.
إذا ضُبط على خطأ، لا تُتحقق عمليات بحث DNS بواسطة DNSSEC.
لاحظ أن التحقق من DNSSEC يتطلب استرجاع بيانات DNS إضافية، وبالتالي يؤدي إلى عقوبة زمنية صغيرة في وقت بحث DNS.
يتطلب DNSSEC معرفة "مراسي الثقة" لإثبات سلامة البيانات. مرساة الثقة لنطاق الجذر للإنترنت مدمجة في المحلل، ويمكن تعريف مراسي ثقة إضافية باستخدام dnssec-trust-anchors.d(5). قد تتغير مراسي الثقة على فترات منتظمة، وقد تُلغى مراسي الثقة القديمة. في هذه الحالة، لا يكون التحقق من DNSSEC ممكنًا حتى يتم تكوين مراسي ثقة جديدة محليًا أو تحديث حزمة برامج المحلل بمرساة الثقة الجذرية الجديدة. في الواقع، عندما تُلغى مرساة الثقة المدمجة وتكون DNSSEC= صحيحة، ستفشل جميع عمليات البحث اللاحقة، لأنه لم يعد من الممكن إثبات ما إذا كانت عمليات البحث موقعة بشكل صحيح أو غير موقعة بشكل صحيح. إذا تم تعيين DNSSEC= على "allow-downgrade"، فسيقوم المحلل آليًا بإيقاف التحقق من DNSSEC في هذه الحالة.
سيتم إعلام برامج العميل التي تبحث عن بيانات DNS ما إذا كان يمكن التحقق من عمليات البحث باستخدام DNSSEC، أو ما إذا كان لا يمكن التحقق من البيانات المعادة (إما لأن البيانات وجدت غير موقعة في DNS، أو أن خادم DNS لم يدعم DNSSEC أو لم تكن مراسي الثقة المناسبة معروفة). في الحالة الأخيرة، يُفترض أن برامج العميل تستخدم مخططًا ثانويًا للتحقق من بيانات DNS المعادة، إذا كان ذلك مطلوبًا.
يُوصى بتعيين DNSSEC= على صحيح في الأنظمة التي يُعرف فيها أن خادم DNS يدعم DNSSEC بشكل صحيح، وحيث تحدث تحديثات البرامج أو مراسي الثقة بانتظام. في الأنظمة الأخرى، يُوصى بتعيين DNSSEC= على "allow-downgrade".
بالإضافة إلى إعداد DNSSEC العام هذا، يحتفظ systemd-networkd.service(8) أيضًا بإعدادات DNSSEC لكل وصلة. بالنسبة لخوادم DNS النظامية (انظر أعلاه)، يكون إعداد DNSSEC العام فقط ساري المفعول. بالنسبة لخوادم DNS لكل وصلة، يكون الإعداد لكل وصلة ساري المفعول، ما لم يكن غير معين، وفي هذه الحالة يُستخدم الإعداد العام بدلاً من ذلك.
تتعارض نطاقات DNS الخاصة بالموقع عمومًا مع تشغيل DNSSEC، ما لم يتم تكوين مرساة ثقة سلبية (إذا كانت النطاق الخاص غير موقع) أو إيجابية (إذا كانت النطاق الخاص موقعًا) لها. إذا تم تحديد وضع "allow-downgrade"، فسيتم محاولة اكتشاف نطاقات DNS الخاصة بالموقع باستخدام نطاقات المستوى الأعلى (TLDs) غير المعروفة لخادم DNS الجذر. لا يعمل هذا المنطق في جميع إعدادات النطاقات الخاصة.
المبدئي هو "no".
أُضيف في الإصدارة 229.
DNSOverTLS=
عند تعيينه على "opportunistic"، تُحاول طلبات DNS إرسالها معمّاة باستخدام DNS-over-TLS. إذا كان خادم DNS لا يدعم TLS، يتم تعطيل DNS-over-TLS. لاحظ أن هذا الوضع يجعل DNS-over-TLS عرضة لهجمات "الخفض"، حيث قد يتمكن المهاجم من تحفيز خفض إلى وضع غير معمّى عن طريق تركيب استجابة توحي بأن DNS-over-TLS غير مدعوم. إذا تم تعيينه على خطأ، تُرسل عمليات بحث DNS عبر UDP.
لاحظ أن DNS-over-TLS يتطلب إرسال بيانات إضافية لإعداد اتصال معمّى، وبالتالي يؤدي إلى عقوبة زمنية صغيرة في وقت بحث DNS.
لاحظ أنه في وضع "opportunistic"، لا يكون المحلل قادرًا على استيثاق الخادم، لذا فهو عرضة لهجمات "الرجل في المنتصف".
بالإضافة إلى إعداد DNSOverTLS= العام هذا، يحتفظ systemd-networkd.service(8) أيضًا بإعدادات DNSOverTLS= لكل وصلة. بالنسبة لخوادم DNS النظامية (انظر أعلاه)، يكون إعداد DNSOverTLS= العام فقط ساري المفعول. بالنسبة لخوادم DNS لكل وصلة، يكون الإعداد لكل وصلة ساري المفعول، ما لم يكن غير معين، وفي هذه الحالة يُستخدم الإعداد العام بدلاً من ذلك.
المبدئي هو "no".
أُضيف في الإصدار 239.
Cache=
لاحظ أن التخزين المؤقت معطل مبدئيًا لخوادم DNS المحلية للمضيف. انظر CacheFromLocalhost= للحصول على التفاصيل.
أُضيف في الإصدارة 231.
CacheFromLocalhost=
أُضيف في الإصدار 248.
DNSStubListener=
يوفر محلل DNS الناقص (stub resolver) على 127.0.0.53 مجموعة الميزات الكاملة للمحلل المحلي، والتي تتضمن تقديم حل LLMNR/MulticastDNS. يوفر محلل DNS الناقص على 127.0.0.54 محللًا أكثر محدودية، يعمل في وضع "الوكيل" فقط، أي أنه سيمرر معظم رسائل DNS غير معدلة نسبيًا إلى خوادم DNS الحالية في المنبع ويعيدها، لكنه لا يحاول معالجة الرسائل محليًا، وبالتالي لا يتحقق من DNSSEC، أو يقدم LLMNR/MulticastDNS. (ومع ذلك، سيترجم إلى اتصال DNS-over-TLS إذا لزم الأمر.)
لاحظ أن مستمع DNS الفرعي يُوقف ضمنيًا عندما يكون عنوان الاستماع والمنفذ قيد الاستخدام بالفعل.
أُضيف في الإصدار 232.
DNSStubListenerExtra=
أمثلة:
DNSStubListenerExtra=192.168.10.10 DNSStubListenerExtra=2001:db8:0:f102::10 DNSStubListenerExtra=192.168.10.11:9953 DNSStubListenerExtra=[2001:db8:0:f102::11]:9953 DNSStubListenerExtra=tcp:192.168.10.12 DNSStubListenerExtra=udp:2001:db8:0:f102::12 DNSStubListenerExtra=tcp:192.168.10.13:9953 DNSStubListenerExtra=udp:[2001:db8:0:f102::13]:9953
أُضيف في الإصدار 247.
ReadEtcHosts=
أُضيف في الإصدار 240.
ResolveUnicastSingleLabel=
يُوفر هذا الخيار للتوافق مع التشكيلات حيث لا تُستخدم خوادم DNS عامة. توجيه الأسماء ذات التسمية الواحدة إلى خوادم ليست تحت سيطرتك لا يتوافق مع المعايير، انظر بيان IAB[4]، وقد يُشكل خطرًا على الخصوصية والأمان.
أُضيف في الإصدار 246.
StaleRetentionSec=ثوانٍ
هذا مفيد عند حدوث فشل في خادم DNS أو يصبح غير قابل للوصول. في هذه الحالات، يستمر systemd-resolved(8) في استخدام السجلات القديمة للإجابة على استعلامات DNS، خاصة عندما لا يمكن الحصول على استجابة صالحة من خوادم DNS العلوية. ومع ذلك، لا ينطبق هذا على استجابات NXDOMAIN، لأنها لا تزال استجابات صالحة تمامًا. تعزز هذه الميزة المرونة ضد فشل وانقطاعات البنية التحتية لـ DNS.
يحاول systemd-resolved دائمًا الوصول إلى خوادم DNS العلوية أولاً، قبل تزويد تطبيق العميل بأي بيانات قديمة. إذا فُعلت هذه الميزة، لن تُمسح الخبيئة عند تغيير الخوادم.
أُضيف في الإصدار 254.
انظر أيضًا¶
systemd(1), systemd-resolved.service(8), systemd-networkd.service(8), dnssec-trust-anchors.d(5), resolv.conf(5)
ملاحظات¶
- 1.
- 💣💥🧨💥💥💣 يرجى ملاحظة أن ملفات الضبط تلك يجب أن تكون متوفرة في جميع الأوقات. إذا كان /usr/local/ قسماً منفصلاً، فقد لا يكون متوفراً أثناء بدء التشغيل المبكر، ويجب عدم استخدامه للضبط.
- 2.
- RFC 4795
- 3.
- RFC 6762
- 4.
- بيان IAB
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| systemd 257.13 |