หากคุณเรียกใช้ nslookup และเปิดการดีบักคุณจะเห็นว่า Windows พยายามผนวกส่วนต่อท้ายก่อนเสมอ
C:\>nslookup
Default Server: itads.example.com
Address: 0.0.0.0
> set debug=true
> www.yahoo.com
Server: itads.example.com
Address: 0.0.0.0
------------
Got answer:
HEADER:
opcode = QUERY, id = 2, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
www.yahoo.com.example.com, type = A, class = IN
AUTHORITY RECORDS:
-> example.com
ttl = 3600 (1 hour)
primary name server = itads.example.com
responsible mail addr = itads.example.com
serial = 12532170
refresh = 1200 (20 mins)
retry = 600 (10 mins)
expire = 1209600 (14 days)
default TTL = 3600 (1 hour)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 3, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 4, authority records = 0, additional = 0
QUESTIONS:
www.yahoo.com, type = A, class = IN
ANSWERS:
-> www.yahoo.com
canonical name = www.wa1.b.yahoo.com
ttl = 241 (4 mins 1 sec)
-> www.wa1.b.yahoo.com
canonical name = www-real.wa1.b.yahoo.com
ttl = 30 (30 secs)
-> www-real.wa1.b.yahoo.com
internet address = 209.131.36.158
ttl = 30 (30 secs)
-> www-real.wa1.b.yahoo.com
internet address = 209.191.93.52
ttl = 30 (30 secs)
------------
Non-authoritative answer:
Name: www-real.wa1.b.yahoo.com
Addresses: 209.131.36.158, 209.191.93.52
Aliases: www.yahoo.com, www.wa1.b.yahoo.com
อย่างที่คุณเห็นด้านบนเครื่องของฉันพยายามค้นหา www.yahoo.com.example.com ก่อนและเซิร์ฟเวอร์ DNS ตอบกลับNXDOMAIN
(ไม่พบรายการ) คุณสามารถยืนยันสิ่งนี้ได้ด้วยการเรียกใช้nslookup www.yahoo.com.
(จดจุดที่ส่วนท้ายของ. com!) และคุณจะเห็นว่าได้รับการแก้ไขตามปกติ
สิ่งที่เกิดขึ้นคือเซิร์ฟเวอร์ DNS ภายนอกของคุณกำลังตอบกลับว่ามีรายการสำหรับ "www.yahoo.com.example.com" และส่งคืนที่อยู่ IP ของคุณสำหรับรากของไซต์ของคุณ ฉันไม่แน่ใจว่าสิ่งที่คุณใช้บริการ แต่ฉันเดาว่าคุณมีการทำแผนที่สัญลักษณ์แทนที่จะบอกเซิร์ฟเวอร์ของคุณเพื่อตอบคำถามใด ๆ NXDOMAIN
ที่ไม่รู้จักกับการตอบสนองที่ถูกต้องแทนที่จะกลับ คุณจะต้องตรวจสอบการตั้งค่าสำหรับเซิร์ฟเวอร์และยืนยันว่ามันใช้เพียงเพื่อตอบสนองต่อคำสั่งสำหรับรายการที่มันมีจริง ( example.com
, www.example.com
, mail.example.com
ฯลฯ )
โปรดจำไว้ว่า DNS ทำงานได้โดยการตรวจสอบเซิร์ฟเวอร์ที่กำหนดค่าและทำงานจากที่นั่น แบบสอบถาม DNS สามารถใช้เส้นทางตามรูปแบบต่อไปนี้ (แน่นอนว่านี่เป็นเพียงตัวอย่างมันอาจผิด): เครื่อง -> Local Router DNS (linksys) -> ISP DNS -> (DNS ISP ที่ 2) -> Root เซิร์ฟเวอร์ DNS -> TLD DNS -> เซิร์ฟเวอร์ DNS ภายนอกของคุณ มีคนตามเส้นทางนั้นกำลังบอกว่าwww.yahoo.com.example.com
มีอยู่จริง โอกาสที่จะเป็นเซิร์ฟเวอร์ DNS ภายนอกของคุณ
แก้ไข
ฉันคิดว่าฉันจะรวมชิ้นอาหารอันโอชะอีกหนึ่งเกี่ยวกับการสุ่มที่คุณพูดถึง หากสิ่งนี้เกิดขึ้นเป็นระยะ ๆ คุณอาจมีเซิร์ฟเวอร์ DNS ภายนอกที่กำหนดค่าไม่ถูกต้องหรือ ISP ของพวกเขาอาจให้บริการการหักหลัง DNS น่าเสียดายที่ฉันเห็น ISP ที่อยู่อาศัยจำนวนมากขึ้นให้ "บริการค้นหา" สำหรับชื่อโดเมนที่ไม่ถูกต้อง เนื่องจากผู้ใช้ปลายทางเกือบทั้งหมดใช้เซิร์ฟเวอร์ ISP DNS ของตนตอนนี้ ISP จึงเริ่มเปลี่ยนเส้นทางรายการโดเมนที่ไม่ถูกต้องไปยังหน้าค้นหาซึ่งมักจะเต็มไปด้วยโฆษณาลิงก์ที่ไม่เกี่ยวข้องและเล็ก "คุณหมายถึง www.example.com หรือไม่" ด้วยผลลัพธ์บางอย่างที่อาจหรืออาจจะไม่เกี่ยวข้องกับชื่อโดเมน ฉันรู้ว่า Verizon และ Comcast กำลังเริ่มทำสิ่งนี้ฉันเชื่อว่า Quest กำลังจะเริ่มขึ้นเช่นกัน ความเป็นไปได้อีกอย่างก็คือ OpenDNS เนื่องจากพวกเขาให้ "ค้นหาโดเมนที่เกี่ยวข้อง" แบบเดียวกันหากไม่ได้ '
ปัญหาของฉันในการแนะนำว่าในฐานะที่เป็นปัญหาคือความจริงที่ว่าคุณส่งคืนที่อยู่ของบันทึกรากของคุณซึ่งสิ่งเหล่านี้จะไม่ทำถ้าพวกเขาพยายามค้นหามันพวกเขาจะให้ IP หนึ่ง ของเว็บเซิร์ฟเวอร์เพื่อจัดการการค้นหา