DNS server không phải một máy duy nhất, mà là nhiều máy chủ khác vai trò, chia làm hai nhóm: nhóm đi hỏi hộ bạn, và nhóm giữ dữ liệu tên miền để trả lời. Người dùng Internet chỉ cần quan tâm nhóm đầu; chủ tên miền phải quản trị nhóm sau. Bài này đi […]
DNS server không phải một máy duy nhất, mà là nhiều máy chủ khác vai trò, chia làm hai nhóm: nhóm đi hỏi hộ bạn, và nhóm giữ dữ liệu tên miền để trả lời. Người dùng Internet chỉ cần quan tâm nhóm đầu; chủ tên miền phải quản trị nhóm sau. Bài này đi lần lượt cả hai, để bạn biết mình đang đứng ở vai nào.
DNS server (máy chủ DNS) là máy chủ chạy phần mềm DNS, làm nhiệm vụ dịch tên miền sang địa chỉ IP và trả kết quả cho bên hỏi. Ẩn dụ gần nhất là nhân viên tổng đài tra danh bạ, không phải cuốn danh bạ: máy chủ chủ động tra và trả lời, chứ không chỉ là nơi lưu dữ liệu tĩnh.

DNS và DNS server thường bị dùng lẫn cho nhau, nhưng chỉ vào hai cấp độ khác nhau. DNS (Domain Name System) là cả hệ thống phân giải tên miền toàn cầu, còn DNS server là từng cỗ máy cụ thể vận hành trong hệ thống đó. Nếu bạn cần hiểu cơ chế phân giải theo từng bước, luồng cache và TTL, bài DNS là gì đã giải thích chi tiết; bài này tập trung vào máy chủ, không lặp lại luồng đó.
Một tên miền không được phục vụ bởi một máy chủ DNS duy nhất, mà bởi nhiều máy chủ khác loại nhau, mỗi máy giữ một phần trách nhiệm. Việc phân loại quan trọng vì nếu nhầm chúng làm một, bạn sẽ không biết nên đổi cái gì để phân giải nhanh hơn, và không biết nên quản trị cái gì để website chạy ổn định.
Toàn bộ máy chủ DNS chỉ làm một trong hai việc. Một nhóm đi hỏi hộ bạn, chạy đi tìm câu trả lời qua nhiều nơi rồi mang về. Nhóm còn lại giữ và trả lời dữ liệu tên miền, đứng yên một chỗ chờ được hỏi. Cả bài xoay quanh hai nhóm này, và mỗi nhóm gắn với một vai người đọc khác nhau: người dùng Internet chỉ chạm nhóm đi hỏi hộ, còn chủ tên miền phải quan tâm nhóm giữ dữ liệu.
Có 5 loại DNS server, chia đều vào hai nhóm đã nêu ở trên. Ba loại thuộc nhóm giữ và trả lời dữ liệu: root, TLD, authoritative. Hai loại thuộc nhóm đi hỏi hộ bạn: recursive resolver và forwarding server, trong đó caching là chức năng đi kèm resolver chứ không phải một loại máy chủ riêng. Bảng dưới đây tóm tắt nhanh cả 5 loại; phần giải thích chi tiết từng loại nằm ngay bên dưới bảng:
|
Loại server |
Thuộc nhóm |
Giữ dữ liệu gì |
Có cache không |
Ai vận hành |
|
Recursive resolver |
Đi hỏi hộ |
Không giữ cố định, chỉ tạm lưu |
Có |
ISP (nhà cung cấp dịch vụ Internet), dịch vụ Public DNS |
|
Forwarding server |
Đi hỏi hộ |
Không giữ |
Có thể có |
Router gia đình, DNS nội bộ doanh nghiệp |
|
Root server |
Giữ và trả lời |
Đường dẫn tới TLD server |
Không |
12 tổ chức độc lập (Verisign, ICANN, USC-ISI…) |
|
TLD server (máy chủ quản lý một đuôi tên miền) |
Giữ và trả lời |
Đường dẫn tới authoritative server của một đuôi tên miền |
Không |
Tổ chức quản lý đuôi (VNNIC cho .vn) |
|
Authoritative server |
Giữ và trả lời |
Bản ghi thật của tên miền |
Không |
Chủ tên miền hoặc nhà cung cấp DNS |

