Code Tu Tam

DNS và cách nó hoạt động ?

Rate this post

DNS và cách hoạt động của DNS

Khái niệm

Trước khi tìm hiểu về dns ta cần phải hiểu internet là gì, và trước đó nữa chúng ta cần phải hiểu network là gì?

– Network là một nhóm mà máy tính và các thiết bị được kết nối với nhau để có thể chia sẻ tài nguyên với nhau.

– Internet là một mạng lưới toàn cầu

Vậy làm thế nào để chúng ta có thể biết được vị trí của thiết bị/máy tính của mình hay của người khác trên internet?

– Mỗi thiết bị trên internet đều có 1 địa chỉ IP khác nhau (VD: 103.28.39.219), đây cũng là địa chỉ của server nơi lưu trữ website trên trình duyệt.

Nhưng chúng hoạt động như thế nào? Chúng ta chỉ đơn giản để nhập tên miền lên trình duyệt, vậy làm thế nào để trình duyệt tìm thấy địa chỉ IP trên server

=> Bởi vì trình duyệt sử dụng DNS, điều giúp chúng ta lấy được địa chỉ IP thông qua tên miền.

Cách DNS hoạt động

– Đầu tiên, khi người dùng sẽ nhập tên miền vào trình duyệt

=> Bộ phân giải DNS sẽ tìm địa chỉ IP thông qua tên miền của website

+ Trình duyệt sẽ tìm kiếm trước tiên ở cache của trình duyệt nếu tên miền đó đã từng được truy cập trước đó.

+ Nếu cache của trình duyệt không có thì nó sẽ tìm kiếm ở DNS cache, bởi dns cache của hệ điều hành có thể được lưu vào bộ nhớ đệm

+ Nếu DNS cache cũng không có thì tiếp theo sẽ tìm kiếm ở  Hots file.

– Nếu cả thông qua cả 3 điều trên mà vẫn chưa tìm được địa chỉ IP thì tiếp theo sẽ là

Đệ quy DNS (recursive dns server) đây là nhà cung cấp dịch vụ internet bình thường (ISP) của bạn.

+ ISP có thể không biết gì về tên miền nhưng nó có thể thông qua các truy cập bất kỳ nào trước đó của người dùng nào đó đã từng truy cập vào website và có được địa chỉ IP của website đó.

– Nếu thông qua Đệ quy DNS vẫn không thể lấy được địa chỉ IP của website thì tiếp theo nó sẽ tìm ở Root DNS server. Tương tự như Đệ quy dns root dns server không có thông tin địa chỉ IP của tên miền. Nhưng nó có thông tin của tên miền cấp cao hơn (TLP) (VD: nếu bạn đang tim địa chỉ IP của google.com thì TLP sẽ là .com). Vì nó sẽ có tất cả thông tin của TLP server

+ Hiện tại TLP server cũng không biết địa chỉ IP của tên miền ở đâu, nhưng nó có thể trả về thông tin cuối cùng của máy chủ định danh có thểm quyền (authoritative name server).

+ Cũng từ máy chủ định danh này nó sẽ lấy được địa chỉ IP của tên miền -> sau đó sẽ chuyền về recursive dns server -> sau đó sẽ chuyền về máy tính của người dùng -> tiếp đó sẽ đến trình duyệt -> trình duyệt sẽ gửi yêu cầu về website server => và cuối cùng lấy thông tin website từ đó.

Sự khác nhau giữa authoritative dns và recursive dns

Recursive DNS

– Recursive dns là máy tính phản hồi yêu cầu đệ quy từ máy khách và dành thời gian để theo dõi bản ghi DNS.

=> Nó thực hiện điều này bằng cách thực hiện một loạt yêu cầu cho đến khi nó đến máy chủ định danh DNS có thẩm quyền cho bản ghi được yêu cầu (hoặc hết thời gian chờ hoặc trả về lỗi nếu không tìm thấy bản ghi).

Và Recursive dns không phải lúc nào cũng cần thực hiện nhiều yêu cầu để theo dõi các bản ghi cần thiết để phản hồi cho một máy khách. Bộ nhớ đệm là một quá trình liên tục dữ liệu giúp rút ngắn các yêu cầu cần thiết bằng cách cung cấp bản ghi tài nguyên được yêu cầu trước đó trong tra cứu DNS.

