Làm thế nào để khách hàng DNS chọn một địa chỉ IP khi họ nhận được nhiều câu trả lời?


25

Khi một máy chủ DNS đang tìm kiếm một địa chỉ IP cho một máy khách và nó nhận được một danh sách nhiều máy chủ DNS để truy vấn, làm thế nào để nó chọn một địa chỉ? Tương tự, khi máy khách DNS nhận được danh sách nhiều địa chỉ IP cho một FQDN, làm thế nào để nó chọn một địa chỉ? Là nó thực hiện cụ thể, hoặc được bao phủ trong một RFC?

Câu trả lời:


18

Một máy chủ DNS giải quyết một truy vấn, có thể ưu tiên thứ tự sử dụng các máy chủ được liệt kê dựa trên dữ liệu thời gian phản hồi lịch sử (RFC1035 phần 7.2). Nó cũng có thể ưu tiên bằng mạng phụ gần hơn (Tôi đã thấy điều này trong RFC nhưng không nhớ lại). Nếu không có lịch sử hoặc ưu tiên mạng phụ có sẵn, nó có thể chọn ngẫu nhiên hoặc chỉ cần chọn cái đầu tiên. Tôi đã thấy việc triển khai máy chủ DNS thực hiện các kết hợp khác nhau ở trên.

Một chương trình máy khách chọn một địa chỉ IP từ danh sách (bản ghi A / AAAA) thường sẽ thử các địa chỉ theo thứ tự mà máy chủ DNS trả về (vòng tròn). Nếu máy khách không thể kết nối với địa chỉ IP đầu tiên được trả về, nó sẽ thử địa chỉ thứ hai và cứ thế. Ví dụ: tất cả các trình duyệt chính thực hiện việc này, tuy nhiên nhiều chương trình máy khách Internet khác "quên" bước này và không thành công nếu chúng không thể kết nối với địa chỉ IP đầu tiên.


4

RFC 1794 Bao gồm câu hỏi Round Robin mà bạn đang hỏi.

Theo như câu trả lời, hầu hết các máy khách DNS sẽ sử dụng địa chỉ IP đầu tiên trong danh sách, một số thực hiện tính toán mạng con để tìm ra cái nào gần hơn, số khác chọn ngẫu nhiên, nhưng hầu hết phụ thuộc vào máy chủ DNS để gửi danh sách.


3

Điều này tùy thuộc vào máy khách - có liên quan đặc biệt đối với bất kỳ ai đang chạy Windows shop là thực tế là Vista \ Windows Server 2008 sẽ chọn địa chỉ bằng cơ chế khác (nếu ngăn xếp ipv6 được cài đặt) cho các phiên bản Windows trước đó sẽ chọn địa chỉ đầu tiên . Trong nhiều trường hợp, điều này có nghĩa là họ sẽ luôn chọn cùng một ví dụ như họ sẽ không "tôn vinh" các phản hồi cướp vòng DNS theo cách tương tự như các phiên bản trước. Có một lời giải thích chi tiết về điều này trong bài viết blog kỹ thuật này .

Bài viết được liên kết chỉ ra rằng Windows 7 và Server 2008 R2 thay đổi hành vi mặc định này một lần nữa nhưng tôi không thể tìm thấy bất cứ điều gì để sao lưu.

Ngoài ra, cũng đáng để chỉ ra rằng đây là hành vi tuân thủ tiêu chuẩn cho ipv6 theo như tôi có thể nói, mặc dù tôi rất vui mừng khi biết rằng tôi đã sai.

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.