ขณะใช้งาน Linux คุณอาจพบข้อผิดพลาด temporary failure in name resolution เมื่อพยายามเข้าถึงเว็บไซต์ อัปเดตแพ็กเกจ หรือรันงานที่ต้องใช้การเชื่อมต่ออินเทอร์เน็ต ข้อผิดพลาดนี้หมายความว่าระบบของคุณไม่สามารถแปลงชื่อโดเมนเป็น IP address ได้ ทำให้การดำเนินการทางเครือข่ายล้มเหลว
ปัญหานี้มักเกิดจากการเชื่อมต่ออินเทอร์เน็ตขัดข้อง หรือการตั้งค่า DNS ไม่ถูกต้อง การแก้ไขข้อผิดพลาดนี้ทำได้ไม่ยาก คู่มือนี้จะอธิบายทุกสิ่งที่คุณต้องรู้เกี่ยวกับการแก้ปัญหานี้ใน Linux แต่ละ distribution รวมถึงวิธีแก้ไขเฉพาะสำหรับ Ubuntu 22.04 และ 24.04
Temporary Failure in Name Resolution หมายความว่าอะไร?
ข้อผิดพลาด temporary failure in name resolution ทำให้ระบบ Linux ของคุณไม่สามารถเชื่อมต่ออินเทอร์เน็ตได้ตามปกติ เมื่อเกิดปัญหานี้ คุณจะเข้าถึงเว็บไซต์หรือใช้แอปพลิเคชันที่ต้องใช้การเชื่อมต่ออินเทอร์เน็ตไม่ได้
ข้อผิดพลาดนี้เป็นสัญญาณทั่วไปที่บอกว่า DNS ค้นหาไม่สำเร็จ ไม่ว่าจะเกิดจากความผิดพลาดในเครื่อง การหมดเวลาของเซิร์ฟเวอร์ต้นทาง หรือปัญหาการตรวจสอบความถูกต้อง
คุณมักจะเห็นข้อผิดพลาดนี้เมื่อ ping เว็บไซต์:

ping google.com
ping: google.com: Temporary failure in name resolution
วิธีแก้ไข Temporary Failure in Name Resolution
มีหลายวิธีในการแก้ปัญหานี้ ขึ้นอยู่กับสาเหตุที่แท้จริง มาดูวิธีแก้ไขหลักๆ กัน
วิธีที่ 1: ตรวจสอบการเชื่อมต่ออินเทอร์เน็ต
ตรวจสอบเราเตอร์และอุปกรณ์เครือข่ายของคุณให้แน่ใจว่าทุกอย่างตั้งค่าถูกต้อง จากนั้นลองเปิดแอปพลิเคชันอื่นเพื่อยืนยันว่าสามารถเชื่อมต่ออินเทอร์เน็ตผ่านแอปเหล่านั้นได้
คุณสามารถทดสอบการเชื่อมต่อเบื้องต้นได้โดย ping ไปยัง IP address โดยตรง:
ping -c 4 8.8.8.8
คำสั่งนี้จะส่ง packet สี่ชุดไปยัง DNS server สาธารณะของ Google หากได้รับการตอบกลับ แสดงว่าการเชื่อมต่ออินเทอร์เน็ตของคุณทำงานปกติ
หากเห็นข้อความ "Request timed out" หรือ "Network unreachable" แสดงว่าคุณมีปัญหาการเชื่อมต่อทั่วไปที่ไม่เกี่ยวข้องกับ DNS

