Mô tả giao thức DNS (Hệ thống tên miền). Dịch vụ và giao thức DNS

Bài viết này thảo luận về các khía cạnh cơ bản của hoạt động cần thiết cho ứng dụng thực tế.

DNS (Hệ thống tên miền) là một hệ thống phân tán để lưu trữ và xử lý thông tin về các vùng miền. Trước hết, cần phải tương quan giữa địa chỉ IP của các thiết bị trên mạng và các tên tượng trưng phù hợp hơn với nhận thức của con người. Cung cấp thông tin về địa chỉ IP của máy chủ theo địa chỉ tượng trưng không phải là mục đích duy nhất của DNS. Hệ thống hoạt động với nhiều loại bản ghi tài nguyên khác nhau, cho phép bạn thực hiện rất nhiều tác vụ: chuyển tiếp giữa các tên miền, cân bằng tải giữa các máy chủ, liên kết các dịch vụ cụ thể (ví dụ: email) với một miền.

Hệ thống tên miền là một trong những công nghệ cơ bản của môi trường Internet hiện đại, vì thông tin về địa chỉ IP của nút được yêu cầu là điều kiện tiên quyết để nhận được phản hồi cho bất kỳ yêu cầu Internet nào. Nhưng địa chỉ IP là một giá trị số như “1.23.45.67”, không phù hợp với sự thoải mái của con người. Ngoài ra, nguyên tắc cơ bản của việc phân phối địa chỉ IP trên mạng là tính duy nhất. Điều quan trọng nữa là địa chỉ mạng không phải là tham số ổn định nhất. Nó có thể thay đổi (ví dụ: khi máy chủ phục vụ nút được yêu cầu thay đổi, nhà cung cấp dịch vụ lưu trữ thay đổi, v.v.). Tất cả những đặc điểm trên khiến hệ thống điều hướng địa chỉ mạng trở nên khó khăn đối với con người.

DNS đảm bảo việc chuyển đổi tên miền tượng trưng được khách hàng yêu cầu thành địa chỉ IP (địa chỉ) của máy chủ (máy chủ) phục vụ vùng miền này. Ban đầu, trước sự phát triển của Internet, các địa chỉ được chuyển đổi theo nội dung của tệp “máy chủ”, được biên dịch tập trung và tự động gửi đến từng máy trên mạng. Khi mạng lưới toàn cầu phát triển, phương pháp này không còn hợp lý - nảy sinh nhu cầu về một cơ chế mới, đó là DNS, được phát triển vào năm 1983 bởi Paul Mockapetris.

Các đặc điểm chính của DNS là:

  • Lưu trữ và quản lý phân tán- mỗi máy chủ DNS có nghĩa vụ chỉ lưu trữ thông tin cho các miền được ủy quyền và những người khác nhau chịu trách nhiệm về các nút khác nhau của cây tên miền
  • Bộ nhớ đệm dữ liệu- Máy chủ DNS có thể lưu trữ tạm thời một lượng thông tin nhất định về các miền không được ủy quyền để giảm mức tải tổng thể
  • Cấu trúc phân cấp- nút chịu trách nhiệm về vùng miền có thể ủy quyền độc lập các nút phụ cho các máy chủ DNS khác
  • Sự đặt chỗ- việc lưu trữ và xử lý thông tin về cùng một nút thường được cung cấp bởi một số máy chủ DNS, tách biệt về mặt vật lý và logic. Cách tiếp cận này đảm bảo tính sẵn có của thông tin ngay cả khi một hoặc nhiều nút bị lỗi.

Phân cấp và ủy quyền tên miền

Lãnh địa là một nhánh được đặt tên trong cây tên bao gồm chính nút đó (ví dụ: tên miền cấp một ".com"), cũng như các nút cấp dưới của nó (ví dụ: tên miền cấp hai "example.com", tên miền cấp ba "mail. example.com", v.v.). Để biểu thị sự liên kết thứ bậc của tên miền, người ta thường sử dụng khái niệm "mức độ"- chỉ báo vị trí của nút trong cây miền. Giá trị cấp độ càng thấp thì vị trí thứ bậc của miền càng cao

  • "." - tên miền cấp 0
  • ".ru"- tên miền cấp đầu tiên (trên cùng)
  • "example.com"- tên miền cấp 2
  • "mail.example.com"- tên miền cấp 3
  • Danh sách cứ kéo dài

