كتيبات سطر الأوامر

Man » دليل dig على الإنترنت - وثائق مفصلة عبر الإنترنت لصفحة دليل dig

🌍
dig - أداة بحث DNS

ملخص

dig [@server] [-b address] [-c class] [-f filename] [-k filename] [-m] [-p port#] [-q name] [-t
type] [-v] [-x addr] [-y [hmac:]name:key] [ [-4] | [-6] ] [name] [type] [class] [queryopt...]

dig [-h]

dig [global-queryopt...] [query...]

الوصف

dig هي أداة مرنة للاستعلام عن خوادم أسماء النطاقات (DNS). إنها تجري عمليات بحث DNS وتعرض الإجابات التي يتم إرجاعها من خوادم الأسماء التي تم الاستعلام عنها. يستخدم معظم مسؤولي DNS أداة dig لاستكشاف أخطاء DNS وإصلاحها بسبب مرونتها وسهولة استخدامها ووضوح إخراجها. تميل أدوات البحث الأخرى إلى أن يكون لديها وظائف أقل من dig.

على الرغم من أن dig تُستخدم عادةً مع وسيطات سطر الأوامر، إلا أنها تحتوي أيضًا على وضع تشغيل دفعي لقراءة طلبات البحث من ملف. تتم طباعة ملخص موجز لوسيطات وخيارات سطر الأوامر عند إعطاء الخيار -h. يسمح تطبيق BIND 9 لأداة dig بإصدار عمليات بحث متعددة من سطر الأوامر.

إلا إذا تم توجيهها للاستعلام عن خادم اسم معين، تحاول dig استعلام كل خادم من الخوادم المدرجة في /etc/resolv.conf. إذا لم يتم العثور على عناوين خوادم قابلة للاستخدام، فإن dig ترسل الاستعلام إلى المضيف المحلي.

عند عدم إعطاء أي وسيطات أو خيارات في سطر الأوامر، تجري dig استعلام NS للنطاق "." (النطاق الجذري).

من الممكن تعيين قيم افتراضية لكل مستخدم لأداة dig عبر ${HOME}/.digrc. تتم قراءة هذا الملف ويتم تطبيق أي خيارات فيه قبل وسيطات سطر الأوامر. يعطل الخيار -r هذه الميزة، للبرامج النصية التي تحتاج إلى سلوك يمكن التنبؤ به.

تتداخل أسماء الفئات IN و CH مع أسماء النطاقات العليا IN و CH. استخدم الخيارين -t و -c لتحديد النوع والفئة، أو استخدم الخيار -q لتحديد اسم النطاق، أو استخدم "IN." و "CH." عند البحث عن هذه النطاقات العليا.

الاستخدام البسيط

يبدو الاستخدام النموذجي لأداة dig كما يلي:

dig @server name type

حيث:

server هو اسم أو عنوان خادم الاسم المراد الاستعلام عنه. يمكن أن يكون هذا عنوان IPv4 بتنسيق عشري منقوط أو عنوان IPv6 بتنسيق محدد بعلامة النقطتين. عند توفير وسيطة الخادم كاسم مضيف، تقوم dig بحل هذا الاسم قبل الاستعلام عن خادم الاسم هذا.

إذا لم يتم توفير وسيطة الخادم، فإن dig تستشير /etc/resolv.conf؛ إذا تم العثور على عنوان هناك، فإنه يستعلم عن خادم الاسم الموجود في هذا العنوان. إذا كان أي من الخيارين -4 أو -6 قيد الاستخدام، فسيتم تجربة العناوين فقط للبروتوكول المقابل. إذا لم يتم العثور على أي عناوين قابلة للاستخدام، فإن dig ترسل الاستعلام إلى المضيف المحلي. يتم عرض الرد من خادم الاسم الذي يستجيب.

name هو اسم سجل المورد المراد البحث عنه.

`type` يشير إلى نوع الاستعلام المطلوب - ANY أو A أو MX أو SIG، إلخ. يمكن أن يكون `type` أي نوع استعلام صالح. إذا لم يتم توفير وسيطة `type`، يقوم `dig` بإجراء بحث عن سجل A.

خيارات

`-4` يشير هذا الخيار إلى أنه يجب استخدام IPv4 فقط.

`-6` يشير هذا الخيار إلى أنه يجب استخدام IPv6 فقط.

`-b address[#port]`
يحدد هذا الخيار عنوان IP المصدر للاستعلام. يجب أن يكون العنوان عنوانًا صالحًا على أحد واجهات الشبكة الخاصة بالمضيف، أو "0.0.0.0" أو "::". يمكن تحديد منفذ اختياري عن طريق إلحاقه بـ `#port`.

`-c class`
يحدد هذا الخيار فئة الاستعلام. الفئة الافتراضية هي IN؛ الفئات الأخرى هي HS لسجلات Hesiod أو CH لسجلات Chaosnet.

