ข้ามไปยังเนื้อหาหลัก
ลด 50% ทุกแพลน เวลาจำกัด เริ่มต้นที่ $2.48/mo
12 min left
ความปลอดภัยและเครือข่าย

Temporary Failure in Name Resolution: หมายความว่าอย่างไร และจะแก้ไขอย่างไร?

Rexa Cyrus โดย Rexa Cyrus 12 นาทีในการอ่าน อัปเดตเมื่อ Feb 3, 2026
DNS server troubleshooting guide illustration with warning symbols and blue server on dark background for Linux name resolution errors

ขณะใช้งาน 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 ค้นหาไม่สำเร็จ ไม่ว่าจะเกิดจากความผิดพลาดในเครื่อง การหมดเวลาของเซิร์ฟเวอร์ต้นทาง หรือปัญหาการตรวจสอบความถูกต้อง

มักเห็น error นี้เมื่อพยายาม ping เว็บไซต์

Terminal window showing ping command to google.com resulting in "Temporary failure in name resolution" error message in red text

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

Split terminal comparison showing failed ping to Google.com domain versus successful ping responses to Google's IP address 8.8.8.8

หากแอปพลิเคชันสามารถเชื่อมต่ออินเทอร์เน็ตได้ตามปกติ ให้ดำเนินการตามวิธีถัดไป

วิธีที่ 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

หากไม่เห็น nameservers ที่ถูกต้อง คุณพบปัญหาแล้ว

ทดสอบชั่วคราว

คุณสามารถเพิ่มเซิร์ฟเวอร์ของ Google เพื่อทดสอบได้อย่างรวดเร็ว

nameserver 8.8.8.8

nameserver 8.8.4.4

หรืออีกทางเลือกหนึ่ง คุณสามารถใช้เซิร์ฟเวอร์ DNS ของ Cloudflare ได้เช่นกัน:

Terminal text editor displaying resolv.conf configuration file with Google DNS nameservers 8.8.8.8 and 8.8.4.4 entries for the Ubuntu system 

nameserver 1.1.1.1

nameserver 1.0.0.1

นี่คือตารางเปรียบเทียบเซิร์ฟเวอร์ DNS สาธารณะยอดนิยม:

Comparison chart of four popular DNS providers: Google DNS, Cloudflare, Quad9, and OpenDNS, with their IP addresses and features

ผู้ให้บริการ 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 ใหม่เพื่อให้การเปลี่ยนแปลงมีผล:

Ubuntu system firewall diagram showing UFW configuration allowing DNS traffic through ports 43 and 53 to cloud DNS servers

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

Visual representation of the DNS cache clearing process using the systemd-resolved service restart command, with cached data blocks being refreshed

ตรวจสอบ 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 มีหลายปัจจัยที่อาจทำให้เกิดปัญหานี้

Four-panel diagram showing common DNS error causes: disconnected Ethernet cable, misconfigured DNS server, firewall blocking port 53, corrupted cache

ปัญหาการเชื่อมต่ออินเทอร์เน็ต

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

ปัญหาการตั้งค่า 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:

Ubuntu 22.04 system checklist showing three green checkmarks for systemd-networkd service, systemd-resolved service, and resolv.conf symlink configuration

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]

ใช้การกำหนดค่า:

Ubuntu 24.04 Netplan YAML configuration displaying DNS nameservers setup with network diagram showing VPC DNS server connectionssudo 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

Terminal output of the dig command querying google.com, showing detailed DNS resolution information, including IP addresses and query statistics

ตรวจสอบการกำหนดค่า 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 เฉพาะในสองกรณีนี้เท่านั้น :

  1. คุณเปลี่ยน DNS provider (เช่น เปลี่ยนจาก ISP มาใช้ Google DNS)
  2. เว็บไซต์ย้ายไปยังเซิร์ฟเวอร์ใหม่แล้วแต่คุณไม่สามารถเข้าถึงได้

บทสรุป

ข้อผิดพลาด 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 ของคุณดำเนินงานด้านเครือข่ายได้อย่างต่อเนื่อง

คำถามที่พบบ่อย

ทำไมฉันถึงเห็นข้อผิดพลาด temporary failure in name resolution บน Ubuntu?