Chú ý đến tên miền cấp 0 "." (chấm chấm), còn được gọi là gốc. Trong thực tế, dấu chấm thường không được chỉ định ("example.com" thay vì "example.com."), tức là. việc chỉ định tên miền gốc không phải là điều kiện tiên quyết để phân giải địa chỉ IP. Hầu hết các chương trình máy khách (trình duyệt Internet, v.v.) tự động thêm tên miền cấp 0 và không hiển thị nó cho người dùng. Tên miền không bao gồm chỉ định tên miền cấp 0 được gọi là tên miền tương đối, nhưng tên miền có dấu chấm ở cuối được gọi là đủ điều kiện. (FQDN - Tên miền đủ điều kiện).

Vùng miền- một phần của cây tên miền phân cấp (ví dụ: ".ru"), được chuyển hoàn toàn để phục vụ cho một máy chủ DNS cụ thể (thường là một số) với mục đích giao trách nhiệm về điều này và tất cả các miền cấp dưới cho người khác (" Anyaddress.ru", "any.anyaddress .ru").

Phái đoàn- chuyển giao trách nhiệm về một nhánh nhất định của cây tên miền cho cá nhân hoặc pháp nhân khác. Quy trình này thực tế thực hiện một nguyên tắc quan trọng của hoạt động DNS - lưu trữ phân tán các bản ghi và xử lý yêu cầu. Bản thân quá trình ủy quyền bao gồm việc thêm cái gọi là “keo” hồ sơ NSđối với vùng con được ủy quyền ("example.com") trỏ đến máy chủ DNS của bên nhận (ví dụ: máy chủ DNS của công ty chúng tôi). Kể từ thời điểm này, tất cả các bản ghi tài nguyên của miền cấp hai "example.com" và tất cả các miền con của nó (ví dụ: "mail.example.com", v.v.) đều được lưu trữ trên máy chủ DNS của công ty này và vùng chính ".ru" chỉ lưu trữ các bản ghi NS trỏ đến các máy chủ này.

máy chủ DNS- một máy chủ lưu trữ các bản ghi tài nguyên và xử lý các truy vấn DNS. Máy chủ DNS có thể phân giải độc lập các địa chỉ trong khu vực trách nhiệm của nó (trong ví dụ trên, đây là vùng example.com) hoặc chuyển tiếp yêu cầu đối với các vùng mà nó không phục vụ tới máy chủ ngược tuyến.

Máy khách DNS- một bộ công cụ phần mềm để làm việc với DNS. Bản thân máy chủ DNS cũng hoạt động như một máy khách theo định kỳ.

Các loại bản ghi tài nguyên cơ bản

Bản ghi tài nguyên (RR - Bản ghi tài nguyên)- đơn vị lưu trữ và truyền thông tin trong DNS, bao gồm các thành phần (trường) sau:

  • Tên- tên miền chứa bản ghi
  • TTL (Thời gian để sống)- thời gian lưu trữ ghi được cho phép của máy chủ không chịu trách nhiệm
  • Kiểu- tham số xác định mục đích và định dạng của mục nhập trong trường dữ liệu (Rdata)
  • Lớp học- loại mạng dữ liệu (ngụ ý khả năng DNS hoạt động với các loại mạng khác ngoài TCP/IP)
  • Độ dài trường dữ liệu (Rdlen)
  • Trường dữ liệu (Rdata)- nội dung và định dạng của trường phụ thuộc vào loại bản ghi

Sau đây là các loại bản ghi tài nguyên được sử dụng phổ biến nhất:

  • A (Bản ghi địa chỉ IPv4)- liên kết tên miền với địa chỉ IPv4 của máy chủ
  • AAAA (Bản ghi địa chỉ IPv6)- liên kết tên miền với địa chỉ IPv6 của máy chủ (tương tự như bản ghi A)
  • CNAME (Bản ghi tên chuẩn)- được sử dụng để chuyển hướng đến một tên miền khác
  • MX (Mail Exchange - trao đổi thư)- đề cập đến máy chủ thư phục vụ tên miền
  • NS (Name Server - máy chủ tên)- đề cập đến máy chủ DNS chịu trách nhiệm về tên miền
  • TXT- mô tả văn bản của tên miền. Thường được yêu cầu thực hiện các tác vụ cụ thể (ví dụ: xác nhận quyền sở hữu miền khi liên kết miền đó với dịch vụ thư)
  • PTR (Point to Reverse - bản ghi con trỏ)- kết nối địa chỉ IP của máy với một miền; nó được sử dụng chủ yếu để kiểm tra với các dịch vụ thư của bên thứ ba xem các email được gửi qua máy này có liên quan đến miền được chỉ định trong thông số máy chủ thư hay không. Nếu các tham số này không khớp, chữ cái sẽ được kiểm tra cẩn thận hơn bằng các tiêu chí khác.