Recursive resolver (máy chủ đệ quy) là máy chủ nhận yêu cầu từ thiết bị của bạn rồi chạy đi hỏi lần lượt root, TLD, authoritative cho tới khi có địa chỉ IP cuối cùng. Đây là máy chủ bạn thực sự “đặt” khi khai báo 8.8.8.8 hay 1.1.1.1.
Recursive resolver luôn kèm chức năng caching (lưu tạm kết quả đã tra), nhờ đó phần lớn truy vấn trả lời ngay từ bộ nhớ thay vì phải đi hỏi lại. Cơ chế cache và TTL (time to live, thời gian một bản ghi được phép nằm trong cache) đã giải thích chi tiết ở bài DNS là gì; ở đây chỉ nêu để phân loại server.
Forwarding server (máy chủ chuyển tiếp) không tự đi hỏi mà đẩy yêu cầu sang một resolver khác xử lý hộ. Bạn thường gặp loại này trong router gia đình hoặc hệ thống DNS nội bộ doanh nghiệp, nơi thiết bị hỏi router, router lại đẩy tiếp câu hỏi sang một resolver bên ngoài.
Đây là nhóm duy nhất người dùng cuối được chọn và đổi. Máy chủ DNS của nhà mạng (VNPT, Viettel, FPT) hay các DNS công cộng đều nằm ở nhóm này, còn ba loại máy chủ tiếp theo thì không.
Root server (máy chủ gốc) đứng ở đỉnh hệ thống, nhưng không giữ IP của tên miền cụ thể mà chỉ đường tới đúng TLD server cần hỏi tiếp. Hệ thống root gồm 13 định danh, ký hiệu từ a đến m, do 12 tổ chức độc lập vận hành (trong đó ICANN chỉ trực tiếp vận hành một định danh, phần lớn vai trò của ICANN với hệ thống root là điều phối chính sách). Mỗi định danh nhân bản thành khoảng 2.000 bản sao vật lý trên toàn cầu qua anycast (kỹ thuật định tuyến cho phép nhiều máy chủ dùng chung một địa chỉ IP, với truy vấn tự động đi tới bản sao gần người hỏi nhất), theo dữ liệu thời gian thực của hệ thống root-servers.org.

TLD server (máy chủ tên miền cấp cao) quản lý một đuôi tên miền cụ thể như .com, .vn, .org. Nó chỉ đường tới authoritative server đang giữ tên miền đó; đuôi .vn do VNNIC quản lý và trực tiếp vận hành hệ thống TLD server.
Authoritative server (máy chủ thẩm quyền) là nơi giữ bản ghi thật của tên miền và đưa ra câu trả lời cuối cùng, chính thức. Đây là máy chủ chủ website cấu hình khi trỏ tên miền, và cũng là nơi thực sự quyết định website chạy hay không.
Nhiều bài viết tiếng Việt gộp root và các tầng bên dưới thành một khối chung gọi là “Local”, bỏ sót hẳn tầng TLD và authoritative. Cách chia đó đơn giản hóa quá mức, bỏ sót sự phân biệt vai trò giữa các tầng theo đúng cấu trúc phân cấp DNS chuẩn. Nhóm giữ và trả lời dữ liệu này không bao giờ tự tìm đến bạn; chúng chỉ trả lời khi recursive resolver chủ động đi hỏi.
Ở mức máy chủ, một lần truy vấn diễn ra theo trình tự: thiết bị hỏi recursive resolver, resolver hỏi lần lượt root, TLD, authoritative, nhận về địa chỉ IP, rồi cache lại kết quả trước khi trả cho thiết bị. Luồng 8 bước chi tiết hơn của quá trình này đã có ở bài DNS là gì, nên phần này chỉ tóm ở mức server.
Insight đáng nhớ nhất: bạn chỉ tương tác trực tiếp với đúng một máy chủ, recursive resolver, còn phần còn lại nó tự lo. Đây là lý do “đổi DNS” trong ngôn ngữ hằng ngày thực chất là đổi recursive resolver, không đụng gì tới ba loại máy chủ còn lại.