หากแอปพลิเคชันสามารถเชื่อมต่ออินเทอร์เน็ตได้ตามปกติ ให้ดำเนินการตามวิธีถัดไป
วิธีที่ 2: ไฟล์ resolv.conf ตั้งค่าไม่ถูกต้อง
ค่า /etc/resolv.conf ไฟล์นี้เก็บรายชื่อ DNS server ที่ระบบของคุณใช้งาน หากไฟล์นี้มี IP address ที่ผิด คุณจะเชื่อมต่อเว็บไซต์ไม่ได้
ใน Ubuntu หลายระบบ ไฟล์นี้เป็น link ที่ชี้ไปยังไฟล์ dynamic ที่จัดการโดย systemd-resolved และมักมีคำเตือนว่า "Do not edit" หากคุณแก้ไขไฟล์นี้โดยตรง การเปลี่ยนแปลงอาจอยู่ได้เพียงไม่กี่นาที เพราะระบบจะเขียนทับเมื่ออัปเดตการตั้งค่าเครือข่ายหรือรีสตาร์ท
ก่อนตั้งค่า DNS ตรวจสอบให้แน่ใจว่า user ของคุณมีสิทธิ์ผู้ดูแลระบบ ดูวิธี เพิ่ม user ใน sudoers หากจำเป็น
ตรวจสอบการตั้งค่า DNS ปัจจุบัน
ตรวจสอบการตั้งค่า DNS ของคุณโดยไม่ต้องเปลี่ยนแปลงก่อน:
cat /etc/resolv.conf
หากไม่เห็น nameserver ที่ถูกต้อง แสดงว่าคุณพบสาเหตุของปัญหาแล้ว
ทดสอบชั่วคราว
คุณสามารถเพิ่มเซิร์ฟเวอร์ของ Google เพื่อทดสอบได้อย่างรวดเร็ว
nameserver 8.8.8.8
nameserver 8.8.4.4
หรืออีกทางเลือกหนึ่ง คุณสามารถใช้เซิร์ฟเวอร์ DNS ของ Cloudflare ได้เช่นกัน:
nameserver 1.1.1.1
nameserver 1.0.0.1
นี่คือตารางเปรียบเทียบเซิร์ฟเวอร์ DNS สาธารณะยอดนิยม:

| ผู้ให้บริการ DNS | DNS หลัก | DNS รอง | คุณสมบัติหลัก |
| Google DNS | 8.8.8.8 | 8.8.4.4 | ความพร้อมใช้งานสูง ครอบคลุมทั่วโลก |
| Cloudflare | 1.1.1.1 | 1.0.0.1 | เน้นความเป็นส่วนตัว ไม่บันทึก IP |
| Quad9 | 9.9.9.9 | 149.112.112.112 | บล็อกโดเมนที่เป็นอันตรายที่รู้จัก |
| OpenDNS | 208.67.222.222 | 208.67.220.220 | การป้องกันฟิชชิ่ง และการกรองเนื้อหา |
แต่การเปลี่ยนแปลงนี้ไม่ถาวร ระบบจะล้างค่าเหล่านี้ทิ้ง หากต้องการแก้ไขอย่างถาวรบน Ubuntu คุณต้องตั้งค่า systemd-resolved หรือ Netplan โดยเราได้อธิบายขั้นตอนเหล่านี้ไว้ในหัวข้อเฉพาะด้านล่าง
ตรวจสอบสถานะของ Service Systemd-Resolved
หากเนมเซิร์ฟเวอร์ของคุณดูถูกต้องแล้ว แต่การแปลงชื่อโดเมนยังล้มเหลวอยู่ ให้ตรวจสอบที่ systemd-resolved บริการ บริการนี้จัดการการค้นหา DNS ในเครื่องบน Linux สมัยใหม่ส่วนใหญ่ ใช้คำสั่งนี้เพื่อตรวจสอบว่ากำลังทำงานอยู่หรือไม่: sudo systemctl status systemd-resolved
หากผลลัพธ์แสดงว่าเซอร์วิสไม่ได้ทำงาน ให้เริ่มต้นใหม่ได้เลย
sudo systemctl start systemd-resolved
ขั้นตอนนี้เป็นสิ่งที่ผู้ใช้ Ubuntu ต้องรู้ เพราะการหยุดชะงักของบริการมักทำให้เกิดปัญหา name resolution
แนวทางที่ 3: การตั้งค่า Firewall
ไฟร์วอลล์ช่วยปกป้องระบบ Linux ของคุณจากมัลแวร์และภัยคุกคามด้านความปลอดภัย อย่างไรก็ตาม การตั้งค่าไฟร์วอลล์ที่ไม่ถูกต้องอาจบล็อกคำขอ DNS และทำให้เกิดข้อผิดพลาดในการแปลงชื่อโดเมน
วิธีหนึ่งในการวินิจฉัยปัญหาคือปิดไฟร์วอลล์และซอฟต์แวร์ความปลอดภัยชั่วคราว เพื่อตรวจสอบว่าเป็นสาเหตุของปัญหาหรือไม่ หากการปิดไฟร์วอลล์แก้ปัญหาได้ คุณต้องตั้งค่าไฟร์วอลล์ใหม่ให้ถูกต้อง
ตั้งค่าไฟร์วอลล์ UFW
ระบบปฏิบัติการส่วนใหญ่ทั้ง Debian และ Ubuntu ใช้ ไฟร์วอลล์ UFW. คุณต้องอนุญาตทราฟฟิก DNS บนพอร์ต 53 (ทั้ง UDP และ TCP):
sudo ufw allow 53/udp
sudo ufw allow 53/tcp
DNS ใช้ UDP สำหรับ query ทั่วไป และ TCP สำหรับการถ่ายโอนข้อมูลขนาดใหญ่
หลังจากเปิดพอร์ตเหล่านี้แล้ว ให้โหลด UFW ใหม่เพื่อให้การเปลี่ยนแปลงมีผล:

