ย้าย DNS มาที่ Cloudflare โดยเว็บไม่ล่ม
Cloudflare ให้บริการ DNS ที่เร็วและฟรี พร้อมความสามารถเพิ่ม เช่น การซ่อน IP จริงของเซิร์ฟเวอร์ การแคชไฟล์คงที่ทั่วโลก และการป้องกันการโจมตีแบบ DDoS
ความเสี่ยงของการย้ายคือระเบียน DNS ที่ตกหล่น ซึ่งทำให้บริการบางอย่างหยุดทำงานโดยไม่มีใครสังเกตทันที โดยเฉพาะอีเมลที่มักพังเงียบ ๆ คู่มือนี้เน้นขั้นตอนตรวจสอบให้ครบก่อนสับเปลี่ยน
สิ่งที่ต้องเตรียม
- บัญชี Cloudflare
- สิทธิ์เปลี่ยน Name Server ที่ผู้รับจดทะเบียนโดเมน
- รายการระเบียน DNS ปัจจุบันทั้งหมด
ขั้นตอนที่ 1: บันทึกระเบียนปัจจุบันให้ครบ
ขั้นตอนนี้สำคัญที่สุด Cloudflare จะสแกนและนำเข้าให้อัตโนมัติ แต่มักไม่ครบ โดยเฉพาะระเบียนที่ไม่ใช่ชื่อมาตรฐาน
#!/bin/bash
D=example.com
for t in A AAAA CNAME MX TXT NS SOA CAA SRV; do
echo "=== $t"
dig +noall +answer "$D" "$t"
done
echo "=== ซับโดเมนที่ใช้บ่อย"
for s in www mail smtp imap pop ftp webmail cpanel autodiscover autoconfig \
vpn remote api app cdn static blog shop staging dev; do
r=$(dig +short "$s.$D")
[ -n "$r" ] && printf '%-16s %s\n' "$s" "$r"
done
echo "=== TXT ที่ใช้ยืนยันบริการต่าง ๆ"
for p in _dmarc _domainkey default._domainkey google._domainkey \
selector1._domainkey selector2._domainkey _acme-challenge; do
r=$(dig +short TXT "$p.$D")
[ -n "$r" ] && printf '%-28s %s\n' "$p" "$r"
done
เก็บผลลัพธ์ทั้งหมดไว้เป็นไฟล์ นี่คือรายการที่ต้องตรวจสอบหลังย้าย
bash check-dns.sh > /tmp/dns-before.txt
หากผู้ให้บริการเดิมส่งออกเป็นไฟล์โซนได้ ให้ส่งออกมาด้วย จะครบถ้วนที่สุด
ขั้นตอนที่ 2: เพิ่มโดเมนใน Cloudflare
ล็อกอิน Cloudflare กด Add a Site ใส่ชื่อโดเมน เลือกแผน Free แล้วรอให้ระบบสแกนระเบียน
อย่ากด Continue ทันที ให้เทียบรายการที่สแกนได้กับไฟล์ที่บันทึกไว้ทีละรายการ เพิ่มที่ขาดด้วยมือ
ระเบียนที่มักตกหล่น
- ระเบียน TXT ที่ใช้ยืนยันบริการ เช่น Google Workspace และ Microsoft 365
- ระเบียน DKIM ที่ชื่อยาวและมีจุดหลายจุด
- ซับโดเมนที่ไม่ได้ถูกอ้างถึงจากที่ไหน
- ระเบียน SRV สำหรับบริการต่าง ๆ
- ระเบียน CAA ที่กำหนดผู้ออกใบรับรอง
ขั้นตอนที่ 3: ตั้งสถานะ Proxy ให้ถูกต้อง
ไอคอนเมฆสีส้มคือเปิด Proxy ซึ่งซ่อน IP จริงและผ่านเครือข่ายของ Cloudflare ส่วนเมฆสีเทาคือส่งต่อ DNS อย่างเดียว
เปิด Proxy ได้ สำหรับระเบียนที่เป็นเว็บ เช่น @ และ www
ต้องปิด Proxy เสมอ สำหรับ
- ระเบียน MX และชื่อที่ MX ชี้ไป เพราะอีเมลไม่ได้วิ่งผ่าน HTTP
mail,smtp,imap,popและชื่ออื่นที่ใช้กับอีเมล- ชื่อที่ใช้กับ SSH, FTP, VPN และฐานข้อมูล
- ชื่อที่ใช้ยืนยันใบรับรองแบบ DNS challenge
การเปิด Proxy ให้ระเบียนอีเมลเป็นความผิดพลาดที่พบบ่อยที่สุดและทำให้รับส่งอีเมลไม่ได้ทันที
ขั้นตอนที่ 4: ลด TTL และรอ ก่อนเปลี่ยน Name Server
ที่ผู้ให้บริการ DNS เดิม ลด TTL ของทุกระเบียนลงเหลือ 300 วินาที แล้วรออย่างน้อย 24 ชั่วโมงก่อนเปลี่ยน Name Server
ขั้นตอนนี้ทำให้การเปลี่ยนมีผลเร็วและย้อนกลับได้เร็วหากมีปัญหา
ขั้นตอนที่ 5: เปลี่ยน Name Server
Cloudflare จะแสดง Name Server สองตัวที่ต้องใช้ นำไปใส่ที่ผู้รับจดทะเบียนโดเมน
# ตรวจว่าเปลี่ยนแล้ว
dig NS example.com +short
whois example.com | grep -i 'name server'
ใช้เวลาตั้งแต่ไม่กี่นาทีถึง 24 ชั่วโมง Cloudflare จะส่งอีเมลแจ้งเมื่อตรวจพบ
ระหว่างช่วงเปลี่ยนผ่าน อย่าปิดหรือลบโซนเดิมที่ผู้ให้บริการเก่า เพราะผู้ใช้บางส่วนยังถูกส่งไปที่นั่น เก็บไว้อย่างน้อยหนึ่งสัปดาห์
ขั้นตอนที่ 6: ตั้งค่า SSL ให้ถูกต้อง
ไปที่ SSL/TLS แล้ว Overview เลือกโหมด
- Full (strict) คือค่าที่ควรใช้ Cloudflare เชื่อมต่อไปเซิร์ฟเวอร์ด้วย HTTPS และตรวจใบรับรอง ต้องมีใบรับรองที่ถูกต้องบนเซิร์ฟเวอร์
- Full เชื่อมต่อด้วย HTTPS แต่ไม่ตรวจใบรับรอง ใช้ชั่วคราวได้หากใบรับรองเป็นแบบลงนามเอง
- Flexible ห้ามใช้ เพราะการเชื่อมต่อระหว่าง Cloudflare กับเซิร์ฟเวอร์เป็น HTTP ธรรมดา ข้อมูลรวมถึงรหัสผ่านวิ่งโดยไม่เข้ารหัส และมักทำให้เกิดการวนซ้ำของการเปลี่ยนเส้นทาง
เปิด Always Use HTTPS และ Automatic HTTPS Rewrites ในหน้า Edge Certificates
ขั้นตอนที่ 7: ตรวจสอบหลังย้าย
# รันสคริปต์เดิมแล้วเทียบ
bash check-dns.sh > /tmp/dns-after.txt
diff /tmp/dns-before.txt /tmp/dns-after.txt
ความต่างที่ยอมรับได้คือระเบียน NS และ SOA ส่วนระเบียนอื่นควรให้ผลเหมือนเดิม ยกเว้นระเบียนที่เปิด Proxy ซึ่งจะแสดง IP ของ Cloudflare แทน
ตรวจอีเมลเป็นพิเศษ
dig MX example.com +short
dig +short TXT example.com | grep spf
dig +short TXT default._domainkey.example.com
# ส่งอีเมลทดสอบทั้งขาเข้าและขาออก
echo "ทดสอบหลังย้าย DNS" | mail -s "ทดสอบ" [email protected]
ส่งอีเมลจากภายนอกเข้ามาที่โดเมนด้วย เพื่อยืนยันว่า MX ทำงาน
ขั้นตอนที่ 8: ให้เว็บเห็น IP จริงของผู้ใช้
เมื่อเปิด Proxy เว็บเซิร์ฟเวอร์จะเห็น IP ของ Cloudflare แทน IP จริงของผู้ใช้ ซึ่งทำให้ Log ไม่มีประโยชน์และระบบจำกัดอัตราทำงานผิด
sudo nano /etc/nginx/conf.d/cloudflare.conf
real_ip_header CF-Connecting-IP;
# ดึงรายการ IP ล่าสุดจาก https://www.cloudflare.com/ips/
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
# ... รายการเต็มจากเว็บไซต์ Cloudflare
# สร้างไฟล์อัตโนมัติ
{
echo 'real_ip_header CF-Connecting-IP;'
curl -s https://www.cloudflare.com/ips-v4 | sed 's/^/set_real_ip_from /; s/$/;/'
curl -s https://www.cloudflare.com/ips-v6 | sed 's/^/set_real_ip_from /; s/$/;/'
} | sudo tee /etc/nginx/conf.d/cloudflare.conf
sudo nginx -t && sudo systemctl reload nginx
ปิดกั้นไม่ให้เข้าเซิร์ฟเวอร์ตรงโดยข้าม Cloudflare ด้วยการอนุญาตเฉพาะ IP ของ Cloudflare ที่พอร์ต 80 และ 443
ปัญหาที่พบบ่อย
อีเมลรับส่งไม่ได้หลังย้าย
สาเหตุอันดับหนึ่งคือเปิด Proxy ให้ระเบียนที่เกี่ยวกับอีเมล ปิดเมฆสีส้มให้เป็นสีเทาสำหรับ MX และชื่อโฮสต์ของเมล
เว็บขึ้นข้อผิดพลาดการเปลี่ยนเส้นทางวนซ้ำ
ใช้โหมด Flexible ร่วมกับเว็บที่บังคับ HTTPS อยู่แล้ว เปลี่ยนเป็น Full (strict)
ขึ้นข้อผิดพลาด 521 หรือ 522
Cloudflare เชื่อมต่อเซิร์ฟเวอร์ไม่ได้ ตรวจว่าเซิร์ฟเวอร์ทำงานอยู่และ Firewall อนุญาต IP ของ Cloudflare
curl -sI --resolve example.com:443:203.0.113.10 https://example.com | head -1
ขอใบรับรอง Let's Encrypt ไม่ได้
การยืนยันแบบ HTTP challenge ถูก Proxy ขวางไว้ ปิด Proxy ชั่วคราวระหว่างขอ หรือเปลี่ยนไปใช้การยืนยันแบบ DNS challenge ซึ่งไม่กระทบ
ต้องการให้ทีมงานช่วยย้าย 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
- เรื่องราวความประทับใจ
- โซลูชันสำหรับธุรกิจการผลิตและยานยนต์
- โซลูชันสำหรับธุรกิจการศึกษา
- โซลูชันสำหรับธุรกิจการเงิน
- โซลูชันสำหรับธุรกิจขนส่งและกระจายสินค้า
- โซลูชันสำหรับธุรกิจค้าปลีก
- โซลูชันสำหรับธุรกิจท่องเที่ยว
- โซลูชันสำหรับธุรกิจบริการสุขภาพและโรงพยาบาล
- โซลูชันสำหรับธุรกิจประกันภัย
- โซลูชันสำหรับธุรกิจพลังงานและสาธารณูปโภค
- โซลูชันสำหรับธุรกิจสื่อสารมวลชนและเอ็นเตอร์เทนเมนท์
- โซลูชันสำหรับธุรกิจอสังหาริมทรัพย์
- โซลูชันสำหรับธุรกิจเทคโนโลยี








