Glue Record คืออะไร ตั้ง Nameserver ของตัวเอง

หากคุณต้องการรัน Name Server ของตัวเองภายใต้โดเมนที่คุณจดไว้ เช่น ns1.yourdomain.com คุณจะพบปัญหา Chicken-and-Egg ที่คลาสสิก นั่นคือในการ Resolve yourdomain.com ต้องรู้ IP ของ ns1.yourdomain.com ก่อน แต่ ns1.yourdomain.com อยู่ภายใต้โดเมนเดียวกัน ซึ่งยังไม่สามารถ Resolve ได้ Glue Record คือวิธีแก้ปัญหานี้

Glue Record คืออะไร

Glue Record คือ A (หรือ AAAA) Record ที่บันทึกไว้ที่ Registrar หรือ Parent Zone โดยตรง แทนที่จะเก็บไว้ใน Zone file ของโดเมนนั้นเอง เพื่อให้ Resolver สามารถทราบ IP address ของ Name Server ได้ก่อนที่จะ Resolve โดเมนนั้นสำเร็จ ทำให้ Loop ถูก "break" ออกไป

Glue Record บางครั้งเรียกว่า "Child Name Server" หรือ "In-bailiwick NS" เพราะ Name Server subdomain อยู่ภายใน (in the bailiwick) ของโดเมนเดียวกัน

ทำไมถึงต้องใช้ Glue Record

สมมติคุณต้องการให้ yourdomain.com ใช้ Name Server ที่ชื่อ ns1.yourdomain.com และ ns2.yourdomain.com เพื่อให้ Branding ดูเป็นมืออาชีพหรือเพื่อควบคุม DNS เองบน VPS ของตัวเอง:

  1. Resolver ถาม Registry ว่า Name Server ของ yourdomain.com คืออะไร
  2. Registry ตอบว่า ns1.yourdomain.com และ ns2.yourdomain.com
  3. Resolver ต้องรู้ IP ของ ns1.yourdomain.com — แต่มันอยู่ภายใต้ yourdomain.com ซึ่ง Resolve ไม่ได้!
  4. ติด Loop — ไม่สามารถ Resolve ได้เลย

Glue Record แก้ปัญหานี้โดยให้ Registry เก็บ IP ของ ns1 และ ns2 ไว้ในฐานข้อมูลของตัวเองโดยตรง เมื่อ Resolver ถามถึง Name Server ของโดเมน Registry จะตอบทั้ง hostname และ IP address กลับมาพร้อมกัน

วิธีตั้งค่า Glue Record

ขั้นตอนที่ 1 — ตั้งค่า Name Server บนเซิร์ฟเวอร์

ก่อนอื่นต้องมี DNS Server software ติดตั้งบน VPS ของคุณ เช่น BIND, PowerDNS หรือ Knot DNS และกำหนด Zone file สำหรับโดเมนที่ต้องการ

ขั้นตอนที่ 2 — จดทะเบียน Child Name Server ที่ Registrar

Login ไปยังระบบจัดการโดเมนของ Registrar (เช่น AsiaGB) แล้วหาส่วน "Child Name Server" หรือ "Host Records" ระบุ:

ทำซ้ำสำหรับ ns2 ด้วย IP ที่แตกต่าง (แนะนำให้มีอย่างน้อย 2 Name Server เพื่อ Redundancy)

ขั้นตอนที่ 3 — เปลี่ยน NS ของโดเมนให้ชี้ไป ns1.yourdomain.com

หลังจาก Glue Record ถูกบันทึกแล้ว ให้เปลี่ยน Nameserver ของโดเมนไปยัง ns1.yourdomain.com และ ns2.yourdomain.com รอ DNS Propagation 24-48 ชั่วโมง

ข้อควรทราบ: Glue Record จำเป็นเฉพาะเมื่อ Name Server hostname เป็น subdomain ของโดเมนที่จดอยู่นั้นเอง ถ้าคุณใช้ Name Server จากผู้ให้บริการอื่น เช่น ns1.someotherprovider.com ไม่จำเป็นต้องใช้ Glue Record เพราะ someotherprovider.com resolve ได้โดยอิสระ

กรณีใช้งาน Glue Record จริง

การตรวจสอบ Glue Record

ใช้คำสั่งนี้ตรวจสอบว่า Glue Record ถูกบันทึกถูกต้องแล้ว:

dig +additional NS yourdomain.com @a.iana-servers.net

ผลลัพธ์ใน Additional Section ควรแสดง IP ของ ns1 และ ns2 ควบคู่กับ NS Record

Glue Record กับ DNSSEC — สิ่งที่ต้องรู้

หากโดเมนของคุณเปิดใช้งาน DNSSEC (Domain Name System Security Extensions) การตั้ง Glue Record มีรายละเอียดเพิ่มเติมที่ต้องคำนึงถึง เนื่องจาก DNSSEC ใช้กระบวนการ Chain of Trust ที่เริ่มจาก Root Zone ลงมาถึงโดเมนของคุณ

เมื่อใช้ Custom Nameserver แบบ in-bailiwick พร้อม DNSSEC สิ่งที่ต้องดำเนินการเพิ่มได้แก่:

หากไม่มีความจำเป็นด้านความปลอดภัยสูง การใช้ Nameserver ของผู้ให้บริการ (เช่น AsiaGB) จะจัดการ DNSSEC ให้โดยอัตโนมัติ ไม่ต้องดูแลเอง

ข้อผิดพลาดที่พบบ่อยเมื่อตั้ง Glue Record

