Domain, Hosting, DNS — 3 thứ phải mua riêng để có website
Domain là 'số nhà' (vietcodex.com), Hosting là 'mảnh đất' chứa file, DNS là 'sổ địa bạ' kết nối hai cái. Mua đúng từ đầu tiết kiệm 3-5 lần và tránh mất web khi đổi nhà cung cấp.
Mục lục bài viết(21)
Cấu trúc DNS toàn cầu là một cây phân cấp — Root server ở trên cùng, sau đó TLD (.com, .vn, .org), rồi đến Authoritative DNS cho từng domain cụ thể (vietcodex.com). Mọi tên miền trên Internet đều nằm trong cây này. Nguồn: Wikimedia Commons (public domain).
Hiểu đơn giản nhất
Để có một website, bạn cần 3 thứ riêng biệt — giống như có 3 cái khác nhau khi xây nhà:
| Thứ | Là gì | Analogy |
|---|---|---|
| Domain | Tên miền — vietcodex.com | Số nhà (123 Đường ABC) |
| Hosting (lưu trữ) | Nơi lưu trữ file + chạy server (máy chủ) | Mảnh đất + cái nhà thật |
| DNS | Hệ thống dịch tên miền → IP server | Sổ địa bạ ở phường |
Ba thứ này mua riêng, có thể từ 3 nhà cung cấp khác nhau. Nhiều người mua gộp ở 1 chỗ vì tiện → bị tính giá đắt gấp 3-4 lần và khó chuyển khi muốn đổi.
Tại sao bạn cần biết
- Tiết kiệm 3-5 lần. Mua domain tại Cloudflare (270k/năm) + hosting Vercel (free) rẻ hơn nhiều so với mua gộp ở GoDaddy (1.200k/năm trở lên).
- Phân biệt lỗi khi web sập. "DNS lỗi" khác "hosting lỗi" — fix khác nhau. Hiểu để báo đúng người, đỡ mất thời gian.
- Đổi nhà cung cấp không mất web. Khi hosting cũ tệ, bạn migrate sang nhà cung cấp mới mà KHÔNG cần đổi domain. Domain ở chỗ riêng là tài sản của bạn.
- Chọn đúng loại hosting. Shared hosting 50k/tháng đủ cho landing page tĩnh. VPS 200k/tháng đủ cho web có DB. Cloud hosting (Vercel/Vercel) chỉ pay-as-you-go.
Domain — tên miền là gì
Domain (tên miền) là chuỗi ký tự bạn gõ vào trình duyệt — vietcodex.com, backlinkthaibinh.com.vn, google.com. Đây là "số nhà" để người khác tìm tới website của bạn.
Cấu tạo một tên miền
shop.vietcodex.com.vn:
| Phần | Tên | Ví dụ |
|---|---|---|
| Subdomain (tên miền con — vd: wiki.vietcodex.com) | shop | Trỏ tới phần con (shop.vietcodex.com.vn, wiki.vietcodex.com) |
| SLD (Second Level Domain) | vietcodex | Phần thương hiệu, bạn chọn |
| TLD (Top Level Domain) | .com.vn | Phần đuôi cố định, do tổ chức quản |
Các loại TLD phổ biến + giá VN 2026
| TLD | Giá đăng ký năm đầu (VN 2026) | Ai nên dùng |
|---|---|---|
.com | 250-300k | Mặc định cho mọi business |
.vn | 700-800k (cần CMND/GPKD) | Doanh nghiệp VN muốn ngắn |
.com.vn | 350-500k (cần CMND/GPKD) | Doanh nghiệp VN tiết kiệm |
.net | 280-330k | Lựa chọn 2 khi .com bị chiếm |
.io | 800-1.200k | Startup tech, dev tool |
.dev | 350-500k | Cá nhân lập trình, blog tech |
.org | 280-350k | Tổ chức phi lợi nhuận |
.ai | 1.500-3.000k | AI startup |
.store, .shop | 200-500k | E-commerce |
Mua domain ở đâu
| Registrar | Ưu | Nhược |
|---|---|---|
| Cloudflare | Giá gốc (không markup), DNS + CDN free đi kèm | Không hỗ trợ .vn / .com.vn |
| Namecheap | Giao diện dễ dùng, hỗ trợ chat 24/7 | Giá hơi cao hơn Cloudflare |
| PA Việt Nam, Mắt Bão | Hỗ trợ .vn / .com.vn (đăng ký giấy tờ giúp) | Giá cao hơn quốc tế |
| GoDaddy | Bán domain hot có sẵn | Giá renew đắt, push thẻ tín dụng nhiều |
| Hostinger, ZHost | Combo + hosting rẻ năm đầu | Lock-in, renew đắt |
Khuyến nghị 2026: Cloudflare cho .com / .net / .org / .io / .dev. PA Vietnam hoặc Mắt Bão cho .vn / .com.vn. KHÔNG mua ở GoDaddy hay các site combo hosting trừ khi có promo đặc biệt.
Hosting — nơi lưu trữ website
Hosting là nơi đặt file website + chạy server backend. Có 5 loại chính, mỗi loại cho mục đích khác nhau:
| Loại | Mô tả ngắn | Giá/tháng | Phù hợp |
|---|---|---|---|
| Shared hosting | Nhiều web chung 1 server | 30-150k | Landing page, blog WordPress nhỏ |
| VPS (Virtual Private Server) | 1 phần ảo hoá riêng của server | 200-1.500k | Web có DB, app vừa, độ tự do cao |
| Dedicated server | Mua nguyên 1 máy server | 3.000-15.000k | Web traffic cao, yêu cầu bảo mật |
| Cloud hosting (AWS, GCP, Azure) | Tài nguyên co dãn theo nhu cầu | 100k → vô hạn | SaaS, app cần auto-scale |
| Serverless / JAMstack (Vercel, Netlify, Cloudflare Pages) | Không quản server, deploy chỉ với git push | Free → pay-as-you-go | Static site, Next.js, modern web |
Tỷ giá cụ thể 2026
Cho landing page tĩnh (5-10 trang giới thiệu):
- Cloudflare Pages free: 0đ/tháng, unlimited bandwidth, hỗ trợ Next.js, deploy bằng git push
- Vercel Hobby free: 0đ/tháng, 100GB bandwidth, tự cấp SSL
- Netlify Free: tương tự
Cho web có user + DB (SaaS, e-commerce):
- Vercel Pro: $20/tháng + Supabase free DB
- Railway: $5-50/tháng dùng theo resource
- VPS Vinahost: 200-800k/tháng + tự setup
- DigitalOcean: $6/tháng ~150k
Hosting VN truyền thống cho WordPress:
- Vinahost shared: 50-200k/tháng
- Mắt Bão shared: 70-250k/tháng
- Hostinger shared: 100-300k/tháng (giá năm đầu, renew gấp 2x)
DNS — danh bạ kết nối domain → server
Khi bạn gõ vietcodex.com, trình duyệt KHÔNG biết server ở IP nào. Nó hỏi DNS — như hỏi tổng đài "vietcodex.com ở đâu?". DNS trả 104.21.96.235 rồi trình duyệt mới đi đến đó.
DNS records — bản ghi trong sổ địa bạ
| Loại record | Mục đích | Ví dụ |
|---|---|---|
| A | Trỏ domain → địa chỉ IPv4 | vietcodex.com → 104.21.96.235 |
| AAAA | Trỏ domain → địa chỉ IPv6 | vietcodex.com → 2606:4700::... |
| CNAME | Trỏ domain → tên domain khác | www.vietcodex.com → vietcodex.com |
| MX | Server nhận email | vietcodex.com → mx1.google.com |
| TXT | Verification + SPF + DKIM | Google Search Console, gửi mail |
| NS | Nameserver quản DNS | ns1.cloudflare.com, ns2.cloudflare.com |
Ai quản DNS
Mặc định: registrar (nơi bạn mua domain). Nhưng có thể dời DNS sang Cloudflare miễn phí để hưởng:
- DNS nhanh hơn (anycast 200+ data center, lookup < 20ms)
- CDN (Content Delivery Network — mạng phân phối nội dung) miễn phí, cache (bộ đệm lưu tạm) toàn bộ static (tĩnh — file cố định) content
- DDoS protection miễn phí
- Analytics traffic miễn phí
99% dev VN cấu hình Cloudflare DNS cho mọi domain. Đây là free lunch ngon nhất Internet hiện nay.
DNS propagation — sao đổi DNS xong vẫn chưa thấy đổi
Khi bạn đổi A record, các DNS resolver toàn cầu cache giá trị cũ trong 5 phút đến 48 giờ (tùy TTL cấu hình). Trong thời gian này:
- Người ở Hà Nội thấy giá trị mới
- Người ở Hồ Chí Minh thấy giá trị cũ
Trick: set TTL về 5 phút TRƯỚC khi đổi 24h, sau khi đổi xong set lại 1h. Cách này propagation gần như tức thì.
Ví dụ thực tế: setup domain mới cho vietcodex.com
Giả sử bạn vừa quyết định build website cho công ty XYZ. Đây là chuỗi bước tối ưu chi phí cho 2026:
Bước 1: Mua domain ở Cloudflare (~5 phút)
- Vào
cloudflare.com/products/registrar - Search
xyz.com→ còn trống → bấm Register - Thanh toán 270k VND/năm (hoặc 1.080k cho 4 năm — đỡ quên gia hạn)
- Bật auto-renew ngay
- Bật 2FA cho tài khoản Cloudflare để tránh bị hack đánh cắp domain
Tổng: 270k VND.
Bước 2: Setup hosting Vercel (~10 phút)
- Push code Next.js lên GitHub
- Vào
vercel.com→ New Project → Import từ GitHub - Vercel build + deploy tự động → URL tạm
xyz-app.vercel.app - Vào Settings → Domains → Add
xyz.com - Vercel hiện DNS record cần thêm (CNAME
cname.vercel-dns.com)
Tổng: 0đ/tháng cho < 100GB bandwidth.
Bước 3: Cấu hình DNS ở Cloudflare (~3 phút)
- Cloudflare Dashboard → Domain
xyz.com→ DNS - Add record:
- Type: CNAME | Name:
@| Target:cname.vercel-dns.com| Proxy: OFF (vì Vercel có CDN riêng) - Type: CNAME | Name:
www| Target:xyz.com| Proxy: OFF
- Type: CNAME | Name:
- Save
Bước 4: Đợi propagation (~5-30 phút)
- Test:
nslookup xyz.comtrên Terminal → thấy IP Vercel - Mở
xyz.comtrên trình duyệt → website hiện ra - SSL (Secure Socket Layer — chứng chỉ mã hoá kết nối) tự cấp bởi Vercel → URL có
https://(HTTPS — giao thức web có mã hoá)
Tổng chi phí năm đầu: 270.000 VND (chỉ domain). Hosting + SSL + DNS + CDN: tất cả miễn phí.
So với cách "mua combo GoDaddy 1.200k domain + 250k/tháng hosting = 4.200k/năm" — bạn tiết kiệm 94%.
Cái gì có thể sai
| Vấn đề | Triệu chứng | Cách fix |
|---|---|---|
| Quên gia hạn domain | Web sập, redirect sang trang quảng cáo | Vào registrar gia hạn ngay (còn 30 ngày grace) |
| DNS misconfig | Web không truy cập được dù file vẫn ở hosting | Kiểm tra A record / CNAME ở DNS provider |
| Hosting hết dung lượng | 503 Service Unavailable | Xoá log cũ, upgrade gói |
| SSL hết hạn | Trình duyệt cảnh báo "Not secure" | Auto-renew Let's Encrypt (90 ngày), kiểm tra cron |
| Tài khoản hosting bị khoá | Web sập, email gửi không được | Liên hệ support, check thanh toán |
| Domain bị "hijack" | Email/CMS bị đổi mật khẩu | Bật 2FA + lock domain ở registrar |
| Trỏ NS sai | DNS records không hoạt động | Verify Nameserver ở registrar trỏ đúng DNS provider |
Khi nào dùng gì
| Bạn build | Domain | Hosting | DNS |
|---|---|---|---|
| Landing page giới thiệu công ty (5-10 trang) | .com Cloudflare | Cloudflare Pages free | Cloudflare DNS |
| Blog cá nhân | .com hoặc .dev Cloudflare | Vercel hoặc Netlify free | Cloudflare DNS |
| Web bán hàng nhỏ (< 1000 đơn/tháng) | .com hoặc .vn | Hostinger shared 100k/tháng | DNS đi kèm |
| SaaS multi-tenant | .com Cloudflare | Vercel Pro $20 + Supabase $25 | Cloudflare DNS |
| App lớn cần auto-scale | .com Cloudflare | AWS hoặc Railway | Cloudflare DNS / Route 53 |
| Trang chính phủ / ngân hàng | .vn PA Vietnam | VPS Vinahost + setup CDN | Tự host DNS để control |
Tóm tắt 1 dòng
Domain (số nhà) mua ở Cloudflare hoặc PA Vietnam, Hosting (mảnh đất) ở Vercel/Cloudflare Pages cho web tĩnh hoặc VPS Vinahost cho web động, DNS (sổ địa bạ) miễn phí ở Cloudflare. Mua riêng từng cái tiết kiệm 3-5 lần và đổi nhà cung cấp không mất web.
Đọc tiếp
- Internet là gì? Cách hoạt động giải thích dễ hiểu nhất — phần "DNS = danh bạ tên miền" chi tiết hơn
- Web hoạt động thế nào — hành trình 200ms — DNS lookup là bước 2 trong chuỗi 5 bước
- Frontend vs Backend khác nhau ở đâu — hosting backend khác hosting frontend
- API là gì? Tại sao mọi app đều cần — API endpoint cũng cần domain + DNS riêng