`-f file`
يحدد هذا الخيار وضع الدُفعات، حيث يقرأ `dig` قائمة بطلبات البحث لمعالجتها من الملف المحدد. يجب تنظيم كل سطر في الملف بنفس الطريقة التي سيتم بها تقديمه كاستعلام إلى `dig` باستخدام واجهة سطر الأوامر.

`-h` اطبع ملخص الاستخدام.

`-k keyfile`
يخبر هذا الخيار `dig` بتوقيع الاستعلامات باستخدام TSIG أو SIG(0) باستخدام مفتاح يتم قراءته من الملف المحدد. يمكن إنشاء ملفات المفاتيح باستخدام `tsig-keygen`. عند استخدام مصادقة TSIG مع `dig`، يجب أن يكون خادم الاسم الذي يتم الاستعلام عنه على علم بالمفتاح والخوارزمية التي يتم استخدامها. في BIND، يتم ذلك عن طريق توفير عبارات `key` و `server` المناسبة في `named.conf` لـ TSIG، وعن طريق البحث عن سجل `KEY` في بيانات المنطقة لـ SIG(0).

`-m` يمكّن هذا الخيار تصحيح استخدام الذاكرة.

`-p port`
يرسل هذا الخيار الاستعلام إلى منفذ غير قياسي على الخادم، بدلاً من المنفذ الافتراضي 53. يُستخدم هذا الخيار لاختبار خادم اسم تم تكوينه للاستماع إلى الاستعلامات على رقم منفذ غير قياسي.

`-q name`
يحدد هذا الخيار اسم المجال للاستعلام. هذا مفيد للتمييز بين الاسم والحجج الأخرى.

`-r` يشير هذا الخيار إلى أنه يجب عدم قراءة الخيارات من `${HOME}/.digrc`. هذا مفيد للبرامج النصية التي تحتاج إلى سلوك يمكن التنبؤ به.

`-t type`
يحدد هذا الخيار نوع سجل المورد المراد الاستعلام عنه، والذي يمكن أن يكون أي نوع استعلام صالح. إذا كان نوع سجل مورد مدعومًا في BIND 9، فيمكن إعطاؤه عن طريق الاسم المختصر للنوع (مثل NS أو AAAA). نوع الاستعلام الافتراضي هو A، ما لم يتم توفير الخيار `-x` للإشارة إلى بحث عكسي. يمكن طلب نقل المنطقة عن طريق تحديد نوع `AXFR`. عند الحاجة إلى نقل منطقة تدريجي (IXFR)، قم بتعيين النوع على `ixfr=N`. يحتوي النقل التدريجي للمنطقة على جميع التغييرات التي تم إجراؤها على المنطقة منذ أن كان رقم تسلسل سجل SOA في المنطقة هو N.

يمكن التعبير عن جميع أنواع سجلات الموارد على هيئة `TYPEnn`، حيث `nn` هو رقم النوع. إذا لم يتم دعم نوع سجل المورد في BIND 9، فسيتم عرض النتيجة كما هو موضح في RFC 3597.

`-u` يشير هذا الخيار إلى أنه يجب توفير أوقات الاستعلام المطبوعة بالمايكروثانية بدلاً من الميلي ثانية.

`-v` يطبع هذا الخيار رقم الإصدار ويخرج.

-x addr

يحدد هذا الخيار عمليات البحث العكسي المبسّطة، لربط العناوين بالأسماء. addr هو عنوان IPv4 بتنسيق عشري منقوط، أو عنوان IPv6 مفصول بنقطتين. عند استخدام الخيار -x، لا حاجة لتوفير وسائط الاسم والفئة والنوع. يقوم dig تلقائيًا بإجراء بحث لاسم مثل 94.2.0.192.in-addr.arpa ويقوم بتعيين نوع الاستعلام والفئة إلى PTR و IN على التوالي. يتم البحث عن عناوين IPv6 باستخدام تنسيق النيبل تحت نطاق IP6.ARPA.

-y [hmac:]keyname:secret

يقوم هذا الخيار بتوقيع الاستعلامات باستخدام TSIG مع مفتاح المصادقة المحدد. keyname هو اسم المفتاح، و secret هو السر المشترك المشفر بـ Base64. hmac هو اسم خوارزمية المفتاح؛ الخيارات الصالحة هي hmac-md5 أو hmac-sha1 أو hmac-sha224 أو hmac-sha256 أو hmac-sha384 أو hmac-sha512. إذا لم يتم تحديد hmac، فإن القيمة الافتراضية هي hmac-md5؛ إذا تم تعطيل MD5، فإن القيمة الافتراضية هي hmac-sha256.

ملاحظة:

يجب استخدام الخيار -k فقط، بدلاً من الخيار -y، لأنه باستخدام -y يتم توفير السر المشترك كوسيطة سطر أوامر كنص عادي. قد يكون هذا مرئيًا في إخراج ps1 أو في ملف محفوظ في سجل الأوامر الخاص بمستخدم.

