DNS (Domain Name System) là gì? Cấu trúc, chức năng, nguyên tắc của DNS

DNS Domain Name System

DNS là gì? Cấu trúc của hệ thống tên miền và phân loại tên miền như thế nào? Các chức năng của các DNS, nguyên tắc làm việc của dns ra làm sao. Đây sẽ là toàn bộ nội dung chính trong bài viết DNS (Domain Name System) là gì? Cấu trúc, chức năng, nguyên tắc của DNS của Huỳnh Quí IT ngày hôm nay. Mời các bạn đón xem.

Đầu tiên, chúng ta cùng đi qua phần đầu tiên, giới thiệu về DNS nhé.

Giới thiệu về DNS

DNS là gì?

Mỗi máy tính, thiết bị mạng tham gia vào mạng Internet đều giao tiếp với nhau bằng địa chỉ IP (Internet Protocol). Để thuận tiện cho việc sử dụng và dễ nhớ ta dùng tên (domain name) để xác định thiết bị đó. Hệ thống tên miền DNS (Domain Name System) được sử dụng để ánh xạ tên miền thành địa chỉ IP.

Vì vậy, khi muốn liên hệ tới các máy, chúng chỉ cần sử dụng chuỗi ký tự dễ nhớ (domain name) như: www.huynhquiit.com, download.huynhquiit.com,… thay vì sử dụng địa chỉ IP là một dãy số dài khó nhớ.

Ban đầu, khi DNS chưa ra đời, người ta sử dụng một file tên Host.txt, file này sẽ lưu thông tin về tên host và địa chỉ của host của tất cả các máy trong mạng, file này được lưu ở tất cả các máy để chúng có thể truy xuất đến máy khác trong mạng. Khi đó, nếu có bất kỳ sự thay đổi về tên host, địa chỉ IP của host thì ta phải cập nhật lại toàn bộ các file Host.txt trên tất cả các máy.

Do vậy đến năm 1984 Paul Mockpetris thuộc viện USC’s Information Sciences Institute phát triển một hệ thống quản lý tên miền mới lấy tên là Hệ thống tên miền – Domain Name.

Hệ thống tên miền này cũng sữ dụng một file tên host.txt, lưu thông tịn của tất cả các máy trong mạng, nhưng chỉ được đặt trên máy làm máy chủ tên miền (DNS). Khi đó, các Client trong mạng muốn truy xuất đến các Client khác, thì nó chỉ việc hỏi DNS.

Như vậy, mục đích của DNS là:

  • Phân giải địa tên máy thành địa chỉ IP và ngược lại.
  • Phân giải tên domain.

Cấu trúc của hệ thống tên miền:

Hiện nay hệ thống tên miền được phân thành nhiêu cấp:

Gốc (Domain root) : Nó là đỉnh của nhánh cây của tên miền. Nó được biểu diễn đơn giản chỉ là dấu chấm “.”

Tên miền cấp một (Top-level-domain) : gồm vài kí tự xác định một nước, khu vưc hoặc tổ chức. Nó đươc thể hiện là “.com” , “.edu”,…

Tên miền cấp hai (Second-level-domain): Nó rất đa dạng có thể là tên một công ty, một tổ chức hay một cá nhân.

  • Ví dụ: “com.” là tên miền cấp 2. Huynhquiit.com chẳng hạn.

Tên miền cấp nhỏ hơn (Subdomain) : Chia thêm ra của tên miền cấp hai trở xuống thường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủ đề nào đó. Ví dụ: “download.huynhquiit.com.”

Cấu trúc của hệ thống tên miền

Phân loại tên miền:

  • Com : Tên miền này được dùng cho các tổ chức thương mại.
  • Edu : Tên miền này được dùng cho các cơ quan giáo dục, trường học.
  • Net : Tên miền này được dùng cho các tổ chức mạng lớn.
  • Gov : Tên miền này được dùng cho các tổ chức chính phủ.
  • Org : Tên miền này được dùng cho các tổ chức khác.
  • Int : Tên miền này dùng cho các tổ chức quốc tế.
  • Info : Tên miền này dùng cho việc phục vụ thông tin.
  • Arpa : Tên miền ngược.
  • Mil : Tên miền dành cho các tổ chức quân sự, quốc phòng.
  • Mã các nước trên thế giới tham gia vào mạng internet, các quốc gia này được qui định bằng hai chữ cái theo tiêu chuẩn ISO-3166 .Ví dụ : Việt Nam là .vn, Singapo là sg….

