DNS Server (recursive name server)
Người dùng máy tính đặc biệt ở Việt Nam đã từng biết đổi DNS để vào Facebook những ngày mạng còn "chậm".
Những con số như 8.8.8.8 (Google DNS), 208.67.222.222 (OpenDNS) hay 1.1.1.1 (Cloudflare DNS) không còn lạ gì.
Những địa chỉ IP này có chạy 1 DNS server làm nhiệm vụ trả lời IP tương ứng của các domain được hỏi.
Ví dụ facebook.com có (những) IP là gì?
$ nslookup facebook.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: facebook.com
Address: 31.13.95.36
Name: facebook.com
Address: 2a03:2880:f102:83:face:b00c:0:25de
authoritative name server vs recursive resolver
Chương trình chạy ở 8.8.8.8 sẽ tìm địa chỉ IP tương ứng với domain facebook.com như bạn đã yêu cầu. Đây là một dịch vụ "trung gian", nó sẽ đi hỏi các "root nameservers" (.com, .org...) để tìm câu trả lời, bản thân nó không có câu trả lời.
Việc đi hỏi chỗ khác để lấy câu trả lời gọi là "recursive query", bởi chỗ khác cũng có thể không có câu trả lời và phải đi hỏi tiếp cấp cao hơn. Chương trình thực hiện tính năng tìm kiếm "hộ" này gọi là
Recursive resolver. Khác với chương trình có câu trả lời TRỰC TIẾP cho 1 domain cụ thể - gọi là
authoritative name server.
Ưu điểm của các dịch vụ này
- Tính sẵn sàng cao, ít khi bị sập (đều do những "ông lớn" internet vận hành)
- Có thể nhanh hơn, ví dụ với Google DNS 8.8.8.8, khi được truy cập, một server của Google nằm gần bạn nhất sẽ trả lời. (Phía dưới số 8.8.8.8 không phải là 1 máy ở đâu đó, mà là rất nhiều máy, và nó chọn cái nào gần bạn nhất)
NHƯỢC ĐIỂM
- Privacy (sự riêng tư): mọi câu hỏi của bạn, dịch vụ DNS đều biết. Tức là bạn vào website nào, thì Google (cho 8.8.8.8), hay Cloudflare (1.1.1.1), ... đều biết cả. Nghe có vẻ không to tát, nhưng hãy nghĩ xem, chỉ cần biết các trang web bạn vào ngày hôm nay, cũng phần LỚN biết bạn đang làm gì (youtube, facebook, hay
các trang web top truy cập của Việt Nam)
Unbound