sudo ufw reload
ตั้งค่า Firewalld
สำหรับระบบที่ใช้ CentOS และ Red Hat ที่ใช้ firewalld ให้เปิดพอร์ตที่จำเป็น:
sudo firewall-cmd --add-port=53/udp --permanent
sudo firewall-cmd --add-port=53/tcp --permanent
โหลด firewall ใหม่เพื่อให้การเปลี่ยนแปลงมีผล:
sudo firewall-cmd --reload
วิธีแก้ไขที่ 4: ล้าง DNS Cache
DNS cache จะเก็บ IP address ไว้ในเครื่องเพื่อให้การค้นหาครั้งถัดไปเร็วขึ้น อย่างไรก็ตาม ข้อมูลใน DNS cache ที่ล้าสมัยหรือเสียหายอาจทำให้คุณเข้าถึงเว็บไซต์ที่เปลี่ยน domain name หรือผู้ให้บริการ hosting ไม่ได้ ซึ่งเป็นสาเหตุของ name resolution error ชั่วคราว
คุณเท่านั้น ล้าง DNS cache เมื่อต้องการบังคับให้ระบบดึงข้อมูลใหม่จากเซิร์ฟเวอร์ ใช้ขั้นตอนนี้เมื่อพบ resolution error

ตรวจสอบ DNS Service ของคุณ
Service ที่ติดตั้งอาจแตกต่างกันไป ตรวจสอบว่า service ใดกำลังทำงานอยู่ก่อน เพื่อหลีกเลี่ยงข้อผิดพลาด "unit not found":
sudo systemctl is-active nscd
sudo systemctl is-active dnsmasq
ล้าง nscd
If nscd ทำงานอยู่ บูตใหม่:
sudo systemctl restart nscd.service
ล้าง dnsmasq
If dnsmasq ทำงานอยู่ บูตใหม่:
sudo systemctl restart dnsmasq.service
ล้าง Cache บน Ubuntu (systemd-resolved)
สำหรับระบบที่ใช้ systemd-resolved:
sudo systemctl restart systemd-resolved.service
หรือใช้คำสั่ง resolvectl:
sudo resolvectl flush-caches
ทำความเข้าใจกับ Name Resolution
เมื่อคุณพิมพ์ที่อยู่เว็บไซต์อย่าง cloudzy.com คอมพิวเตอร์จะต้องแปลง domain ที่มนุษย์อ่านได้นี้เป็น IP address (เช่น 172.66.40.212) เพื่อระบุตำแหน่งของเว็บไซต์บนอินเทอร์เน็ต กระบวนการแปลงนี้เรียกว่า name resolution และเซิร์ฟเวอร์ DNS เป็นตัวจัดการ
ข้อผิดพลาด temporary failure in name resolution เกิดขึ้นเมื่อระบบ Linux ของคุณไม่สามารถติดต่อเซิร์ฟเวอร์ DNS เพื่อดึง IP address ของเว็บไซต์ได้ คำว่า "temporary" บ่งบอกว่านี่ไม่ใช่ความล้มเหลวถาวร ส่วนใหญ่มักเกิดจากปัญหาการกำหนดค่าหรือการเชื่อมต่อที่แก้ไขได้
เซิร์ฟเวอร์ DNS แปลง domain name เป็น IP address ที่คอมพิวเตอร์ใช้ในการสื่อสาร Google Public DNS รองรับ กว่าหนึ่งล้านล้าน คำขอต่อวัน ซึ่งสะท้อนให้เห็นถึงขนาดของบริการอินเทอร์เน็ตที่สำคัญนี้
ในทำนองเดียวกัน resolver 1.1.1.1 ของ Cloudflare ประมวลผล เกือบ 2 ล้านล้านคำขอต่อวันปริมาณนี้พิสูจน์ให้เห็นว่า DNS เป็นรากฐานสำคัญของอินเทอร์เน็ต
อะไรคือสาเหตุของ Temporary Failure in Name Resolution?
การระบุสาเหตุที่แท้จริงคือก้าวแรกในการแก้ไขข้อผิดพลาด temporary failure in name resolution บน Ubuntu มีหลายปัจจัยที่อาจทำให้เกิดปัญหานี้

