Có nhiều CNAME


11

Chúng tôi có tên miền DNS với 5 CNAME cấp vì lý do lịch sử. Một số thứ được thuê ngoài vì tính sẵn sàng cao, v.v. nhưng đó không phải là vấn đề ở đây. Câu hỏi của tôi là có 5 CNAME quá mức cần thiết cho trình phân giải DNS? Tôi không thể tìm ra bất kỳ trang web nổi tiếng nào có hơn 2-3 CNAME lồng nhau trỏ đến các tên miền DNS khác nhau.

Các bước nhảy CNAME của chúng tôi trông như sau: (Tôi đang sử dụng xyz làm ví dụ)

www.xyz.com -> xyz.akadns.net -> xyz.wworld Worldwide.akadns.net -> xyz.cedexis.net -> xyz.msedge.net -> host1.msedge.net (bản ghi A \ AAAA cuối cùng)

Tôi thấy nhiều khách hàng phàn nàn về các vấn đề phân giải DNS đối với trang web của chúng tôi khi các trang web khác hoạt động tốt với họ, mặc dù khi tôi sử dụng http://check-host.net/check-dns?host=www.xyz.com để kiểm tra DNS của chúng tôi giải quyết.

Dường như luôn luôn làm việc tốt trên toàn thế giới. Kết luận của tôi chủ yếu là bộ giải quyết DNS của các nhà cung cấp ISP cục bộ bị vặn lên khi một trong các Hops trên không thể giải quyết. nslookup thất bại trên các máy tính khách này chỉ dành cho trang web của chúng tôi và điều đó quá rời rạc.

Có phải loại CNAME đa cấp này là một thiết kế tồi nói chung?


1
Tôi đã làm việc cho Akamai vài năm trước và một trong những khách hàng của chúng tôi đã báo cáo rằng một bộ định tuyến nhất định có vấn đề với 5 cấp độ lồng nhau. Tôi nghĩ phần sụn của bộ định tuyến cuối cùng đã được sửa.
Barmar

Câu trả lời:


15

Có phải loại CNAME đa cấp này là một thiết kế tồi nói chung?

Các chuỗi CNAME đến CNAME không bị cấm nhưng như bạn đã trải nghiệm thì đó không phải là một giải pháp rất mạnh mẽ.

Mỗi CNAME bổ sung làm tăng độ sâu đệ quy cho trình phân giải và độ sâu đó không phải lúc nào cũng không giới hạn. Ngoài ra, bạn có nguy cơ tạo ra các vòng lặp hoặc kích hoạt thuật toán phát hiện vòng lặp.

Để có ấn tượng về số lượng và truy vấn mà máy chủ tên người dùng của bạn cần thực hiện, hãy chạy theo dõi DNS:

dig +trace www.example.com 

hoặc trên Windows

nslookup -debug www.example.com

10

HBrujin là chính xác, nhưng trong thực tế, độ sâu đệ quy tệ hơn rất nhiều so với bất cứ điều gì dig +tracesẽ cho bạn thấy. Độ sâu đệ quy là thứ thường bị chế nhạo và quá tầm thường, nhưng những người đó quên rằng bạn không chỉ giải quyết ~ 5 CNAMEhồ sơ. Điều này là do việc giải quyết mục tiêu của một CNAMEbản ghi tạo ra một nhu cầu tra cứu mọi máy chủ tên trong đường dẫn, thường là nhiều hơn nhiều so với cái nhìn đầu tiên.

Liệu CNAMEmục tiêu sống trong một miền khác? Bạn sẽ cần phải truy cập lại vào máy chủ tên của nó, nó không chỉ đòi hỏi phải NStra cứu mà còn A(AAA)tìm kiếm nơi không có keo. Các máy chủ tên cho những máy chủ tên đó sống trong một miền cấp cao nhất khác nhau? Nếu các TLD đó không chia sẻ máy chủ tên, rất có thể các hồ sơ keo sẽ không được đưa vào và bạn cũng phải truy cập lại thông qua các máy chủ tên của TLD khác. Và như thế.

Mỗi CNAMEbản ghi được thêm vào chuỗi có thể thêm theo cấp số nhân vào số lần tra cứu được yêu cầu tùy thuộc vào số lượng máy chủ tên cần được đệ quy thông qua. Các chuỗi tra cứu CNAME+ NS+ A(AAA)bản ghi này có thể lần lượt bị phá hủy hoàn toàn, đạt tới hơn 150 cấp độ sâu trên bộ đệm emtpy. Đây là nơi giới hạn độ sâu đệ quy có thể trở nên cực kỳ khó chịu, dẫn đến lỗi tạm thời tìm kiếm tên miền của bạn trên bộ đệm trống và vì những lý do thường không rõ ràng ngay lập tức.

Nói tóm lại, bạn có thể làm điều này, nhưng hãy thận trọng và nghiêm túc phản hồi về bản chất này. Bạn không có quyền kiểm soát tần suất các máy chủ DNS đệ quy trên internet được khởi động lại hoặc bị xóa.


Phần mềm máy khách của tôi nằm trên một loạt các máy thực hiện cuộc gọi http từ xa. Sau đó, có công bằng không khi thử lại tất cả các CNAME từ máy khách để giảm độ sâu đệ quy \ tải trên trình phân giải? Điều này nghe có vẻ là một cách tiếp cận tốt hay tôi đang thiếu một cái gì đó? Tôi biết rằng các CNAME sẽ không thay đổi trên các khu vực địa lý.
Vishal N Nikol

Không phải là một cách tiếp cận tốt. Thông thường, máy chủ không tra cứu dữ liệu sẽ tạm thời lưu trữ lỗi. Truy vấn có thể thành công một lần nữa trong tương lai (giả sử, 5 phút kể từ bây giờ), nhưng không có khả năng thành công khi thử lại ngay lập tức. Nếu bạn cung cấp tên của bản ghi DNS của mình, tôi có thể cho bạn biết liệu đây có thực sự là vấn đề về độ sâu đệ quy hay điều gì đó ít rõ ràng hơn. Tôi ghét chúng tôi đi xuống hố thỏ sai.
Andrew B

0

Đa cấp CNAMEthường tiện dụng trong thực tế. Mỗi cấp độ chuyển hướng cung cấp một mức độ kiểm soát trong một khu vực hành chính có khả năng khác biệt hoặc một tổ chức hoàn toàn khác nhau. Mặc dù điều này hầu như không cần thiết về mặt kỹ thuật, nó có thể giải quyết các vấn đề của tổ chức .

Như những người khác đã lưu ý điều này có thể gây ra khó khăn, nhưng những điều này có thể được giải quyết:

  • giám sát tất cả các máy chủ DNS. Có lẽ một là trục trặc. Giám sát các máy chủ bên ngoài cũng như của riêng bạn. Bạn có thể cần báo cáo vấn đề với Akamai hoặc các nhà cung cấp khác.

  • TTLs nên được đặt đủ cao để cho phép lưu vào bộ đệm nhưng đủ thấp để bạn có thể chuyển lưu lượng đủ nhanh cho ứng dụng của mình


2
Tôi không chắc chắn tôi hiểu khuyến nghị giám sát. Không chỉ giới hạn độ sâu đệ quy khác nhau từ sản phẩm này sang sản phẩm khác, làm thế nào để bạn đề xuất giám sát chúng? Bạn không thể dễ dàng xác định nguyên nhân gốc rễ cho thông tin đệ quy của người khác.
Andrew B
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.