Truy vấn DNS đệ quy và không đệ quy

đệ quy là một mô hình xử lý các yêu cầu của máy chủ DNS, trong đó máy chủ DNS thực hiện tìm kiếm thông tin đầy đủ, bao gồm cả các miền không được ủy quyền cho nó, chuyển sang các máy chủ DNS khác nếu cần.

truy vấn DNS từ client (máy chủ) đến server đều có tính đệ quy và không đệ quy. Trong trường hợp đầu tiên, máy chủ DNS nhận được yêu cầu sẽ truy vấn tất cả các nút theo thứ tự giảm dần của cấp vùng cho đến khi nhận được phản hồi tích cực hoặc thông tin rằng miền được yêu cầu không tồn tại. Trong trường hợp yêu cầu không đệ quy, máy chủ sẽ chỉ đưa ra câu trả lời tích cực khi yêu cầu một nút thuộc vùng miền mà máy chủ này chịu trách nhiệm. Việc không đệ quy có thể không chỉ do loại yêu cầu mà còn do việc chính máy chủ DNS cấm thực hiện các yêu cầu đó.

Bộ nhớ đệm là một tính năng quan trọng khác của DNS. Khi máy chủ liên lạc tuần tự với các nút khác trong một truy vấn đệ quy, máy chủ DNS có thể tạm thời lưu trữ trong bộ đệm thông tin chứa trong các phản hồi mà nó nhận được. Trong trường hợp này, yêu cầu lặp lại đối với miền không vượt quá bộ nhớ đệm của nó. Thời gian bộ đệm tối đa được phép được chứa trong trường TTL của bản ghi tài nguyên.

Giao thức DNS thực hiện hai chức năng chính. Nó cho phép các máy khách truy vấn máy chủ DNS để biết địa chỉ IP hoặc tên của bất kỳ máy chủ nào trên mạng và cũng cho phép trao đổi thông tin giữa các cơ sở dữ liệu máy chủ DNS. Giao thức này sử dụng định dạng phản hồi yêu cầu tiêu chuẩn, trong đó máy khách gửi gói yêu cầu và máy chủ phản hồi bằng gói chứa thông tin được lấy từ cơ sở dữ liệu hoặc thông báo lỗi cho biết lý do tại sao yêu cầu không thể được xử lý. Trong hoạt động, giao thức này sử dụng cổng 53 và các giao thức nổi tiếng - TCP hoặc UDP. Hơn nữa, gần đây UDP đã trở thành một phương pháp truyền tải gói tin qua Internet phổ biến hơn. Một gói DNS bao gồm năm trường: tiêu đề, câu hỏi, phản hồi, quyền hạn và trường thông tin bổ sung. Trong bộ lễ phục. Hình 4.5 thể hiện cấu trúc chung của một gói DNS.


Cơm. 4.5.

Trường tiêu đề

Trường tiêu đề chứa thông tin về gói và mục đích của nó. Nó đưa ra mô tả chung về gói (gói yêu cầu hoặc gói phản hồi) và cho biết lượng dữ liệu chứa trong mỗi trường dữ liệu của gói. Mô tả tiêu đềđược cho trong bảng. 4.3.

Bảng 4.3. Trường tiêu đề gói DNS
Chút Sự miêu tả
0-15 NHẬN DẠNG
16 QR
17-20 MÃ OPCODE
21 A.A.
22 TC
23 RD
24 R.A.
25-27 Z
28-31 RCODE
32-47 QDCOUNT
48-63 TÀI KHOẢN
64-79 NSCOUNT
80-95 ARCOUNT

Các bit ID là số nhận dạng 16 bit duy nhất của gói yêu cầu. Gói phản hồi do máy chủ tạo ra cũng sử dụng số nhận dạng này để máy khách có thể khớp phản hồi của máy chủ với yêu cầu của nó. Bit QR cho biết loại gói (gói yêu cầu - 0, gói phản hồi - 1). Cánh đồng MÃ OPCODE xác định loại yêu cầu - tiêu chuẩn (0), đảo ngược (1) hoặc yêu cầu trạng thái máy chủ (2).