ปัญหาการเชื่อมต่ออินเทอร์เน็ต
การเชื่อมต่ออินเทอร์เน็ตที่ช้าหรือขาดหายมักเป็นสาเหตุหลัก ก่อนจะลงลึกเรื่องการแก้ปัญหา ให้ตรวจสอบก่อนว่าอินเทอร์เน็ตของคุณทำงานปกติ
ปัญหาการตั้งค่า DNS
การตั้งค่า DNS ที่ผิดพลาดเป็นหนึ่งในสาเหตุที่พบบ่อยที่สุดของข้อผิดพลาดนี้:
- เซิร์ฟเวอร์ DNS ไม่ตอบสนอง: เซิร์ฟเวอร์ DNS ที่ระบบพยายามเชื่อมต่ออาจไม่พร้อมใช้งาน
- การตั้งค่า DNS resolution ผิดพลาด: กลไก DNS resolution อาจถูกตั้งค่าไม่ถูกต้อง
- แคช DNS ล้าสมัย: รายการแคช DNS ที่เก่าหรือเสียหายอาจทำให้การ resolve ล้มเหลว
ข้อจำกัดของ Firewall
การตั้งค่าไฟร์วอลล์อาจบล็อก request ของ DNS แม้จะตั้งค่าถูกต้องก็ตาม query ของ DNS ใช้ พอร์ต 53หากไฟร์วอลล์บล็อก port นี้ การ resolve ชื่อจะล้มเหลว
Port 53 รองรับทั้งโปรโตคอล UDP และ TCP โดยปกติ DNS จะใช้ UDP Port 53 สำหรับ query ทั่วไปเพราะเร็วกว่า ส่วน TCP Port 53 ใช้สำหรับ zone transfer และ query ขนาดใหญ่ที่เกินขีดจำกัดของ UDP
ปัญหาการตั้งค่าบริการ
บริการ systemd-resolved ซึ่งจัดการ DNS resolution ใน Linux รุ่นใหม่ อาจหยุดทำงาน ถูกปิดใช้งาน หรือตั้งค่าผิดพลาด บริการนี้รับผิดชอบการ resolve DNS ให้กับทุกแอปพลิเคชันในระบบ
Temporary Failure in Name Resolution บน Ubuntu 22.04
Ubuntu 22.04 LTS มีการเปลี่ยนแปลงด้านการจัดการเครือข่ายที่อาจก่อให้เกิดปัญหา DNS resolution โดยเฉพาะหลังการอัปเกรดระบบ ผู้ใช้อาจพบข้อผิดพลาด Ubuntu unable to resolve host และ temporary failure in name resolution บ่อยขึ้นในเวอร์ชันนี้
ปัญหาที่พบบ่อยใน Ubuntu 22.04
ผู้ใช้ที่อัปเกรดจาก Ubuntu 20.04 เป็น 22.04 มักรายงานปัญหา DNS resolution ล้มเหลว ปัญหา temporary failure in name resolution บน Ubuntu 22.04 มักมาจากการตั้งค่า systemd-resolved ที่ผิดพลาดระหว่างกระบวนการอัปเกรด
วิธีแก้ไขเฉพาะสำหรับ Ubuntu 22.04
หากคุณพบปัญหา DNS ต่อเนื่องบน Ubuntu 22.04 ให้ทำตามขั้นตอนเหล่านี้:
ขั้นแรก ตรวจสอบว่า systemd networking services เปิดใช้งานอยู่อย่างถูกต้อง:
sudo systemctl unmask systemd-networkd.service
sudo systemctl unmask systemd-resolved.service
ตรวจสอบสถานะของ systemd-resolved:

