Do không có nhu cầu trở thành System Administrator nên mình không đi sâu vào việc cài đặt và cấu hình DNS. Bài này chỉ nhằm bổ sung kiến thức nền tảng về hệ thống DNS nói riêng cũng như Network, Bộ giao thức TCP/IP, Mô hình Client-Server nói chung.
Như đã biết, Mỗi máy khi tham gia vào Internet đều phải có địa chỉ IP (Nó giống như địa chỉ nhà của máy đó vậy - với máy tính thuộc một hệ thống mạng riêng thì cũng phải chia sẻ chung một Public IP nào đó để truy xuất ra bên ngoài mạng riêng đó). Nhưng mà Địa chỉ IPv4 với 32 bit sẽ rất khó nhớ đối với người dùng bình thường (Địa chỉ IPv6 còn khó nhớ hơn IPv4 rất nhiều.). Do đó xuất hiện khái niệm tên miền (Domain Name), một cái tên dễ nhớ thay cho địa chỉ IP loằng ngoằng. Còn DNS (Domain Name System - Hệ thống phân giải tên miền) như là một danh bạ điện thoại vậy, sẽ giúp máy tính nhận biết tên miền này sẽ ứng với địa chỉ IP nào.
Xung quanh bạn sẽ có rất nhiều máy chủ DNS vây quanh đảm nhận việc phân giải tên miền. Bản thân máy con cũng có hệ thống file hosts đảm nhận công việc phân giải tên miền như một DNS thực thụ, tiếp đó là DNS của hệ thống mạng riêng nếu có (LAN,WAN), DNS của ISP (Internet Service Provider), DNS hoạt động ở từng khu vực, từng quốc gia, DNS cấp TLD, Root DNS.
Ở mỗi tầng, các máy chủ DNS đều có hệ thống cache riêng (Để giảm tải việc truy vấn cho DNS ở tầng cao hơn). Ở máy con (máy gửi truy vấn phân giải tên miền) cũng có hệ thống Cache. Do đó, chúng ta cần nắm cơ chế hoạt động, đường đi và thứ tự ưu tiên của toàn bộ hệ thống DNS khi một máy con muốn phân giải một tên miền để xác định được sự cố hay lỗi có thể nằm ở tầng nào.
==Một câu hỏi được đặt ra là How many root servers are there?==
Theo Wikipedia (https://en.wikipedia.org/wiki/Root_name_server) thì đến Tháng 2/2013, hiện có 13 cụm máy chủ đóng vai trò là Root Name Server.
- DNS cấp ISP hay DNS cấp Quốc gia thường thiết lập ngăn không cho phân giải một số tên miền hay website nào đó mà họ muốn.
Xem bài viết đầy đủ về lý thuyết DNS trên MSDN