خيارات الاستعلام

يوفر dig عددًا من خيارات الاستعلام التي تؤثر على الطريقة التي يتم بها إجراء عمليات البحث والنتائج المعروضة. بعض هذه الخيارات تحدد أو تعيد تعيين بتات العلم في رأس الاستعلام، ويحدد بعضها الأقسام التي يتم عرضها في الإجابة، ويحدد البعض الآخر استراتيجيات المهلة وإعادة المحاولة.

يتم تحديد كل خيار من خيارات الاستعلام بواسطة كلمة رئيسية مسبوقة بعلامة زائد (+). بعض الكلمات الرئيسية تحدد أو تعيد تعيين خيار؛ يمكن أن تسبق هذه الكلمات الرئيسية السلسلة no لنفي معنى تلك الكلمة الرئيسية. تحدد الكلمات الرئيسية الأخرى قيمًا للخيارات، مثل فاصل المهلة. لها الشكل +keyword=value. يمكن اختصار الكلمات الرئيسية، طالما أن الاختصار غير غامض؛ على سبيل المثال، +cd يعادل +cdflag. خيارات الاستعلام هي:

+aaflag، +noaaflag

هذا الخيار هو مرادف لـ +aaonly و +noaaonly.

+aaonly، +noaaonly

يقوم هذا الخيار بتعيين علامة aa في الاستعلام.

+additional، +noadditional

يعرض هذا الخيار [أو لا يعرض] قسم "إضافي" من الاستجابة. الافتراضي هو عرضه.

+adflag، +noadflag

يقوم هذا الخيار بتعيين [أو لا يعين] بت AD (بيانات مصادقة) في الاستعلام. يطلب هذا الخيار من الخادم إرجاع ما إذا كانت جميع أقسام "الإجابة" و "السلطة" قد تم التحقق منها على أنها آمنة، وفقًا لسياسة الأمان الخاصة بالخادم. يشير AD=1 إلى أنه تم التحقق من صحة جميع السجلات على أنها آمنة وأن الإجابة ليست من نطاق OPT-OUT. يشير AD=0 إلى أن بعض أجزاء الإجابة غير آمنة أو لم يتم التحقق منها. يتم تعيين هذا البت افتراضيًا.

+all، +noall

يقوم هذا الخيار بتعيين أو مسح جميع علامات العرض.

+answer، +noanswer

يعرض هذا الخيار [أو لا يعرض] قسم "الإجابة" من الاستجابة. الافتراضي هو عرضه.

+authority، +noauthority

يعرض هذا الخيار [أو لا يعرض] قسم "السلطة". الافتراضي هو عرضه.

+badcookie، +nobadcookie

يحاول هذا الخيار إعادة محاولة البحث بخادم جديد إذا تم تلقي استجابة BADCOOKIE.


+besteffort, +nobesteffort

هذا الخيار يحاول عرض محتويات الرسائل المشوهة. الافتراضي هو عدم عرض الإجابات المشوهة.

+bufsize[=B]

يحدد هذا الخيار حجم مخزن الرسائل UDP الذي يتم الإعلان عنه باستخدام EDNS0 إلى B بايت. الحد الأقصى والحد الأدنى لحجم هذا المخزن هما 65535 و 0 على التوالي. +bufsize يستعيد حجم المخزن الافتراضي.

+cd, +cdflag, +nocdflag

يقوم هذا الخيار [أو لا يقوم] بتعيين بت CD (تعطيل التحقق) في الاستعلام. يطلب هذا من الخادم عدم إجراء التحقق من DNSSEC للاستجابات.

+class, +noclass

يقوم هذا الخيار بعرض [أو لا يقوم بعرض] CLASS عند طباعة السجل.

+cmd, +nocmd

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

+coflag, +co, +nocoflag, +noco

يقوم هذا الخيار بتعيين [أو لا يقوم بتعيين] بت CO (Compact denial of existence Ok) EDNS في الاستعلام. إذا تم تعيينه، فإنه يخبر الخوادم بأن استجابات "النفي المضغوط للوجود" مقبولة عند الرد على الاستعلامات. الافتراضي هو +nocoflag.

+comments, +nocomments

يقوم هذا الخيار بتبديل عرض بعض أسطر التعليقات في الإخراج، بمعلومات حول رأس الحزمة والجزء الزائف OPT، وأسماء قسم الاستجابة. الافتراضي هو طباعة هذه التعليقات.

أنواع أخرى من التعليقات في الإخراج لا تتأثر بهذا الخيار، ولكن يمكن التحكم فيها باستخدام مفاتيح سطر الأوامر الأخرى. وتشمل هذه +cmd و +question و +stats و +rrcomments.

+cookie=####, +nocookie

يقوم هذا الخيار بإرسال [أو لا يقوم بإرسال] خيار COOKIE EDNS، مع قيمة اختيارية. يسمح إعادة تشغيل COOKIE من استجابة سابقة للخادم بتحديد العميل السابق. الافتراضي هو +cookie.

