เทคโนโลยีโดย milo อ่าน 7 นาทีเรียบเรียงโดยมี AI ช่วย

คู่มือฉุกเฉิน: วิธีล้าง DNS Cache แก้ปัญหาเว็บเข้าไม่ได้ทุก OS

เคยไหมที่เพิ่งย้ายเว็บไปเซิร์ฟเวอร์ใหม่ แต่หน้าจอกลับแสดงผลของเดิมหรือเข้าไม่ได้สักที ปัญหานี้อาจมาจาก DNS Cache ค้างอยู่ในเครื่องของคุณ มาดูวิธีล้าง DNS เพื่อแก้ปัญหานี้กัน

สารบัญ

คุณเพิ่งอัปเดตเว็บไซต์ ย้ายโฮสติ้งไปเซิร์ฟเวอร์ใหม่ หรือเปลี่ยนโดเมนเป็นเจ้าใหม่ แต่เมื่อเปิดเว็บดูกลับพบว่าหน้าจอยังค้างอยู่ที่ของเดิม หรือแย่กว่านั้นคือขึ้นข้อความ "This site can't be reached" ทั้งที่เพื่อนคนอื่นเปิดเข้าได้ปกติ ปัญหานี้ไม่ใช่อาการของอินเทอร์เน็ตที่พัง แต่เป็นปัญหาจากระบบแคชในเครื่องของคุณเอง บทความนี้จะพาคุณลงลึกเรื่อง DNS Cache ล้าง DNS เว็บเข้าไม่ได้ พร้อมแนวทางแก้ไขที่นำไปใช้ได้จริงทันที

DNS Cache คืออะไร และทำงานอย่างไร?

DNS (Domain Name System) ทำหน้าที่เหมือนสมุดโทรศัพท์ของอินเทอร์เน็ต คอยแปลงชื่อโดเมนที่มนุษย์จำง่าย (เช่น example.com) ให้เป็นหมายเลข IP Address ที่คอมพิวเตอร์ใช้สื่อสารกัน

เพื่อให้การท่องเว็บรวดเร็วขึ้น ระบบปฏิบัติการ (OS) และเบราว์เซอร์ของคุณจะมีการจดจำ IP Address ที่เพิ่งค้นหาไปนั้นเก็บไว้ชั่วคราว เรียกว่า DNS Cache ซึ่งมีการทำงานดังนี้:

  • การบันทึก: เมื่อคุณเข้าเว็บครั้งแรก OS จะไปข้า DNS Server เพื่อถาม IP แล้วนำ IP นั้นมาเก็บไว้ในหน่วยความจำ
  • การนำกลับมาใช้: เมื่อคุณเข้าเว็บเดิมในครั้งต่อไป OS จะดึง IP จากแคชที่เก็บไว้มาใช้ทันที โดยไม่ส่งคำขอไปยัง DNS Server อีก ทำให้เว็บโหลดเร็วขึ้น

ปัญหาเกิดขึ้นเมื่อ IP Address ของเว็บไซต์มีการเปลี่ยนแปลง (เช่น การย้ายเซิร์ฟเวอร์) แต่ OS หรือเบราว์เซอร์ยังคงดึง IP เดิมจากแคชมาใช้ ผลก็คือคุณกำลังเชื่อมต่อไปยังเซิร์ฟเวอร์เก่าที่อาจปิดตัวไปแล้ว ส่งผลให้เกิดปัญหา DNS Cache ล้าง DNS เว็บเข้าไม่ได้ตามมา

อาการที่บ่งบอกว่าถึงเวลาต้องล้าง DNS Cache

คุณไม่จำเป็นต้องล้าง DNS Cache ทุกวัน แต่ควรทำเมื่อเริ่มพบอาการเหล่านี้:

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

วิธีล้าง DNS Cache บนระบบปฏิบัติการต่าง ๆ

หากคุณพบอาการดังกล่าว ขั้นตอนแรกคือการล้าง DNS Cache ในเครื่องของคุณ โดยสามารถทำได้ดังนี้

สำหรับ Windows (Windows 10, 11)

  1. กดปุ่ม Windows พิมพ์คำว่า cmd
  2. คลิกขวาที่ Command Prompt แล้วเลือก Run as administrator
  3. ในหน้าต่างสีดำ พิมพ์คำสั่งต่อไปนี้แล้วกด Enter:
ipconfig /flushdns
  1. ระบบจะแจ้งว่า "Successfully flushed the DNS Resolver Cache" หมายความว่าล้างสำเร็จแล้ว

สำหรับ macOS

การล้าง DNS Cache บน Mac จะต้องใช้ Terminal และคำสั่งอาจแตกต่างกันเล็กน้อยตามเวอร์ชันของ macOS

  1. เปิดแอปพลิเคชัน Terminal (กด Command + Space พิมพ์ Terminal แล้วกด Enter)
  2. พิมพ์คำสั่งด้านล่างนี้ (สำหรับ macOS Catalina ขึ้นไป) แล้วกด Enter:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  1. ระบบจะขอให้คุณใส่รหัสผ่านของเครื่อง (Password จะไม่แสดงตัวอักษรขณะพิมพ์) ใส่รหัสผ่านแล้วกด Enter เป็นอันเสร็จสิ้น

สำหรับ Linux

สำหรับ Linux จะขึ้นอยู่กับบริการจัดการ DNS ที่ติดตั้งอยู่ โดยทั่วไปมักจะเป็น systemd-resolved หรือ nscd

หากใช้ systemd-resolved (Ubuntu, Debian รุ่นใหม่):

  1. เปิด Terminal
  2. พิมพ์คำสั่ง:
sudo systemd-resolve --flush-caches

(หรือใช้คำสั่ง sudo resolvectl flush-caches สำหรับเวอร์ชันใหม่กว่า)

หากใช้ nscd:

  1. เปิด Terminal
  2. พิมพ์คำสั่ง:
sudo systemctl restart nscd

วิธีล้าง DNS Cache ในเบราว์เซอร์

บางครั้งการล้าง DNS Cache ใน OS อย่างเดียวอาจไม่พอ เพราะเบราว์เซอร์อย่าง Chrome หรือ Firefox มี DNS Cache ของตัวเองแยกต่างหาก (เรียกว่า DNS over HTTPS หรือ Internal DNS Cache)

Google Chrome

  1. เปิด Chrome แล้วพิมพ์ที่ Address Bar: chrome://net-internals/#dns
  2. กดปุ่ม Clear host cache
  3. จากนั้นเปลี่ยนไปที่แท็บ Sockets โดยพิมพ์ chrome://net-internals/#sockets
  4. กดปุ่ม Flush socket pools
  5. รีสตาร์ทเบราว์เซอร์ Chrome

Mozilla Firefox

  1. เปิด Firefox พิมพ์ที่ Address Bar: about:networking#dns
  2. กดปุ่ม Clear DNS Cache
  3. รีสตาร์ทเบราว์เซอร์ Firefox

กรณีศึกษา: เมื่อย้ายเว็บไปเซิร์ฟเวอร์ใหม่แล้วเห็นของเก่า แก้ยังไง?

สมมติว่าคุณเป็นนักพัฒนาเว็บไซต์ คุณเพิ่งย้ายเว็บลูกค้าจาก Host A ไปยัง Host B เพื่อรองรับทราฟฟิกที่เพิ่มขึ้น คุณได้ทำการเปลี่ยน Nameserver หรือ A Record ที่ผู้ให้บริการโดเมนเรียบร้อยแล้ว

เมื่อทดสอบเปิดเว็บ คุณพบว่าหน้าเว็บยังคงโหลดเนื้อหาจาก Host A หรือขึ้น Error 502 Bad Gateway เพราะ Host A อาจถูกปิดไปแล้ว แต่เมื่อถามเพื่อนร่วมงานให้เปิดดู เพื่อนกลับเห็นเว็บจาก Host B ทำงานปกติ

สาเหตุ: คุณเคยเข้าเว็บนี้บ่อยครั้งบนเครื่องของคุณ ทำให้ OS และเบราว์เซอร์จำ IP ของ Host A ไว้แน่นหนา เพื่อความเร็วในการโหลด แม้ค่า DNS ระดับโลกจะอัปเดตแล้ว แต่เครื่องของคุณยังขืนดึงเลข IP เก่ามาใช้

วิธีแก้ปัญหา:

  1. ล้าง DNS Cache ในเครื่อง: ทำตามขั้นตอนสำหรับ OS ของคุณ (Windows/Mac/Linux) ตามที่ได้อธิบายไว้ข้างต้น
  2. ล้าง DNS Cache ในเบราว์เซอร์: หากล้างใน OS แล้วยังไม่ได้ผล ให้เข้าไปล้างใน Chrome หรือ Firefox ทันที
  3. ใช้โหมด Incognito หรือ Private Window: เปิดเว็บผ่านโหมดท่องเว็บส่วนตัว เพื่อทดสอบว่าเว็บทำงานปกติหรือไม่ (โหมดนี้ไม่ใช้แคชเดิม)
  4. เช็คค่า DNS ผ่านเครื่องมือ: หากยังไม่ได้ผล ให้เข้าเว็บ dnschecker.org เพื่อตรวจสอบว่าค่า DNS ที่คุณตั้งไว้ได้ประกาศไปทั่วโลกแล้วหรือยัง (Propagation) หากทุกประเทศเห็น IP ใหม่แล้ว แสดงว่าปัญหาแน่นอนว่าอยู่ที่เครื่องของคุณ ลองรีสตาร์ทเราเตอร์หรือเปลี่ยน DNS Server ในเครื่องเป็น 1.1.1.1 (Cloudflare) หรือ 8.8.8.8 (Google) เพื่อบังคับให้ใช้ค่าใหม่

สรุป

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

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

เนื้อหาที่จัดทำโดยมี AI ช่วยจะมีป้ายกำกับ "เรียบเรียงโดยมี AI ช่วย" เพื่อให้คุณทราบอย่างชัดเจน เราถือว่าความโปร่งใสเรื่องการใช้ AI เป็นสิ่งสำคัญต่อความไว้วางใจของผู้อ่าน

พบข้อมูลที่ไม่ถูกต้องหรือคลาดเคลื่อน?เข้าสู่ระบบเพื่อทักท้วง
บทความนี้เป็นอย่างไร?

ยังไม่มีความคิดเห็น — มาเป็นคนแรกกันเถอะ!