Authoritative DNS

Authoritative DNS có thẩm quyền là một máy chủ thực sự lưu giữ và chịu trách nhiệm về các bản ghi tài nguyên DNS.

=> Đây là máy chủ ở cuối chuỗi tra cứu DNS sẽ phản hồi với bản ghi tài nguyên được truy vấn, cuối cùng cho phép trình duyệt web thực hiện yêu cầu đạt được địa chỉ IP cần thiết để truy cập trang web hoặc các tài nguyên web khác. Máy chủ định danh có thẩm quyền có thể đáp ứng các truy vấn từ dữ liệu của chính nó mà không cần truy vấn nguồn khác, vì nó là nguồn truy vấn cuối cùng cho các bản ghi DNS.

Bản ghi DNS (DNS Record)

Phần này sẽ nói về máy chủ định danh có thểm quyền (authoritative name server).

– Thông tin chính được lưu trữ ở authoritative name server được gọi là bản ghi DNS hoặc Zone Files.

– Nếu bạn từng mua hoặc đã từng cài đặt tên miền thì khả năng cao bạn đã từng cài đặt bản ghi DNS

Thông tin chung của bản ghi DNS

Bản ghi A (A Record)

– Đây là viết tắt của Address Record và nó đề cập đến địa chỉ IP của server mà tên miền này trỏ đến

CNAME Record

– Đây là viết tắt của Canonical name, bản ghi bí danh cho phép chúng ta trỏ tên miền hoặc tên miền phụ đến tên miền khác hoặc tên miền hiện tại.

Bây giờ bất cứ khi nào người dùng tìm www.abc.com đều sẽ tìm đến abc.com và trả về địa chỉ IP tương ứng.

MX Record

– Đây là viết tắt của Mail Exchanger, nó ta giúp định tuyến email đến máy chủ liên quan

– Số 10 là đại diện cho quyền ưu tiên của mail khi xử lý yêu cầu của server

TXT Record

– Đây là viết tắt của text record, nó cho phép chúng tôi thêm văn bản tùy ý vào tên miền

NS Record

– Đây là viết tắt của Name server Record, có nhiệm vụ cung cấp cho bạn vị trí của các máy chủ có thẩm quyền của máy chủ định là nơi chứa thông tin tên miền.

Khi nào thêm Glue records vào cài đặt DNS

Khái niệm

Glue Record là địa chỉ IP của nameservers tại cơ quan đăng ký tên miền, đây là một phần cơ bản của DNS Record.

– Câu hỏi ở đây là khi nào cần thêm glue record?

Ví dụ: giả sử tên miền của bạn (basato.com) đang sử dụng ns1.nameserver.com và ns2.nameserver.com làm nameservers, nhưng intracom.net cũng sử dụng ns1.nameserver.com và ns2.nameserver.com làm nameservers.

=> Bạn không thể biết được địa chỉ IP của tên miền của mình.

– Glue record có thể thông qua thông báo của DNS để máy chủ định danh gốc (root name server) có thể sử dụng phần đó để thêm A record và AAA record cho các máy chủ định danh mà nó đã đề cập trước đó.

Sự khác nhau

– Để hình dung rõ hơn thì đây là sự khác biệt khi thêm và không thêm glue record

Chưa thêm Sau khi thêm
– Khi bạn gửi request địa chỉ IP của intracom.vn

-> name server .vn trả về ns1.intracom.net

-> trình duyệt sẽ gửi truy vấn địa chỉ IP đến ns1.intracom.net

-> name server .vn gửi lại truy vấn đến intracom.vn

==> Trình duyệt không thể xử lý resquest nếu không có địa chỉ IP

– trình duyệt gửi request địa chỉ IP

-> name server .vn trả về 103.28.39.219,

Địa chỉ IP được lưu trữ trong lần cuối cùng kiểm tra

==> Trình duyệt lấy được địa chỉ IP và gửi request đến trang web

 

Exit mobile version