Đầu tiên bạn cần biết trước rằng:

  • Internet giao tiếp thông qua địa chỉ IP chứ không phải tên miền.
  • DNS (viết tắt của Domain Name Server) là nơi để map tên website thành địa chỉ IP. Hiểu đơn giản nó như một cuốn danh bạn điện thoại, bạn tìm tên rồi truy ra SĐT trong danh bạ cũng giống như internet tìm tên website rồi truy ra địa chỉ IP trong DNS vậy.

     Danh bạ điện thoại:

Tên người  SĐT
Dao Van Hung 0123456789
... ...

     DNS (Domain Name Server):

Tên miền  Địa chỉ IP
blog.daovanhung.com 123.456.789.012
... ...

 

Khi bạn gõ lên thanh URL của browser tên một website nào đó (VD blog.daovanhung.com), browser cần phải biết địa chỉ IP của website đó để chạy tới lấy dữ liệu về hiển thị cho bạn xem.

Làm cách nào mà browser có thể tìm được địa chỉ IP đó?

 

1. Local cached

Đầu tiên browser sẽ tìm trong cached của mình, nếu trước đó bạn từng truy cập tới website đó rồi thì địa chỉ IP của website đó sẽ được lưu vào cached của browser, lần tới nó chỉ cần lấy ra từ cached của mình. IP chỉ được browser lưu vào cached trong một khoảng thời gian ngắn.

Nếu browser không tìm thấy trong cached của mình, nó sẽ tìm trong local DNS nằm ngay trên chính máy tính bạn đang dùng, local DNS này chỉ lưu IP trong khoảng thời gian TTL (Time To Live).

Nếu local DNS không tìm thấy IP, nó lại tiếp tục tìm trong Recursive DNS Servers.

 

2. Recursive DNS Servers

Khi đăng ký sử dụng internet, ta sẽ phải đăng ký qua nhà cung cấp internet gọi là ISP (Internet Service Provider).

Recursive DNS Servers là một hay nhiều DNS Server được đặt mặc định ở ISP, chúng lại tiếp tục tìm IP trên cached của mình, nếu không có request lại được điều hướng tới Root DNS Servers.

 

3. Root DNS Servers 

Khi Recursive DNS Servers không tìm được IP, internet cần tìm tới địa chỉ IP của TLD (Top Level Domain) trước.

TLD là phần sau cùng của domain, VD blog.daovanhung.com có TLD là .com.

Nơi chứa thông tin IP của .com gọi là Top Level DNS Servers, để có thể tới được Top Level DNS Server cần phải hỏi Root DNS Server. Hay nói cách khác, Root DNS Servers là nơi điều hướng ta tới Top Level DNS Servers  lấy được IP của .com.

 

4. Top Level DNS Servers

Như đã nói ở trên, đây là nơi chứa danh bạ để truy xuất ra IP của TLD (chẳng hạn .com).

Đây lại là nơi chứa thông tin IP của Authoriative Name Servers, request lại được điều hướng tới Authoriative Name Servers.

 

5. Authoriative Name Servers

Là tầng DNS Server cuối cùng chứa IP của blog.daovanhung.com, đến được đây là ta đã lấy được IP của tên miền, truy xuất tới IP đó lấy nội dung về và hiển thị trên browser cho chúng ta xem.

 

Ở các tầng vừa nói ở trên, IP sẽ được cached ở Recursive DNS Servers và local DNS Servers, thời gian được cached lại là TTL

 

6. TTL

TTL viết tắt của Time To Live là thời gian để lưu lại IP trên local nhằm truy xuất nhanh hơn. 

Khi bạn thay đổi host cho website dẫn tới việc thay đổi IP thì website có thể sẽ không thể truy cập được trong vòng TTL. Sau khoảng thời gian TTL, DNS servers sẽ tạo request để cập nhật địa chỉ IP, lúc đó bạn mới có thể truy cập được website một cách bình thường.

 

Link tham khảo:

https://scotch.io/tutorials/dns-explained-how-your-browser-finds-websites

https://www.cloudflare.com/learning/dns/what-is-dns/