Chức năng của DNS

Mỗi Website có một tên ( là tên miền hay đường dẫn URL : Universal Resource Locator ) và một địa chỉ IP. Địa chỉ IP gồm 4 nhóm số cách nhau bằng dấu chấm. Khi mở một trình duyệt Web và nhập tên website, trình duyệt sẽ đến thẳng website mà không cần phải thông qua việc nhập địa chỉ IP của trang web.

Quá trình “dịch” tên miền thành địa chỉ IP để cho trình duyệt hiểu và truy cập được vào website là công việc của một DNS server. Các DNS trợ giúp qua lại với nhau để dịch địa chỉ “IP” thành “tên” và ngược lại. Người sử dụng chỉ cần nhớ “tên”, không cần phải nhớ địa chỉ IP ( địa chỉ IP là những con số rất khó nhớ ).

Nguyên tắc làm việc của DNS

Mỗi nhà cung cấp dịch vụ vận hành và duy trì DNS server riêng của mình, gồm các máy bên trong phần riêng của mỗi nhà cung cấp dịch vụ đó trong Internet. Tức là, nếu một trình duyệt tìm kiếm địa chỉ của một website thì DNS server phân giải tên website này phải là DNS server của chính tổ chức quản lý website đó chứ không phải là của một tổ chức ( nhà cung cấp dịch vụ ) nào khác.

INTERNIC ( Internet Network Information Center ) chịu trách nhiệm theo dõi các tên miền và các DNS server tương ứng. INTERNIC là một tổ chức được thành lập bởi NFS ( National Science Foundation ), AT&T và Network Solution, chịu trách nhiệm đăng ký các tên miền của Internet. INTERNIC chỉ có nhiệm vụ quản lý tất cả các DNS server trên Internet chứ không có nhiệm vụ phân giải tên cho từng địa chỉ.

DNS có khả năng tra vấn các DNS server khác để có được một cái tên đã được phân giải. DNS server của mỗi tên miền thường có hai việc khác biệt. Thứ nhất, chịu trách nhiệm phân giải tên từ các máy bên trong miền về các địa chỉ Internet, cả bên trong lẫn bên ngoài miền nó quản lý. Thứ hai, chúng trả lời các DNS server bên ngoài đang cố gắng phân giải những cái tên bên trong miền nó quản lý.

DNS server có khả năng ghi nhớ lại những tên vừa phân giải. Để dùng cho những yêu cầu phân giải lần sau. Số lượng những tên phân giải được lưu lại tùy thuộc vào quy mô của từng DNS.

Quá trình phân giải tên dns thành ip

Root name server: Là máy chủ quản lý các name server ở mức top-level domain. Khi có truy vấn về một tên miền nào đó thì Root Name Server phải cung cấp tên và địa chỉ IP của name server quản lý top-level domain (Thực tế là hầu hết các root server cũng chính là máy chủ quản lý top-level domain) và đến lượt các name server của top-level domain cung cấp danh sách các name server có quyền trên các second-level domain mà tên miền này thuộc vào. Cứ như thế đến khi nào tìm được máy quản lý tên miền cần truy vấn.

Qua trên cho thấy vai trò rất quan trọng của root name server trong quá trình phân giải tên miền. Nếu mọi root name server trên mạng Internet không liên lạc được thì mọi yêu cầu phân giải đều không thực hiện được.

Client sẽ gửi yêu cầu cần phân giải địa chỉ IP của máy tính có tên girigiri.gbrmpa.gov.au đến name server cục bộ. Khi nhận yêu cầu từ Resolver, Name Server cục bộ sẽ phân tích tên này và xét xem tên miền này có do mình quản lý hay không. Nếu như tên miền do Server cục bộ quản lý, nó sẽ trả lời địa  chỉ  IP  của  tên  máy  đó  ngay  cho  Resolver.

