หน่วงเวลา 10 วินาทีสำหรับ. local TLD ใน Mac OS X Lion


13

เครือข่าย บริษัท ของเราใช้xxx.companyname.localสำหรับเซิร์ฟเวอร์ทั้งหมดในเครือข่ายท้องถิ่นของเรา เมื่อใดก็ตามที่ฉันเข้าถึงเซิร์ฟเวอร์เหล่านี้บน Mac ของฉันฉันมีความล่าช้า 10 วินาที ฉันพบว่าความล่าช้านี้เกิดจากการค้นหา DNS เนื่องจาก Lion เห็นได้ชัดว่าสามารถแก้ไขโดเมน. local ในลำดับต่อไปนี้:

  1. ตรวจสอบ/etc/hostsที่อยู่ IPv6
  2. ตรวจสอบเซิร์ฟเวอร์ DNS สำหรับระเบียน AAAA (ที่อยู่ IPv6)
  3. ตรวจสอบผ่าน MDNS (Bonjour) สำหรับบันทึก AAAA
  4. ตรวจสอบ/etc/hostsที่อยู่ IPv4
  5. ตรวจสอบเซิร์ฟเวอร์ DNS สำหรับระเบียน A (ที่อยู่ IPv4)
  6. ตรวจสอบ MDNS สำหรับบันทึก A

ตอนนี้ปัญหาคือเราไม่มีเครือข่าย IPv6 xxx.companyname.localเซิร์ฟเวอร์ทั้งหมดในเครือข่ายของเรามีที่อยู่ IPv4 เท่านั้นและเซิร์ฟเวอร์ DNS มีระเบียน A เท่านั้น ซึ่งหมายความว่าที่อยู่จะได้รับการแก้ไขในขั้นตอนที่ 5 ปัญหานี้คือขั้นตอนที่ 3 ใช้เวลาสิบวินาทีก่อนหมดเวลา! ทุกครั้งที่ฉันเชื่อมต่อกับวิกิเซิร์ฟเวอร์ SVN เซิร์ฟเวอร์ Kerberos ฯลฯ จะมีการหน่วงเวลา 10 วินาที

ฉันจัดการเพื่อหลอกลวง Lion โดยการเพิ่มบรรทัดดังต่อไปนี้ /etc/hosts

::FFFF:10.99.99.99 xxx.companyname.local

หากฉันทำสิ่งนี้ Lion คิดว่ามีที่อยู่ IPv6 สำหรับโดเมนและหยุดทำงานหลังจากขั้นตอนที่ 1 อย่างไรก็ตามการแก้ปัญหานี้จะหลีกเลี่ยงคุณลักษณะที่มีประโยชน์ทั้งหมดของ DNS โดยสิ้นเชิง ฉันไม่ต้องการติดตามที่อยู่ IP หลายสิบโดเมนภายในด้วยตนเอง! ฉันสามารถหยุดใช้ชื่อโฮสต์และพิมพ์ที่อยู่ IP ได้!

ดังนั้น: ใครบ้างมีความคิดวิธีการเปลี่ยนลำดับการค้นหานี้ หรือปิดใช้งานการค้นหา IPv6 เนื่องจากเราไม่มีเครือข่าย IPv6 อยู่แล้ว


ขอบคุณสำหรับคำถาม - ฉันคั่นหน้าไว้เป็นการอ้างอิงความละเอียด Mac DNS;)
อเล็กซ์

คุณควรพยายามที่จะระบุว่าเพราะเหตุใดเซิร์ฟเวอร์ DNS ของคุณจึงใช้เวลา 10 วินาทีในการส่งชุดระเบียนเปล่าคำตอบสำหรับAAAAบันทึกเมื่อพวกเขา (ตามสิ่งที่คุณพูด) ไม่ต้องใช้เวลาใกล้ที่จะตอบAแบบสอบถามมาก ชื่อโดเมนเดียวกัน คุณดูเหมือนจะอยู่ในดินแดน RFC 4074 คลาสสิกที่มีปัญหาคือว่าเซิร์ฟเวอร์จะแตก โปรดทราบด้วยเช่นกันว่าคุณได้พบกับหนึ่งในหลาย ๆ เหตุผลที่เป็นที่รู้จักและพูดคุยกันมานานในการไม่ใช้local.บริการ DNS แบบแยกส่วน ดีกว่าที่จะแก้ไขเช่นกัน
JdeBP

1
เซิร์ฟเวอร์ DNS ในขั้นตอนที่สองส่งคืนระเบียน AAAA ที่ว่างเปล่าทันที ปัญหาคือขั้นตอนที่ 3 - แบบสอบถาม MDNS / Bonjour / Zeroconf ไลอ้อนรอ 10 วินาทีหลังจากออกอากาศก่อนหมดเวลา หลังจาก googling นิดหน่อยฉันก็ทราบดีว่าการใช้local.เป็นความคิดที่ไม่ดี แต่แผนกไอทีบอกกับฉันว่าพวกเขาคิดว่าการใช้local.companyname.นั้นดีมากและฉันไม่สามารถทำอะไรเกี่ยวกับเรื่องนี้ได้
Jakob Egger

