Cải tiến trình phân giải DNS?


4

Gần đây tôi đã bắt gặp cấu hình sau của /etc/resolv.conf, được cho là để tăng tốc độ phân giải DNS:

nameserver 1.1.1.1
nameserver 2.2.2.2
nameserver 3.3.3.3
option rotate 
option timeout:1

Tôi có các cờ "tùy chọn" trong đầu rõ ràng ngoài việc sử dụng 3 máy chủ DNS trong cấu hình (thường chỉ có hai máy chủ đang được sử dụng). Cái đầu tiên được cho là xoay / quay vòng trên cả 3 máy chủ DNS và cái cuối cùng được cho là đặt thời gian chờ tra cứu thành 1 giây (mặc định là 5s). Tôi chỉ tự hỏi liệu có ai trong số các bạn đang sử dụng cấu hình này không và liệu bạn có thấy bất kỳ cải tiến nào không? Một số người nói rằng điều này sẽ không giúp ích gì cho những cải tiến cả nhưng tôi không thực sự chắc chắn tại sao.

Câu trả lời:


4

Điều này sẽ làm mọi thứ tồi tệ hơn trong mọi trường hợp nhưng trường hợp máy chủ tên đầu tiên của bạn thất bại. Đây là một ví dụ về cách nó làm cho mọi thứ tồi tệ hơn:

Giả sử bạn đang cố gắng giải quyết một trang web có máy chủ tên chính bị chậm hoặc bị hỏng. Thông thường điều này xảy ra.

  1. Bạn thử máy chủ tên đầu tiên của bạn.

  2. Nó thử máy chủ tên chính của trang web.

  3. Thời gian chính ra.

  4. Máy chủ tên đầu tiên của bạn thử thứ cấp.

  5. Nó nhận được một phản ứng.

  6. Bạn nhận được một phản ứng.

Nhưng với sự thay đổi của bạn, điều này xảy ra:

  1. Bạn thử máy chủ tên đầu tiên của bạn.

  2. Máy chủ tên đầu tiên của bạn thử máy chủ tên chính của trang web.

  3. Bạn hết thời gian rồi.

  4. Bạn thử máy chủ tên thứ hai của bạn.

  5. Máy chủ tên thứ hai của bạn thử máy chủ tên chính của trang web.

  6. Máy chủ tên đầu tiên thử máy chủ tên phụ của trang web và nhận được câu trả lời. Quá tệ bạn đã hết thời gian rồi.

  7. Bạn hết thời gian trên máy chủ tên thứ hai.

  8. Bạn thử máy chủ tên thứ ba.

  9. Máy chủ tên thứ ba của bạn thử máy chủ tên chính của trang web.

  10. Máy chủ tên thứ hai của bạn có câu trả lời, quá tệ là bạn đã hết thời gian.

  11. Bạn hết thời gian trên máy chủ tên thứ ba.

  12. Máy chủ tên thứ ba của bạn có câu trả lời, nhưng bạn không nghe nữa.

Bạn đang thời gian ra cách quá sớm và rất có khả năng từ bỏ ngay trước khi namserver nhận được câu trả lời, chỉ để lặp lại quá trình. Về mặt tươi sáng, bây giờ tất cả các máy chủ tên của bạn có kết quả trong bộ đệm của họ.


+1 chỉ dành cho Về mặt sáng sủa, bây giờ tất cả các máy chủ tên của bạn đều có kết quả trong bộ đệm của chúng. . Dù sao, sự cố tuyệt vời của hiệu ứng giảm thời gian chờ quá nhiều.
Bob

DNS không có khái niệm "máy chủ tên chính" cho một tên miền. Có cái chính như được đặt tên trong SOA, nhưng tôi không thể tưởng tượng bất kỳ trình phân giải lành mạnh nào phụ thuộc vào điều đó. Các NS RR đã bị cướp vòng cả từ khu vực cha mẹ cũng như máy chủ có thẩm quyền phản hồi và bất kỳ bộ đệm nào ở giữa (tôi nghĩ có tùy chọn BIND để vô hiệu hóa hành vi này). Ở một mức độ nào đó, DNS có khái niệm về máy chủ chính và máy chủ nô lệ, nhưng điều đó không liên quan gì đến máy chủ nào được truy vấn trước, chỉ khi các thay đổi chủ yếu được thực hiện (cf thiết lập ẩn / riêng). Người giải quyết có thể và thường là khác nhau.
một CVn

@ MichaelKjorling Bởi "chính" Tôi chỉ có nghĩa là người đầu tiên trở lại. Trong khi robin tròn là chuẩn mực, nó không phải là phổ quát. (Và ngay cả khi nó là như vậy, nó sẽ chỉ gặp xui xẻo khi đánh kẻ xấu đầu tiên hơn một lần.)
David Schwartz

6

Cách của tôi để cải thiện hiệu suất DNS:

  1. Chạy namebench để tìm nhà cung cấp DNS nhanh nhất cho bạn.
  2. Làm xong.

Theo hiểu biết của tôi, không có phép thuật, cấu hình cục bộ để cải thiện tốc độ truy vấn DNS. Nhưng tôi hầu như không phải là một chuyên gia về chủ đề này.


1

IIRC, mặc định phải mất hai giây để máy chủ DNS đã thử đầu tiên hết thời gian chờ trước khi thử cái tiếp theo trong danh sách nếu không có phản hồi. Do đó, có vẻ như tùy chọn cuối cùng sẽ giảm thời gian chờ xuống còn một giây trước khi thử cái tiếp theo trong danh sách.

Tùy chọn khác để xoay máy chủ DNS mà nó thử trước tiên sẽ chỉ có lợi nếu tất cả đều nhanh như nhau và bạn đang cố tải các yêu cầu cân bằng.

Tôi sẽ sử dụng namebench, như Oliver đã đề cập , để tìm ra tốc độ của từng người và đưa chúng vào danh sách theo thứ tự tốc độ và xóa tùy chọn xoay, trừ khi chúng nhanh như nhau.

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.