يتم أيضًا تعيين +cookie عند تعيين +trace لتقليد استعلامات الخادم الافتراضية بشكل أفضل.

+crypto, +nocrypto

يقوم هذا الخيار بتبديل عرض الحقول المشفرة في سجلات DNSSEC. محتويات هذه الحقول غير ضرورية لتصحيح معظم أخطاء التحقق من DNSSEC، وإزالتها تجعل من السهل رؤية الأخطاء الشائعة. الافتراضي هو عرض الحقول. عند الإهمال، يتم استبدالها بالسلسلة [تم تجاهله] أو، في حالة DNSKEY، يتم عرض معرف المفتاح كبديل، على سبيل المثال [ key id = value ].

+defname, +nodefname

هذا الخيار، الذي تم إهماله، يعامل كمرادف لـ +search، +nosearch.

+dns64prefix, +nodns64prefix

ابحث عن AAAA لـ IPV4ONLY.ARPA واطبع أي بادئات DNS64 تم العثور عليها.

+dnssec, +do, +nodnssec, +nodo

يطلب هذا الخيار إرسال سجلات DNSSEC عن طريق تعيين بت DNSSEC OK (DO) في سجل OPT في قسم إضافي من الاستعلام.

+domain=somename

يقوم هذا الخيار بتعيين قائمة البحث لتتضمن المجال الوحيد somename، كما هو محدد في توجيه المجال في /etc/resolv.conf، وتمكين معالجة قائمة البحث كما لو تم إعطاء خيار +search.


