/ etc / hosts สามารถค้นหา DNS ได้ช้าหรือไม่


9

ฉันกำลังเผชิญหน้ากับคำถามเล็กน้อยที่นี่ ฉันมี/etc/hostsไฟล์ยาว (ทำงานในเว็บดังนั้นฉันจึงโฮสต์หลายไซต์ในพื้นที่เพื่อพัฒนาซอฟต์แวร์) ลองบอกว่ามันยาวประมาณ 40, 50 บรรทัด การเปลี่ยนเส้นทางทั้งหมดไปที่ 127.0.0.1

ตอนนี้เมื่อตรวจสอบผู้ตรวจสอบของ Chrome ดูเหมือนว่าหน้าเว็บในเครื่องของฉันโหลดช้าเพราะส่วน DNS Lookup ในmygreatwebsite.localurl ยังกำหนดไว้ใน/etc/hostsไฟล์

หลังจากตรวจสอบอย่างรวดเร็วดูเหมือนว่าการลดhostsไฟล์ลงเป็นสองบรรทัดจะช่วยเร่งการค้นหา DNS อย่างมาก ดังนั้นคำถามของฉันเป็นไปได้ไหมที่จะต้องเผชิญหน้ากับความแตกต่างประมาณ 5 วินาทีสำหรับ 50 บรรทัดและไม่สำคัญสำหรับสองบรรทัด? หรือว่าฉันขาดอะไรบางอย่างไปอย่างสิ้นเชิง?


นานแค่ไหน? ฉันใช้ไฟล์โฮสต์> 20,00000 บรรทัดแล้ว (ไม่เกี่ยวข้องกับ DNS) หน้าตาไม่ได้ใช้เวลานานอย่างเห็นได้ชัด ...
รถตู้เกิร์ต Den Berg

คำตอบ:


18

tld .local ของคุณอาจเป็นปัญหา zeroconf ใช้สิ่งนี้ ไม่มีมาตรฐานจริง แต่ tld ที่แนะนำสำหรับ tld ภายในคือ. site หรือ. internal ดูhttp://en.wikipedia.org/wiki/Top-level_domain#Pseudo-domainsสำหรับสิ่งนี้


1
แน่นอนฉันได้สังเกตเห็นการเพิ่มประสิทธิภาพที่ยอดเยี่ยมเมื่อใช้ส่วนขยาย. site หลังจากการวิจัยเล็กน้อยดูเหมือนว่าจะเป็นโปรโตคอล Bonjour ของแอปเปิ้ลที่ใช้. local TLD
Zenklys

ฉันเข้าร่วม StackExchange เพื่อบอกขอบคุณสำหรับเคล็ดลับที่ยอดเยี่ยมนี้ แอปของฉันใช้เวลา 10-15 วินาทีในการโหลดเนื้อหาและทำให้ประสบการณ์การใช้งานของฉันเป็นฝันร้าย การใช้. site TLD มีหน้าเว็บที่โหลดเร็วทั้งหมดอีกครั้ง น่ากลัว Sidenote: ใครบางคนต้องพูดถึงชิ้นอาหารอันโอชะนี้กับนักเขียนบล็อก / screencasters ที่ใช้. local!
สตีเวนการ์เซีย

5

/ etc / hosts สามารถค้นหา DNS ได้ช้าหรือไม่

คำตอบคือใช่ในเครื่อง Windows (XP / Vista / 7)

เป็นปัญหาที่ทราบกันดีว่าไฟล์โฮสต์ที่ยาวทำงานได้ไม่ดีกับบริการ "DNS Client"

http://winhelp2002.mvps.org/hosts.htm :

ในกรณีส่วนใหญ่ไฟล์โฮสต์ขนาดใหญ่ (มากกว่า 135 kb) มีแนวโน้มที่จะทำให้เครื่องช้าลง

