DNS là gì?

DNS (Domain Name System) là một hệ thống phân giải tên miền, giúp chuyển đổi các tên miền dễ nhớ (như www.example.com) thành địa chỉ IP (như 192.0.2.1) mà các thiết bị mạng sử dụng để định tuyến và kết nối với nhau trên Internet. DNS hoạt động như một danh bạ điện thoại của Internet, giúp người dùng dễ dàng truy cập các trang web mà không cần nhớ địa chỉ IP phức tạp.

Cách thức hoạt động của DNS

Giả sử bạn muốn truy cập vào một trang website có địa chỉ như dns.vn. 

Đầu tiên máy người dùng sẽ gửi request đến DNS server để kiểm tra cái tên miền này tương ứng với cái địa chỉ IP nào. Nếu không tìm thấy cái địa chỉ IP có ứng với cái tên miền thì DNS server sẽ trả về thông báo lỗi, nhưng nếu tìm thấy DNS server sẽ trả lại cái địa chỉ IP tương ứng cho Browser (trình duyệt web) và khi browser đã có địa chỉ IP và nó sẽ kết nối server chứa trang website dns.vn mà bạn đang tìm kiếm và truy cập vào trang website này.

Phân loại DNS server

  1. Root Name Server 

    Root Name Server (Máy chủ gốc DNS) là một tập hợp các máy chủ DNS (Domain Name System) trên toàn cầu, chịu trách nhiệm cho việc phân giải tên miền trên mạng internet.

    Các máy chủ này được duy trì bởi các tổ chức quản lý tên miền quốc tế, bao gồm ICANN (Internet Corporation for Assigned Names and Numbers) và Verisign.

    Root Name Server cung cấp danh sách các tên miền cấp cao nhất trên internet, bao gồm các tên miền cấp cao nhất (top-level domain) như .com.org.net.edu.gov.mil và các tên miền quốc gia cấp cao nhất như .us, .uk, .fr,..

    Các máy chủ gốc DNS là gì không chứa thông tin về các tên miền cụ thể, mà chỉ cung cấp thông tin về các máy chủ DNS cấp cao hơn để tiếp tục phân giải tên miền.

  2. Local Name Server                                                                                                                                    Local Name Server là một máy chủ DNS được cấu hình trên mạng nội bộ của một tổ chức hoặc doanh nghiệp, giúp hỗ trợ quản lý tên miền và phân giải tên miền nhanh chóng và hiệu quả trên mạng nội bộ.

Chức năng của DNS

DNS Server có chức năng quan trọng trong việc phân giải tên miền thành địa chỉ IP và giúp trình duyệt tìm kiếm và kết nối đến các trang web hoặc tài nguyên trên mạng Internet. Cụ thể, DNS Server có các chức năng như sau: 

  • Phân giải tên miền: DNS Server giúp phân giải tên miền của các trang web thành địa chỉ IP của máy chủ chứa trang web đó.

         Khi bạn nhập tên miền vào trình duyệt, trình duyệt sẽ gửi yêu cầu đến DNS Server để tìm kiếm địa chỉ IP tương ứng.

  • Lưu trữ thông tin DNS: DNS Server lưu trữ thông tin về các tên miền và địa chỉ IP tương ứng. Khi trình duyệt yêu cầu tìm kiếm một tên miền, DNS Server sẽ truy vấn trong cơ sở dữ liệu của nó để tìm kiếm thông tin tương ứng với tên miền đó.
  • Cập nhật thông tin DNS: DNS Server có thể được cấu hình để cập nhật thông tin về tên miền và địa chỉ IP tương ứng. Các thay đổi này có thể được thực hiện bởi quản trị viên mạng hoặc tự động thông qua các công cụ quản lý DNS.
  • Tăng tốc độ truy cập: DNS Server cũng có thể được sử dụng để tăng tốc độ truy cập cho người dùng bằng cách lưu trữ thông tin DNS trong bộ nhớ đệm.

         Khi truy vấn DNS là gì được thực hiện, DNS Server sẽ truy cập thông tin từ bộ nhớ đệm trước, nếu có, thay vì thực hiện truy vấn đến các máy chủ DNS khác.

  • Bảo mật thông tin DNS: DNS Server có thể được cấu hình để đảm bảo tính bảo mật của thông tin DNS.

         Các tính năng bảo mật bao gồm chữ ký số, mã hóa và xác thực người dùng để đảm bảo rằng thông tin DNS là gì được truyền tải an toàn và không bị đánh cắp. 

 

About the Author

Ngọc Tri

View all author's posts

Bài viết khác

model quan hệ trong go-pg

1. Giới thiệu Go-pg sử dụng công nghệ ORM (tức Object-relation mapping) giúp ánh xạ bảng cơ sở dữ liệu vào trong struct Điều đấy có nghĩa là với mỗi struct trong golang có thể dùng làm đại diện để truy vấn đến bảng trong postgresql và trả ra đối tượng struct với giá trị […]

GORM

1. ORM là gì? Trước hết để hiểu được thư viện Gorm chúng ta cần tìm hiểu về ORM, một công cụ quan trọng và thường xuyên được áp dụng trong quản trị cơ sở dữ liệu. ORM là tên viết tắt của cụm từ “Object Relational Mapping” đây là tên gọi chỉ việc ánh […]

REST API với Golang, Gin, MinIO và Docker

Đầu tiên, chúng ta sẽ viết một đoạn mã nhỏ bằng chữ Hello World. Bước 1: Tạo thư mục để chứa mã nguồn của dự án Todo App mkdir go-rest-api Bước 2: Khởi tạo Go Modules go mod init TodoApp go get -u github.com/gin-gonic/gin Bước 3: Tạo tệp main.go và viết đầu tiên chương trình […]

REST API cơ bản trong Golang

Cấu trúc project Chúng ta hãy tạo cấu trúc thư mục như hình bên dưới, project này có tên GolangRestApi, có thể clone về với đường link sau: Github Sau khi clone về, đổi tên project thành GolangRestApi. Vào GOPATH, copy vào thư mục src: Code Rest Api Golang entities/user.go Khai báo cấu trúc của […]

Golang

Golang là gì? Go hay còn gọi là Golang là ngôn ngữ lập trình mã nguồn mở, được thiết kế tại Google bởi Robert Griesemer, Rob Pike, and Ken Thompson. Go có cú pháp giống với C và tất nhiên nó là ngôn ngữ lập trình biên dịch (compiled programming language) Cú pháp của ngôn […]

Elasticsearch

Elasticsearch là gì? Elasticsearch là một search engine (công cụ tìm kiếm) rất mạnh mẽ. Elasticsearch cũng có thể coi là một document oriented database, nó chứa dữ liệu giống như một database và thực hiện tìm kiếm trên những dữ liệu đó. Đại khái là thay vì bạn tìm kiếm trên file, trên các […]