+edns[=#], +noedns

يحدد هذا الخيار إصدار EDNS الذي سيتم الاستعلام به. القيم الصالحة هي من 0 إلى 255. يؤدي تعيين إصدار EDNS إلى إرسال استعلام EDNS. يؤدي +noedns إلى مسح إصدار EDNS المحفوظ. يتم تعيين EDNS إلى 0 افتراضيًا.

+ednsflags[=#], +noednsflags

يحدد هذا الخيار بتات علامات EDNS التي يجب أن تكون صفرًا (بتات Z) إلى القيمة المحددة. يتم قبول ترميزات عشرية وسداسية عشرية وثمانية. يتم تجاهل تعيين اسم علامة (على سبيل المثال، DO، CO) بصمت. افتراضيًا، لا يتم تعيين أي بتات Z.

+ednsnegotiation, +noednsnegotiation

يقوم هذا الخيار بتمكين/تعطيل التفاوض على إصدار EDNS. افتراضيًا، يتم تمكين التفاوض على إصدار EDNS.

+ednsopt[=code[:value]], +noednsopt

يحدد هذا الخيار خيار EDNS مع رمز النقطة code وقيمة اختيارية من نوع value كسلسلة سداسية عشرية. يمكن أن يكون code إما اسم خيار EDNS (على سبيل المثال، NSID أو ECS) أو قيمة رقمية عشوائية. يؤدي +noednsopt إلى مسح خيارات EDNS التي سيتم إرسالها.

+expire, +noexpire

يرسل هذا الخيار خيار EDNS Expire.

+fail, +nofail

يشير هذا الخيار إلى ما إذا كان يجب على named محاولة [أو عدم محاولة] الخادم التالي إذا تم تلقي SERVFAIL. بشكل افتراضي، لا يتم محاولة الخادم التالي، وهو عكس السلوك الطبيعي لمحلل الـ stub.

+fuzztime[=value], +nofuzztime

يسمح هذا الخيار بتحديد وقت التوقيع عند إنشاء رسائل موقعة. إذا تم تحديد قيمة، فهي عدد الثواني منذ 00:00:00 في 1 يناير 1970 بالتوقيت العالمي المنسق مع تجاهل الثواني الكبيسة. إذا لم يتم تحديد قيمة، فسيتم استخدام 1646972129 (الجمعة، 11 مارس 2022، 04:15:29 بالتوقيت العالمي المنسق). الافتراضي هو +nofuzztime ويتم استخدام الوقت الحالي.

+header-only, +noheader-only

يرسل هذا الخيار استعلامًا مع رأس DNS بدون قسم سؤال. بشكل افتراضي، يتم إضافة قسم سؤال. يتم تجاهل نوع الاستعلام واسم الاستعلام عند تعيين هذا الخيار.

+https[=value], +nohttps

يشير هذا الخيار إلى ما إذا كان سيتم استخدام DNS عبر HTTPS (DoH) عند الاستعلام عن خوادم الأسماء. عند استخدام هذا الخيار، يكون رقم المنفذ افتراضيًا 443. يتم استخدام وضع طلب HTTP POST عند إرسال الاستعلام.

إذا تم تحديد قيمة، فسيتم استخدامها كعنوان URL لنقطة النهاية في عنوان URI للاستعلام؛ الافتراضي هو /dns-query. على سبيل المثال، dig @example.com +https سيستخدم عنوان URL https://example.com/dns-query.

+https-get[=value], +nohttps-get

على غرار +https، باستثناء أنه يتم استخدام وضع طلب HTTP GET عند إرسال الاستعلام.

+https-post[=value], +nohttps-post

نفس +https.

+http-plain[=value], +nohttp-plain

على غرار +https، باستثناء أنه سيتم إرسال استعلامات HTTP عبر قناة غير مشفرة. عند استخدام هذا الخيار، يكون رقم المنفذ افتراضيًا 80 ويتم استخدام وضع طلب HTTP POST.

+http-plain-get[=value], +nohttp-plain-get

على غرار +http-plain، باستثناء أنه يتم استخدام وضع طلب HTTP GET.

+http-plain-post[=value], +nohttp-plain-post

نفس +http-plain.


+identify, +noidentify

يعرض [أو لا يعرض] عنوان IP ورقم المنفذ اللذين قدّما الإجابة، عند تمكين خيار +short. إذا طُلبت إجابات قصيرة، فإن الإعداد الافتراضي هو عدم عرض عنوان المصدر ومنفذ الخادم الذي قدم الإجابة.

+idn, +noidn

تمكين أو تعطيل معالجة IDN. افتراضيًا، يتم تمكين IDN لأسماء الاستعلامات المدخلة، وللعرض عند إخراج البيانات في الطرفية.

يمكنك أيضًا تعطيل معالجة IDN الخاصة بـ dig عن طريق تعيين متغير البيئة IDN_DISABLE.

+ignore, +noignore

يتجاهل [أو لا يتجاهل] هذا الخيار الاقتطاع في استجابات UDP بدلاً من إعادة المحاولة باستخدام TCP. افتراضيًا، يتم إجراء عمليات إعادة محاولة TCP.

+keepalive, +nokeepalive

يرسل [أو لا يرسل] هذا الخيار خيار EDNS Keepalive.

+keepopen, +nokeepopen

يحافظ [أو لا يحافظ] هذا الخيار على فتح مقبس TCP بين الاستعلامات، ويستخدمه بدلاً من إنشاء مقبس TCP جديد لكل بحث. الإعداد الافتراضي هو +nokeepopen.

+multiline, +nomultiline

يطبع [أو لا يطبع] هذا الخيار السجلات، مثل سجلات SOA، بتنسيق متعدد الأسطر مع تعليقات قابلة للقراءة. الإعداد الافتراضي هو طباعة كل سجل في سطر واحد لتسهيل تحليل ناتج dig آليًا.

+ndots=D

يحدد هذا الخيار عدد النقاط (D) التي يجب أن تظهر في الاسم ليتم اعتباره مطلقًا. القيمة الافتراضية هي القيمة المحددة باستخدام عبارة ndots في /etc/resolv.conf، أو 1 إذا لم تكن هناك عبارة ndots. يتم تفسير الأسماء التي تحتوي على عدد أقل من النقاط كأسماء نسبية، ويتم البحث عنها في النطاقات المدرجة في توجيهات search أو domain في /etc/resolv.conf إذا تم تعيين +search.

+nsid, +nonsid

عند تمكينه، يضيف هذا الخيار طلب EDNS name server ID عند إرسال استعلام.

+nssearch, +nonssearch

عند تعيين هذا الخيار، يحاول dig العثور على خوادم الأسماء الموثوقة للنطاق الذي يحتوي على الاسم الذي يتم البحث عنه، وعرض سجل SOA الذي يمتلكه كل خادم اسم للنطاق. تتم أيضًا طباعة عناوين الخوادم التي لم تستجب.

+onesoa, +noonesoa

عند تمكينه، يطبع هذا الخيار سجل SOA واحد فقط (بداية) عند إجراء AXFR. الإعداد الافتراضي هو طباعة كل من سجلات SOA الأولية والنهائية.

+opcode=value, +noopcode

عند تمكينه، يحدد (أو يستعيد) هذا الخيار رمز عملية رسالة DNS إلى القيمة المحددة. القيمة الافتراضية هي QUERY (0).

+padding=value

يضيف هذا الخيار قيمة حشو إلى حجم حزمة الاستعلام باستخدام خيار EDNS Padding لكتل من قيمة بايت. على سبيل المثال، يؤدي +padding=32 إلى حشو حزمة استعلام بحجم 48 بايت إلى 64 بايت. حجم الكتلة الافتراضي هو 0، مما يعطل الحشو؛ الحد الأقصى هو 512. من المتوقع عادةً أن تكون القيم عبارة عن قوى للرقم 2، مثل 128؛ ومع ذلك، هذا ليس إلزاميًا. قد تكون الاستجابات للاستعلامات المحشوة أيضًا محشوة، ولكن فقط إذا كان الاستعلام يستخدم TCP أو DNS COOKIE.

+proxy[=src_addr[#src_port]-dst_addr[#dst_port]], +noproxy

عند تعيين هذا الخيار، يضيف dig رؤوس PROXYv2 إلى الاستعلامات. عند تحديد عناوين المصدر والوجهة، تحتوي الرؤوس عليها وتستخدم أمر PROXY. هذا يعني أن الاستعلامات أُرسلت نيابةً عن عقدة أخرى وأن رأس PROXYv2 يعكس نقاط نهاية الاتصال الأصلية. منفذ المصدر الافتراضي هو 0 ومنفذ الوجهة هو 53.


بالنسبة لنقل DNS المشفر، لمنع تسريب المعلومات العرضي، يتم تطبيق التشفير على رؤوس PROXYv2: يتم إرسال الرؤوس مباشرة بعد اكتمال عملية المصافحة.

بالنسبة لنقل DNS العادي، لا يتم تطبيق أي تشفير على رؤوس PROXYv2.

إذا تم حذف العناوين، يتم إضافة رؤوس PROXYv2 التي تستخدم مجموعة أوامر LOCAL بدلاً من ذلك. بالنسبة للنظير البعيد، فهذا يعني أن الاستعلامات قد أُرسلت عن قصد دون إعادة توجيه، لذلك يجب استخدام عناوين نقطة النهاية للاتصال الحقيقية.

+proxy-plain[=src_addr[#src_port]-dst_addr[#dst_port], +noproxy-plain

نفس سلوك +[no]proxy، ولكنه يوجه dig لإرسال رؤوس PROXYv2 قبل أي تشفير، وقبل إرسال أي رسائل مصافحة. هذا يجعل dig يتصرف تمامًا كما هو موضح في مواصفات بروتوكول PROXY، ولكن ليس كل البرامج تتوقع هذا السلوك.

يرجى الرجوع إلى وثائق البرنامج لمعرفة ما إذا كنت بحاجة إلى هذا الخيار. (على سبيل المثال، يتوقع dnsdist رؤوس PROXYv2 المشفرة المرسلة عبر TLS عند استخدام التشفير، في حين أن HAProxy والعديد من حزم البرامج الأخرى تتوقع رؤوس عادية).

بالنسبة لنقل DNS العادي، يصبح هذا الخيار بمثابة اسم مستعار لـ +[no]proxy الموصوف أعلاه.

+qid=value

يحدد هذا الخيار معرّف الاستعلام المراد استخدامه عند إرسال الاستعلامات.

+qr, +noqr

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

+question, +noquestion

يقوم هذا الخيار بتشغيل أو إيقاف عرض قسم السؤال في الاستعلام عند إرجاع الإجابة. بشكل افتراضي، تتم طباعة قسم السؤال كتعليق.

+raflag, +noraflag

يقوم هذا الخيار بتعيين [أو لا يعين] بت RA (Recursion Available) في الاستعلام. بشكل افتراضي، يتم تعيين +noraflag. يتم تجاهل هذا البت بواسطة الخادم للاستعلام.

+rdflag, +nordflag

هذا الخيار هو مرادف لـ +recurse، +norecurse.

+recurse, +norecurse

يقوم هذا الخيار بتشغيل أو إيقاف إعداد بت RD (recursion desired) في الاستعلام. يتم تعيين هذا البت بشكل افتراضي، مما يعني أن dig يرسل عادةً استعلامات تكرارية. يتم تعطيل التكرار تلقائيًا عند استخدام خيار الاستعلام +nssearch أو +trace.

+retry=T

يقوم هذا الخيار بتعيين عدد المرات التي يجب فيها إعادة محاولة استعلامات UDP و TCP إلى الخادم إلى T بدلاً من القيمة الافتراضية، وهي 2. على عكس +tries، لا يتضمن هذا الاستعلام الأولي.

+rrcomments, +norrcomments

يقوم هذا الخيار بتشغيل أو إيقاف عرض التعليقات لكل سجل في الإخراج (على سبيل المثال، معلومات قابلة للقراءة للبشر حول سجلات DNSKEY). بشكل افتراضي، لا تتم طباعة تعليقات السجلات ما لم يكن وضع الأسطر المتعددة نشطًا.

+search, +nosearch

يقوم هذا الخيار باستخدام [أو عدم استخدام] قائمة البحث المحددة بواسطة التوجيه searchlist أو domain في resolv.conf، إن وجدت. لا يتم استخدام قائمة البحث بشكل افتراضي.


`ndots` من ملف `resolv.conf` (الافتراضي هو 1)، والذي يمكن تجاوزه باستخدام `+ndots`، يحدد ما إذا كان الاسم يُعامل على أنه اسم نسبي، وبالتالي ما إذا كان سيتم إجراء بحث في النهاية أم لا.

`+short`، `+noshort`
يقوم هذا الخيار بتبديل ما إذا كان سيتم توفير إجابة موجزة أم لا. الافتراضي هو طباعة الإجابة بتنسيق مطول. هذا الخيار له دائمًا تأثير عالمي؛ لا يمكن تعيينه عالميًا ثم تجاوزه على أساس كل عملية بحث.

`+showbadcookie`، `+noshowbadcookie`
يقوم هذا الخيار بتبديل ما إذا كان سيتم عرض الرسالة التي تحتوي على رمز الخطأ `BADCOOKIE` قبل إعادة محاولة الطلب أم لا. الافتراضي هو عدم عرض الرسائل.

`+showbadvers`، `+noshowbadvers`
يقوم هذا الخيار بتبديل ما إذا كان سيتم عرض الرسالة التي تحتوي على رمز الخطأ `BADVERS` قبل إعادة محاولة الطلب أم لا. الافتراضي هو عدم عرض الرسائل.

`+showsearch`، `+noshowsearch`
يقوم هذا الخيار بإجراء [أو عدم إجراء] بحث يعرض النتائج الوسيطة.

`+split=W`
يقوم هذا الخيار بتقسيم الحقول الطويلة بتنسيق سداسي عشري أو بتنسيق Base64 في سجلات الموارد إلى أجزاء من `W` حرفًا (حيث يتم تقريب `W` إلى أقرب مضاعف للرقم 4). يؤدي `+nosplit` أو `+split=0` إلى عدم تقسيم الحقول على الإطلاق. الافتراضي هو 56 حرفًا، أو 44 حرفًا عند تفعيل وضع الأسطر المتعددة.

`+stats`، `+nostats`
يقوم هذا الخيار بتبديل طباعة الإحصائيات: وقت إجراء الاستعلام، وحجم الاستجابة، وما إلى ذلك. السلوك الافتراضي هو طباعة إحصائيات الاستعلام كتعليق بعد كل عملية بحث.

`+subnet=addr[/prefix-length]`، `+nosubnet`
يقوم هذا الخيار بإرسال [أو عدم إرسال] خيار `EDNS CLIENT-SUBNET` مع عنوان IP أو بادئة الشبكة المحددة.

يقوم `dig +subnet=0.0.0.0/0`، أو ببساطة `dig +subnet=0`، بإرسال خيار `EDNS CLIENT-SUBNET` مع عنوان فارغ وطول بادئة مصدر صفر، مما يشير إلى برنامج تحليل أن معلومات عنوان العميل يجب ألا تُستخدم عند حل هذا الاستعلام.

`+tcflag`، `+notcflag`
يقوم هذا الخيار بتعيين [أو عدم تعيين] بت `TC` (الاقتطاع) في الاستعلام. الافتراضي هو `+notcflag`. يتم تجاهل هذا البت بواسطة الخادم للاستعلام.

`+tcp`، `+notcp`
يشير هذا الخيار إلى ما إذا كان سيتم استخدام TCP عند الاستعلام عن خوادم الأسماء. السلوك الافتراضي هو استخدام UDP ما لم يتم طلب استعلام من النوع `any` أو `ixfr=N`، وفي هذه الحالة يكون السلوك الافتراضي هو TCP. تستخدم استعلامات `AXFR` دائمًا TCP. لمنع إعادة المحاولة عبر TCP عند إرجاع `TC=1` من استعلام UDP، استخدم `+ignore`.

`+timeout=T`
يقوم هذا الخيار بتعيين المهلة للاستعلام إلى `T` ثانية. المهلة الافتراضية هي 5 ثوانٍ. تتم تعيين أي محاولة لتعيين `T` إلى أقل من 1 بصمت إلى 1.

`+tls`، `+notls`
يشير هذا الخيار إلى ما إذا كان سيتم استخدام DNS عبر TLS (DoT) عند الاستعلام عن خوادم الأسماء. عند استخدام هذا الخيار، يكون رقم المنفذ الافتراضي هو 853.

`+tls-ca[=file-name]`، `+notls-ca`
يقوم هذا الخيار بتمكين التحقق من صحة شهادة خادم TLS عن بُعد لنقل DNS، مع الاعتماد على TLS. يتم تحميل شهادات سلطات الشهادات من الملف المحدد (اسم الملف). إذا لم يتم تحديد الملف، فسيتم استخدام الشهادات الافتراضية من مخزن الشهادات العالمي.

+tls-certfile=file-name, +tls-keyfile=file-name, +notls-certfile, +notls-keyfile

تحدد هذه الخيارات حالة المصادقة القائمة على الشهادات للعملاء لنقل DNS، والتي تعتمد على TLS. من المتوقع أن يكون كل من ملف سلسلة الشهادات وملف المفتاح الخاص بتنسيق PEM. يجب تحديد كلا الخيارين في نفس الوقت.

+tls-hostname=hostname, +notls-hostname

يجعل هذا الخيار أداة dig تستخدم اسم المضيف المقدم أثناء التحقق من شهادة TLS لخادم بعيد. وإلا، سيتم استخدام اسم خادم DNS. هذا الخيار ليس له أي تأثير إذا لم يتم تحديد +tls-ca.

+trace, +notrace

يقوم هذا الخيار بتبديل تتبع مسار التفويض من خوادم الأسماء الجذرية للاسم الذي يتم البحث عنه. يتم تعطيل التتبع افتراضيًا. عند تمكين التتبع، تقوم أداة dig بإجراء استعلامات متكررة لحل الاسم الذي يتم البحث عنه. وهي تتبع الإحالات من الخوادم الجذرية، وتعرض الإجابة من كل خادم تم استخدامه لحل البحث.

إذا تم تحديد @server أيضًا، فإنه يؤثر فقط على الاستعلام الأولي لمنطقة الاسم الجذر.

يتم تعيين +dnssec عند تعيين +trace، وذلك لمحاكاة الاستعلامات الافتراضية من خادم اسم بشكل أفضل.

لاحظ أنه يمكن أيضًا استخدام خيار +ns في delv لتتبع حل اسم من الجذر (انظر delv).

+tries=T

يحدد هذا الخيار عدد المرات التي يتم فيها محاولة استعلامات UDP و TCP إلى الخادم إلى T بدلاً من القيمة الافتراضية، وهي 3. إذا كانت T أقل من أو تساوي صفرًا، يتم تقريب عدد المحاولات بشكل صامت إلى 1.

+ttlid, +nottlid

يعرض هذا الخيار [أو لا يعرض] القيمة TTL عند طباعة السجل.

+ttlunits, +nottlunits

يعرض هذا الخيار [أو لا يعرض] القيمة TTL بوحدات زمنية سهلة القراءة، وهي s و m و h و d و w، والتي تمثل الثواني والدقائق والساعات والأيام والأسابيع. هذا يعني +ttlid.

+unknownformat, +nounknownformat

يقوم هذا الخيار بطباعة جميع بيانات RDATA بتنسيق عرض نوع سجل غير معروف (RFC 3597). بشكل افتراضي، تتم طباعة بيانات RDATA للأنواع المعروفة بتنسيق عرض النوع الخاص بها.

+vc, +novc

يستخدم هذا الخيار [أو لا يستخدم] TCP عند الاستعلام عن خوادم الأسماء. يتم توفير هذا التعبير البديل لـ +tcp من أجل التوافق مع الإصدارات السابقة. يشير "vc" إلى "دائرة افتراضية".

+yaml, +noyaml

عند التمكين، يقوم هذا الخيار بطباعة الاستجابات (وإذا تم استخدام +qr، فسيتم أيضًا طباعة الاستعلامات الصادرة) بتنسيق YAML مفصل.

+zflag, +nozflag

يقوم هذا الخيار بتعيين [أو عدم تعيين] علامة الرأس غير المعينة الأخيرة في استعلام DNS. هذه العلامة معطلة افتراضيًا.

استعلامات متعددة

يدعم تطبيق BIND 9 لأداة dig تحديد استعلامات متعددة على سطر الأوامر (بالإضافة إلى دعم خيار ملف الدُفعات -f). يمكن توفير كل من هذه الاستعلامات بمجموعة خاصة بها من العلامات والخيارات وخيارات الاستعلام.

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

يمكن أيضًا توفير مجموعة عالمية من خيارات الاستعلام، والتي يجب تطبيقها على جميع الاستعلامات. يجب أن تسبق خيارات الاستعلام العالمية المجموعة الأولى من اسم، وفئة، ونوع، وخيارات، وعلامات، وخيارات الاستعلام المقدمة على سطر الأوامر. يمكن تجاوز أي خيارات استعلام عالمية (باستثناء +cmd و+short) بواسطة مجموعة خيارات استعلام خاصة بالاستعلام. على سبيل المثال:

dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr

يوضح كيف يمكن استخدام dig من سطر الأوامر لإجراء ثلاثة عمليات بحث: استعلام ANY لـ www.isc.org، وعكس البحث عن 127.0.0.1، واستعلام عن سجلات NS الخاصة بـ isc.org. يتم تطبيق خيار الاستعلام العالمي +qr، بحيث يعرض dig الاستعلام الأولي الذي أجراه لكل عملية بحث. يحتوي الاستعلام الأخير على خيار استعلام محلي +noqr، مما يعني أن dig لا يطبع الاستعلام الأولي عند البحث عن سجلات NS الخاصة بـ isc.org.

رموز الإرجاع

رموز الإرجاع الخاصة بـ dig هي:

0     تم استلام استجابة DNS، بما في ذلك حالة NXDOMAIN

1     خطأ في الاستخدام

8     تعذر فتح ملف الدُفعات

9     لا توجد استجابة من الخادم

10    خطأ داخلي

الملفات

/etc/resolv.conf

${HOME}/.digrc

انظر أيضًا

delv(1)، host(1)، named(8)، dnssec-keygen(8)، RFC 1035.

الأخطاء

ربما يوجد الكثير من خيارات الاستعلام.

المؤلف

Internet Systems Consortium

حقوق النشر

2025 Internet Systems Consortium