sudo systemctl status systemd-resolved.service
หากบริการไม่ทำงาน ให้เริ่มต้นใหม่:
sudo systemctl start systemd-resolved.service
sudo systemctl enable systemd-resolved.service
ตรวจสอบว่า symlink ใน /etc/resolv.conf ชี้ไปยังตำแหน่งที่ถูกต้อง:
ls -l /etc/resolv.conf
การตั้งค่าที่แนะนำจะเชื่อมต่อไปยัง stub resolver:
sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
ทดสอบการแก้ไข
หลังจากทำการเปลี่ยนแปลงเหล่านี้แล้ว ให้ทดสอบการแก้ไขปัญหา DNS:
resolvectl status
คำสั่งนี้แสดงการตั้งค่า DNS ปัจจุบันของคุณ และยืนยันว่า systemd-resolved จัดการ DNS อย่างถูกต้องแล้ว
Ubuntu 24.04 ความล้มเหลวชั่วคราวในการแก้ไขชื่อโดเมน
Ubuntu 24.04 LTS ซึ่งเป็น long-term support รุ่นล่าสุด ใช้ systemd 255 และมีส่วนประกอบการจัดการเครือข่ายที่อัปเดตแล้ว แม้จะเสถียรกว่าเวอร์ชันก่อนหน้า แต่ก็ยังอาจพบปัญหา DNS ได้อยู่
ผู้ดูแลระบบระยะไกลมักประสบข้อผิดพลาด "SSH could not resolve hostname" ซึ่งเกิดขึ้นเมื่อ stub resolver ของระบบที่ 127.0.0.53 ล้มเหลว เนื่องจาก SSH พึ่งพาบริการภายในเครื่องนี้สำหรับการแปลชื่อ การหยุดทำงานของ systemd-resolved กระบวนการนี้จะบล็อกการเชื่อมต่อที่อิงตามโดเมนทั้งหมดทันที
Ubuntu 24.04 DNS การกำหนดค่า
Ubuntu 24.04 ใช้ systemd-resolved เป็นหลักในการจัดการ DNS โดย stub listener ที่ 127.0.0.53 จะรับผิดชอบการสืบค้น DNS ให้กับระบบ
การแก้ไขปัญหา DNS ใน Ubuntu 24.04
หากพบปัญหาการแปลงชื่อโดเมน (name resolution) บน Ubuntu 24.04 ให้ตรวจสอบว่า systemd-resolved กำลังทำงานอยู่:
sudo systemctl status systemd-resolved
ตรวจสอบการตั้งค่า DNS ด้วย resolvectl:
resolvectl status
ส่วนนี้แสดงข้อมูล nameserver และการตั้งค่า DNS สำหรับแต่ละ network interface
การกำหนดค่า Netplan ใน Ubuntu 24.04
Ubuntu 24.04 ใช้ Netplan สำหรับการตั้งค่าเครือข่าย ชื่อไฟล์และการตั้งค่า renderer จะแตกต่างกันขึ้นอยู่กับว่าคุณใช้เวอร์ชัน Server หรือ Desktop
ก่อนอื่น ให้ระบุไฟล์การตั้งค่าของคุณ:
ls /etc/netplan/
แก้ไขไฟล์ที่พบ (โดยทั่วไปคือ 50-cloud-init.yaml or 00-installer-config.yaml):
sudo nano /etc/netplan/YOUR_FILE_NAME.yaml
ตรวจสอบการตั้งค่า DNS ของคุณ หมายเหตุ: เซิร์ฟเวอร์ส่วนใหญ่ใช้ networkd, ส่วนการติดตั้งแบบ Desktop จะใช้ NetworkManagerตรวจสอบชื่อเครือข่ายของคุณ (เช่น eth0 or ens3) โดยใช้ ip addr ก่อนแก้ไข
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: yes
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
ใช้การกำหนดค่า:

