วิธีปิดใช้งานการแคช DNS ด้านไคลเอ็นต์ใน Windows XP และ Windows Server 2003

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 318803 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
สำหรับ Microsoft Windows 2000 ในบทความนี้ โปรดดู 245437 (ลิงค์นี้อาจเชื่อมโยงไปยังเนื้อหาที่เป็นภาษาอังกฤษบางส่วน หรือทั้งหมด).
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

Windows มีแคชของระบบชื่อโดเมน (DNS) ด้านไคลเอ็นต์ คุณลักษณะการแคช DNS ด้านไคลเอ็นต์อาจทำให้เกิดการจำผิดๆ ที่ "การวนต่อเนื่อง" ของ DNS ไม่เกิดขึ้นจากเซิร์ฟเวอร์ DNS ไปยังคอมพิวเตอร์แบบไคลเอ็นต์ของ Windows เมื่อคุณใช้คำสั่ง ping เพื่อค้นหาชื่อโดเมนใน A-record เดียวกัน ไคลเอ็นต์อาจใช้ที่อยู่ IP ซ้ำกันได้ ลักษณะดังกล่าวนี้จะแตกต่างไปจากระบบปฏิบัติการของ Microsoft รุ่นก่อน Windows 2000 ระบบปฏิบัติการเหล่านี้จะไม่มีคุณลักษณะการแคช DNS ด้านไคลเอ็นต์ บทความนี้อธิบายเกี่ยวกับวิธีปิดใช้งานการแคช DNS

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

ข้อมูลเพิ่มเติม

ถ้าต้องการหยุดการแคช DNS ให้เรียกใช้คำสั่งใดคำสั่งหนึ่งดังต่อไปนี้:
  • net stop dnscache

    หรือ
  • sc servername stop dnscache
ถ้าต้องการปิดใช้งานการแคช DNS อย่างถาวรใน Windows ให้ใช้เครื่องมือ ตัวควบคุมบริการ (Service Controller) หรือเครื่องมือ บริการ (Services) เพื่อตั้งค่าชนิดการเริ่มต้นของบริการไคลเอ็นต์ DNS ให้เป็นแบบ ปิดใช้งาน โปรดทราบว่าชื่อของบริการไคลเอ็นต์ DNS ใน Windows อาจมีชื่อเรียกเป็น "Dnscache" ได้

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

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

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

คุณสามารถใช้เครื่องมือ Ipconfig เพื่อดูและล้างข้อมูลแคชของ DNS Resolver ได้ เมื่อต้องการดูข้อมูลแคชของ DNS Resolver ให้พิมพ์ ipconfig /displaydns ที่พร้อมท์คำสั่ง Ipconfig จะแสดงข้อมูลแคชของ DNS Resolver รวมทั้งระเบียนทรัพยากร DNS ที่ถูกโหลดไว้ก่อนหน้าจากแฟ้ม Hosts และชื่อที่เพิ่งถูกร้องขอที่ได้รับการจำแนกจากระบบ หลังจากช่วงระยะเวลาหนึ่ง ตัวจำแนกชื่อจะทำการลบระเบียนต่างๆ ออกจากแคช ช่วงระยะเวลานี้จะถูกระบุในค่า Time to Live (TTL) ที่เกี่ยวข้องกับระเบียนทรัพยากร DNS คุณยังสามารถล้างข้อมูลแคชด้วยตัวคุณเองได้เช่นกัน หลังจากที่คุณล้างข้อมูลแคชแล้ว คอมพิวเตอร์ต้องร้องขอไปยังเซิร์ฟเวอร์ DNS อีกครั้งเพื่อขอระเบียนทรัพยากร DNS ที่ถูกจำแนกด้วยคอมพิวเตอร์ไว้ก่อนหน้านี้ ถ้าต้องการลบรายการต่างๆ ในแคชของ DNS Resolver ให้พิมพ์ ipconfig /flushdns ที่พร้อมท์คำสั่ง

การใช้รีจิสทรีเพื่อควบคุมเวลาการแคช

สิ่งสำคัญ ข้อมูล วิธีการ หรืองานในส่วนนี้จะอธิบายขั้นตอนต่างๆ เกี่ยวกับวิธีการปรับเปลี่ยนรีจิสทรี อย่างไรก็ตาม ปัญหาร้ายแรงอาจเกิดขึ้นหากคุณปรับเปลี่ยนรีจิสทรีไม่ถูกต้อง ดังนั้น โปรดตรวจสอบให้แน่ใจว่าคุณได้ทำตามขั้นตอนเหล่านี้อย่างระมัดระวัง สำหรับการป้องกันเพิ่มเติม ให้สำรองรีจิสทรีก่อนทำการปรับเปลี่ยน เพื่อที่คุณจะสามารถคืนค่ารีจิสทรีได้หากมีปัญหาเกิดขึ้น สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสำรองข้อมูลและคืนค่ารีจิสทรี โปรดคลิกที่หมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft:
322756 วิธีการสำรองข้อมูลและคืนค่ารีจิสทรีใน Windows (ลิงค์นี้อาจเชื่อมโยงไปยังเนื้อหาที่เป็นภาษาอังกฤษบางส่วน หรือทั้งหมด)
ระยะเวลาที่จะแคชการตอบรับหรือการปฏิเสธขึ้นอยู่กับค่าต่างๆ ในรีจิสทรีคีย์ดังต่อไปนี้:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters
TTL สำหรับการตอบรับน้อยกว่าค่าต่างๆ ดังต่อไปนี้:
  • จำนวนวินาทีที่ระบุในการตอบสนองการร้องขอที่ตัวจำแนกชื่อได้รับ
  • ค่าของ
    MaxCacheTtl
    การตั้งค่ารีจิสทรี