Trong cả hệ thống DNS server, thứ duy nhất bạn đổi được là recursive resolver. “Dùng DNS 8.8.8.8” nghĩa là bạn chọn máy chủ đệ quy của Google thay cho máy chủ của nhà mạng, không đụng gì tới root, TLD hay authoritative server phía sau.
Vài recursive resolver công cộng phổ biến để bạn hình dung, mỗi cái có một thế mạnh riêng: Google Public DNS (8.8.8.8), Cloudflare (1.1.1.1), Quad9 (9.9.9.9), OpenDNS, và AdGuard DNS. Trong nhóm này, chính sách log là điểm khác biệt rõ nhất. Cloudflare chỉ giữ log ẩn danh 25 giờ. Google giữ log gắn IP đầy đủ 24-48 giờ rồi mới ẩn danh hóa. Quad9, một tổ chức phi lợi nhuận, không lưu IP người dùng.
Trong phần lớn trường hợp, đổi recursive resolver chỉ rút ngắn thời gian phân giải tính bằng mili giây, không tăng băng thông tải trang. Đây là kỳ vọng sai phổ biến nhất khi người dùng đổi DNS xong rồi thất vọng vì “mạng vẫn không nhanh hơn”. Ngoại lệ đáng chú ý là khi DNS của nhà mạng đang chập chờn hoặc bị chặn/redirect, lúc đó đổi resolver cải thiện rõ rệt hơn mức vài mili giây, vì tránh được các lần timeout hoặc retry gây trễ tổng thể.
Bảng so sánh đầy đủ theo tốc độ, quyền riêng tư, khả năng lọc nội dung, cách tự đo bằng nslookup/dig/DNS Benchmark, và các bước đổi DNS trên Windows/macOS/điện thoại/router đều đã có ở bài DNS là gì. Ở đây, bạn chỉ cần nắm mình đang chọn loại server nào trong cả hệ thống.
Authoritative server và recursive resolver khác nhau ở ba trục cốt lõi. Authoritative trả lời từ dữ liệu của chính nó, còn recursive đi hỏi nơi khác rồi mang câu trả lời về. Authoritative không cache, còn recursive cache kết quả theo TTL để trả lời nhanh cho lần hỏi sau. Authoritative luôn cho câu trả lời chính thức, còn recursive có thể trả lời từ cache, một câu trả lời không chính thức nhưng vẫn đúng. Bảng dưới đây tóm tắt lại các trục này:
|
Tiêu chí |
Authoritative server |
Recursive resolver |
|
Nguồn dữ liệu |
Dữ liệu của chính nó |
Đi hỏi nơi khác |
|
Cache |
Không cache |
Cache theo TTL |
|
Loại câu trả lời |
Chính thức |
Có thể từ cache, không chính thức |
|
Ai hỏi nó |
Recursive resolver |
Thiết bị người dùng |
|
Ai vận hành |
Chủ tên miền / nhà cung cấp DNS |
ISP, dịch vụ Public DNS |
|
Ví dụ thực tế |
Máy chủ giữ bản ghi của tenten.vn |
8.8.8.8, 1.1.1.1 |
Với mỗi tên miền, authoritative server còn chia thành primary và secondary. Primary (master) giữ bản gốc của DNS zone (tập hợp bản ghi của một tên miền), nơi admin chỉnh sửa trực tiếp. Secondary (slave) là bản sao đồng bộ tự động từ primary, giúp chia tải và dự phòng khi primary gặp sự cố. Cấu hình phổ biến trong thực tế là một primary cộng ít nhất hai secondary.

Secondary đồng bộ dữ liệu từ primary qua cơ chế zone transfer (quá trình truyền toàn bộ hoặc một phần dữ liệu zone từ primary sang secondary). Bản ghi SOA (Start of Authority, bản ghi lưu thông tin quản trị của zone) giữ một số serial, số phiên bản tăng dần mỗi khi zone thay đổi, để secondary biết khi nào cần đồng bộ lại. Đây cũng là chỗ hay phát sinh lỗi thực chiến: khi serial không tăng sau khi admin sửa bản ghi, secondary sẽ không nhận ra có thay đổi mới.
Một khái niệm nâng cao khác là glue record. Khi nameserver của một tên miền lại nằm ngay trong chính tên miền đó (ví dụ ns1.example.com là nameserver của example.com), hệ thống gặp vấn đề con gà – quả trứng: muốn biết địa chỉ IP của ns1.example.com thì phải hỏi chính nameserver đó, nhưng muốn hỏi được nameserver đó lại cần biết IP của nó trước. Glue record phá vỡ bế tắc này bằng cách TLD server trả kèm luôn địa chỉ IP của nameserver ngay trong câu trả lời, không bắt resolver phải tự tra cứu vòng lại. Phần lớn bài viết tiếng Việt bỏ qua khái niệm này dù nó là nguyên nhân của không ít lỗi trỏ tên miền khó chẩn đoán.
Nối lại hai vai đã nêu từ đầu bài: người dùng chỉ dùng recursive resolver, còn chủ tên miền là người sở hữu quyền quản trị trên authoritative server của chính mình.
Bạn cần cân nhắc managed DNS (dịch vụ DNS chuyên biệt, tách riêng khỏi hosting) hoặc tự dựng DNS riêng khi website có lưu lượng lớn, người dùng trải rộng nhiều vùng địa lý, hoặc cần DNSSEC và cam kết uptime rõ ràng. Còn lại, DNS đi kèm hosting là đủ. Với authoritative DNS server của một tên miền, bạn có ba lựa chọn:
Authoritative server là điểm hỏng nghiêm trọng nhất trong toàn hệ thống DNS của một tên miền. Nếu nó sập, tên miền không phân giải được nữa, website và email chết cùng lúc, cho tới khi máy chủ sống lại. Đây là rủi ro mà nhiều bài viết về DNS ở Việt Nam bỏ trống, dù hậu quả ảnh hưởng trực tiếp tới doanh thu và uy tín doanh nghiệp.
Để giảm rủi ro này, bạn đặt primary cộng secondary ở nhiều vị trí địa lý khác nhau, và bạn nên ưu tiên nhà cung cấp có mạng anycast để chịu tải tốt và phục vụ gần người dùng. Bạn cũng cần giám sát chủ động để phát hiện sự cố sớm, trước khi người dùng cuối nhận ra website không truy cập được.
Managed DNS đáng cân nhắc khi:
Thao tác chọn authoritative server nằm ở việc trỏ nameserver (tên gọi khác của authoritative server đang giữ bản ghi cho tên miền) của tên miền.
Rủi ro sập authoritative server là lý do bạn nên đặt primary cộng secondary ở nhiều vị trí như đã nêu ở trên, nhưng tự dựng và giám sát cấu hình đó 24/7 không phải đội kỹ thuật nào cũng kham nổi. Khi đăng ký tên miền .vn tại TENTEN, bạn trỏ nameserver ngay trong giao diện quản lý tên miền, không cần ghép thêm công cụ rời rạc để thao tác bước này.