Bốn bit tiếp theo xác định các tham số gói khác nhau. Bit AA được đặt khi phản hồi có thẩm quyền (dữ liệu đến trực tiếp từ máy chủ DNS chịu trách nhiệm về vùng). Phản hồi không chính xác có thể đến từ các máy chủ DNS có thông tin được lưu trong bộ nhớ đệm về bản ghi gốc từ các truy vấn trước đó. Thông tin này được coi là không có thẩm quyền vì có khả năng thông tin đã bị thay đổi kể từ lần cuối cùng máy chủ được truy cập. Bit TC được thiết lập khi cần cắt bớt dữ liệu trong gói thành dạng thuận tiện cho việc truyền qua mạng. Điều này hoàn toàn có thể xảy ra khi sử dụng giao thức UDP, theo đó kích thước gói không được vượt quá 512 byte. Bit RD được bật khi máy khách muốn truy vấn máy chủ DNS một cách đệ quy liên tục. Nếu bit này được đặt, máy chủ DNS sẽ truy vấn các máy chủ DNS khác cho đến khi nhận được phản hồi. Nếu bit này không được đặt, máy chủ DNS sẽ trả về bất kỳ thông tin nào có được cho truy vấn. Bit RA được thiết lập để thông báo cho khách hàng về khả năng truy vấn đệ quyđến máy chủ này. Các bit Z hiện không được sử dụng và được dành riêng cho tương lai.

Các bit RCODE chỉ được sử dụng trong các gói phản hồi. Chúng hiển thị trạng thái phản hồi - không có lỗi (0), lỗi trong gói yêu cầu (1), lỗi nội bộ ngăn máy chủ xử lý yêu cầu (2), tên được chỉ định trong yêu cầu không tồn tại (3), loại này yêu cầu không được máy chủ hỗ trợ (4) và máy chủ từ chối xử lý yêu cầu (5).

Bốn tham số tiêu đề còn lại là số 16 bit và được sử dụng làm bộ đếm. Chúng giúp theo dõi số lượng bản ghi nguồn được trả về trong một đợt. QDCOUNT hiển thị số lượng yêu cầu (có thể đưa vào nhiều yêu cầu trong một đợt). ANCOUNT - số lượng bản ghi gốc có trong phản hồi. NSCOUNT đại diện cho số lượng mục nhập máy chủ tên có thẩm quyền của nguồn và ARCOUNT đại diện cho số lượng mục nhập trong trường thông tin bổ sung.

Trường câu hỏi

Trường câu hỏi chứa các truy vấn mà máy khách muốn máy chủ DNS trả lời. Một gói DNS có thể chứa nhiều truy vấn. Số lượng yêu cầu trong một gói được xác định bởi tham số QDCOUNT từ trường tiêu đề. Trường câu hỏi bao gồm ba phần: danh sách tên miền cần chuyển đổi; các trường của loại bản ghi mà khách hàng muốn nhận trong phản hồi và tham số lớp yêu cầu. Danh sách tên miền cần giải quyết là danh sách các tên mà khách hàng mong muốn lấy địa chỉ IP. Một định dạng đặc biệt được sử dụng để tạo danh sách tên. Trước mỗi tên là một giá trị một byte xác định độ dài của tên. Sự kết thúc của danh sách được biểu thị bằng một tên có độ dài bằng 0. Phần văn bản được theo sau bởi mục nhập QTYPE hai byte. Nó xác định hình thức khách hàng muốn nhận thông tin về các miền có sẵn. Các giá trị này hoàn toàn giống với các loại bản ghi DNS gốc. Ví dụ: để tìm máy chủ thư cho một miền cụ thể, bạn sẽ sử dụng loại bản ghi MX. Và cuối cùng, tham số cuối cùng trong trường câu hỏi là QCLASS. Nó xác định lớp yêu cầu, trong trường hợp của chúng tôi, Internet sẽ luôn là IN .

Là nhà cung cấp cơ sở hạ tầng ảo, 1cloud quan tâm đến công nghệ mạng mà chúng tôi thường xuyên nói đến trên blog của mình. Hôm nay chúng tôi đã chuẩn bị tài liệu về chủ đề tên miền. Trong đó chúng ta sẽ xem xét các khía cạnh cơ bản về hoạt động của DNS và các vấn đề bảo mật của máy chủ DNS.