ข้อผิดพลาดนี้เกิดขึ้นเมื่อระบบ Linux ไม่สามารถแปลงชื่อโดเมนเป็น IP address ได้ สาเหตุที่พบบ่อย ได้แก่ ปัญหาการเชื่อมต่ออินเทอร์เน็ต การตั้งค่า DNS ไม่ถูกต้อง firewall บล็อก DNS port หรือปัญหากับ service systemd-resolved

จะแก้ไขข้อผิดพลาด ping temporary failure in name resolution ได้อย่างไร?

ขั้นแรก ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตโดย ping ตรงไปยัง IP address จากนั้นตรวจสอบว่าไฟล์ /etc/resolv.conf มี nameserver ที่ถูกต้อง ตรวจสอบว่า firewall อนุญาต traffic บน port 53 และรีสตาร์ท service systemd-resolved หากปัญหายังคงอยู่ให้ flush DNS cache

จะตรวจสอบการตั้งค่า DNS บน Linux ได้อย่างไร?

ดูการตั้งค่า DNS ปัจจุบันได้จากไฟล์ /etc/resolv.conf โดยใช้คำสั่ง cat /etc/resolv.conf สำหรับระบบที่ใช้ systemd-resolved ให้รัน resolvectl status เพื่อดูการตั้งค่า DNS โดยละเอียดของแต่ละ network interface

ควรใช้เซิร์ฟเวอร์ DNS ใดสำหรับ Linux?

เซิร์ฟเวอร์ DNS ยอดนิยมที่เชื่อถือได้ ได้แก่ Gooogle DNS (8.8.8.8 และ 8.8.4.4) และ Cloudflare DNS (1.1.1.1 และ 1.0.0.1) ทั้งสองให้ความเร็วในการ resolve และความพร้อมใช้งานที่ดี นอกจากนี้คุณยังสามารถใช้เซิร์ฟเวอร์ DNS ของ ISP หรือบริการ DNS สาธารณะอื่น ๆ ได้เช่นกัน

ข้อผิดพลาดนี้ส่งผลต่อ Ubuntu 22.04 และ 24.04 แตกต่างกันหรือไม่?

ทั้งสองเวอร์ชันอาจเกิดข้อผิดพลาดนี้ได้ แต่ผู้ใช้ Ubuntu 22.04 มักรายงานปัญหาหลังจากอัปเกรดจาก 20.04 เนื่องจากการเปลี่ยนแปลงการตั้งค่า systemd-resolved ส่วน Ubuntu 24.04 มีเสถียรภาพดีขึ้น แต่บางแอปพลิเคชันอาจต้องกำหนดค่า stub listener เพิ่มเติม

Share

บทความเพิ่มเติมจากบล็อก

อ่านต่อ

Best self-hosted VPN solutions guide: WireGuard, Tailscale, Hiddify compared by use case
ความปลอดภัยและเครือข่าย

โซลูชัน VPN ที่โฮสต์เองที่ดีที่สุด ข้อดีข้อเสีย กรณีการใช้งาน และรายละเอียดเฉพาะทาง

Self-hosted VPN solutions compared by use case: privacy exit node, team mesh, and anti-censorship. WireGuard, Tailscale, Hiddify, and honest trade-offs.

Jonas 16 นาทีในการอ่าน
What is a VPN router: how it works, the four ways to run one, and when a VPS gateway is the better choice.
ความปลอดภัยและเครือข่าย

VPN Router คืออะไร? มันทำงานอย่างไรและเมื่อไหร่ที่คุณต้องใช้

VPN router รัน VPN software บนตัว router เพื่อให้ทุกอุปกรณ์ได้รับ tunnel โดยอัตโนมัติ มันทำงานอย่างไร ควรใช้เมื่อไหร่ และเมื่อไหร่ที่ VPS เหมาะกว่า

Jonas 16 นาทีในการอ่าน

พร้อมติดตั้งหรือยัง? เริ่มต้น $2.48/เดือน

คลาวด์อิสระ ตั้งแต่ปี 2008 AMD EPYC, NVMe, 40 Gbps คืนเงินภายใน 14 วัน