แม้ว่า Glue Record จะเป็นแนวคิดที่ไม่ซับซ้อน แต่ในทางปฏิบัติมักพบข้อผิดพลาดที่ทำให้โดเมนใช้งานไม่ได้ชั่วคราวหรือถาวร ดังนี้:

ข้อผิดพลาด ผลที่เกิดขึ้น วิธีแก้ไข
ลืมเพิ่ม A record ใน Zone file Resolver ได้ IP จาก Glue แต่เชื่อม NS ไม่ได้ เพิ่ม A record ของ ns1/ns2 ใน Zone file ของโดเมนด้วย
IP ใน Glue ไม่ตรงกับ DNS Server จริง Timeout ทุก Query อัปเดต Glue Record ที่ Registrar ให้ตรงกับ IP ใหม่ทุกครั้งที่ย้ายเซิร์ฟเวอร์
มี NS เดียว (ไม่มี ns2) เซิร์ฟเวอร์ล่มแล้วโดเมนล้มตาม ตั้งอย่างน้อย 2 NS บน IP คนละ Server หรือคนละ Network
เปลี่ยน NS ก่อนที่ Glue จะ Propagate โดเมน Resolve ล้มเหลว 24-48 ชั่วโมง รอให้ Glue Record เผยแพร่เสร็จก่อน (ตรวจด้วย dig) แล้วค่อยเปลี่ยน NS

Glue Record กับ Anycast DNS — สถาปัตยกรรมขั้นสูง

ผู้ให้บริการ DNS ขนาดใหญ่มักใช้เทคนิค Anycast ร่วมกับ Glue Record เพื่อให้ Name Server เดียวกันรับสัญญาณจากหลาย Node ทั่วโลก โดยที่ Resolver มองเห็น IP เดียวกัน แต่ข้อมูลถูกเส้นทางไปยัง Node ที่ใกล้ที่สุดโดยอัตโนมัติผ่าน BGP

ตัวอย่างสถาปัตยกรรม Anycast DNS ที่เรียบง่าย:

แนวทางนี้ใช้กับโปรเจกต์ที่ต้องการ DNS Latency ต่ำกว่า 20ms ทั่วโลก หากไม่ถึงขนาดนั้น การใช้ Glue Record ธรรมดาบน VPS 2 ตัวใน 2 Datacenter ก็เพียงพอสำหรับเว็บไซต์ทั่วไป

TTL กับการเปลี่ยน Glue Record — วิธีทำให้ Propagate เร็วขึ้น

TTL (Time To Live) คือค่าที่บอก Resolver ว่าควรแคช DNS Record ไว้นานแค่ไหนก่อนจะถาม Registry ใหม่ เมื่อต้องการเปลี่ยน IP ใน Glue Record (เช่น ย้ายเซิร์ฟเวอร์) TTL ส่งผลโดยตรงต่อระยะเวลาที่โดเมนจะใช้ IP เก่า

ขั้นตอนที่แนะนำเมื่อต้องเปลี่ยน Glue Record IP:

สำคัญ: TTL ของ Glue Record ถูกควบคุมโดย Registry ไม่ใช่ Zone file ของคุณ ค่า Default มักอยู่ที่ 86400 วินาที (24 ชั่วโมง) ถึง 172800 วินาที (48 ชั่วโมง) ตรวจสอบกับ Registrar ว่าค่า TTL ที่ใช้คือเท่าไร และสามารถขอเปลี่ยนได้ไหมก่อนวางแผนย้ายเซิร์ฟเวอร์

White-label DNS ด้วย Glue Record — สร้าง Branded Nameserver ของคุณเอง

ถ้าคุณเป็น Reseller หรือให้บริการ Hosting แก่ลูกค้า การมี Nameserver ที่ใช้ชื่อแบรนด์ของคุณเอง เช่น ns1.yourbrand.com แทน ns1.hostingprovider.com ช่วยสร้างความน่าเชื่อถือและความเป็นมืออาชีพได้อย่างมาก ขั้นตอนหลักมีดังนี้:

  1. เตรียม VPS หรือ Server — ติดตั้ง BIND9 หรือ PowerDNS พร้อม Zone file สำหรับโดเมนที่ต้องการให้บริการ
  2. จดทะเบียน Child Nameserver — ไปที่ Registrar ของ yourbrand.com แล้วสร้าง Child NS: ns1 → IP ของเซิร์ฟเวอร์ A และ ns2 → IP ของเซิร์ฟเวอร์ B
  3. เปลี่ยน NS ของ yourbrand.com — ชี้ไป ns1.yourbrand.com และ ns2.yourbrand.com ที่คุณเพิ่งสร้าง
  4. เพิ่ม Zone file ของลูกค้า — เพิ่มโดเมนของลูกค้าเข้าใน DNS Server และให้ลูกค้าเปลี่ยน NS ไปที่ ns1.yourbrand.com

เมื่อตั้งค่าเสร็จสมบูรณ์ ลูกค้าจะเห็นเพียงชื่อแบรนด์ของคุณบน WHOIS และ DNS Lookup ทุกครั้ง ซึ่งสร้างภาพลักษณ์ที่เป็นมืออาชีพให้กับธุรกิจของคุณโดยไม่จำเป็นต้องมีโครงสร้างพื้นฐาน DNS ขนาดใหญ่แต่อย่างใด

จดโดเมนพร้อมรองรับ Custom Nameserver

AsiaGB รองรับการตั้งค่า Child Nameserver (Glue Record) สำหรับโดเมนทุกตัวที่จดผ่านเรา จดโดเมน .com เพียง 500 บาท/ปี

จดโดเมนที่ AsiaGB