Cũng cần nói đôi lời về quy trình đối sánh ngược - lấy tên từ địa chỉ IP được cung cấp. Điều này xảy ra, ví dụ, trong quá trình kiểm tra máy chủ email. Có một miền đặc biệt in-addr.arpa, các mục trong đó được sử dụng để chuyển đổi địa chỉ IP thành tên tượng trưng. Ví dụ: để lấy tên DNS cho địa chỉ 11.22.33.44, bạn có thể truy vấn máy chủ DNS để tìm bản ghi 44.33.22.11.in-addr.arpa và nó sẽ trả về tên tượng trưng tương ứng.

Ai quản lý và bảo trì máy chủ DNS?

Khi bạn nhập địa chỉ của tài nguyên Internet vào dòng trình duyệt, nó sẽ gửi yêu cầu đến máy chủ DNS chịu trách nhiệm về vùng gốc. Có 13 máy chủ như vậy và chúng được quản lý bởi nhiều nhà khai thác và tổ chức khác nhau. Ví dụ: a.root-servers.net có địa chỉ IP là 198.41.0.4 và được điều hành bởi Verisign, trong khi e.root-servers.net (192.203.230.10) được điều hành bởi NASA.

Mỗi nhà khai thác này đều cung cấp dịch vụ này miễn phí và cũng đảm bảo hoạt động không bị gián đoạn, vì nếu bất kỳ máy chủ nào trong số này bị lỗi, toàn bộ khu vực Internet sẽ không khả dụng. Trước đây, các máy chủ DNS gốc, cơ sở để xử lý tất cả các yêu cầu về tên miền trên Internet, được đặt tại Bắc Mỹ. Tuy nhiên, với sự ra đời của công nghệ đánh địa chỉ thay thế, chúng đã "lan rộng" khắp thế giới và trên thực tế, số lượng của chúng đã tăng từ 13 lên 123, điều này giúp tăng độ tin cậy của nền tảng DNS.

Một tùy chọn khác là sử dụng tính năng IP Source Guard. Nó dựa vào công nghệ uRPF và tính năng rình mò gói DHCP để lọc lưu lượng giả mạo trên các cổng chuyển mạch riêng lẻ. IP Source Guard kiểm tra lưu lượng DHCP trên mạng và xác định địa chỉ IP nào đã được gán cho các thiết bị mạng.

Khi thông tin này đã được thu thập và lưu trữ trong bảng tổng hợp DHCP snooping, IP Source Guard có thể sử dụng thông tin đó để lọc các gói IP mà thiết bị mạng nhận được. Nếu một gói được nhận có địa chỉ IP nguồn không khớp với bảng liên kết theo dõi gói DHCP thì gói đó sẽ bị loại bỏ.

Cũng cần lưu ý tiện ích dns-validator, tiện ích này giám sát việc truyền tất cả các gói DNS, khớp từng yêu cầu với một phản hồi và nếu tiêu đề không khớp, sẽ thông báo cho người dùng về điều đó. Thông tin chi tiết có sẵn trong

Tên miền bao gồm ít nhất hai phần (dấu) cách nhau bằng dấu chấm. Các thẻ được đánh số từ phải sang trái. Tất cả các thẻ tiếp theo đều là tên miền phụ, tức là. hosting là tên miền phụ của miền web-3 và web-3 là tên miền phụ của miền ru.

Thông thường, sự phân chia như vậy có thể kéo dài tới 127 cấp độ. Bất kỳ nhãn nào cũng có thể có tối đa 63 ký tự, nhưng tên miền không thể dài hơn 254 ký tự, bao gồm cả dấu chấm. Tuy nhiên, thực tế và lý thuyết như chúng ta biết là khác nhau, đó là lý do vì sao các nhà đăng ký tên miền thường đặt ra những giới hạn riêng cho mình.

Các máy chủ DNS được sắp xếp theo một thứ tự cụ thể, được tổ chức bởi hệ thống DNS phân cấp. Mỗi tên miền phụ hoặc tên miền được hỗ trợ bởi một số máy chủ DNS được ủy quyền chứa tất cả thông tin cần thiết về nó. Cần phải nói rằng có sự đồng nhất trong sự phụ thuộc của tên miền và máy chủ DNS.

