Hệ thống tên miền (Domain Name System hay DNS) là một hệ thống quản lý và ánh xạ các tên miền (như example.com) thành địa chỉ IP tương ứng (như 192.168.1.1) để giúp máy tính và thiết bị truy cập và giao tiếp trên Internet. DNS là một phần quan trọng của cơ sở hạ tầng Internet và cho phép con người sử dụng các tên miền dễ nhớ thay vì phải ghi nhớ địa chỉ IP số. Hay nói một cách đơn giản, DNS giống như một danh bạ trên Internet.
Mỗi tên miền khi đăng ký đều yêu cầu có tối thiểu 2 nameservers và tối đa 13 nameservers để có thể truy vấn được địa chỉ tên miền.
DNS hoạt động như thế nào?
DNS hoạt động giống như một người chỉ đường để tìm kiếm địa chỉ của một ngôi nhà cụ thể. Ví dụ địa chỉ ngôi nhà là ở Thành phố A, Quận B, Phường C, Đường D, Số nhà E. Khi đó người tìm đường sẽ phải tìm địa chỉ theo thứ tự lần lượt từ A đến E. Tương tự như vậy, DNS cũng phải truy vấn lần lượt như vậy theo thứ tự như sau:
- Truy vấn máy chủ định danh gốc (root server): giống như điều kiện tìm thành phố A ở bước đầu tiên, còn ở đây nó là máy chủ DNS ở tầng cao nhất, bước đầu tiên trong việc phân giải bản ghi tên miền. Một quan niệm sai lầm phổ biến là trên thế giới hiện tại chỉ có 13 máy chủ định danh gốc(Việc sử dụng địa chỉ Anycast cho phép số lượng phiên bản máy chủ gốc thực tế lớn hơn nhiều và có 1.553 phiên bản tính đến ngày 17 tháng 9 năm 2022, nguồn Wikipedia.org). Máy chủ định danh gốc sẽ phản hồi địa chỉ IP của máy chủ quản lý tên miền cấp cao nhất đang quản lý tên miền truy vấn.
- Truy vấn máy chủ quản lý tên miền cấp cao nhất (TLD server): máy chủ này sẽ phản hồi địa chỉ IP của DNS có thẩm quyền đã đăng ký với tên miền. Ví dụ: với tên miền .com thì TLD server do VeriSign quản lý, tên miền .vn thì do VNNIC quản lý…
- Truy vấn máy chủ DNS có thẩm quyền (Authoritative nameserver): đây là bước yêu cầu cuối cùng để phản hồi địa chỉ IP chính xác của tên miền. Máy chủ này chính là máy chủ đăng ký cùng tên miền, có thể kiểm tra ở công cụ WHOIS.
Để trực quan hơn, chúng ta có thể xem ảnh sau:
Nguồn ảnh: Wikipedia.org
Mặc dù các DNS Resolver có cơ chế lưu vào bộ nhớ đệm nhưng các bước ở trên là các bước truy vấn thông thường của một tên miền trên Internet, tuy nhiên nó cũng có một số nhược điểm khi phải truy vấn ba máy chủ để có thông tin IP của tên miền, điều này tạo ra nhiều tuyến đường vòng khiến thời gian phản hồi chậm, hoặc có thể có rủi ro khi một trong ba máy chủ có vấn đề. Vì vậy để tối ưu cho người dùng một số nhà cung cấp lớn đã xây dựng lên các DNS công cộng để tối ưu hoá việc truy vấn bản ghi tên miền, giúp con đường đến địa chỉ cần đến ngắn và nhanh nhất. Danh sách một số nhà cung cấp DNS công cộng phổ biến có thể kể đến như sau:
- Cloudflare DNS: sử dụng máy chủ DNS 1.1.1.1 và 1.0.0.1, với khả năng tối ưu hóa và bảo mật cao, do Cloudflare cung cấp.
- Google Public DNS: sử dụng máy chủ DNS 8.8.8.8 và 8.8.4.4, do Google cung cấp.
- OpenDNS: sử dụng máy chủ DNS 208.67.222.222 và 208.67.222.220, cung cấp nhiều loại DNS công cộng với tùy chọn bộ lọc và bảo mật.
Các DNS công cộng này gửi truy vấn lấy thông tin bản ghi tên miền trong lần đầu tiên, nếu tìm thấy các DNS này sẽ lưu lại trong bộ nhớ đệm và phản hồi luôn trong các lần truy vấn tiếp theo nên thời gian phản hồi sẽ rất nhanh.
Bộ nhớ đệm DNS là gì?
Bộ nhớ đệm dùng để lưu trữ dữ liệu tạm thời để cải thiện hiệu suất và độ tin cậy cho các truy vấn. Dữ liệu bản ghi tên miền có thể được lưu vào bộ nhớ đệm ở nhiều vị trí khác nhau, mỗi vị trí sẽ lưu trữ các bản ghi DNS trong một khoảng thời gian nhất định được xác định theo thời gian tồn tại (Time To Live).
Bộ nhớ đệm của trình duyệt
Các trình duyệt web hiện đại được thiết kế theo mặc định để lưu các bản ghi tên miền vào bộ nhớ đệm trong một khoảng thời gian nhất định. Khi cần truy vấn bản ghi tên miền, bộ nhớ đệm của trình duyệt là vị trí đầu tiên được kiểm tra cho bản ghi được yêu cầu. Vì vậy, để nạp dữ liệu mới nhất khi có sự thay đổi bản ghi tên miền bạn nên sử dụng trình duyệt ẩn danh hoặc hard reload lại trang web trên trình duyệt (tổ hợp phím ctrl + shift + r với hệ điều hành windows).
Bộ nhớ đệm của hệ điều hành
Trình phân giải DNS của hệ điều hành là bước cuối cùng trước khi truy vấn DNS ra khỏi máy tính hoặc thiết bị của bạn. Quá trình bên trong hệ điều hành của bạn được thiết kế để xử lý truy vấn này thường được gọi là stub resolver hoặc DNS client. Khi một stub resolver nhận được yêu cầu từ một ứng dụng, trước tiên nó sẽ kiểm tra bộ nhớ đệm của chính nó để xem có bản ghi hay không, nếu không có nó sẽ gửi một truy vấn tiếp theo tới trình phân giải đệ quy DNS của các nhà cung cấp dịch vụ Internet (Internet Service Provider hay ISP).
Nếu bạn có nhu cầu mua vps hãy ghé thăm VPSRE.NET
Bảng giá