Domain Name Service (DNS) là dịch vụ chịu trách nhiệm ánh xạ giữa domain name (tên miền) và IP address.
Nói đơn giản:
DNS chính là lớp “dịch ngôn ngữ” giữa con người và mạng.
1. Bản chất của DNS
DNS thực hiện 2 chức năng cốt lõi:
Một cách hình dung phổ biến:
DNS giống như danh bạ điện thoại (phone book)
Tuy nhiên, khác với danh bạ truyền thống, DNS:
2. Luồng hoạt động của DNS (High-level flow)
Khi client cần resolve một domain: Bước 1 – Kiểm tra Local Cache
Nếu resolver không có cache, quá trình sẽ escalate:
3. Chuỗi phân giải DNS đầy đủ (Recursive Resolution)
Đây là phần quan trọng nhất mà nhiều người hiểu chưa sâu. Recursive Resolver đóng vai trò “middleman”
Nó sẽ thực hiện toàn bộ query thay client: Step-by-step:
👉 Điểm quan trọng:
4. Các thành phần quan trọng trong DNS
4.1 Local DNS Resolver
Đặc biệt:
4.2 Caching / Forwarding Resolver
👉 Đây là lý do:
4.3 Recursive Resolver
👉 Trong thực tế:
4.4 TLD Server (Top-Level Domain)
👉 Nó không chứa IP cuối cùng
→ chỉ trỏ đến authoritative server
4.5 Authoritative Name Server
👉 Đây là “source of truth”
5. Hệ thống phân cấp DNS (DNS Hierarchy)
DNS không phải flat system mà là hierarchical
Cấu trúc:
Root (.)
↓
TLD (.com, .vn, .org)
↓
Second-level domain (google.com)
↓
Subdomain (www.google.com)
👉 Đây là lý do DNS scale được toàn cầu
6. Các loại DNS Record quan trọng
DNS không chỉ map domain → IP, mà còn nhiều chức năng khác. Một số record quan trọng:
👉 DNS là nền tảng cho:
7. Góc nhìn CCIE – Những điều cần nhớ
1. DNS = Distributed Database
Không phải 1 server duy nhất
→ là hệ thống phân tán toàn cầu
2. Caching là yếu tố sống còn
3. Recursive vs Iterative
4. DNS là critical infrastructure
→ Nếu DNS fail:
5. DNS cũng là attack surface
8. Kết luận
DNS nhìn đơn giản nhưng thực chất là một trong những hệ thống phức tạp và quan trọng nhất của Internet.
Nó kết hợp:
👉 Và quan trọng nhất:
Không có DNS → Internet gần như không sử dụng được với con người
Nói đơn giản:
- Người dùng nhớ: google.com
- Hệ thống cần: 142.250.x.x
DNS chính là lớp “dịch ngôn ngữ” giữa con người và mạng.
1. Bản chất của DNS
DNS thực hiện 2 chức năng cốt lõi:
- Quản lý tập trung namespace toàn cầu
- Phân giải hostname → IP address
Một cách hình dung phổ biến:
DNS giống như danh bạ điện thoại (phone book)
- Bạn tìm tên → ra số điện thoại
- DNS tìm domain → ra IP
Tuy nhiên, khác với danh bạ truyền thống, DNS:
- Có cache
- Có cơ chế phân cấp (hierarchical)
- Có cơ chế truy vấn nhiều bước
2. Luồng hoạt động của DNS (High-level flow)
Khi client cần resolve một domain: Bước 1 – Kiểm tra Local Cache
- Trình duyệt → OS → local DNS cache
- Nếu có → trả về ngay (no network call)
- Thường là DNS server nội bộ (enterprise) hoặc ISP
Nếu resolver không có cache, quá trình sẽ escalate:
3. Chuỗi phân giải DNS đầy đủ (Recursive Resolution)
Đây là phần quan trọng nhất mà nhiều người hiểu chưa sâu. Recursive Resolver đóng vai trò “middleman”
Nó sẽ thực hiện toàn bộ query thay client: Step-by-step:
- Client → Recursive Resolver
- Resolver hỏi Root Server
- Root trả về TLD Server (.com, .net, .vn, …)
- Resolver hỏi TLD Server
- TLD trả về Authoritative Name Server
- Resolver hỏi Authoritative Server
- Authoritative trả về IP address
- Resolver cache lại → trả về client
👉 Điểm quan trọng:
- Client chỉ hỏi 1 lần
- Resolver làm toàn bộ phần còn lại
4. Các thành phần quan trọng trong DNS
4.1 Local DNS Resolver
- Chạy trên DNS server nội bộ hoặc OS
- Có thể forward lên upstream DNS (Google DNS 8.8.8.8)
- Có cache
Đặc biệt:
- 127.0.0.1 → localhost → chính DNS server đó
4.2 Caching / Forwarding Resolver
- Lưu các query trước đó
- Nếu chưa có → forward lên DNS cấp cao hơn
👉 Đây là lý do:
- Lần đầu truy cập chậm
- Lần sau nhanh hơn (cache hit)
4.3 Recursive Resolver
- Thành phần “trung gian thông minh”
- Thực hiện truy vấn thay client
- Cache toàn bộ kết quả
👉 Trong thực tế:
- Google DNS (8.8.8.8)
- Cloudflare DNS (1.1.1.1)
- ISP DNS
4.4 TLD Server (Top-Level Domain)
- Quản lý domain theo đuôi:
- .com
- .edu
- .gov
- .vn
👉 Nó không chứa IP cuối cùng
→ chỉ trỏ đến authoritative server
4.5 Authoritative Name Server
- Nơi chứa bản ghi DNS chính thức
- Trả lời cuối cùng cho query
👉 Đây là “source of truth”
5. Hệ thống phân cấp DNS (DNS Hierarchy)
DNS không phải flat system mà là hierarchical
Cấu trúc:
Root (.)
↓
TLD (.com, .vn, .org)
↓
Second-level domain (google.com)
↓
Subdomain (www.google.com)
👉 Đây là lý do DNS scale được toàn cầu
6. Các loại DNS Record quan trọng
DNS không chỉ map domain → IP, mà còn nhiều chức năng khác. Một số record quan trọng:
- A record → IPv4
- AAAA record → IPv6
- CNAME → alias (domain trỏ sang domain khác)
- MX → mail server
- NS → name server
- SOA → thông tin zone (authority)
- PTR → reverse DNS (IP → domain)
- TXT → SPF, DKIM, verification
- SRV → service discovery
👉 DNS là nền tảng cho:
- Web
- VoIP
- Service discovery (microservices)
7. Góc nhìn CCIE – Những điều cần nhớ
1. DNS = Distributed Database
Không phải 1 server duy nhất
→ là hệ thống phân tán toàn cầu
2. Caching là yếu tố sống còn
- Giảm latency
- Giảm load root/TLD server
3. Recursive vs Iterative
- Recursive: resolver làm hết
- Iterative: client tự hỏi từng bước
4. DNS là critical infrastructure
→ Nếu DNS fail:
- Web down
- Email down
- Auth system fail
5. DNS cũng là attack surface
- DNS Spoofing
- Cache Poisoning
- DDoS amplification
8. Kết luận
DNS nhìn đơn giản nhưng thực chất là một trong những hệ thống phức tạp và quan trọng nhất của Internet.
Nó kết hợp:
- Distributed system
- Caching
- Hierarchical design
- Protocol optimization
👉 Và quan trọng nhất:
Không có DNS → Internet gần như không sử dụng được với con người