Để truyền dữ liệu qua ngăn xếp giao thức TCP/IP, bạn cần biết địa chỉ IP của máy chủ được chỉ định, nhưng máy chủ đó, theo quy định, chỉ có thông tin về địa chỉ của máy chủ DNS (thông thường nhà cung cấp dịch vụ Internet cung cấp địa chỉ của một máy chủ DNS chính và một máy chủ DNS dự phòng), lần lượt yêu cầu thông tin từ máy chủ trung tâm, ví dụ 195.42.0.3 (tất cả các địa chỉ IP được đưa ra làm ví dụ và có thể khác với địa chỉ thực tế). Máy chủ phản hồi rằng nó không có thông tin về địa chỉ được yêu cầu, tuy nhiên, nó biết rằng miền Zone.ru được quản lý bởi máy chủ 214.74.142.1 ( khoảng biên tập.Đây được gọi là máy chủ có thẩm quyền). Trong trường hợp này, máy chủ DNS truy vấn 214.74.142.1 để biết thông tin. Câu trả lời có thể là: “web-3.ru được vận hành bởi máy chủ 247.142.130.234.” Máy chủ thứ ba này trả về trình duyệt địa chỉ IP của trang web mong muốn ( khoảng biên tập. Phương pháp đệ quy thường được thay thế bằng các truy vấn tới bộ đệm máy chủ. Nếu một máy chủ trái phép gần đây đã nhận được yêu cầu về địa chỉ IP của trang web thì thay vì liên hệ với máy chủ DNS tiếp theo, nó sẽ trả về kết quả từ bộ đệm. ).

Để phản hồi thông tin được yêu cầu, giao thức DNS sử dụng cổng UDP hoặc TCP 53. Thông thường, các yêu cầu và thông tin tạo sẵn về chúng sẽ được gửi dưới dạng gói dữ liệu UDP. Và TCP vẫn dành cho các yêu cầu hoặc phản hồi AXFR lớn hơn 512 byte. Để tìm ra địa chỉ IP của trang web bạn quan tâm, bạn cần sử dụng lệnh ping. Nếu bạn đang sử dụng hệ điều hành Windows XP, hãy nhấp vào “Bắt đầu” - “Chạy” ( khoảng biên tập. Tổ hợp phím win+r) và gõ lệnh vào dòng cmd. Một cửa sổ nhắc lệnh sẽ xuất hiện. Nhập lệnh vào đó ping và tên trang web, ví dụ: trang web ping. Ở các dòng hiện ra sau khi nhấn Enter bạn sẽ thấy nhóm số 87.242.76..

Điều quan trọng cần nhớ là địa chỉ IP không giống với tên máy chủ và ngược lại. Một máy tính có thể lưu trữ một số lượng lớn trang web, điều đó có nghĩa là máy chủ có địa chỉ IP cụ thể có thể sở hữu toàn bộ danh sách tên. Tương tự, một tên có thể được liên kết với các máy chủ khác nhau. Đây là cách đạt được quy định tải.

Để tăng tính ổn định của hệ thống, một số lượng máy chủ nhất định được đưa vào hoạt động, chứa cùng một thông tin. Vì vậy, có 13 máy chủ tương tự trên thế giới. Mỗi người đều liên quan đến một số lãnh thổ. Dữ liệu về chúng có sẵn trong mọi hệ điều hành, vì các máy chủ đó không thay đổi địa chỉ ban đầu. Những máy chủ này được gọi là máy chủ gốc vì chúng hỗ trợ toàn bộ Internet.

Bây giờ hãy nói về tra cứu DNS ngược. Ngoài việc chuyển mã các tên tượng trưng thành địa chỉ IP, DNS còn làm điều ngược lại. Bởi vì bản ghi DNS có thể được liên kết với dữ liệu ở các định dạng khác nhau, bao gồm cả dữ liệu ký tự.

Tên miền in-addr.arpa đã được biết đến, dữ liệu của tên miền này được sử dụng để tái tạo lại địa chỉ IP thành tên từ các ký tự. Hãy đưa ra một ví dụ: để tìm ra tên của một địa chỉ đã biết (giả sử 12.13.14.15), được phép thực hiện yêu cầu theo mẫu sau: 15.14.13.12.in-addr.arpa. Kết quả sẽ là tên tượng trưng thích hợp. Việc này được giải thích như thế nào? Bởi vì trong địa chỉ IP, các bit nằm ở gốc nằm ở đầu và trong tên DNS, chúng nằm ở cuối.

Khi nói đến bản ghi DNS, có một số loại:

  1. Bản ghi địa chỉ (bản ghi A) được sử dụng để kết nối địa chỉ IP và máy chủ.
  2. Bản ghi tên chuẩn (viết tắt CNAME, bản ghi tên chuẩn) là công cụ chuyển hướng sang một tên thay thế.
  3. Trao đổi thư (MX, trao đổi thư) đề cập đến máy chủ trao đổi thư cho miền được trình bày.
  4. PTR (con trỏ hoặc bản ghi con trỏ) kết nối tên máy chủ với tên (chuẩn) đã thiết lập của nó.
  5. NS (máy chủ tên) đặt tên cho máy chủ DNS của tên miền được trình bày.
  6. SOA (bản ghi bắt đầu ủy quyền) là bản ghi đề cập đến máy chủ chứa thông tin tiêu chuẩn về miền được trình bày.

