Score:0

ไคลเอนต์ DNS เทียบกับ Nslookup - ทำการทดสอบไคลเอนต์ DNS ด้วยตนเองสำหรับบันทึก SRV

ธง ru

มีการอ้างอิงที่หลากหลาย (เช่น DNS ไม่สามารถแก้ไขชื่อโฮสต์ได้ nslookup ได้ หรือ https://web.archive.org/web/20160525082756/http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/nslookup-flaws.html หรือ https://web.archive.org/web/20121113214415/http://cbfive.com/blog/post/PING-vs-NSLookup.aspx) ที่ระบุสิ่งต่อไปนี้หรือสิ่งที่คล้ายกัน แต่ไม่ได้ให้คำแนะนำสำหรับทางเลือกอื่นๆ ที่จะใช้:

เหตุผลที่ ping ไม่สามารถแก้ไขชื่อโฮสต์ได้ แต่ nslookup ทำได้เนื่องจาก nslookup เป็นเครื่องมือระดับต่ำที่ข้ามไคลเอนต์ DNS ของ Windows มันใช้เซิร์ฟเวอร์ DNS ใดก็ตามที่คุณบอก (อันแรกตามค่าเริ่มต้น) และทำการค้นหาได้ทันที

คำถามของฉันคือฉันจะ ด้วยตนเอง ทดสอบไคลเอนต์ DNS เพื่อตรวจสอบบันทึก SRV หรือไม่ มีวิธีดูข้อมูล DNS ที่พยายามใช้หรือไม่ ฉันไม่สามารถวาง Wireshark ในทุกเซิร์ฟเวอร์ในทุกสภาพแวดล้อมได้ ดังนั้นฉันจึงมองหาวิธีอื่นในการแก้ปัญหาฉันคิดว่าคำตอบคือ "ไม่" มิฉะนั้นทำไมเราจะใช้ nslookup (มีข้อบกพร่องเหมือนเดิม) เห็นได้ชัดว่าฉันไม่สามารถใช้ ping สำหรับบันทึก SRV

แก้ไขด้วยการค้นพบที่อัปเดต: ข้อความค้นหา UDP ยาวเกินไป ดังนั้นการตอบกลับ DNS ที่มีแฟล็กการตัดทอนจะถูกส่งไปยังไคลเอ็นต์ ดังนั้นจึงจำเป็นต้องสร้างแบบสอบถาม TCP แพ็กเก็ตถัดไปหลังจากการสืบค้น TCP DNS คือ (จาก TargetDNS ไปยังไคลเอนต์): "ส่วน TCP ของ PDU ที่ประกอบขึ้นใหม่" (ซึ่งดูเหมือนว่ามีข้อมูลการตอบสนอง) และจะแตกต่างกันไปตามสถานการณ์:

  • ข้อความค้นหา Nslookup - ด้วยข้อความค้นหา nslookup จริง ๆ แล้วมีแพ็กเก็ตการตอบสนอง DNS พร้อมข้อมูล
  • ApplicationX (ซึ่งฉันเชื่อว่าใช้ไคลเอนต์ DNS ของ Windows) - แบบสอบถามไคลเอ็นต์ DNS ของ Windows ไม่มีแพ็กเก็ตการตอบสนอง DNS (เช่น แพ็กเก็ต TCP อื่นๆ สูญหาย)
    • ไม่มีสิ่งใดในแคช DNS (ipconfig /displaydns) หรือในแคชเซิร์ฟเวอร์ DNS ของไคลเอนต์สำหรับบันทึก SRV (ไม่แม้แต่จะเป็นค่าลบ)

ไม่น่าแปลกใจที่พิสูจน์ได้ว่าไคลเอ็นต์ DNS และ nslookup ได้รับผลลัพธ์ที่แตกต่างกัน แต่สิ่งที่พวกเขาทำแตกต่างกัน (ลดราคาโฮสต์ lmhosts ต่อท้ายส่วนต่อท้ายการค้นหา DNS ฯลฯ) พวกเขากำลังใช้เซิร์ฟเวอร์ DNS เดียวกัน (ตามหลักฐานของ Wireshark) ฉันจะจำกัดขอบเขตความผิดให้แคบลงได้อย่างไร

cn flag
เมื่อถึงจุดหนึ่ง ควรมีคนถามว่ามีแอปพลิเคชันเดียวที่แสดงพฤติกรรมนี้หรือไม่ อาจเป็นแอปพลิเคชันนั้น
Score:2
ธง cn

ความเข้าใจของคุณถูกต้องว่า nslookup ทำหน้าที่เป็นไคลเอ็นต์ DNS ในตัวเอง โดยแยกจากสิ่งที่ OS ทำในนามของแอปพลิเคชันทั่วไป

cmdlet ของ Powershell แก้ DNSNameในทางกลับกัน ใช้ไคลเอนต์ DNS ของ Windows พื้นฐาน ด้วยเหตุนี้จึงเป็นเครื่องมือที่สามารถใช้เพื่อเรียกใช้การทำงานปกติของระบบปฏิบัติการสำหรับการค้นหา DNS (หรือแหล่งที่มาอื่นๆ แม้จะมีชื่อก็ตาม!) โดยแยกจากแอปพลิเคชันของคุณ

เช่นสิ่งที่ต้องการเป็นตัวอย่างของก เอส.อาร์.วี ค้นหา:

แก้ไขชื่อ DNS - ประเภท SRV _sip._tcp.example.com

หมายเหตุด้านข้าง:
พฤติกรรมของ nslookup และอื่น ๆ (โดยทั่วไป ขุด เป็นเครื่องมือที่เลือกใช้ในหมวดนี้) มีประโยชน์สำหรับการตรวจสอบพฤติกรรม DNS โดยเฉพาะอย่างยิ่งเนื่องจากสภาพแวดล้อมในเครื่องไม่ส่งผลกระทบต่อผลลัพธ์ แต่ในขณะเดียวกันก็ทำให้เครื่องมือเหล่านี้ไม่เหมาะสมสำหรับการตรวจสอบพฤติกรรมของสภาพแวดล้อมในระบบปฏิบัติการในเครื่อง

Badger avatar
ru flag
ก่อนอื่น ต้องขออภัยในความล่าช้าในการตอบกลับ และขอขอบคุณสำหรับสิ่งนั้น ขออภัย ฉันไม่สามารถเข้าแก้ไข DNSname ได้ในกรณีนี้คุณช่วยแนะนำอย่างอื่นได้ไหม ฉันคิดว่าคำถามทั้งหมดอาจต้องจัดเฟรมใหม่ ฉันต้องการทราบวิธีที่ปฏิบัติได้จริงในการทดสอบไคลเอนต์ DNS แต่ความแตกต่างระหว่าง nslookup และสิ่งที่ไคลเอ็นต์ DNS ทำคืออะไร ฉันเข้าใจว่าจะมีความแตกต่างกันในการต่อท้ายส่วนต่อท้ายการค้นหา DNS และไคลเอนต์ DNS สามารถใช้โฮสต์และ lmhosts หรืออาจดูที่เซิร์ฟเวอร์อื่น แต่มีอะไรอีกที่สามารถอธิบายได้ว่าทำไม nslookup จึงใช้งานได้ แต่ไคลเอนต์ DNS ไม่ทำงาน

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา