วิธีแก้ DNS Record ไม่อัปเดต บน Windows Server 2022

 ปัญหา DNS Record ไม่อัปเดต (DNS Record Not Updating) เป็นปัญหาที่พบบ่อยใน Windows Server 2022 โดยเฉพาะในระบบ Active Directory, DHCP และองค์กรที่มีการเปลี่ยนแปลง IP Address ของเซิร์ฟเวอร์หรือเครื่องลูกข่ายอยู่เป็นประจำ

อาการที่พบคือ DNS Record ยังคงแสดงค่าเดิม แม้ว่าจะมีการเปลี่ยน IP Address หรือเปลี่ยนค่า DNS ไปแล้ว ส่งผลให้ผู้ใช้งานเชื่อมต่อไปยังเครื่องผิดเครื่อง เปิดเว็บไซต์ไม่ได้ หรือ Login เข้า Domain ไม่ได้

บทความนี้จะอธิบายสาเหตุ วิธีตรวจสอบ และวิธีแก้ไข DNS Record ไม่อัปเดตแบบละเอียดสำหรับผู้ดูแลระบบ Windows Server 2022

อาการของ DNS Record ไม่อัปเดต

ตัวอย่างปัญหา

เดิม

web01.company.local
=
192.168.1.50

เปลี่ยน IP ใหม่เป็น

192.168.1.100

แต่ DNS ยังคงตอบกลับ

192.168.1.50

ผลลัพธ์คือ

  • ผู้ใช้งานเข้าเว็บไซต์ไม่ได้

  • Application เชื่อมต่อผิดปลายทาง

  • Active Directory มีปัญหา

  • Login Domain ช้า

  • Remote Desktop ไม่ได้

สาเหตุที่พบบ่อย

① DNS Cache ยังเก็บข้อมูลเก่า

ทั้ง Client และ DNS Server จะเก็บข้อมูลไว้ใน Cache

แม้ DNS Record ถูกแก้ไขแล้ว

Client อาจยังใช้ข้อมูลเดิม

② Dynamic DNS Update ถูกปิด

DNS Zone ไม่อนุญาตให้เครื่อง Client อัปเดตข้อมูล

③ DHCP ไม่อัปเดต DNS

DHCP แจก IP ใหม่

แต่ไม่ได้ส่งข้อมูลไปยัง DNS

④ DNS Replication ยังไม่เสร็จ

กรณีมี DNS หลายเครื่อง

ข้อมูลอาจยัง Sync ไม่ครบ

⑤ DNS Record ซ้ำ

มี Record เก่าค้างอยู่ใน Zone

⑥ TTL สูงเกินไป

Client เก็บข้อมูลไว้นาน

แม้ DNS Server จะอัปเดตแล้ว

ขั้นตอนตรวจสอบปัญหา

ตรวจสอบ DNS ปัจจุบัน

ใช้

nslookup web01.company.local

ผลลัพธ์

192.168.1.50

หากไม่ตรงกับ IP จริง

แสดงว่ามีปัญหา

ตรวจสอบ IP จริงของเครื่อง

บน Server

ipconfig

ตัวอย่าง

192.168.1.100

หากไม่ตรงกับ DNS Record

ต้องดำเนินการแก้ไข

วิธีล้าง DNS Cache บน Client

เปิด Command Prompt

ipconfig /flushdns

ผลลัพธ์

Successfully flushed the DNS Resolver Cache

จากนั้นทดสอบใหม่

nslookup web01.company.local

วิธีล้าง DNS Cache บน DNS Server

เปิด PowerShell

Clear-DnsServerCache -Force

ตรวจสอบอีกครั้ง

nslookup web01.company.local

ตรวจสอบ DNS Record ภายใน Zone

เปิด DNS Manager

ไปที่

Forward Lookup Zones

company.local

ตรวจสอบว่า Record ถูกต้องหรือไม่

หรือใช้ PowerShell

