Lý thuyết về DNS – Hệ thống phân giải tên miền

DNS Server là một máy chủ được cài đặt dịch vụ DNS (hay Domain Name System), là Hệ thống tên miền được phát minh vào năm 1984 cho Internet. Mục đích đạt được đó là gắn kết giữa địa chỉ IP toàn số (ví dụ 123.234.012.3) và một cái tên miền (ví dụ voduy.com) có giá trị trên toàn thế giới hoặc trong một phạm vi cục bộ nào đó tùy theo người cài đặt DNS Server cấu hình.

Phân loại DNS Server

DNS Server được chia ra nhiều cấp độ dựa trên phạm vi hoạt động và mục đích hướng đến phục vụ nhóm khách hàng nào của con máy chủ DNS Server đó. Tựu chung thì chúng cũng hoạt động như nhau, đó là phân giải tên miền ra IP hoặc ngược lại IP ra tên miền.

Cấp độ 1:

Ở vị trí cao nhất, phạm vi hoạt động của loại DNS Server này là trên toàn thế giới, khách hàng phục vụ nhắm đến là toàn nhân loại. Đây là 13 DNS ROOT Server được đặt tại US, nhiệm vụ của chúng là chỉ ra đâu là cặp DNS NameServer cấp độ 2 của một tên miền nào đó đã đăng ký với chúng.
DNS ROOT Server thường có dạng A.ROOT-SERVERS.NET, B.ROOT-SERVERS.NET, H.ROOT-SERVERS.NET...

Cấp độ 2:

1 Cặp (hoặc hơn 3-4) DNS NameServer được lập ra nhằm phân giải một hoặc một số tên miền nào đó cụ thể. NameServer có dạng ns1.your-domain.gq, ns2.your-domain.gq... Các NameServer này thường có đối tượng phục vụ cần nhắm đến là các Open DNS Server cấp độ 3

Cấp độ 3:

Là các Open DNS Server được mở ra ví dụ như 8.8.8.8, 8.8.4.4... nhằm mục đích trung gian đi hỏi một tên miền dùm cho các khách hàng còn lại của thế giới. Chúng thường là các IP dễ nhớ để có thể add vào máy của client đầu cuối mà sử dụng

Cấp độ 4:

Là các DNS Server còn lại của các quản trị viên lập ra để chạy trong nội bộ mạng LAN của họ, giúp phân giải các máy chủ dịch vụ của họ trong hệ thống cục bộ

Nguyên tắc hoạt động của DNS:

Ví dụ một hoạt động sử dụng DNS của Client mình có thể mô tả như sau:

Bước 1: Đầu tiên Client không biết voduy.com trỏ về IP nào, nó quyết định hỏi 8.8.8.8 là 1 DNS Server được gắn sẳn trên card mạng của nó. Gói tin sẽ được chuyển đến địa chỉ 8.8.8.8 trở thành một truy vấn.

Bước 2: cứ giả sử rằng chính 8.8.8.8 cũng không biết voduy.com hiện trỏ về IP nào, nó sẽ đi đến quyết định hỏi 13 DNS ROOT Server được đặt tại US rằng voduy.com dùng cặp NameServer nào để phân giải tên miền, gói tin được chuyển đến ví dụ H.ROOT-SERVERS.NET

Bước 3: tại H.ROOT-SERVERS.NET, tất nhiên 13 DNS ROOT Server không hề có thông tin voduy.com được trỏ về IP nào mà nó chỉ biết mỗi một điều voduy.com đã được đăng ký dưới cặp NameServer nào để phân giải IP. Nó sẽ đọc danh sách các cặp NameServer của voduy.com cho 8.8.8.8 biết. Ví dụ là cặp josh.ns.cloudflare.com và iris.ns.cloudflare.com

Bước 4: DNS Server 8.8.8.8 đã có tên cặp NameServer trên nó quyết định hỏi xem josh.ns.cloudflare.com hoặc con còn lại voduy.com trỏ IP về đâu

Bước 5: DNS Server josh.ns.cloudflare.com hoặc iris.ns.cloudflare.com sẽ trả lời dựa theo bản ghi mà người quản trị voduy.com đã ghi cho nó, gửi cho 8.8.8.8 biết IP của voduy.com trỏ về đâu, ví dụ voduy.com trỏ về 104.24.96.135

Bước 6: DNS Server 8.8.8.8 biết được voduy.com trỏ về 104.24.96.135 liền trả lời lại truy vấn của client rằng voduy.com trỏ về 104.24.96.135, client sẽ biết được voduy.com hiện đang ở 104.24.96.135 nó gửi gói tin đến đó để truy vấn.

Bước 7: DNS Server 8.8.8.8 biết được voduy.com trỏ về 104.24.96.135 nó sẽ ghi lại vào cache, lần tiếp theo có client khác mà hỏi voduy.com trỏ về đâu, nó sẽ sẳn sàng báo luôn là về 104.24.96.135. Còn nếu sau một thời gian nó xóa cache đi, nó lại quên mất IP đó nó sẽ lặp lại từ bước 2, đi hỏi 13 DNS ROOT Server.

Bạn có thể sử dụng tool online Dnswatch để xem quá trình truy tìm IP của một domain.

Thực hành:

Bạn vào dnswatch.info gõ tên domain ví dụ voduy.com vào và nhấn truy vấn Resolve sẽ thấy log hoạt động của tool giống như mình đã mô tả trong ví dụ trên:

Searching for voduy.com. A record at H.ROOT-SERVERS.NET. [198.97.190.53] ...took 88 ms
Searching for voduy.com. A record at c.gtld-servers.net. [192.26.92.30] ...took 14 ms
Searching for voduy.com. A record at josh.ns.cloudflare.com. [173.245.59.126] ...took 5 ms
 
A record found: 104.24.96.135 
A record found: 104.24.97.135
Domain  Type    TTL Answer
voduy.com.  NS  172800  josh.ns.cloudflare.com.
voduy.com.  NS  172800  iris.ns.cloudflare.com.
voduy.com.  A   300 104.24.96.135
voduy.com.  A   300 104.24.97.135

(Tham khảo cài đặt DNS Server trên CentOS 7)

Cám ơn bạn đã đọc hết bài viết, hãy bấm chia sẻ lên mạng xã hội để nhớ rằng bạn đã từng nắm được kiến thức do bài viết này cung cấp rồi:
Share

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *