การล้าง DNS ทำอะไร


12

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

dns 

DNS แปลชื่อโฮสต์เป็น IP และในทางกลับกัน การล้างการตั้งค่า DNS ล้างและปรับการตั้งค่า DNS ใหม่ในไคลเอนต์สำหรับสถานการณ์ที่การตั้งค่า DNS ไม่ถูกต้อง / ล้าสมัย
OMG Ponies

"การล้างแคช DNS " จะชัดเจนขึ้น
user1686

คำตอบ:


10

DNS เป็นระบบชื่อโดเมน เซิร์ฟเวอร์ DNS แปลงชื่อโดเมน (เช่นexample.com) เป็นที่อยู่ IP (ในกรณีนี้192.0.32.10) การแมปชื่อกับตัวเลขสามารถเปลี่ยนแปลงได้เป็นครั้งคราว

คอมพิวเตอร์ของคุณมีบันทึกรายการ DNS เพื่อบันทึกการค้นหาทุกครั้ง นี่คือแคช DNS ของคุณ คุณสามารถลบบันทึกเหล่านั้น (ล้างแคช) ได้ทุกเวลาที่ต้องการ

หากเว็บไซต์เพิ่งย้ายเซิร์ฟเวอร์คุณอาจเห็นเว็บไซต์เก่าอยู่พักหนึ่ง การล้างแคช DNS ของคุณอาจช่วยได้


หากฉันย้ายเว็บไซต์ของฉันไปยังเซิร์ฟเวอร์อื่นฉันต้องสั่งให้ผู้ใช้ทุกคนล้างแคชหรือไม่ ไม่มีวิธีอัตโนมัติในการทราบว่าการแมปเก่าล้าสมัย & รายการนั้นควรได้รับการอัปเดตในแคชหรือไม่
ผู้ใช้

1
@กันชน. รายการ DNS มี TTL (เวลาใช้งาน) หลังจากนั้นหมดอายุ TTL ทั่วไปคือ 24 และ 48 ชั่วโมง แต่ฉันเห็นว่าต่ำเพียง 5 นาที ฉันคิดว่ามูลค่าสูงสุดคือ 3 เดือน ตามหลักแล้วคุณควรลด TTL ก่อนที่จะย้ายเซิร์ฟเวอร์จากนั้นสลับจากนั้นเพิ่มอีกครั้ง ด้วยวิธีนี้ระยะเวลาการถ่ายโอน (ระหว่างที่คนอื่นอาจเห็นเซิร์ฟเวอร์ต่างกัน) นั้นสั้น
TRiG

4

เมื่อใดก็ตามที่คุณพิมพ์ URL บนแถบที่อยู่จะดึงที่อยู่ IP ที่เกี่ยวข้องเพื่อสื่อสารกับเว็บเซิร์ฟเวอร์ (อาจเป็นเซิร์ฟเวอร์ประเภทใดก็ได้) เมื่อคุณใช้ URL เดียวกันซ้ำ ๆ มันเป็นการสิ้นเปลืองทรัพยากรเครือข่ายเพื่อดึงที่อยู่ IP ที่สอดคล้องกันทุกครั้งเพราะ IP ไม่เปลี่ยนบ่อยเกินไป

เพื่อให้คอมพิวเตอร์ของคุณจัดเก็บชื่อโดเมนและ IP ไว้ในแคชในเครื่องเพื่อหลีกเลี่ยงการดึงข้อมูลจากเซิร์ฟเวอร์ชื่อโดเมน (DNS) ทุกครั้งที่คุณใช้ชื่อโดเมน (URL) เดียวกัน

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

Dns flushing เป็นกลไกที่ผู้ใช้สามารถสร้างรายการทั้งหมดในแคชไม่ถูกต้องด้วยตนเองดังนั้นคอมพิวเตอร์ของคุณจะดึงชุดค่าผสมใหม่ได้ในตอนนี้เมื่อใดก็ตามที่ต้องการและเก็บไว้ในแคชในเครื่อง


ปลอดภัยไหม จะเกิดอะไรขึ้นถ้าฉันล้างแคช DNS ของฉัน แคชนั้นอยู่ที่ไหนในเครื่องของฉัน
Green