Ngược lại, server cục bộ sẽ truy vấn đến một Root Name Server gần nhất mà nó biết được. Root Name Server sẽ trả lời địa chỉ IP của Name Server quản lý miền au. Máy chủ name server cục bộ lại hỏi tiếp name server quản lý miền au và được tham chiếu đến máy chủ quản lý miền  gov.au.

Máy chủ quản lý gov.au chỉ dẫn máy name server  cục bộ tham chiếu đến máy chủ quản lý miền gbrmpa.gov.au. Cuối cùng máy name server cục bộ truy vấn máy chủ quản lý miền gbrmpa.gov.au và nhận được câu trả lời.

Các loại truy vấn:

Truy vấn có thể ở 2 dạng :

Truy vấn đệ quy (recursive query): khi name server nhận được truy vấn dạng này, nó bắt buộc phải trả về kết quả tìm được hoặc thông báo lỗi nếu như truy vấn này không phân giải được. Name server không thể tham chiếu truy vấn đến một name server khác. Name server có thể gửi truy vấn dạng đệ quy hoặc tương tác đến name server khác nhưng phải thực hiện cho đến khi nào có kết quả mới thôi.

Các loại truy vấn dns

Truy vấn tương tác (Iteractive query): khi name server nhận được truy vấn dạng này, nó trả lời cho Resolver với thông tin tốt nhất mà nó có được vào thời điểm lúc đó. Bản thân name server không thực hiện bất cứ một truy vấn nào thêm. Thông tin tốt nhất trả về có thể lấy từ dữ liệu cục bộ (kể cả cache). Trong trường hợp name server không tìm thấy trong dữ liệu cục bộ nó sẽ trả về tên miền và địa chỉ IP của name server gần nhất mà nó biết.

Truy vấn tương tác trong dns

Quá trình phân giải IP thành tên máy tính

Ánh xạ địa chỉ IP thành tên máy tính được dùng để diễn dịch các tập tin log cho dễ đọc hơn. Nó còn dùng trong một số trường hợp chứng thực trên hệ thống UNIX (kiểm tra các tập tin .rhost hay host.equiv). Trong không gian tên miền đã nói ở trên dữ liệu -bao gồm cả địa chỉ IP– được lập chỉ mục theo tên miền. Do đó với một tên miền đã cho việc tìm ra địa chỉ IP khá dễ dàng.

Để có thể phân giải tên máy tính của một địa chỉ IP, trong không gian tên miền người ta bổ sung thêm một nhánh tên miền mà được lập chỉ mục theo địa chỉ IP. Phần không gian này có tên miền là in-addr.arpa.

Mỗi nút trong miền in-addr.arpa có một tên nhãn là chỉ số thập phân của địa chỉ IP. Ví dụ miền inaddr.arpa có thể có 256 subdomain, tương ứng với 256 giá trị từ 0 đến 255 của byte đầu tiên trong địa chỉ IP. Trong mỗi subdomain lại có 256 subdomain con nữa ứng với byte thứ hai. Cứ như thế và đến byte thứ tư có các bản ghi cho biết tên miền đầy đủ của các máy tính hoặc các mạng có địa chỉ IP tương ứng.

Lưu ý khi đọc tên miền địa chỉ IP sẽ xuất hiện theo thứ tự ngược. Ví dụ nếu địa chỉ IP của máy winnie.corp.hp.com là 15.16.192.152, khi ánh xạ vào miền in-addr.arpa sẽ là 152.192.16.15.in- addr.arpa.

Vậy là chúng ta đã cùng đi qua bài viết DNS (Domain Name System) là gì? Cấu trúc, chức năng, nguyên tắc của DNS. Nếu thay hay hãy share và vote 5* cho bài viết nhé các bạn. Theo dõi chuyên mục có thể bạn chưa biết để tham khảo thêm nhiều bài viết hay hơn tại HuynhQuiIT.Com nhé các bạn. Nếu có gì thắc mắc các bạn có thể liên hệ mình qua Fanpage.

5/5 - (1 bình chọn)
Theo dõi
Thông báo của
guest
0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận
0
Rất thích suy nghĩ của bạn, hãy bình luận.x