sudo netplan apply
ปัญหา Stub Listener
บางแอปพลิเคชันอาจขัดแย้งกับ stub listener ของ systemd-resolved บนพอร์ต 53 หากต้องการปิดใช้งาน stub listener:
sudo mkdir -p /etc/systemd/resolved.conf.d/
สร้างไฟล์การกำหนดค่า:
echo -e "[Resolve]\nDNSStubListener=no" | sudo tee /etc/systemd/resolved.conf.d/noresolved.conf
รีสตาร์ท systemd-resolved:
sudo systemctl restart systemd-resolved.service
เคล็ดลับการแก้ปัญหาเพิ่มเติม
หากข้อผิดพลาดยังคงอยู่ ให้ใช้เครื่องมือเหล่านี้เพื่อระบุสาเหตุ คุณต้องตรวจสอบว่าปัญหาเกิดจากการเชื่อมต่อเครือข่าย ตัว DNS server เอง หรือความขัดแย้งในไฟล์ในเครื่อง
ตรวจสอบการเข้าถึง DNS Server
ทดสอบว่าระบบของคุณเชื่อมต่อถึง DNS server ที่ระบุไว้ในการกำหนดค่าได้หรือไม่ ใช้คำสั่ง ping ตามด้วย IP address ของ nameserver หลัก:
ping -c 4 <your_dns_server_ip>
หากไม่สำเร็จ แสดงว่ามีปัญหาด้านการเชื่อมต่อเครือข่าย
ตรวจสอบไฟล์ /etc/hosts
ไฟล์ /etc/hosts สามารถแทนที่การค้นหา DNS ได้ รายการที่ไม่ถูกต้องในไฟล์นี้อาจทำให้การแปลงชื่อล้มเหลว:
sudo nano /etc/hosts
ตรวจสอบให้แน่ใจว่ามีข้อมูลขั้นต่ำดังนี้:
127.0.0.1 localhost
127.0.0.1 ชื่อโฮสต์ของคุณ
ใช้ dig วินิจฉัยปัญหา DNS
คำสั่ง dig ช่วยวินิจฉัยปัญหา DNS:
dig google.com
คำสั่งนี้แสดงข้อมูล DNS query โดยละเอียด รวมถึง nameserver ที่ตอบกลับและเวลาที่ใช้ในการ query

