Contain Yourself: An Intro to Docker and Containers by Nicola Kabar and Mano Marks
جدول المحتويات:
- تثبيت
dig
- تثبيت
dig
على أوبونتو وديبيان - تثبيت
dig
على CentOS وفيدورا - تثبيت
dig
على Arch Linux - فهم حفر الناتج
- طباعة فقط الجواب
- 1. الحصول على إجابة قصيرة
- 2. الحصول على إجابة مفصلة
- استعلام اسم خادم محدد
- الاستعلام عن نوع السجل
- 1. الاستعلام عن السجلات
- 2. الاستعلام عن سجلات CNAME
- 3. الاستعلام عن سجلات TXT
- 4. الاستعلام عن سجلات MX
- 5. الاستعلام عن سجلات NS
- 6. الاستعلام عن جميع السجلات
- بحث عكس DNS
- استفسارات بالجملة
- ملف .digrc
- استنتاج
يعد Dig (مجال معلومات Groper) أداة سطر أوامر قوية للاستعلام عن خوادم أسماء DNS.
باستخدام الأمر
dig
، يمكنك الاستعلام عن معلومات حول سجلات DNS المختلفة ، بما في ذلك عناوين المضيف وتبادل البريد وخوادم الأسماء. إنها الأداة الأكثر استخدامًا بين مسؤولي النظام لاستكشاف مشكلات DNS وإصلاحها بسبب مرونتها وسهولة استخدامها.
في هذا البرنامج التعليمي ، سوف نعرض لك كيفية استخدام أداة
dig
خلال أمثلة عملية وشروحات مفصلة لخيارات
dig
الأكثر شيوعًا.
تثبيت
dig
للتحقق مما إذا كان الأمر
dig
متاحًا على نوع النظام لديك:
dig -v
يجب أن يبدو الإخراج بشيء من هذا القبيل:
DiG 9.11.3-1ubuntu1.1-Ubuntu
إذا لم يكن
dig
موجودًا على نظامك ، فسيطبع الأمر أعلاه "dig: command not found". يمكنك بسهولة تثبيت أداة
dig
باستخدام مدير الحزم في distro.
تثبيت
dig
على أوبونتو وديبيان
sudo apt update && sudo apt install dnsutils
تثبيت
dig
على CentOS وفيدورا
تثبيت
dig
على Arch Linux
فهم حفر الناتج
في أبسط أشكاله ، عند استخدامه للاستعلام عن مضيف واحد (مجال) دون أي وسيطات إضافية ، يكون أمر الحفر مطوّلًا إلى حد ما.
في المثال التالي ، سنقوم بإجراء استعلام لاسترداد معلومات حول نطاق
linux.org
.
dig linux.org
يجب أن يبدو الإخراج بشيء من هذا القبيل:
دعنا نذهب كل قسم على حدة وشرح مخرجات أمر
dig
:
-
يقوم السطر الأول من الإخراج بطباعة نسخة الحفر المثبتة والاستعلام الذي تم استدعاءه. يعرض السطر الثاني الخيارات العامة (بشكل افتراضي ، كمد فقط).
; <<>> DiG 9.13.3 <<>> linux.org;; global options: +cmd
يتضمن القسم الأول التفاصيل الفنية حول الإجابة التي وردت من السلطة المطلوبة (خادم DNS). يُظهر الرأس شفرة التشغيل (الإجراء الذي تم تنفيذه بحفر) وحالة الإجراء. في هذا المثال ، الحالة هي
NOERROR
، مما يعني أن السلطة المطلوبة قدمت الاستعلام دون أي مشكلة.;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37159;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 5
يمكن إزالة هذا القسم باستخدام خيار
+nocomments
، والذي يؤدي أيضًا إلى تعطيل رؤوس بعض الأقسام الأخرى.يظهر القسم الزائف "OPT" افتراضيًا فقط في الإصدارات الأحدث من أداة الحفر. يمكنك معرفة آليات تمديد DNS (EDNS) هنا.
;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096
في قسم "السؤال" ، يُظهر
dig
سؤالنا (سؤال). افتراضيًا ، يطلبdig
سجل A.;; QUESTION SECTION:;linux.org. IN A
يمكنك تعطيل هذا القسم باستخدام خيار
+noquestion
.يوفر لنا قسم "الإجابة" إجابة عن سؤالك. كما ذكرنا بالفعل ، بشكل افتراضي سوف يطلب
dig
السجل أ. هنا ، يشير المجالlinux.org
إلى عنوان IP104.18.59.123
.;; ANSWER SECTION: linux.org. 300 IN A 104.18.59.123 linux.org. 300 IN A 104.18.58.123
عادة ، لا ترغب في إيقاف تشغيل الإجابة ، ولكن يمكنك إزالة هذا القسم من الإخراج باستخدام خيار
+noanswer
.يخبرنا قسم "AUTHORITY" عن الخادم (الخوادم) الذي يمثل سلطة الرد على استفسارات DNS حول المجال الذي تم الاستعلام عنه.
;; AUTHORITY SECTION: linux.org. 86379 IN NS lia.ns.cloudflare.com. linux.org. 86379 IN NS mark.ns.cloudflare.com.
يمكنك تعطيل هذا القسم من الإخراج باستخدام خيار
+noauthority
.يقدم لنا القسم "الإضافي" معلومات حول عناوين IP لخوادم DNS الموثوقة الموضحة في قسم التفويض.
;; ADDITIONAL SECTION: lia.ns.cloudflare.com. 84354 IN A 173.245.58.185 lia.ns.cloudflare.com. 170762 IN AAAA 2400:cb00:2049:1::adf5:3ab9 mark.ns.cloudflare.com. 170734 IN A 173.245.59.130 mark.ns.cloudflare.com. 170734 IN AAAA 2400:cb00:2049:1::adf5:3b82
الخيار
+noadditional
يعطل القسم الإضافي من الرد.يتضمن القسم الأخير من إخراج الحفر إحصائيات حول الاستعلام.
;; Query time: 58 msec;; SERVER: 192.168.1.1#53(192.168.1.1);; WHEN: Fri Oct 12 11:46:46 CEST 2018;; MSG SIZE rcvd: 212
يمكنك تعطيل هذا الجزء باستخدام خيار
+nostats
.
طباعة فقط الجواب
في معظم الحالات ، قد ترغب في الحصول على إجابة سريعة فقط لاستعلام الحفر.
1. الحصول على إجابة قصيرة
للحصول على إجابة قصيرة على استفسارك ، استخدم خيار
+short
:
dig linux.org +short
104.18.59.123 104.18.58.123
سيتضمن الإخراج عناوين IP للسجل A فقط.
2. الحصول على إجابة مفصلة
لمزيد من الإجابة التفصيلية ، قم بإيقاف تشغيل جميع النتائج باستخدام خيارات
+noall
ثم قم بتشغيل قسم الإجابات فقط باستخدام خيار
+answer
.
dig linux.org +noall +answer
; <<>> DiG 9.13.3 <<>> linux.org +noall +answer;; global options: +cmd linux.org. 67 IN A 104.18.58.123 linux.org. 67 IN A 104.18.59.123
استعلام اسم خادم محدد
بشكل افتراضي ، إذا لم يتم تحديد خادم اسم ، فإن
dig
يستخدم الخوادم المدرجة في ملف
/etc/resolv.conf
.
لتحديد خادم اسم سيتم تطبيق الاستعلام مقابله ، استخدم الرمز
@
(at) متبوعًا بعنوان IP لخادم الاسم أو اسم المضيف.
على سبيل المثال ، للاستعلام عن خادم اسم Google (8.8.8.8) للحصول على معلومات حول نطاق
linux.org
الذي تستخدمه:
dig linux.org @8.8.8.8
; <<>> DiG 9.13.3 <<>> linux.org @8.8.8.8;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39110;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;linux.org. IN A;; ANSWER SECTION: linux.org. 299 IN A 104.18.58.123 linux.org. 299 IN A 104.18.59.123;; Query time: 54 msec;; SERVER: 8.8.8.8#53(8.8.8.8);; WHEN: Fri Oct 12 14:28:01 CEST 2018;; MSG SIZE rcvd: 70
الاستعلام عن نوع السجل
يتيح لك Dig إجراء أي استعلام DNS صالح عن طريق إلحاق نوع السجل بنهاية الاستعلام. في القسم التالي ، سنعرض لك أمثلة حول كيفية البحث عن أكثر السجلات شيوعًا ، مثل A (عنوان IP) و CNAME (الاسم المتعارف عليه) و TXT (السجل النصي) و MX (مبادل البريد) و NS (خوادم الاسم).
1. الاستعلام عن السجلات
للحصول على قائمة بجميع العناوين (العناوين) لاسم المجال ، استخدم الخيار:
dig +nocmd google.com a +noall +answer
google.com. 128 IN A 216.58.206.206
كما تعلمون بالفعل ، إذا لم يتم تحديد نوع سجل DNS ، فسوف يطلب حفر السجل A. يمكنك أيضًا الاستعلام عن السجل A دون تحديد الخيار.
2. الاستعلام عن سجلات CNAME
للعثور على اسم النطاق المستعار ، استخدم خيار
cname
:
dig +nocmd mail.google.com cname +noall +answer
mail.google.com. 553482 IN CNAME googlemail.l.google.com.
3. الاستعلام عن سجلات TXT
استخدم خيار
txt
لاسترداد جميع سجلات TXT لمجال معين:
dig +nocmd google.com txt +noall +answer
google.com. 300 IN TXT "facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95" google.com. 300 IN TXT "v=spf1 include:_spf.google.com ~all" google.com. 300 IN TXT "docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e"
4. الاستعلام عن سجلات MX
للحصول على قائمة بجميع خوادم البريد لمجال معين ، استخدم خيار
mx
:
dig +nocmd google.com mx +noall +answer
google.com. 494 IN MX 30 alt2.aspmx.l.google.com. google.com. 494 IN MX 10 aspmx.l.google.com. google.com. 494 IN MX 40 alt3.aspmx.l.google.com. google.com. 494 IN MX 50 alt4.aspmx.l.google.com. google.com. 494 IN MX 20 alt1.aspmx.l.google.com.
5. الاستعلام عن سجلات NS
للعثور على خوادم الأسماء الموثوقة لنطاقنا المحدد ، استخدم خيار
ns
:
dig +nocmd google.com ns +noall +answer
google.com. 84527 IN NS ns1.google.com. google.com. 84527 IN NS ns2.google.com. google.com. 84527 IN NS ns4.google.com. google.com. 84527 IN NS ns3.google.com.
6. الاستعلام عن جميع السجلات
استخدم
any
خيار للحصول على قائمة بجميع سجلات DNS لمجال معين:
dig +nocmd google.com any +noall +answer
google.com. 299 IN A 216.58.212.14 google.com. 299 IN AAAA 2a00:1450:4017:804::200e google.com. 21599 IN NS ns2.google.com. google.com. 21599 IN NS ns1.google.com. google.com. 599 IN MX 30 alt2.aspmx.l.google.com. google.com. 21599 IN NS ns4.google.com. google.com. 599 IN MX 50 alt4.aspmx.l.google.com. google.com. 599 IN MX 20 alt1.aspmx.l.google.com. google.com. 299 IN TXT "docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e" google.com. 21599 IN CAA 0 issue "pki.goog" google.com. 599 IN MX 40 alt3.aspmx.l.google.com. google.com. 3599 IN TXT "facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95" google.com. 21599 IN NS ns3.google.com. google.com. 599 IN MX 10 aspmx.l.google.com. google.com. 3599 IN TXT "v=spf1 include:_spf.google.com ~all" google.com. 59 IN SOA ns1.google.com. dns-admin.google.com. 216967258 900 900 1800 60
بحث عكس DNS
للاستعلام عن اسم المضيف المرتبط بعنوان IP محدد ، استخدم الخيار
-x
.
على سبيل المثال ، لإجراء بحث عكسي على
208.118.235.148
يمكنك استخدام:
dig -x 208.118.235.148 +noall +answer
كما ترون من الإخراج أدناه ، يرتبط عنوان IP
208.118.235.148
باسم المضيف
wildebeest.gnu.org
.
; <<>> DiG 9.13.3 <<>> -x 208.118.235.148 +noall +answer;; global options: +cmd 148.235.118.208.in-addr.arpa. 245 IN PTR wildebeest.gnu.org.
استفسارات بالجملة
في المثال التالي ، نحن نستفسر عن المجالات المدرجة في ملف
domains.txt
.
lxer.com linuxtoday.com tuxmachines.org
dig -f domains.txt +short
108.166.170.171 70.42.23.121 204.68.122.43
ملف.digrc
يمكن التحكم في سلوك أمر الحفر عن طريق إعداد خيارات لكل مستخدم في ملف
${HOME}/.digrc
.
في حالة
.digrc
ملف
.digrc
في الدليل الرئيسي للمستخدم ، يتم تطبيق الخيارات المحددة فيه قبل وسيطات سطر الأوامر.
على سبيل المثال ، إذا كنت ترغب في عرض قسم الإجابات فقط ، فافتح محرر النصوص وقم بإنشاء ملف
~/.digrc
التالي:
استنتاج
dig
هي أداة سطر أوامر للاستعلام عن معلومات DNS واستكشاف المشكلات المتعلقة بـ DNS.
موردي الجدار الناري يتبارى لحل مشكلة نظام أسماء النطاقات
يتجول موردو الجدار الناري لإصدار خطأ في منتجاتهم يزيل جزءًا من تصحيح DNS الحرج الأخير.
مشروع مفتوح المصدر يهدف إلى جعل نظام أسماء النطاقات آمن أسهل
أصدرت مجموعة من المطورين برامج مفتوحة المصدر تسهل على المشرفين لجعل نظام العنونة للإنترنت أقل عرضة للخطر.
ما هو نظام أسماء النطاقات وكيفية تعيين أفضل خادم نظام أسماء النطاقات على النوافذ
يشرح : ما هو DNS وكيفية البحث عن وتعيين أفضل خادم DNS على Windows.