“Chạy antivirus” không bảo vệ được máy chủ DNS, đây là lời khuyên sai thường gặp trên một số blog kỹ thuật tại Việt Nam, vì an toàn của một DNS server nằm ở cấu hình và hạ tầng của chính máy chủ đó, không phải phần mềm diệt virus cài trên máy cá nhân của bạn.

Với recursive resolver, bạn cần bắt đầu làm cứng từ vá lỗi kịp thời và bật xác thực để chống bị nhồi bản ghi giả vào cache. Bạn cũng không nên mở resolver cho cả Internet truy cập tự do (gọi là open resolver), vì kẻ tấn công có thể lợi dụng để khuếch đại lưu lượng tấn công (DDoS, viết tắt của tấn công từ chối dịch vụ phân tán, làm sập hệ thống bằng lưu lượng ồ ạt) vào một mục tiêu khác.
Với authoritative server, bạn cần hạ tầng chịu được DDoS bằng mạng anycast và cơ chế giới hạn tần suất truy vấn. Zone transfer (cơ chế đồng bộ dữ liệu giữa primary và secondary đã nêu ở phần trên), bạn chỉ nên mở cho secondary hợp lệ, để không lộ toàn bộ dữ liệu vùng cho bên ngoài.
DNSSEC, ở phía người giữ tên miền, là việc ký số vùng trên authoritative server để bên hỏi xác thực được câu trả lời không bị giả mạo dọc đường. VNNIC đã ký DNSSEC cho toàn bộ zone .vn từ cuối năm 2016. Phần này chỉ nói vai trò và trách nhiệm ký của chủ tên miền, không lặp lại cơ chế tấn công đã giải thích ở bài DNS là gì.
DoH và DoT (mã hóa truy vấn DNS trên đường truyền) là một tiêu chí bạn nên ưu tiên khi chọn resolver, vì giúp chống nghe lén giữa thiết bị và recursive resolver. Đây là tiêu chí chọn lựa, không phải hướng dẫn bật, vì phần bật đã có ở bài chị em.
Vận hành đúng cả recursive lẫn authoritative server đòi hỏi năng lực giám sát liên tục, thứ không phải đội kỹ thuật nào cũng có sẵn. Đây là lý do làm cứng đúng cách thường đi cùng quyết định thuê ngoài đã nêu ở phần trước, thay vì tự gánh hết các lớp bảo vệ trên.
Mọi máy chủ DNS đều thuộc một trong hai nhóm: đi hỏi hộ bạn, hoặc giữ và trả lời dữ liệu tên miền. Bạn chỉ cần nhớ mình đang đứng ở vai nào, người dùng Internet hay chủ tên miền, để biết phải quan tâm nhóm nào.
Ba điểm dễ nhầm nhất đáng nhắc lại. Một, DNS server không phải một máy duy nhất mà là nhiều loại phối hợp với nhau. Hai, recursive resolver là thứ người dùng chọn được, còn authoritative server là thứ chủ tên miền phải cấu hình. Ba, authoritative server gặp sự cố sẽ kéo sập cả website lẫn email cùng lúc.
Nếu bạn đang chuẩn bị đăng ký tên miền .vn, hãy kiểm tra tên miền và trải nghiệm thử cách quản trị nameserver, bản ghi DNS ngay trong giao diện quản lý tên miền tại Tenten.vn.