มอบหมายซับโดเมนให้ DNS อื่นด้วย NS Record
บางครั้งซับโดเมนหนึ่งต้องถูกจัดการโดยคนละทีมหรือคนละระบบกับโดเมนหลัก เช่น ทีมพัฒนาต้องการควบคุม api.example.com เองผ่านระบบอัตโนมัติ ในขณะที่ฝ่าย IT ดูแลโดเมนหลัก
การมอบหมายด้วย NS Record ทำให้คำถามทั้งหมดเกี่ยวกับซับโดเมนนั้นถูกส่งต่อไปยัง DNS Server ที่กำหนด โดยที่โดเมนหลักยังอยู่ที่เดิม
สิ่งที่ต้องเตรียม
- สิทธิ์แก้ไข DNS ของโดเมนหลัก
- DNS Server ปลายทางที่พร้อมรับผิดชอบซับโดเมนนั้น อย่างน้อยสองตัวเพื่อความทนทาน
ขั้นตอนที่ 1: เตรียมโซนที่ปลายทางก่อน
ขั้นตอนนี้ต้องทำก่อนมอบหมายเสมอ ไม่เช่นนั้นซับโดเมนจะใช้งานไม่ได้ทันทีที่มอบหมาย
ที่ผู้ให้บริการ DNS ปลายทาง สร้างโซนสำหรับ api.example.com แล้วเพิ่มระเบียนที่ต้องการให้ครบ
# ทดสอบว่า DNS ปลายทางตอบได้แล้ว โดยถามตรงไปที่เซิร์ฟเวอร์นั้น
dig @ns1.provider.net api.example.com +short
dig @ns1.provider.net www.api.example.com +short
ต้องได้คำตอบที่ถูกต้องก่อน จึงค่อยไปขั้นตอนถัดไป
ขั้นตอนที่ 2: เพิ่ม NS Record ในโดเมนหลัก
api.example.com. 3600 IN NS ns1.provider.net.
api.example.com. 3600 IN NS ns2.provider.net.
ข้อสำคัญที่มักพลาด
- ต้องมี NS อย่างน้อยสองรายการ หากมีตัวเดียวและตัวนั้นล่ม ซับโดเมนจะหายทั้งหมด
- ชื่อที่ชี้ไปต้องเป็น FQDN ลงท้ายด้วยจุด และต้องมีระเบียน A ของตัวเองที่ค้นหาได้
- ห้ามมีระเบียนอื่นของชื่อเดียวกันอยู่ในโดเมนหลัก เช่น หากมี
api.example.com A 203.0.113.10อยู่แล้ว ต้องลบออก ไม่เช่นนั้นจะขัดแย้งกัน
ตรวจว่าไม่มีระเบียนที่ขัดแย้ง
dig api.example.com A @ns-of-parent-zone +short
dig api.example.com NS +short
ขั้นตอนที่ 3: เพิ่ม Glue Record เมื่อจำเป็น
หาก DNS Server ปลายทางใช้ชื่อที่อยู่ภายในซับโดเมนนั้นเอง เช่น ns1.api.example.com จะเกิดปัญหาไก่กับไข่ คือต้องถาม DNS ของซับโดเมนเพื่อหา IP ของ DNS ของซับโดเมน
แก้ด้วย Glue Record ซึ่งคือระเบียน A ที่ใส่ไว้ในโดเมนแม่โดยตรง
api.example.com. IN NS ns1.api.example.com.
api.example.com. IN NS ns2.api.example.com.
ns1.api.example.com. IN A 203.0.113.20
ns2.api.example.com. IN A 203.0.113.21
หลีกเลี่ยงสถานการณ์นี้ได้ด้วยการใช้ชื่อ DNS Server ที่อยู่คนละโดเมน ซึ่งง่ายกว่ามาก
ขั้นตอนที่ 4: ตรวจสอบการมอบหมาย
# ดูว่าโดเมนแม่ส่งต่อไปที่ไหน
dig api.example.com NS +norecurse @ns1.parent-dns.com
# ไล่ตามห่วงโซ่ทั้งหมด
dig +trace api.example.com
# ตรวจจาก Resolver สาธารณะ
dig api.example.com +short @1.1.1.1
dig api.example.com +short @8.8.8.8
ในผลของ +trace จะเห็นลำดับตั้งแต่ Root ไป TLD ไปโดเมนหลัก แล้วส่งต่อไปยัง DNS ของซับโดเมน หากขาดตอนตรงไหนจะเห็นชัดเจน
ขั้นตอนที่ 5: กรณีใช้งานจริง
แยกระบบทดสอบออกจากระบบจริง
มอบหมาย dev.example.com ให้ DNS ที่ทีมพัฒนาควบคุมเอง ทำให้สร้างและลบซับโดเมนย่อยได้เองโดยไม่ต้องขอฝ่าย IT ทุกครั้ง
ใช้ Cloudflare เฉพาะบางส่วน
เก็บโดเมนหลักไว้ที่ DNS เดิม แล้วมอบหมายเฉพาะ www หรือ shop ไปที่ Cloudflare เพื่อใช้ความสามารถด้านการป้องกันโดยไม่ต้องย้ายทั้งโดเมน
ระบบที่ต้องการควบคุม DNS ด้วยโค้ด
ระบบ Kubernetes หรือระบบออกใบรับรองอัตโนมัติมักต้องสร้างระเบียน DNS เอง การมอบหมายซับโดเมนให้ระบบนั้นควบคุมเป็นวิธีที่ปลอดภัยกว่าการให้สิทธิ์แก้ทั้งโดเมน
ยืนยันใบรับรองแบบ DNS challenge
มอบหมาย _acme-challenge.example.com ไปยัง DNS ที่มี API ทำให้ขอใบรับรอง Wildcard อัตโนมัติได้แม้ผู้ให้บริการ DNS หลักไม่มี API
_acme-challenge.example.com. IN NS ns1.acme-dns.io.
ขั้นตอนที่ 6: ตั้ง TTL ให้เหมาะสม
ระเบียน NS ควรตั้ง TTL ยาว เช่น 3600 ถึง 86400 วินาที เพราะไม่ค่อยเปลี่ยน และการตั้งสั้นทำให้ Resolver ต้องถามบ่อยโดยไม่จำเป็น
แต่เมื่อวางแผนจะเปลี่ยน ให้ลด TTL ลงล่วงหน้าอย่างน้อยหนึ่งช่วง TTL เดิม เพื่อให้การเปลี่ยนมีผลเร็ว
ขั้นตอนที่ 7: ยกเลิกการมอบหมาย
ทำตามลำดับนี้เพื่อไม่ให้ซับโดเมนหายระหว่างทาง
- เพิ่มระเบียนที่จำเป็นทั้งหมดของซับโดเมนกลับเข้าโดเมนหลักก่อน แต่ยังไม่ลบ NS
- ลด TTL ของ NS ลงเหลือ 300 แล้วรอ
- ลบระเบียน NS ออก
- ตรวจว่าคำตอบมาจากโดเมนหลักแล้ว
dig api.example.com +short
dig api.example.com NS +short # ต้องไม่มีผลลัพธ์แล้ว
ปัญหาที่พบบ่อย
ซับโดเมนหายทันทีหลังมอบหมาย
DNS ปลายทางยังไม่มีโซนของซับโดเมนนั้น ตรวจด้วยการถามตรงไปที่เซิร์ฟเวอร์นั้น หากไม่ตอบ ให้สร้างโซนก่อนแล้วค่อยมอบหมาย
คำตอบไม่คงที่ บางครั้งได้บางครั้งไม่ได้
มีระเบียนขัดแย้งกันในโดเมนหลัก เช่น มีทั้ง NS และ A ของชื่อเดียวกัน ให้เหลือเฉพาะ NS
Resolver บางตัวไม่ตามไปยังซับโดเมน
ชื่อ DNS Server ที่ระบุใน NS ค้นหา IP ไม่ได้ ตรวจด้วย dig +short ns1.provider.net ต้องได้ IP กลับมา
อีเมลของซับโดเมนไม่ทำงาน
หลังมอบหมาย ระเบียน MX ของซับโดเมนต้องไปตั้งที่ DNS ปลายทาง ไม่ใช่ที่โดเมนหลักอีกต่อไป ตรวจว่าย้ายมาครบทุกระเบียน
ต้องการที่ปรึกษาด้านการออกแบบโครงสร้าง DNS ขององค์กร ติดต่อ THAI DATA CLOUD ได้ที่ https://thaidata.cloud/contact/
- Categories:
- Cloud
- Tags:
- Cloud
- Cloud Server
Related Posts
หมวดหมู่ที่น่าสนใจ
- Account Settings
- AD Server
- AI
- Alibaba Cloud
- Anti-Spam Gateway
- AWS Amazon Web Services
- Campaign
- CentOS/AlmaLinux
- Cloud
- Cloud Backup
- Cloud Communication
- Cloud Migration
- Cloud Security
- Cloud Server Management
- Cloud Solution
- Cloud Solution for Government
- Cloud Solutions by Industry
- Cloud Storage
- Cloud VPS App Plus +
- Cloud VPS DirectAdmin
- Cloud VPS Plesk
- CSR
- Cyber Security
- Cybersecurity
- Data Sovereignty
- Database Server
- DDoS
- Digital Tranformation
- Digital Transformation
- Direct Mail
- Directadmin
- Domainname
- Ecommerce
- ERP
- Generative AI
- Getting Started
- Google Cloud
- Google G Suite
- Huawei Cloud
- IT News
- Linux Server
- Managed Cloud Services
- Managed Service Provider
- Manual
- Microsoft
- Microsoft 365
- Microsoft Azure
- News
- On-premise
- Private Mail Server
- Promotion
- Recommend Solution (Enterprise)
- Server
- Sovereign Cloud
- THAI DATA CLOUD Platform
- Ubuntu
- Ubuntu
- Uncategorized
- VMware
- VPS Server
- Web Design
- Web Hosting
- Web Hosting (DirectAdmin)
- Web Hosting (Plesk)
- Web Technologies
- Windows Server
- Wordpress
- Zimbra
- เรื่องราวความประทับใจ
- โซลูชันสำหรับธุรกิจการผลิตและยานยนต์
- โซลูชันสำหรับธุรกิจการศึกษา
- โซลูชันสำหรับธุรกิจการเงิน
- โซลูชันสำหรับธุรกิจขนส่งและกระจายสินค้า
- โซลูชันสำหรับธุรกิจค้าปลีก
- โซลูชันสำหรับธุรกิจท่องเที่ยว
- โซลูชันสำหรับธุรกิจบริการสุขภาพและโรงพยาบาล
- โซลูชันสำหรับธุรกิจประกันภัย
- โซลูชันสำหรับธุรกิจพลังงานและสาธารณูปโภค
- โซลูชันสำหรับธุรกิจสื่อสารมวลชนและเอ็นเตอร์เทนเมนท์
- โซลูชันสำหรับธุรกิจอสังหาริมทรัพย์
- โซลูชันสำหรับธุรกิจเทคโนโลยี