หมายเหตุ
  • ค่าเริ่มต้นของ TTL สำหรับการตอบรับเท่ากับ 86,400 วินาที (1 วัน)
  • TTL สำหรับการปฏิเสธเท่ากับจำนวนวินาทีที่ระบุใน
    MaxNegativeCacheTtl
    การตั้งค่ารีจิสทรี
  • ค่าเริ่มต้นของ TTL สำหรับการปฏิเสธเท่ากับ 900 วินาที (15 นาที)
ถ้าคุณไม่ต้องการแคชข้อมูลการปฏิเสธ ให้ตั้งค่ารีจิสทรี
MaxNegativeCacheTtl
เป็น 0

เมื่อต้องการตั้งค่าเวลาในการแคชบนคอมพิวเตอร์แบบไคลเอ็นต์ ให้ดำเนินการดังนี้:
  1. เริ่มการทำงานของตัวแก้ไขรีจิสทรี (Regedit.exe)
  2. ค้นหาและคลิกที่คีย์ต่อไปนี้ในรีจิสทรี:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
  3. บนเมนู แก้ไข ชี้ไปที่ สร้าง คลิก ค่า DWORD แล้วเพิ่มค่ารีจิสทรีดังต่อไปนี้:
    ชื่อค่า:
    MaxCacheTtl

    ชนิดข้อมูล: REG_DWORD
    ค่าเริ่มต้น: 86400 วินาที
    ข้อมูลค่า: ถ้าคุณลดค่าสูงสุดของ TTL ในแคช DNS ของไคลเอ็นต์จนมีค่าเท่ากับ 1 วินาที จะหมายถึงการปิดใช้งานการแคช DNS ด้านไคลเอ็นต์

    ชื่อค่า:
    MaxNegativeCacheTtl

    ชนิดข้อมูล: REG_DWORD
    ค่าเริ่มต้น: 900 วินาที
    ข้อมูลค่า: ให้ตั้งค่าที่ 0 ถ้าคุณไม่ต้องการแคชข้อมูลการปฏิเสธ
  4. พิมพ์ค่าที่คุณต้องการใช้ แล้วคลิก ตกลง
  5. ออกจากตัวแก้ไขรีจิสทรี

Subnet Prioritization

ตัวจำแนกชื่อ DNS ใน Windows XP จะใช้ Subnet Prioritization ด้วย ถ้าตัวจำแนกชื่อได้รับการแมปที่อยู่ IP จำนวนหลายตัว (ระเบียนทรัพยากร A) จากเซิร์ฟเวอร์ DNS และระเบียนบางระเบียนมีที่อยู่ IP จากเครือข่ายที่คอมพิวเตอร์เชื่อมต่อโดยตรง ตัวจำแนกชื่อจะกำหนดระเบียนทรัพยากรเหล่านั้นก่อน ลักษณะการทำงานนี้จะลดปริมาณการใช้เครือข่ายระหว่างเครือข่ายย่อยโดยการบังคับให้คอมพิวเตอร์เชื่อมต่อกับทรัพยากรเครือข่ายที่อยู่ใกล้กับตนเองมากกว่า

ถึงแม้ว่า Subnet Prioritization จะช่วยลดปริมาณการใช้เครือข่ายระหว่างเครือข่ายย่อย แต่ในบางกรณีคุณอาจต้องการให้คุณลักษณะการวนต่อเนื่องทำงานดังอธิบายไว้ใน RFC 1794 ถ้าเป็นเช่นนั้น คุณสามารถปิดใช้งานคุณลักษณะ Subnet Prioritization บนไคลเอ็นต์ของคุณได้โดยการเพิ่มรายการรีจิสทรี
PrioritizeRecordData
ด้วยค่า 0 (ชนิดข้อมูล REG_DWORD) ในรีจิสทรีคีย์ต่อไปนี้:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DnsCache\Parameters
หากต้องการข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft:
297510 วิธีปรับเปลี่ยน Time to Live บนระเบียนของระบบชื่อโดเมน (ลิงค์นี้อาจเชื่อมโยงไปยังเนื้อหาที่เป็นภาษาอังกฤษบางส่วน หรือทั้งหมด)
286834 บริการไคลเอ็นต์ DNS ไม่ยอมกลับไปใช้เซิร์ฟเวอร์ตัวแรก (ลิงค์นี้อาจเชื่อมโยงไปยังเนื้อหาที่เป็นภาษาอังกฤษบางส่วน หรือทั้งหมด)
สำหรับข้อมูลเพิ่มเติม โปรดดูที่เอกสาร Microsoft Windows XP Professional Resource Kit ในบทเรื่อง "การแคช DNS, Network Prioritization และการรักษาความปลอดภัย"

คุณสมบัติ

หมายเลขบทความ (Article ID): 318803 - รีวิวครั้งสุดท้าย: 3 มิถุนายน 2551 - Revision: 2.5
ใช้กับ
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows XP Professional Edition
Keywords: 
kbnetwork kbhowto kbinfo KB318803

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com