Cần phải nói về tên miền dành riêng(Tên DNS cấp cao nhất dành riêng). RFC 2606 chỉ định tên miền nên được sử dụng trong vai trò mô hình (đặc biệt quan trọng trong tài liệu) và thử nghiệm. Các ví dụ bao gồm test.com, test.org, test.net, cũng như ví dụ không hợp lệ, v.v.

Khi nói về tên miền, điều đáng nói là chúng có thể bao gồm một tập hợp nhỏ các ký tự ASCII. Điều này giúp bạn có thể quay số địa chỉ miền bất kể ngôn ngữ mà người dùng nói. Đó là lý do tại sao những cái tên như vậy mang tính quốc tế. ICANN đã phê chuẩn hệ thống IDNA dựa trên Punycode. Nó có khả năng chuyển đổi bất kỳ cụm từ nào được mã hóa bằng Unicode thành tập hợp các ký tự có thể giúp DNS hoạt động chính xác.

Một số phương pháp vận hành ứng dụng DNS được sử dụng trong BIND (Tên miền Internet của Berkeley), MaraDNS NSD (Name Server Daemon), DJBDNS (DNS của Daniel J. Bernstein), PowerDNS Microsoft DNS Server (trong các phiên bản máy chủ của hệ điều hành Windows NT).

Để tìm ra ai sở hữu tên miền hoặc địa chỉ IP, chỉ cần sử dụng các khả năng của giao thức mạng ai là(từ tiếng Anh là ai - "ai?"). Ý tưởng ban đầu đặt nền móng cho việc tạo ra hệ thống này là mong muốn ngăn chặn các quản trị viên hệ thống tìm kiếm dữ liệu từ các quản trị viên địa chỉ IP và tên miền khác. Ngày nay, một tên miền được coi là chưa được đăng ký cho một tên cụ thể cho đến khi có thể tìm thấy thông tin công khai về tên miền đó trong dịch vụ này.

DNS (Hệ Thống Tên Miền- hệ thống tên miền) - một hệ thống máy tính phân tán để chuyển đổi tên tượng trưng (trang web) thành địa chỉ IP (91.106.203.89) và ngược lại.

DNS được phát triển bởi Paul Mockapetris vào năm 1983.

Trên Internet, DNS thực hiện một nhiệm vụ quan trọng, để truy cập máy chủ web, bạn cần biết địa chỉ IP của nó. Nhu cầu sử dụng DNS là do mọi người dễ nhớ các địa chỉ chữ cái (thường có ý nghĩa) hơn so với chuỗi bốn chữ số của địa chỉ IP; ngược lại, máy tính thấy thuận tiện hơn khi xử lý biểu diễn số của một địa chỉ (địa chỉ IP). Ngoài ra, sự hiện diện của tên máy chủ tượng trưng cho phép bạn sử dụng cái gọi là máy chủ ảo, ví dụ: các máy chủ HTTP khác nhau về tên yêu cầu (tên miền), nhưng sử dụng cùng một địa chỉ IP.

Ban đầu, một tệp văn bản được sử dụng để chuyển đổi địa chỉ IP thành tên tượng trưng chủ nhà, xác định vị trí:

  • Trên Windows: %SystemRoot%\system32\drivers\etc\hosts;
  • Trên Unix: /etc/hosts;

Tệp máy chủ ví dụ trên Windows

Tệp máy chủ được điền tự động và tập trung trên mỗi máy tính trong mạng máy tính cục bộ của nó. Nhưng theo thời gian, cách tiếp cận này cho thấy sự không nhất quán của nó, vì cùng với sự phát triển của mạng, số lượng bản ghi trong tệp văn bản tăng lên, do đó, kích thước tệp tăng lên và trên hết là việc chuyển tệp máy chủ thường xuyên. tải mạng máy tính.

Do đó, cần phải phát triển một cơ chế tự động, cơ chế này trở thành hệ thống DNS phân tán.

