Điểm:0

DNS nội bộ với BIND, làm cách nào để giải quyết một địa chỉ IP khác nhau?

lá cờ ye
raj

Tôi có một DNS nội bộ (nó hoàn toàn nội bộ, tức là mạng không được kết nối với Internet) cho một nhóm mạng. Chúng được thiết lập như sau:

  • Mỗi mạng có dải địa chỉ khác nhau 10.x.0.0/16 và miền riêng của nó miềnx (nó là một tên miền cấp cao nhất) - ví dụ như mạng 10.1.0.0/16miền1 (tất cả các máy chủ trong mạng này đều có tên DNS somehost.domain1)

  • Đối với mỗi mạng/miền, máy chủ lưu trữ ns.domainx (10.x.1.1) là máy chủ DNS xử lý cả vùng chuyển tiếp miềnx và vùng đảo ngược x.10.in-addr.arpa

  • Các mạng này không được kết nối với nhau, ngoại trừ một máy chủ đa nhà đặc biệt có khả năng kết nối với tất cả các mạng này (và thực tế câu hỏi của tôi là về máy chủ đó) - nhưng nó không định tuyến các gói giữa các mạng đó, nó chỉ có thể giao tiếp với từng mạng họ. Nó là thiết kế bởi, mỗi mạng được thiết kế để hoạt động riêng biệt và độc lập.

  • Do đó, máy chủ DNS trong mỗi mạng chỉ biết về miền của nó; nó không biết (và không nên biết) bất cứ điều gì về tên miền từ các mạng khác.

  • Tuy nhiên, máy chủ nhiều nhà mà tôi đã đề cập trước đó cần phải có độ phân giải DNS hoạt động cho các địa chỉ trong tất cả các mạng này. Theo yêu cầu, tôi không thể chạm vào bất kỳ thứ gì trong bất kỳ mạng nào, đặc biệt là máy chủ DNS của họ. Tôi chỉ có thể sửa đổi cấu hình của máy chủ nhiều nhà.

  • Vì vậy, tôi đã thiết lập BIND trên máy chủ nhiều nhà chỉ xác định vùng . là "chính" và tệp vùng chứa các bản ghi sau:

    1.10.in-addr.arpa. TRONG NS ns.domain1.
    miền1. TRONG NS ns.domain1.
    ns.domain1. TRONG 10.1.1.1
    
    2.10.in-addr.arpa. TRONG NS ns.domain2.
    miền2. TRONG NS ns.domain2.
    ns.domain2. TRONG 10.2.1.1
    
    3.10.in-addr.arpa. TRONG NS ns.domain3.
    miền3. TRONG NS ns.domain3.
    ns.domain3. TRONG 10.3.1.1
    

    và như vậy cho tất cả các mạng.

Mọi thứ hoạt động tốt, nhưng có một vấn đề nhỏ.

Đôi khi máy chủ DNS cho một mạng cụ thể bị hỏng. Trong các mạng này, máy chủ DNS ngừng hoạt động là không phải được coi là hỏng hóc - đó chỉ là trạng thái hoạt động bình thường có thể xảy ra. Thông thường, sẽ không có độ phân giải DNS cho mạng cụ thể đó vào thời điểm đó.

Nhưng có một địa chỉ IP cụ thể trong mạng 1 (giả sử, 10.1.10.10) mà tôi muốn luôn để phân giải tên miền - ngay cả khi DNS cho mạng 1 bị hỏng. Vì vậy, nó phải được giải quyết bởi máy chủ cục bộ, không được ủy quyền cho máy chủ cho mạng 1. Trên thực tế, cũng có thể chấp nhận rằng NXDOMAIN sẽ được trả về dưới dạng phản hồi cho truy vấn cho địa chỉ này (nếu điều này dễ cấu hình hơn), nhưng phản hồi phải được trả về ngay lập tức mà không cần cố gắng liên hệ với máy chủ DNS cho mạng 1 - độ trễ khi máy chủ đó ngừng hoạt động chính là điều chúng tôi muốn tránh.

Và tôi không biết làm thế nào để làm điều này.

Thêm bản ghi PTR cho 10.10.1.10.in-addr.arpa. đến . tập tin vùng không hoạt động - nó dường như bị bỏ qua đơn giản và khi DNS cho mạng 1 không hoạt động, 10.1.10.10 không được giải quyết.

Làm cách nào để giải quyết địa chỉ này cục bộ?

vidarlo avatar
lá cờ ar
Điều này nghe giống như một vấn đề X-Y đối với tôi. Cách thông thường để xử lý sự cố ngừng hoạt động của máy chủ DNS là có nhiều máy chủ DNS. Ngoài ra, không có lý do gì mà một máy chủ không thể có nhiều chế độ xem, vì vậy có thể duy trì sự cô lập chỉ với một máy chủ DNS phục vụ nhiều mạng.
raj avatar
lá cờ ye
raj
@vidarlo Tôi đã đơn giản hóa thiết lập vì mục đích của câu hỏi này - trên thực tế, thường có 3 máy chủ DNS cho mỗi mạng. Nhưng chúng tôi **dự kiến** rằng **tất cả** chúng có thể ngừng hoạt động. Đây là cách mạng hoạt động. Địa chỉ duy nhất mà tôi quan tâm là "đặc biệt" (xin lỗi, tôi không thể tiết lộ chi tiết) và do đó sẽ được xử lý ở cấp máy chủ nhiều nhà ngay cả khi tất cả các máy chủ DNS "cấp dưới" đều ngừng hoạt động.
raj avatar
lá cờ ye
raj
@vidarlo Ngoài ra, như tôi đã viết, **theo thiết kế** mỗi mạng là độc lập, vì vậy không thể có một máy chủ DNS duy nhất phục vụ nhiều mạng. Các mạng **phải** không biết gì về nhau. Máy chủ nhiều nhà là một lớp bổ sung mà chúng tôi đã thêm vào. Nó không tồn tại "trong lĩnh vực này". Bạn có thể tưởng tượng toàn bộ mạng (bao gồm cả máy chủ DNS của họ) là sản phẩm của bên thứ 3 mà bạn không có quyền kiểm soát và không thể chạm vào bất cứ thứ gì ở đó. Bạn chỉ kiểm soát máy chủ nhiều nhà.
Điểm:0
lá cờ ye
raj

Tôi tìm thấy một giải pháp. Nó thực sự đơn giản. Nó là đủ để thêm 10.10.1.10.in-addr.arpa như một vùng "chính" khác đối với tôi có tên.conf tệp, với tệp vùng là có tên.empty I E. tệp mặc định có trong cấu hình BIND để phục vụ vùng 0.in-addr.arpa.

Bây giờ truy vấn cho 10.1.10.10 đưa ra câu trả lời rằng địa chỉ không có bản ghi PTR, bất kể máy chủ DNS cho 10.1.0.0/16 là lên hoặc xuống. Điều đó giúp loại bỏ sự chậm trễ khi giải quyết địa chỉ, điều đó là đủ đối với tôi. Tất nhiên tôi có thể định nghĩa một tệp vùng riêng cho vùng này thay vì có tên.empty và thêm vào tệp vùng này một bản ghi PTR cho @ để làm cho địa chỉ IP thực sự phân giải thành một số tên miền, nhưng tôi không cần điều này ngay bây giờ.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.