บทที่ 6 : การทำงานของ DNS (Domain Name System)
คำนำ
ลองนึกภาพว่า หากเราต้องจำหมายเลข IP Address ของแต่ละเว็บไซต์ที่เราต้องการเข้าทุกครั้ง โลกอินเทอร์เน็ตคงยุ่งยากกว่าปัจจุบันมาก
นี่คือเหตุผลที่ต้องมี DNS (Domain Name System) เข้ามาช่วยทำหน้าที่แปลงชื่อเว็บไซต์ที่มนุษย์เข้าใจง่ายให้กลายเป็นหมายเลข IP Address ที่คอมพิวเตอร์ใช้ในการเชื่อมต่อ
DNS จึงเป็นเหมือน "สมุดโทรศัพท์ของอินเทอร์เน็ต"
1. DNS คืออะไร?
DNS (Domain Name System) คือระบบที่ช่วยแปลงชื่อโดเมน (เช่น google.com, facebook.com) ให้เป็น IP Address ที่คอมพิวเตอร์ใช้เชื่อมต่อกัน
มนุษย์จดจำชื่อเว็บไซต์ได้ง่ายกว่าตัวเลข IP Address
แต่คอมพิวเตอร์ต้องใช้ IP ในการติดต่อ
DNS จึงทำหน้าที่เป็นตัวกลางแปลภาษาระหว่างมนุษย์กับคอมพิวเตอร์
2. โครงสร้างของ DNS
DNS มีลักษณะเป็นระบบฐานข้อมูลแบบกระจาย (Distributed Database) ที่เชื่อมโยงกันเป็นลำดับชั้น ประกอบด้วย
-
Root DNS Server
เป็นจุดเริ่มต้นของระบบทั้งหมด
มีเครื่อง Root Server อยู่ทั่วโลก -
Top-Level Domain (TLD) Server
เช่น .com, .net, .org, .th, .edu
จัดการโดเมนระดับสูง -
Authoritative DNS Server
เป็นผู้ดูแลโดเมนชื่อเฉพาะ เช่น openai.com, google.com
ให้คำตอบสุดท้ายเกี่ยวกับ IP Address ของโดเมนนั้น -
Recursive DNS Server
อยู่ฝั่งผู้ใช้งานทั่วไป (เช่น ของ ISP, Google DNS, Cloudflare DNS)
ทำหน้าที่รับคำขอจากผู้ใช้ และไปค้นหาคำตอบแทนผู้ใช้
3. กระบวนการทำงานของ DNS
เมื่อต้องการเข้าเว็บไซต์ (เช่น www.example.com) จะเกิดขั้นตอนดังนี้
-
Client Request
ผู้ใช้พิมพ์ชื่อเว็บไซต์ใน Browser -
ตรวจสอบ Cache
ระบบจะตรวจสอบก่อนว่ามีข้อมูล DNS เก็บไว้ใน Cache หรือไม่ (ทั้งที่เครื่องและที่ DNS Server) -
สอบถาม Recursive DNS Server
ถ้าไม่มีข้อมูลใน Cache ระบบจะส่งคำขอไปยัง Recursive DNS Server ที่เราตั้งค่าไว้ (เช่น 8.8.8.8 ของ Google) -
ค้นหาจาก Root -> TLD -> Authoritative
Recursive Server จะไปค้นข้อมูลทีละขั้น จนพบ Authoritative Server ที่ถือข้อมูลแท้จริงของโดเมนนั้น -
รับคำตอบและส่งกลับ
เมื่อได้ IP Address แล้ว Recursive Server จะส่งข้อมูลกลับมาที่เครื่องผู้ใช้ -
เริ่มเชื่อมต่อด้วย IP
Browser ใช้ IP ที่ได้ไปเชื่อมต่อกับ Web Server ที่ต้องการ
4. ตัวอย่างเหตุการณ์จริง
สมมุติผู้ใช้พิมพ์ว่า www.openai.com
-
ระบบ DNS จะค้นหา IP Address ที่แท้จริงของ
www.openai.com
-
เมื่อได้ IP Address มาแล้ว (เช่น 104.18.12.123)
-
Browser จะเริ่มเชื่อมต่อไปยังเซิร์ฟเวอร์นั้นผ่าน Internet Protocol
5. DNS Cache
เพื่อความรวดเร็ว DNS Server และเครื่อง Client จะเก็บข้อมูล DNS ที่เคยค้นไว้ชั่วคราว
-
ลดการทำงานซ้ำซ้อน
-
เร่งความเร็วในการเข้าถึงเว็บไซต์
-
ลดปริมาณทราฟฟิกของ DNS Server
ข้อมูลนี้จะหมดอายุตามระยะเวลา TTL (Time to Live) ที่ตั้งไว้ใน DNS Record
6. ประเภทของ DNS Record
DNS Server เก็บข้อมูลในรูปแบบ "ระเบียน (Record)" หลายชนิด ได้แก่
-
A Record
แปลงชื่อโดเมนเป็น IPv4 Address -
AAAA Record
แปลงชื่อโดเมนเป็น IPv6 Address -
CNAME Record
เป็นชื่อแทน (Alias) ชี้ไปยังโดเมนอื่น -
MX Record
ระบุ Mail Server สำหรับรับส่งอีเมล -
NS Record
ระบุ Name Server ของโดเมนนั้น -
TXT Record
เก็บข้อความประกอบ เช่น SPF, DKIM สำหรับระบบความปลอดภัย
7. DNS Server ยอดนิยม
ผู้ใช้งานสามารถเลือกใช้ DNS Server ได้หลายค่าย ตัวอย่างเช่น
-
Google DNS: 8.8.8.8 และ 8.8.4.4
-
Cloudflare DNS: 1.1.1.1
-
OpenDNS: 208.67.222.222
-
ISP ของผู้ใช้แต่ละราย
8. DNS และความปลอดภัย
แม้ DNS จะช่วยให้การใช้งานอินเทอร์เน็ตสะดวกขึ้น แต่ DNS เองก็มีความเสี่ยง เช่น
-
DNS Spoofing (การปลอมแปลงข้อมูล DNS)
-
DNS Hijacking (เปลี่ยนเส้นทาง DNS โดยผู้ไม่หวังดี)
ปัจจุบันจึงมีการพัฒนาระบบ DNSSEC (DNS Security Extensions) และ DoH (DNS over HTTPS) เพื่อเพิ่มความปลอดภัย
9. บทสรุป
DNS เป็นระบบสำคัญเบื้องหลังโลกอินเทอร์เน็ต ที่ช่วยเชื่อมโยงชื่อเว็บไซต์ที่มนุษย์เข้าใจกับหมายเลข IP Address ที่คอมพิวเตอร์ใช้สื่อสารกัน
ความเข้าใจเรื่อง DNS ช่วยให้คุณเข้าใจปัญหาการเชื่อมต่อเว็บไซต์ วิเคราะห์ปัญหาอินเทอร์เน็ตได้ดีขึ้น และสามารถวางระบบที่ปลอดภัยยิ่งขึ้น
ในบทถัดไป เราจะไปเจาะลึกเรื่อง การทำงานของ NAT (Network Address Translation) ซึ่งช่วยให้หลายอุปกรณ์สามารถใช้งานอินเทอร์เน็ตผ่าน IP เดียวกันได้
ป้ายกำกับ
บทความ
Facebook SDK
CSS Content ( แสดงทุกหน้าของบทความ )
COKKIE POPUP