ผู้คนในแผนกไอทีของคุณมีความบกพร่องน้อยมาก สิ่งนี้เป็นที่ทราบกันดีว่าไม่ "สมบูรณ์แบบที่สุด" ในแวดวงการบริหารเครือข่ายเป็นเวลาประมาณครึ่งทศวรรษ คุณสามารถ ... สนับสนุน ... ความรู้ด้านเครือข่ายของแผนกไอทีของคุณที่จะถูกนำเข้าสู่ศตวรรษที่ 21 คุณสามารถ…เตือน…พวกเขาว่างานของพวกเขาไม่ได้จัดการเรื่องต่างๆเช่นคอมพิวเตอร์ขององค์กรทำงานไม่ถูกต้อง ☺
JdeBP

@JdeBP และถึงกระนั้น Apple ก็คิดว่ามันเป็นความคิดที่ดีที่จะใช้มัน ... คุณจะทราบว่า Microsoft ยังใช้มันและแนะนำให้ใช้เป็นแนวทางปฏิบัติที่ดีที่สุด ดังนั้น ... ใครบอกว่ามันไม่ ?
พื้นฐาน

คำตอบ:


8

local.หยุดแผนกไอทีของคุณจากการเหยียดหยาม

ตามที่กล่าวไว้การใช้ชื่อโดเมนที่ บริษัท ของคุณไม่ได้ใช้ในทางที่ผิดและไม่ควรสมมติว่า บริษัท สามารถสร้างโดเมนย่อยขององค์กรได้ผิดและเป็นปัญหาครึ่งหนึ่งที่นี่ หากคอมพิวเตอร์ของ บริษัท มีเครื่องแมคอินทอช (หรืออะไรก็ตามที่ใช้ DNSSD สำหรับเรื่องนั้น) ส่วนใหญ่ไม่คิดว่าlocal.เป็นของคุณที่จะยุ่งกับมันในลักษณะนี้

อัปเกรด Macintosh ของคุณ

MacOS 10.4 จะปฏิบัติต่อxxx.companyname.local.คุณอย่างแน่นอน แต่สิ่งนี้มีการเปลี่ยนแปลงในการแก้ไขในภายหลังของระบบปฏิบัติการ MacOS 10.5 ส่งผ่านชื่อสองป้ายไปที่ Multicast DNS เท่านั้น ชื่อสามป้ายกำกับเช่นxxx.companyname.local.MDNS ไม่ได้รับการจัดการ MacOS 10.6 ทำสิ่งนี้เพิ่มเติมและพยายามตรวจสอบว่าเซิร์ฟเวอร์ DNS ได้รับการกำหนดค่าผิดพลาดให้มีlocal. โซนและดำเนินการตามนั้นหรือไม่

ที่ต่ำมากคุณควรกำหนดค่าแมคอินทอชของคุณจะมี/etc/resolver/CompanyName.localไฟล์ที่มีsearch_order 1อยู่ในนั้นรายการที่อยู่ IP ปัจจุบัน (e) ของเซิร์ฟเวอร์ DNS ของคุณพร็อกซี่ (s) สิ่งนี้จะทำงานได้ไม่ดีกับที่อยู่ IP ของเซิร์ฟเวอร์ DNS ที่กำหนด DHCP ซึ่งเปลี่ยนแปลงได้ แต่อย่างที่ Apple บอก

ในมือจับ ...

... สิ่งเหล่านี้เป็นสิ่งที่ซับซ้อนยิ่งขึ้นเพื่อรองรับความผิดพลาดของร่างกาย ในการอ้างอิง Marc Krochmal ของ Apple "จะมีปัญหาอยู่เสมอ" เมื่อมีผู้ใช้งานlocal.ในทางที่ บริษัท ของคุณใช้งานในทางที่ผิด เป็นที่ทราบกันดีว่ามีการหลงทางตั้งแต่ (การค้นหาแบบเร็วบอกฉัน) ปี 2002 หากไม่เคยมีมาก่อน เพียงแค่ไม่ได้ทำมัน

อ่านเพิ่มเติม


2
ไม่มีข้อมูลนี้ที่แก้ไขปัญหาของฉันเกี่ยวกับการแก้ไข DNS ใน Lion (Mac OS X 10.7) นอกจากนี้/etc/resolver/companyname.localดูเหมือนว่าจะถูกละเว้นใน Lion
Jakob Egger

0

ฉันไม่รู้ Mac ดังนั้นจึงไม่สามารถช่วยได้จริง ๆ แต่ฉันมาพร้อมกับแนวคิดการแก้ปัญหาที่ชาญฉลาด: ถ้าคุณติดตั้งที่ไหนสักแห่งบนอินเทอร์เน็ต"somedomain.com DNAME companyname.local"- มันจะจับ DNAME ในขั้นตอนที่ 2 ตอนนี้ฉันไม่แน่ใจว่าจะเกิดอะไรขึ้น ต่อไปจะยังคงถอยกลับไปที่ bonjour หรือเพราะมันอยู่ในช่วงกลางของกระบวนการ DNS บางอย่างมันอาจจะติดกับ DNS


ฉันสามารถเป็นอาสาสมัครในการสร้าง DNAME ให้คุณได้หากคุณต้องการ :)
Alex
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.