ตรวจสอบการกำหนดค่า Network Interface
ตรวจสอบว่า network interface ของคุณได้รับการกำหนดค่าอย่างถูกต้อง:
ip addr show
ตรวจสอบให้แน่ใจว่า network interface หลักมี IP address กำหนดไว้แล้ว
ป้องกันปัญหา DNS ในอนาคต
การแก้ไขข้อผิดพลาดในทันทีช่วยคืนการเข้าถึงได้ แต่คุณต้องมีการตั้งค่าที่รองรับความผิดพลาดเพื่อไม่ให้ปัญหากลับมา แนวทางเหล่านี้จะสร้างความซ้ำซ้อนในการกำหนดค่าเครือข่าย ทำให้ระบบรับมือกับการขาดการเชื่อมต่อชั่วคราวได้โดยไม่สูญเสียความสามารถในการแปลงชื่อ
ความเสถียรของเครือข่ายขึ้นอยู่กับคุณภาพฮาร์ดแวร์ ดู Cloudzy ของเรา Linux VPS ทำงานบนโปรเซสเซอร์ AMD Ryzen 9 ความถี่สูงและการเชื่อมต่อ 40 Gbps ความเร็วระดับนี้ช่วยลด latency และ timeout ที่มักเป็นสาเหตุของปัญหาการ resolve ชื่อโดเมน ทำให้แอปพลิเคชันของคุณเข้าถึงได้อยู่เสมอ
ใช้เซิร์ฟเวอร์ DNS ที่เชื่อถือได้
คุณควรตั้งค่า nameserver หลายตัวผ่าน Netplan หรือ systemd-resolved แทนที่จะแก้ไข /etc/resolv.conf โดยตรง เพื่อให้การตั้งค่าคงอยู่หลังจากรีบูต การเพิ่ม IP สำรอง เช่น 1.1.1.1 or 8.8.4.4 จะช่วยสร้าง redundancy ไว้รองรับกรณีที่ provider หลักของคุณล้มเหลว
ติดตามการอัปเดตระบบ
การตั้งค่า DNS อาจเปลี่ยนแปลงได้หลังจากอัปเดตระบบ หลังจากอัปเดต Linux distribution แล้ว ให้ตรวจสอบว่า DNS resolution ยังทำงานได้ถูกต้องหรือไม่
บันทึกการตั้งค่าของคุณ
เก็บบันทึกการตั้งค่า DNS ไว้เสมอ โดยเฉพาะหากคุณใช้เซิร์ฟเวอร์ DNS แบบกำหนดเอง จะช่วยให้แก้ไขปัญหาได้ง่ายขึ้นเมื่อเกิดเหตุขัดข้อง
อย่า flush cache เป็นประจำ
อย่าล้าง DNS cache ตามตารางรายวัน เพราะจะลบข้อมูลที่ยังใช้งานได้ออกไปและทำให้การท่องเว็บช้าลง
ล้าง cache เฉพาะในสองกรณีนี้เท่านั้น :
- คุณเปลี่ยน DNS provider (เช่น เปลี่ยนจาก ISP มาใช้ Google DNS)
- เว็บไซต์ย้ายไปยังเซิร์ฟเวอร์ใหม่แล้วแต่คุณไม่สามารถเข้าถึงได้
สรุป
ข้อผิดพลาด temporary failure in name resolution บนระบบ Linux มักเกิดจากปัญหาการเชื่อมต่ออินเทอร์เน็ต การตั้งค่า DNS ผิดพลาด firewall บล็อกการเข้าถึง หรือ DNS cache เสียหาย การแก้ปัญหาตามขั้นตอนในคู่มือนี้จะช่วยให้คุณระบุและแก้ไขสาเหตุที่แท้จริงได้
ผู้ใช้ Ubuntu 22.04 และ 24.04 ต้องให้ความสำคัญกับการตั้งค่า systemd-resolved เป็นพิเศษ เนื่องจาก service นี้จัดการ DNS query ทั้งหมด การตั้งค่าผิดพลาดเพียงจุดเดียวจะบล็อกการอัปเดต package และการเชื่อมต่อภายนอกทั้งหมด ตรวจสอบให้แน่ใจว่า service ทำงานอยู่และเชื่อมต่อถูกต้อง การตั้งค่า DNS ที่เสถียรช่วยให้ Linux VPS ของคุณดำเนินงานด้านเครือข่ายได้อย่างต่อเนื่อง