Get-DnsServerResourceRecord `
-ZoneName "company.local"

แก้ไข DNS Record ด้วยตนเอง

หากพบข้อมูลผิด

คลิกขวา

A Record

Properties

แก้ไข IP Address

จากนั้นกด OK

บังคับลงทะเบียน DNS ใหม่

บนเครื่องที่มีปัญหา

ใช้คำสั่ง

ipconfig /registerdns

ระบบจะส่งข้อมูลใหม่ไปยัง DNS Server

ตรวจสอบ Event Viewer

ว่าการลงทะเบียนสำเร็จหรือไม่

Restart Netlogon

กรณี Domain Controller

ใช้

net stop netlogon
net start netlogon

Windows จะสร้าง DNS Records ใหม่อัตโนมัติ

โดยเฉพาะ SRV Records

ตรวจสอบ Dynamic Update

เปิด DNS Manager

คลิกขวา Zone

Properties

General

Dynamic Updates

แนะนำ

Secure Only

สำหรับ Domain Environment

หรือ

Nonsecure and Secure

สำหรับ Lab Environment

ตรวจสอบ DHCP Integration

เปิด DHCP Manager

คลิกขวา

IPv4

Properties

DNS

ตรวจสอบว่าเปิด

Enable DNS Dynamic Updates

หรือไม่

หากปิดอยู่

DNS จะไม่อัปเดตอัตโนมัติ

ตรวจสอบ Replication

กรณีมี Domain Controller หลายเครื่อง

ใช้

repadmin /replsummary

ผลลัพธ์ควรเป็น

0 Failures

หากมี Error

DNS อาจยัง Sync ไม่ครบ

ตรวจสอบ TTL

ดู TTL ของ Record

Get-DnsServerResourceRecord `
-ZoneName "company.local"

ตัวอย่าง

TTL
01:00:00

หมายถึง

1 ชั่วโมง

หากมีการเปลี่ยน IP บ่อย

แนะนำ

00:05:00

หรือ

00:10:00

ตรวจสอบ DNS Aging & Scavenging

DNS อาจเก็บข้อมูลเก่าไว้

เปิด DNS Manager

Zone Properties

Aging

ตรวจสอบค่า

  • No Refresh Interval

  • Refresh Interval

หากเปิดใช้งาน

Windows จะลบ Record เก่าอัตโนมัติ

วิธีลบ Record เก่า

เปิด DNS Manager

เลือก Record ที่ไม่ใช้งาน

Delete

จากนั้น

ipconfig /registerdns

เพื่อสร้างใหม่

ปัญหาที่พบบ่อย

เปลี่ยน IP แล้ว DNS ไม่เปลี่ยน

ใช้

ipconfig /registerdns

และล้าง Cache

DHCP แจก IP ใหม่ แต่ DNS ยังเก่า

ตรวจสอบ DHCP DNS Update Settings

Domain Controller หายจาก DNS

ใช้

net stop netlogon
net start netlogon

Client ยังเห็นค่าเดิม

ใช้

ipconfig /flushdns

แล้วเปิด Command Prompt ใหม่

แนวทางแก้ปัญหาแบบมืออาชีพ

ลำดับที่แนะนำ

① ตรวจสอบ IP จริง

ipconfig

② ตรวจสอบ DNS

nslookup

③ ล้าง Cache

ipconfig /flushdns

④ Register DNS

ipconfig /registerdns

⑤ ตรวจสอบ Dynamic Update

⑥ ตรวจสอบ DHCP

⑦ ตรวจสอบ Replication

กระบวนการนี้สามารถแก้ปัญหาได้เกือบทุกกรณี

Best Practices

  • ใช้ Dynamic DNS Update

  • เปิด DHCP DNS Integration

  • ใช้ Secure Updates

  • ตั้ง TTL ให้เหมาะสม

  • เปิด Aging & Scavenging

  • ตรวจสอบ DNS Replication

  • สำรอง DNS Zone เป็นประจำ

จากประสบการณ์ของทีมงาน comsiam ปัญหา DNS Record ไม่อัปเดตส่วนใหญ่มักเกิดจาก DNS Cache และ DHCP ไม่ได้ส่งข้อมูลไปยัง DNS Server ทำให้ผู้ดูแลระบบเข้าใจผิดว่า DNS Server มีปัญหา ทั้งที่จริงแล้วข้อมูลเก่ายังค้างอยู่ในระบบ

สำหรับองค์กรที่มีเครื่องจำนวนมาก comsiam แนะนำให้ใช้ Dynamic DNS ร่วมกับ DHCP Integration และเปิด Aging & Scavenging เพื่อให้ DNS Database สะอาดและลดปัญหา Record เก่าค้างในระบบ

สรุป

ปัญหา DNS Record ไม่อัปเดตบน Windows Server 2022 สามารถเกิดได้จาก DNS Cache, Dynamic Update, DHCP, Replication หรือ TTL ที่ไม่เหมาะสม การตรวจสอบอย่างเป็นขั้นตอนและใช้เครื่องมือที่ถูกต้องจะช่วยให้ผู้ดูแลระบบแก้ปัญหาได้รวดเร็ว ลด Downtime และทำให้ระบบ DNS มีความเสถียรในระยะยาว

Popular posts from this blog

Windows Server 2022 ยังน่าใช้ในปีนี้หรือไม่? คำตอบสำหรับคนกำลังวางระบบใหม่

สเปกเครื่องสำหรับติดตั้ง Windows Server 2022 เลือกอย่างไรให้คุ้มและใช้งานได้ยาว

Windows Server 2022 คืออะไร? คู่มือสำหรับมือใหม่