Cần lưu ý rằng tệp máy chủ vẫn được sử dụng, đặc biệt, khi thiết lập máy chủ cục bộ trên máy tính, các tên tượng trưng cục bộ đã tạo sẽ được ghi vào máy chủ. Ví dụ:

  • 127.0.0.1 mysite.local

Phân cấp tên trong DNS

Do số lượng nút Internet ngày càng tăng lên nên để hoạt động hiệu quả DNS Một cơ sở dữ liệu phân tán đã được phát triển, hỗ trợ bằng cách sử dụng hệ thống phân cấp các máy chủ DNS. Cấu trúc tương tác giữa các máy chủ DNS được thể hiện trong hình.

Lược đồ này cho phép bạn dỡ bỏ máy chủ DNS trên một số máy chủ DNS, đó là chức năng của cơ sở dữ liệu phân tán.

Cấu trúc phân cấp của DNS dựa trên khái niệm tên miền và vùng. Mỗi máy chủ DNS chịu trách nhiệm về tên có thể chuyển trách nhiệm về một phần khác của tên miền sang một máy chủ khác, điều này cho phép bạn ủy quyền trách nhiệm về thông tin mới được thêm vào máy chủ của các tổ chức khác nhau (những người) chỉ chịu trách nhiệm trực tiếp về phần “của họ” trong đó. tên miền.

Hệ thống phân cấp tên miền bắt đầu bằng tên miền gốc không có tên (hoặc vì nó còn được gọi là “miền chấm”), tiếp theo là tên miền cấp cao nhất hoặc tên miền cấp một. Các tên miền cấp cao nhất được chia thành ba vùng:

  • arpa là một miền đặc biệt được sử dụng để khớp tên địa chỉ
  • Bảy miền ba ký tự được gọi là miền chung hoặc miền tổ chức.
  • Tên miền hai ký tự, được gọi là tên miền quốc gia hoặc tên miền địa lý (ru - Liên bang Nga, kz - Kazakhstan), dựa trên mã quốc gia, theo ISO 3166.

Bởi vì DNS hỗ trợ phân cấp tên miền chứ không hỗ trợ địa chỉ IP. Để giải quyết vấn đề “đảo ngược”, có một miền đặc biệt, cấu trúc của nó trùng với cấu trúc của địa chỉ IP. Tên miền này được gọi là IN-ADDR.ARPA .

trong-addr.arpa- một vùng miền đặc biệt được thiết kế để xác định tên máy chủ theo địa chỉ IPv4 bằng bản ghi PTR. Các tên trong miền IN-ADDR.ARPA tạo thành một hệ thống phân cấp các số tương ứng với địa chỉ IP. Tuy nhiên, những tên này được viết theo thứ tự ngược lại với cách đánh vần địa chỉ IP.

Ví dụ: tên miền của trang web có địa chỉ 91.106.203.89 phải được mô tả trong miền in-addr.arpa là 89.203.106.91.in-addr.arpa, nghĩa là địa chỉ được viết theo thứ tự ngược lại.

Các loại bản ghi DNS

Các loại bản ghi cơ bản được sử dụng trong giao thức DNS

    • Một kỷ lục(bản ghi địa chỉ IPv4) hoặc bản ghi địa chỉ - bản ghi chính, đóng vai trò kết nối giữa tên máy chủ (trang web) và địa chỉ IP (5.101.153.37). Nếu chỉ có bản ghi A thay đổi, điều này có nghĩa là trang web của chúng tôi sẽ được lưu trữ thực tế trên một máy chủ khác và tất cả các bản ghi khác sẽ vẫn hoạt động trên máy chủ cũ.
    • bản ghi CNAME(bản ghi tên chuẩn) hoặc bản ghi tên chuẩn (bí danh) - dùng để chuyển hướng sang tên khác (tương tự như liên kết), một ví dụ cụ thể về việc sử dụng bản ghi CNAME là tạo tên miền cho ftp, mail, ssh chẳng hạn
    • bản ghi NS(máy chủ tên) trỏ đến máy chủ DNS của miền hiện tại, được gọi là máy chủ DNS có thẩm quyền. Thay đổi bản ghi NS khi chuyển sang hosting khác đồng nghĩa với việc thay đổi tất cả các bản ghi, theo đó, bạn cần chỉ định bản ghi mới hoặc sao chép chúng từ trang web cũ (ví dụ: để lưu thư, bạn cần sao chép bản ghi MX từ hosting cũ) . Nếu bạn thay đổi bản ghi NS của tên miền không chính xác, điều đó có thể dẫn đến việc trang web bị dừng.