[โซลูชัน: ตั้งค่าบริการ "ไคลเอ็นต์ DNS" เป็นด้วยตนเองหรือปิดใช้งาน]

http://vlaurie.com/computers2/Articles/hosts.htm :

โปรดทราบว่าไฟล์โฮสต์ที่มีขนาดเกิน 100 KB อาจทำให้การเรียกดูช้าลงเว้นแต่ว่าบริการ "ไคลเอนต์ DNS" ถูกตั้งค่าให้เริ่มด้วยตนเอง

www.ericphelps.com/scripting/samples/Hosts/:

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

... และฉันได้เห็นสิ่งนี้บนเครื่อง Windows สามเครื่อง: XP Pro, Vista และ 7 Starter


มุมมองที่น่าสนใจ ฉันไม่รู้ แต่คำถามนี้เกี่ยวกับสภาพแวดล้อม Mac OS ;)
Zenklys

2

ฉันขอแนะนำให้ใช้ tcpdump เพื่อดูว่าเกิดอะไรขึ้นจริง ไม่ว่าคุณจะคาดเดาเท่านั้น

ไวยากรณ์พื้นฐานจะเป็น

tcpdump -n -i eth0 port 80 or port 53

(หากคุณสนใจที่จะเห็นพอร์ต 80 และ 53, -n เพื่อป้องกันการค้นหา DNS โดยสมมติว่ามีการใช้ comunication ทั้งหมดใน eth0)

หากข้อมูลเร็วหรือมีข้อมูลมากเกินไปให้เปลี่ยนเส้นทางไปที่ dumpfile โดยเพิ่ม:

 -s 0 -w /tmp/dump

และใช้ ie wireshark เพื่อค้นหา dumpfile คุณสามารถดูข้อมูลเวลาได้อย่างแม่นยำในไฟล์และอีกมากมาย ...


1

เมื่อฉันใช้ Spybot มันจะแทรกรายการไฟล์โฮสต์ประมาณ 50,000 รายการซึ่งเปลี่ยนเส้นทางไปยังไซต์ที่เป็นอันตรายที่รู้จักไปยัง 127.0.0.1 ฉันไม่เคยสังเกตเห็นปัญหาใด ๆ จากการมีไฟล์โฮสต์ยาวในลักษณะนี้ มีแนวโน้มที่จะทำอะไรกับการตั้งค่า dev หรือรหัสของคุณเอง คุณให้บริการในพื้นที่กี่ไซต์ (50 แห่ง) ทุกคนใช้เวลานานแค่ไหนในการตอบสนองเมื่อมี 50 รายการเข้าร่วม


ใช่ฉันแน่ใจว่ามันไม่มีส่วนเกี่ยวข้องกับเว็บไซต์เหล่านั้นพวกเขาทำงานได้อย่างสมบูรณ์บน mac เครื่องอื่นของฉัน (Snow Leopard) ตอนนี้กับ Lion มีเพียงการกำหนดค่าเซิร์ฟเวอร์และไฟล์โฮสต์ที่มีการเปลี่ยนแปลง และใช่พวกเขาทั้งหมดใช้เวลาโหลดกัน และในส่วนการค้นหา DNS เสมอ
Zenklys

0

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


ขอบคุณสำหรับคำตอบ. ฉันจะตรวจสอบการสั่งซื้อได้อย่างไร
Zenklys

@ Zenklys ฉันจะต้องปล่อยให้คนที่มีความเชี่ยวชาญใน Linux ตอบคำถามของคุณ
John Gardeniers

0

จากการทดสอบของฉันไฟล์โฮสต์ขนาด 34 MB ที่มีรายการไม่กี่ล้านรายการทำให้การเรียกดูใน Windows ช้าลงเล็กน้อยแม้ว่าบริการ "ไคลเอ็นต์ DNS" จะปิดใช้งาน ดังนั้นจึงมีขนาดสูงสุดเกินกว่าที่คุณอาจไม่ต้องการไป

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