Dig - คำสั่ง Linux - คำสั่ง Unix

ชื่อ

dig - ยูทิลิตีการค้นหา DNS

สรุป

ขุด [ @ เซิร์ฟเวอร์ ] [ -b address ] [ -c class ] [ -f filename ] [ -k ชื่อไฟล์ ] [ -p port # ] [ -t type ] [ -x addr ] [ -y name: key ] [ name ] [ ชนิด ] [ คลาส ] [ queryopt ... ]

ขุด [ -h ]

ขุด [ global-queryopt ... ] [ query ... ]

รายละเอียด

dig (โดเมนข้อมูล groper) เป็นเครื่องมือที่มีความยืดหยุ่นสำหรับสอบถามเซิร์ฟเวอร์ DNS ชื่อ ดำเนินการค้นหา DNS และแสดงคำตอบที่ส่งคืนจากเซิร์ฟเวอร์ชื่อที่ถูกสอบถาม ผู้ดูแลระบบ DNS ส่วนใหญ่ใช้การ ขุด เพื่อแก้ปัญหา DNS เนื่องจากความยืดหยุ่นใช้งานง่ายและความคมชัดของเอาท์พุท เครื่องมือค้นหาอื่น ๆ มักจะมีฟังก์ชันการทำงานน้อยกว่าการ ขุด

แม้ว่าการ ขุด จะใช้กับอาร์กิวเมนต์บรรทัดคำสั่งปกติ แต่ก็มีโหมดแบทช์สำหรับการอ่านคำขอการค้นหาจากไฟล์ สรุปย่ออาร์กิวเมนต์และตัวเลือกบรรทัดคำสั่งจะถูกพิมพ์เมื่อเลือกตัวเลือก -h ซึ่งแตกต่างจากรุ่นก่อนหน้าการใช้ BIND9 ของ dig ช่วยให้สามารถค้นหาได้หลายรายการจาก บรรทัดคำสั่ง

เว้นเสียแต่ว่าจะบอกให้สอบถามเซิร์ฟเวอร์ชื่อเฉพาะการ ขุด จะลองแต่ละเซิร์ฟเวอร์ที่อยู่ใน /etc/resolv.conf

เมื่อไม่มีอาร์กิวเมนต์บรรทัดคำสั่งหรือตัวเลือกจะได้รับจะดำเนินการแบบสอบถาม NS สำหรับ "." (ราก)

ใช้ง่าย

การอุทธรณ์โดยทั่วไปของการ ขุด จะมีลักษณะดังนี้:

dig @ server name type

ที่อยู่:

เซิร์ฟเวอร์

คือชื่อหรือ ที่อยู่ IP ของเซิร์ฟเวอร์ชื่อเพื่อค้นหา นี่อาจเป็นที่อยู่ IPv4 ในเครื่องหมายทศนิยมทศนิยมหรือเป็นที่อยู่ IPv6 ในสัญกรณ์ที่คั่นด้วยเครื่องหมายทวิภาค เมื่ออาร์กิวเมนต์ เซิร์ฟเวอร์ที่ ให้มาเป็นชื่อโฮสต์การ ขุด จะแก้ชื่อนั้นก่อนที่จะสอบถามเซิร์ฟเวอร์ชื่อนั้น ถ้าไม่มีอาร์กิวเมนต์ เซิร์ฟเวอร์ ให้ ขุด ปรึกษา /etc/resolv.conf และสอบถามเซิร์ฟเวอร์ชื่อที่ระบุไว้ที่นั่น การตอบกลับจากเซิร์ฟเวอร์ชื่อที่ตอบสนองจะปรากฏขึ้น

ชื่อ

คือชื่อของเร็กคอร์ดทรัพยากรที่จะถูกตรวจสอบ

ชนิด

ระบุประเภทของแบบสอบถามใด ๆ --- ANY, A, MX, SIG ฯลฯ สามารถเป็นประเภทการค้นหาที่ถูกต้อง หากไม่มีอาร์กิวเมนต์ ชนิด ใดให้มาการ ขุด จะทำการค้นหาระเบียน A

ตัวเลือก

ตัวเลือก -b ตั้งค่าที่ อยู่ IP ต้นทางของแบบสอบถามไปยัง ที่อยู่ ต้องเป็นที่อยู่ที่ถูกต้องบนอินเทอร์เฟซเครือข่ายหนึ่งของโฮสต์

คลาสการค้นหาดีฟอลต์ (IN สำหรับอินเทอร์เน็ต) ถูกแทนที่โดยตัวเลือก -c class คือ คลาสที่ ถูกต้องเช่น HS สำหรับระเบียน Hesiod หรือ CH สำหรับ CHAOSNET records

ตัวเลือก -f ทำให้การ ขุด ทำงานในโหมดแบทช์โดยการอ่านรายการคำขอค้นหาที่จะประมวลผลจาก ชื่อไฟล์ ไฟล์มีจำนวนข้อความค้นหาหนึ่งข้อความต่อบรรทัด แต่ละรายการในไฟล์ควรได้รับการจัดแบบเดียวกับที่จะแสดงเป็นแบบสอบถามเพื่อ ขุด โดยใช้อินเทอร์เฟซของบรรทัดคำสั่ง

หากมีการสอบถามหมายเลขพอร์ตที่ไม่ได้มาตรฐานจะใช้ตัวเลือก -p port # คือหมายเลขพอร์ตที่ ขุด จะส่งการสอบถามแทนหมายเลขพอร์ต DNS มาตรฐาน 53 ตัวเลือกนี้จะใช้เพื่อทดสอบเซิร์ฟเวอร์ชื่อที่ได้รับการกำหนดค่าให้ฟังแบบสอบถามบนหมายเลขพอร์ตที่ไม่ได้มาตรฐาน

ตัวเลือก -t จะกำหนดประเภทของแบบสอบถามให้ พิมพ์ อาจเป็นประเภทการสืบค้นที่ถูกต้องซึ่งได้รับการสนับสนุนใน BIND9 ประเภทข้อความค้นหาดีฟอลต์ "A" เว้นแต่จะระบุตัวเลือก -x เพื่อระบุการค้นหาแบบย้อนกลับ สามารถขอโอนโซนได้โดยระบุชนิดของ AXFR เมื่อต้องการเพิ่มการถ่ายโอนโซน (IXFR) ให้ พิมพ์ เป็น ixfr = N การโอนย้ายโซนที่เพิ่มขึ้นจะมีการเปลี่ยนแปลงโซนเนื่องจากหมายเลขในระเบียน SOA ของโซนคือ N

การค้นหาแบบย้อนกลับ - การแม็ปที่อยู่ไปยังชื่อ - จะง่ายขึ้นโดยใช้ตัวเลือก -x addr คือที่อยู่ IPv4 ในรูปแบบจุดทศนิยมหรือทศนิยมหรือที่อยู่ IPv6 ที่คั่นด้วยเครื่องหมายทวิภาค เมื่อใช้ตัวเลือกนี้ไม่จำเป็นต้องระบุ ชื่อ อาร์กิวเมนต์ ชั้นเรียน และ ประเภท dig ทำการค้นหาชื่อเช่น 11.12.13.10.in-addr.arpa โดยอัตโนมัติและตั้งค่าชนิดของเคียวรีและคลาสเป็น PTR และ IN ตามลำดับ ที่อยู่ IPv6 จะค้นหาโดยใช้โดเมน IP6.ARPA และป้ายชื่อไบนารีตามที่กำหนดไว้ใน RFC2874 ในการใช้เมธอด RFC1886 ที่เก่ากว่าโดยใช้โดเมน IP6.INT และป้ายกำกับ "nibble" ให้ระบุตัวเลือก -n (nibble)

ในการลงนามแบบสอบถาม DNS ที่ส่งโดยการ ขุด และการตอบกลับโดยใช้การทำธุรกรรมลายเซ็น (TSIG) ให้ระบุไฟล์คีย์ TSIG โดยใช้ตัวเลือก -k นอกจากนี้คุณยังสามารถระบุคีย์ TSIG ในบรรทัดคำสั่งโดยใช้ตัวเลือก -y ; ชื่อ คือชื่อของคีย์ TSIG และ คีย์ เป็นคีย์จริง คีย์คือสตริงที่เข้ารหัสพื้นฐาน -64 ซึ่งปกติสร้างโดย dnssec-keygen (8) ข้อควรระวังเมื่อใช้ตัวเลือก -y ในระบบของผู้ใช้หลายคนเนื่องจากคีย์สามารถมองเห็นได้จากไฟล์ ps (1) หรือในไฟล์ประวัติของเชลล์ เมื่อใช้การรับรองความถูกต้องของ TSIG กับ dig เซิร์ฟเวอร์ชื่อที่ถูกสอบถามจำเป็นต้องทราบคีย์และอัลกอริธึมที่กำลังใช้อยู่ ใน BIND การดำเนินการนี้จะกระทำโดยการให้ คีย์ และ เซิร์ฟเวอร์ ที่เหมาะสมใน named.conf

ตัวเลือก QUERY

dig มีตัวเลือกแบบสอบถามจำนวนหนึ่งที่มีผลต่อวิธีการค้นหาและผลลัพธ์ที่แสดง บิตตั้งค่าหรือรีเซ็ตบิตเหล่านี้บางส่วนในส่วนหัวของแบบสอบถามบางส่วนระบุส่วนของคำตอบที่ได้รับการพิมพ์และอื่น ๆ กำหนดกลยุทธ์การหมดเวลาและลองอีกครั้ง

ตัวเลือกคำค้นหาแต่ละตัวจะถูกระบุด้วยคำหลักที่มีเครื่องหมายบวก (+) คำหลักบางคำตั้งหรือรีเซ็ตตัวเลือก เหล่านี้อาจถูกนำหน้าด้วยสตริงที่ไม่สามารถปฏิเสธความหมายของคำหลักนั้นได้ คำหลักอื่น ๆ กำหนดค่าให้กับตัวเลือกต่างๆเช่นช่วงหมดเวลา มีรูปแบบ + keyword = value ตัวเลือกการสืบค้นคือ:

+ [ไม่มี] TCP

ใช้ [ไม่ใช้] TCP เมื่อสอบถามเซิร์ฟเวอร์ชื่อ พฤติกรรมเริ่มต้นคือการใช้ UDP เว้นแต่จะมีการร้องขอแบบสอบถาม AXFR หรือ IXFR ซึ่งในกรณีนี้จะใช้การเชื่อมต่อ TCP

+ [ไม่มี] VC

ใช้ [ไม่ใช้] TCP เมื่อสอบถามเซิร์ฟเวอร์ชื่อ ไวยากรณ์สลับไปยัง + [no] tcp มีไว้สำหรับความเข้ากันได้ย้อนหลัง "vc" หมายถึง "วงจรเสมือนจริง"

+ [ไม่มี] ไม่สนใจ

ละเว้นการตัดทอนในการตอบสนอง UDP แทนที่จะลองใหม่ด้วย TCP โดยค่าเริ่มต้นจะมีการลองใหม่ด้วย TCP

+ โดเมน = somename

ตั้งค่ารายการค้นหาที่มีโดเมน เน มเดียวเช่นถ้าระบุไว้ใน โดเมน directive ใน /etc/resolv.conf และเปิดใช้งานการประมวลผลรายการการค้นหาเช่นเดียวกับตัวเลือก + search

+ [ไม่มี] ค้นหา

ใช้ [ไม่ใช้] รายการค้นหาที่กำหนดโดย searchlist หรือโดเมน directive ใน resolv.conf (ถ้ามี) รายการค้นหาจะไม่ถูกใช้โดยค่าเริ่มต้น

+ [ไม่มี] defname

เลิกใช้ซึ่งถือว่าเป็นคำพ้องสำหรับ + [no] search

+ [ไม่มี] aaonly

ตัวเลือกนี้ไม่มีอะไรเลย มีไว้สำหรับการเข้ากันได้กับเวอร์ชันเก่า ๆ ของการ ขุด ซึ่งจะตั้งค่าแฟลกแก้ปัญหาที่ไม่สามารถใช้งานได้

+ [ไม่มี] adflag

ตั้งค่า [ไม่ตั้งค่า] บิตข้อมูล AD (ข้อมูลที่แท้จริง) ในแบบสอบถาม ขณะนี้บิต AD มีความหมายมาตรฐานเฉพาะในการตอบสนองไม่ได้อยู่ในข้อความค้นหา แต่ความสามารถในการตั้งค่าบิตในแบบสอบถามมีไว้เพื่อความสมบูรณ์

+ [ไม่มี] cdflag

ตั้งค่า [ไม่ตั้งค่า] ซีดี (ตรวจสอบไม่ได้) บิตในแบบสอบถาม นี่เป็นการร้องขอให้เซิร์ฟเวอร์ไม่ดำเนินการตรวจสอบความถูกต้องของการตอบกลับ DNSSEC

+ [ไม่มี] recursive

สลับการตั้งค่าของบิต RD (การทับซ้ำตามต้องการ) ในแบบสอบถาม บิตนี้ถูกกำหนดโดยค่าเริ่มต้นซึ่งหมายความว่าการ ขุด โดยปกติจะส่งการสอบถามแบบทวนซ้ำ การทับซ้ำจะถูกปิดใช้งานโดยอัตโนมัติเมื่อใช้ตัวเลือกการค้นหา + nssearch หรือ + trace

+ [ไม่มี] nssearch

เมื่อตั้งค่าตัวเลือกนี้แล้วจะพยายามค้นหาเซิร์ฟเวอร์ชื่อที่มีสิทธิ์สำหรับโซนที่มีชื่อถูกเรียกค้นและแสดงบันทึก SOA ที่เซิร์ฟเวอร์ชื่อแต่ละแห่งมีไว้สำหรับโซน

+ [ไม่มี] ร่องรอย

สลับการติดตามเส้นทางการมอบสิทธิ์จากเซิร์ฟเวอร์ชื่อหลักเพื่อดูชื่อ การติดตามจะถูกปิดใช้งานโดยค่าเริ่มต้น เมื่อมีการเปิดใช้งานการสืบค้นข้อมูลการ ขุด จะทำให้เกิดการสืบค้นข้อมูลแบบวนซ้ำเพื่อแก้ไขชื่อที่ถูกค้น จะทำตามการแนะนำผลิตภัณฑ์จากเซิร์ฟเวอร์รากแสดงคำตอบจากเซิร์ฟเวอร์แต่ละเครื่องที่ใช้ในการแก้ไขการค้นหา

+ [ไม่มี] cmd

สลับการพิมพ์ความคิดเห็นเริ่มต้นในเอาต์พุตระบุเวอร์ชันของการ ขุด และตัวเลือกเคียวรีที่ใช้ ความคิดเห็นนี้ถูกพิมพ์ตามค่าเริ่มต้น

+ [ไม่มี] สั้น

ให้คำตอบสั้น ๆ ค่าดีฟอลต์คือพิมพ์คำตอบในรูปแบบ verbose

+ [ไม่มี] ระบุ

แสดง [หรือไม่แสดง] ที่อยู่ IP และหมายเลขพอร์ตที่ให้คำตอบเมื่อเปิดใช้งานตัวเลือก + ระยะ ไกล หากมีการร้องขอคำตอบแบบสั้นโปรดตั้งค่าเริ่มต้นคือไม่แสดงที่อยู่ต้นทางและหมายเลขพอร์ตของเซิร์ฟเวอร์ที่ให้คำตอบ

+ [ไม่มี] ความคิดเห็น

สลับการแสดงบรรทัดแสดงความคิดเห็นในเอาต์พุต ค่าเริ่มต้นคือการพิมพ์ความคิดเห็น

+ [ไม่มี] สถิติ

ตัวเลือกคำค้นหานี้จะสลับการพิมพ์สถิติ: เมื่อทำแบบสอบถามขนาดของคำตอบและอื่น ๆ ลักษณะการทำงานเริ่มต้นคือการพิมพ์สถิติแบบสอบถาม

+ [ไม่มี] QR

พิมพ์ [ไม่พิมพ์] แบบสอบถามตามที่ส่ง แบบสอบถามจะไม่พิมพ์

+ [ไม่มี] คำถาม

พิมพ์ [ไม่พิมพ์] ส่วนคำถามของแบบสอบถามเมื่อมีการส่งคืนคำตอบ ค่าดีฟอลต์คือพิมพ์ส่วนคำถามเป็นความคิดเห็น

+ [ไม่มี] คำตอบ

แสดง [ไม่ต้องแสดง] ส่วนคำตอบของการตอบกลับ ค่าเริ่มต้นคือการแสดงผล

+ [ไม่มี] อำนาจ

แสดง [ไม่ต้องแสดง] ส่วนของการตอบกลับ ค่าเริ่มต้นคือการแสดงผล

+ [ไม่มี] เพิ่มเติม

แสดง [ไม่ต้องแสดง] ส่วนเพิ่มเติมของการตอบกลับ ค่าเริ่มต้นคือการแสดงผล

+ [ไม่มี] ทั้งหมด

ตั้งค่าหรือล้างค่าสถานะการแสดงผลทั้งหมด

+ เวลา = T

กำหนดระยะหมดเวลาของข้อความค้นหาเป็นวินาที ที เวลาเริ่มต้นคือ 5 วินาที ความพยายามที่จะตั้งค่า T ให้น้อยกว่า 1 จะทำให้มีการหมดเวลาแบบสอบถามเป็นเวลา 1 วินาที

+ พยายาม = T

กำหนดจำนวนครั้งที่จะลองใหม่แบบสอบถาม UDP ไปยังเซิร์ฟเวอร์ไปยัง T แทนที่จะเป็นค่าเริ่มต้น 3. ถ้า T น้อยกว่าหรือเท่ากับศูนย์จำนวนครั้งที่ลองใหม่จะปัดเศษขึ้นมาอย่างเงียบ ๆ เป็น 1

+ ndots = D

กำหนดจำนวนจุดที่ต้องปรากฏใน ชื่อ D เพื่อให้ถือว่าเป็นค่าสัมบูรณ์ ค่าดีฟอลต์คือกำหนดโดยใช้คำสั่ง ndots ใน /etc/resolv.conf หรือ 1 ถ้าไม่มีคำสั่ง ndots ชื่อที่มีจุดน้อยลงจะถูกแปลเป็นชื่อสัมพัทธ์และจะค้นหาในโดเมนที่ระบุไว้ในคำ ค้นหา หรือ โดเมน ใน /etc/resolv.conf

+ bufsize = B

ตั้งค่าขนาดบัฟเฟอร์ข้อความ UDP ที่โฆษณาโดยใช้ EDNS0 เป็นไบต์ B ขนาดสูงสุดและต่ำสุดของบัฟเฟอร์นี้คือ 65535 และ 0 ตามลำดับ ค่าที่อยู่นอกช่วงนี้จะปัดเศษขึ้นหรือลงอย่างเหมาะสม

+ [ไม่มี] หลาย

พิมพ์ระเบียนเช่นบันทึก SOA ในรูปแบบ verbose multi-line กับความคิดเห็นที่มนุษย์สามารถอ่านได้ ค่าดีฟอลต์คือการพิมพ์แต่ละระเบียนในบรรทัดเดียวเพื่อให้สามารถแยกวิเคราะห์ผลลัพธ์ของการ ขุดค้น ได้

+ [ไม่มี] ล้มเหลว

อย่าลองเซิร์ฟเวอร์เครื่องถัดไปถ้าคุณได้รับ SERVFAIL ค่าดีฟอลต์คือไม่ลองใช้เซิร์ฟเวอร์ตัวถัดไปซึ่งเป็นสิ่งที่ตรงกันข้ามกับพฤติกรรมของตัวแก้ปัญหาตะกั่วตามปกติ

+ [ไม่มี] besteffort

พยายามแสดงเนื้อหาของข้อความที่มีรูปแบบไม่ถูกต้อง ค่าดีฟอลต์คือไม่แสดงคำตอบที่มีรูปแบบไม่ถูกต้อง

+ [ไม่มี] DNSSEC

คำขอส่งบันทึก DNSSEC โดยการตั้งค่า DNSSEC OK bit (DO) ในระเบียน OPT ในส่วนเพิ่มเติมของ Query

หลายเรื่อง

การดำเนินการ BIND 9 ของ dig support ระบุการค้นหาหลายรายการในบรรทัดคำสั่ง (นอกเหนือจากการสนับสนุนตัวเลือกไฟล์ batch- f ) แต่ละข้อความค้นหาเหล่านี้จะมีชุดค่าสถานะตัวเลือกและแบบสอบถามของตัวเอง

ในกรณีนี้อาร์กิวเมนต์ แบบสอบถาม แต่ละรายการจะแสดงข้อความค้นหาแต่ละรายการในไวยากรณ์คำสั่งที่อธิบายไว้ด้านบน แต่ละตัวประกอบด้วยตัวเลือกมาตรฐานและแฟล็กชื่อที่ต้องการค้นหาประเภทของคำค้นหาและชั้นเรียนที่เป็นตัวเลือกและตัวเลือกการสืบค้นใด ๆ ที่ควรใช้กับข้อความค้นหานั้น

คุณสามารถจัดชุดตัวเลือกการค้นหาทั่วโลกซึ่งควรใช้กับข้อความค้นหาทั้งหมด ตัวเลือกแบบสอบถามส่วนกลางเหล่านี้ต้องนำมาใช้กับ tuple แรกของชื่อคลาสประเภทตัวเลือกธงและตัวเลือกการสืบค้นที่ระบุในบรรทัดคำสั่ง ตัวเลือกการค้นหาทั่วโลกใด ๆ (ยกเว้นตัวเลือก + [no] cmd ) สามารถแทนที่ได้ด้วยชุดตัวเลือกการค้นหาที่เฉพาะเจาะจงแบบสอบถาม ตัวอย่างเช่น:

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

แสดงวิธีการ ขุดที่ สามารถใช้จากบรรทัดคำสั่งเพื่อค้นหาสามครั้ง: แบบสอบถามใด ๆ สำหรับ www.isc.org การค้นหาแบบย้อนกลับของ 127.0.0.1 และแบบสอบถามสำหรับระเบียน NS ของ isc.org ใช้ตัวเลือกการค้นหาทั่วโลกของ + qr เพื่อให้การ ขุด พบคำค้นหาเริ่มต้นที่ทำขึ้นสำหรับการค้นหาแต่ละครั้ง แบบสอบถามสุดท้ายมีตัวเลือก Query แบบโลคัลแบบ + noqr ซึ่งหมายความว่าการ ขุด จะไม่พิมพ์ข้อความค้นหาเริ่มต้นเมื่อค้นหาระเบียน NS ของ isc.org

ดูสิ่งนี้ด้วย

host ( 1) ชื่อ (8), dnssec-keygen (8), RFC1035

สำคัญ: ใช้ คำสั่ง man ( % man ) เพื่อดูว่าคำสั่งถูกใช้อย่างไรในคอมพิวเตอร์เครื่องใดเครื่องหนึ่งของคุณ

บทความที่เกี่ยวข้อง