@Green คุณสามารถใช้คำสั่ง "ipconfig / displaydns" บน windows เพื่อแสดงรายการการแมป DNS ทั้งหมด สำหรับ linux การแคช DNS จะไม่เปิดใช้งานที่ระดับ OS โดยค่าเริ่มต้น หากมีการติดตั้งเครื่องมือเช่น "nscd คุณสามารถลอง / usr / sbin / nscd -g
Vishwanath gowda k

1

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

ข้อยกเว้นสำหรับเรื่องนี้คือ Windows รุ่นเก่า (ผ่าน XP หรือไม่ลืม) จะไม่สนใจการหมดเวลาที่สั้นกว่าหนึ่งวันและเพียงจำการแมปเก่าต่อไป แม้ว่าจะเป็นเรื่องปกติที่แคชจะมี "ขอบเขตล่าง" ว่าต้องใช้เวลานานเท่าใด แต่โดยทั่วไปแล้วจะมีประมาณ "5 นาที" ไม่ใช่ "24 ชั่วโมง" ซึ่งหมายความว่าเว็บไซต์ที่ย้ายที่อยู่ IP จะต้องมีอยู่จริงในที่อยู่ IP ที่แตกต่างกันสองแห่งในช่วงระยะเวลาดังกล่าว

วิธีแก้ปัญหาสำหรับผู้ให้บริการเว็บไซต์คือให้ส่งต่อ "พร็อกซี" วิ่งบนที่อยู่ IP เก่าผ่านการรับส่งข้อมูลไปยังที่อยู่ IP ใหม่สองสามวันเพื่อให้เวลาในการจัดการกับความเป็นจริงที่น่าเศร้าของการแคชมากเกินไปอย่างน่างงงวย

ไม่ว่าจะด้วยวิธีใดปัญหานี้เกิดขึ้นกับคุณ แต่มีเหตุผลที่ไซต์มืออาชีพขนาดใหญ่ไม่ขอให้คุณทำเช่นนี้ - พวกเขาแก้ไขปัญหาด้วยตัวเอง


0

ระบบของคุณเก็บที่อยู่ IP ของเว็บไซต์ที่มีชื่อ ... เมื่อคุณทำ ipconfig / flushdns ระบบของคุณจะล้างแคชของชื่อไปยังรายการ ip และโหลดซ้ำจากเซิร์ฟเวอร์ DNS ที่เชื่อมต่อ


0

การล้าง DNS มีความสำคัญเมื่อเราทำการโอนย้ายแอปพลิเคชันของเราจากเซิร์ฟเวอร์เก่าไปยังเซิร์ฟเวอร์ใหม่ เซิร์ฟเวอร์ / แอปพลิเคชันจะมีการเชื่อมโยงซึ่งชี้ไปที่ VIP / Wide IP เราประสบปัญหาบางอย่างที่การเปลี่ยนแปลงเกิดขึ้นโดยทีมงานเครือข่ายนั่นคือพวกเขาเปลี่ยน Wide IP จากด้านข้าง แต่ไม่ได้ทำการล้าง DNS เมื่อทีมแอปพลิเคชันกด DNS เพื่อตรวจสอบการรับส่งข้อมูลจะยังคงถูกส่งไปยังเซิร์ฟเวอร์เก่าเพราะแคชในแคชในเครื่องเดียวกัน การล้าง DNS สามารถทำได้จากเซิร์ฟเวอร์ใหม่และสามารถตรวจสอบได้โดยใช้คำสั่ง NSLOOKUP ในพร้อมท์คำสั่งพร้อมไวยากรณ์ดังนี้ด้านล่าง - ไวยากรณ์ - NSLOOKUP

นี่จะให้ที่อยู่ IP ที่ชี้ DNS ปัจจุบันให้คุณ


สวัสดีและยินดีต้อนรับสู่ SU ขอบคุณสำหรับคำตอบ. อย่างไรก็ตามคุณกำลังตอบคำถามที่ค่อนข้างเก่าซึ่งมี 4 คำตอบอยู่แล้ว เพื่อเพิ่มมูลค่าให้กับคำตอบของคุณฉันขอแนะนำให้แก้ไขโพสต์ของคุณและทำอย่างละเอียดด้วยตัวอย่าง (เช่นใน nslookup)
Edward
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.