Một truy vấn DNS đệ quy DNS là gì? [đóng cửa]


15

Ai đó có thể giải thích ngắn gọn "truy vấn DNS đệ quy" nghĩa là gì và làm thế nào nó có thể bị coi là xấu ?


Tôi biết ai đã viết điều này chỉ từ tiêu đề. Tôi không biết lý do tại sao bạn tiếp tục đăng nội dung DNS ở đây, nhưng đây không phải là cụ thể của Unix / Linux. Cá nhân tôi nghĩ rằng đó là một câu hỏi hay, nhưng nó không có chủ đề ở đây và tôi không nghĩ chúng ta có một trang web khác trong mạng muốn nó
Michael Mrozek

Đây thực sự là offtopic ở đây? Có thể xem xét 90% các máy chủ DNS trên thế giới chạy trên unix / linux? Có lẽ câu hỏi có thể được đặt lại: "Làm cách nào tôi có thể định cấu hình máy chủ DNS của mình để trả lời các truy vấn đệ quy và tại sao tôi phải tránh tiền này?" Nhưng đó có thực sự là "không chính thống?" Chỉ tò mò thôi.
gabe.

Nó có thể được coi là phù hợp hơn với security.stackexchange.com, nhưng tôi không thấy bất kỳ lý do thực sự nào để từ chối nó ở đây hoàn toàn ...
Shadur

Câu trả lời:


25

TL; DR : Truy vấn đệ quy là một phần trong cách thức hoạt động của internet và DNS, nhưng không phải tất cả các máy chủ DNS sẽ nhận được các truy vấn đệ quy và khi các truy vấn không phản hồi sẽ phản hồi, bạn có thể gặp sự cố.

Phiên bản dài hơn:

Đệ quy, n: Xem dưới Đệ quy.

Truy vấn DNS đệ quy xảy ra khi máy chủ DNS mà bạn yêu cầu địa chỉ của, giả sử, unix.stackexchange.com không biết câu trả lời, vì vậy nó phải kiểm tra với máy chủ khác.

Thông thường, đây thực sự là cách DNS hoạt động - máy chủ DNS của ISP của bạn không có toàn bộ hồ sơ tên miền của internet được ghi nhớ vĩnh viễn vì những lý do rõ ràng, vì vậy việc trao đổi sau đây diễn ra trong phạm vi:

  1. Bạn: Này, trình duyệt, cho tôi xem http://unix.stackexchange.com

  2. Trình duyệt: Chắc chắn rồi! ... Hừm. Tôi thực sự không biết địa chỉ IP đó là gì.

    Này, HĐH, bạn có thể cho tôi biết nơi tìm unix.stackexchange.com không?

  3. HĐH: Chắc chắn rồi ...

    Hừm. Nó không có trong tập tin máy chủ của riêng tôi. Hãy kiểm tra cấu hình trình phân giải của tôi ...

    Xin chào, máy chủ DNS của ISP, bạn có thể cho tôi biết nơi tìm unix.stackexchange.com không?

  4. Máy chủ DNS của ISP: Điều chắc chắn!

    ... Hừm. Cái đó không có trong danh sách các miền có thẩm quyền của tôi và hiện tại tôi không có câu trả lời đó.

    Xin chào, các máy chủ gốc internet, bạn có thể cho tôi biết ai là người có thẩm quyền cho stackexchange.com không?

  5. Internet Root Servers: Chắc chắn rồi! Theo hồ sơ của chúng tôi, bạn muốn ns1.serverfault.com, ns2.serverfault.com hoặc ns3.serverfault.com.

  6. Máy chủ DNS của ISP: Cảm ơn, Máy chủ gốc Internet!

    Xin chào, ns2.serverfault.com, bạn có thể cho tôi biết nơi tìm unix.stackexchange.com không?

  7. ns2.serverfault.com : Chắc chắn rồi! Đó là địa chỉ 64.34.119.12

  8. Máy chủ DNS của ISP : Tuyệt vời, cảm ơn!

    HĐH, số bạn đang tìm kiếm là 64.34.119.12.

  9. HĐH: Tuyệt vời, cảm ơn!

    Trình duyệt, bạn cần địa chỉ 64.34.119.12

  10. Trình duyệt: Tuyệt vời, cảm ơn!

    Được rồi, gọi lên trang bây giờ.

  11. Bạn: Yay, cảm ơn Trình duyệt!

Bây giờ hãy nhớ rằng thực sự có hai loại máy chủ tên được truy vấn ở đây - máy chủ DNS có thẩm quyền (máy chủ được gọi là "root" đã báo cho máy chủ DNS của ISP của bạn nơi tìm máy chủ DNS của SE.com và máy chủ DNS có thẩm quyền của SE.com ) và đệ quy hoặc chuyển tiếp máy chủ DNS (máy chủ DNS của ISP).

Thông thường, loại trước đây không được phép trả lời các truy vấn đệ quy, đặc biệt không phải từ bên ngoài miền của chính họ. Các ISP nhỏ hơn đôi khi tiết kiệm chi phí bằng cách đặt máy chủ tên chính của họ là cùng một máy chủ với máy chủ tên chuyển tiếp chính của họ, nhưng đó là chính sách không an toàn - đặc biệt là nếu bạn không định cấu hình máy chủ của mình để từ chối truy vấn đệ quy từ bên ngoài phạm vi IP của chính bạn.

Đọc thêm ở đây trên Wikipedia .


Theo như tôi biết, các máy chủ Root sẽ hướng bạn đến các .commáy chủ và từ đó máy chủ đệ quy của ISP sẽ trỏ đến máy chủ của SE.com.
Hanan N.

Vâng, nhưng tôi hình dung tôi sẽ giữ nó ít nhất / phần nào / đơn giản hóa nhưng vẫn dễ hiểu.
Shadur

Tôi nghĩ rằng bạn đã quên bước 12.: Michael Mrozek: "Này, LanceBaynes, tôi biết ai đã viết bài này chỉ từ tiêu đề ..."
Alois Mahdal

Tuyệt vời! câu trả lời đã được nâng cấp1
Valentin Bajrami

5

Nếu có 2 máy chủ DNS, DNS-A là quyền đối với miền-a và DNS-B là quyền đối với miền-b và ai đó sẽ gửi truy vấn DNS đến DNS-A để tra cứu tên miền-b. DNS-A sau đó sẽ được đệ quy bằng cách gửi yêu cầu đến DNS-B để tra cứu tên miền-b. Về cơ bản, một truy vấn đệ quy là khi một máy chủ DNS, thay mặt khách hàng đã gửi truy vấn, theo đuổi dấu vết của DNS để thực hiện yêu cầu.

Điều này tốt nếu bạn đang lưu trữ một máy chủ DNS cho một mạng, như một văn phòng và tất cả các máy trong văn phòng đó sẽ sử dụng máy chủ DNS để thực hiện tất cả các tra cứu. Điều này là xấu nếu bạn cho phép bất cứ ai thực hiện truy vấn đệ quy DNS. Điều này cũng tệ nếu bạn đang lưu trữ một máy chủ DNS chỉ được yêu cầu thực hiện các yêu cầu cho một tên miền nhất định. Nếu ai đó yêu cầu tra cứu tên miền khác, máy chủ DNS sẽ trả về lỗi thay vì thực hiện đệ quy.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.