DNS nội bộ bên trong Amazon AWS VPC


21

Tôi đang bắt đầu hiểu về VPC nhưng tôi không thấy giải pháp DNS nội bộ tốt. Ví dụ: chúng tôi đang sử dụng máy chủ cơ sở dữ liệu không phải RDS mà các máy chủ khác trong VPC kết nối với. Tôi muốn kết nối theo tên, không phải IP. Một phần điều này là để tôi có thể nhận được một địa chỉ 10.xxx nội bộ, có lẽ nhanh hơn. Hầu hết, nó làm cho cấu hình dễ dàng hơn, dễ đọc hơn và linh hoạt hơn.

Vào thời xa xưa (khoảng năm 2008), trước VPC tôi đã có một máy chủ chạy MaraDNS mà chúng tôi sẽ cập nhật khi chúng tôi bắt đầu và thay đổi phiên bản, và điều này rất khó khăn, đặc biệt là vì các máy chủ sẽ có địa chỉ nội bộ được gán DHCP của riêng họ khi họ khởi động lại, và chỉ vì đó là một việc khác để giải quyết. Một số đồng nghiệp của tôi chạy các hệ thống khác nhau nghĩ rằng tôi là một thằng ngốc vì đã nỗ lực hết sức - họ chỉ cập nhật các tập tin / etc / hosts (rất tốt cho đến khi bị cúp và tất cả các máy chủ của họ đã quay lại với IP mới).

Tôi có nên xem Route53 (nơi chúng tôi đang thực hiện tất cả DNS công cộng của chúng tôi) hoặc có điều gì tôi đang thiếu không?

Cập nhật: 2017 - DNS nội bộ hiện là một tính năng của Tuyến 53. Woot!


Đây thực sự là một câu hỏi hay, một điều mà tôi đã đấu tranh để tìm ra giải pháp. Tôi sẽ rất sẵn lòng ném một tiền thưởng tốt đẹp vào việc này để thử và thu hút một câu trả lời tuyệt vời.
EEAA

Các phiên bản VPC có thể có các địa chỉ IP riêng cố định, vậy tại sao chạy máy chủ DNS của riêng bạn không phải là một tùy chọn?
Dusan Bajic

@ dusan.bajic - Tôi sẽ chạy máy chủ DNS của riêng mình nếu tôi phải, nhưng như tôi đã nêu trong câu hỏi, đó chỉ là một thứ khác để quản lý, giám sát và tiếp tục hoạt động. Tôi đã hy vọng rằng tôi chỉ thiếu một cái gì đó mà AWS đã thêm vào ... đoán không phải :-)
Tom Harrison Jr

Câu trả lời:


5

Các thực thể nên đăng ký tên DNS của họ với các máy chủ DNS của bạn thông qua DDNS khi chúng bắt đầu (dưới dạng CNAME cho FQDN được gán AWS công khai của chúng); bằng cách đó bạn có thể giới thiệu họ theo tên nổi tiếng và có được địa chỉ phù hợp nhất (nội bộ hoặc bên ngoài) bất kể bạn đang ở đâu. Route53 có thể có loại phép thuật tích hợp này, nhưng tôi thích các giải pháp độc lập với nhà cung cấp nếu có thể.


9
Theo như tôi biết thì Route53 không được tích hợp sẵn.
ceejayoz

1
@womble - Tôi đã hy vọng vào điều kỳ diệu mà bạn nói trong Route53, nhưng không thấy gì. Các máy chủ nằm trong VPC nên không có FQDN công khai, nhưng có một IP tĩnh (ổn định) mà tôi có thể đăng ký với bản ghi A bằng các công cụ Route53 CLI. Vì vậy, đây là một ý tưởng tốt và đánh bại việc thiết lập và quản lý máy chủ DNS của riêng tôi. Tôi thực sự không hiểu tại sao AWS không cho phép chúng tôi gán tên máy chủ lưu trữ địa chỉ DNS của riêng chúng tôi như là một phần của việc tạo cá thể. Thở dài :-) Tôi sẽ chấp nhận câu trả lời trong một vài ngày nếu không có ai có giải pháp tốt hơn. Cảm ơn!
Tom Harrison Jr

@TomHarrisonJr mặc dù bạn đã đánh dấu điều này là chính xác - Tôi nghi ngờ nó đã được thực hiện một cách bừa bãi? Giải pháp cuối cùng của bạn là gì?
Andrew

2
@Andrew Mặc dù đây là một câu trả lời hợp lệ, nhưng câu trả lời ngắn gọn là "AWS không có bất kỳ dịch vụ DNS nội bộ nào" và vì vậy bạn cần phải tự cuộn. Tôi là một fan hâm mộ của MaraDNS - đơn giản, dễ quản lý thông qua các tệp văn bản, gọn nhẹ, v.v. Nếu bạn thực sự không muốn phơi bày các máy chủ riêng của mình thông qua DDNS hoặc Route53, đây sẽ là cách tôi đã làm trong quá khứ.
Tom Harrison Jr

6

Dường như từ tài liệu AWS VPC , cách tiếp cận được đề xuất để tận dụng máy chủ DNS bên trong VPC AWS là trước tiên tạo Bộ tùy chọn DHCP và liên kết với VPC. Sau đó, bạn có thể đứng lên 1-4 máy chủ DNS trong VPC đó. Ngoài ra, Bộ tùy chọn DHCP sẽ cho phép bạn thiết lập các mục sau cho tất cả các phiên bản VPC có trong đó. (cắt từ các tài liệu)

DHCP Option Name      | Description
 domain-name          |  A domain name of your choice (for example, example.com).
 domain-name-servers  |  The IP address of a domain name server.
 ntp-servers          |  The IP address of a Network Time Protocol (NTP) server. 
 netbios-name-servers |  The IP address of a NetBIOS name server.
 netbios-node-type    |  The NetBIOS node type (1, 2, 4, or 8).

Cảm ơn, có vẻ như AWS đang tiến tới một số cơ sở hạ tầng DNS nội bộ ... dần dần. Câu hỏi của tôi lúc đó là liệu có cách nào khác để lưu trữ DNS nội bộ của riêng tôi không. Khi điều đó xảy ra (hiện tại tại một công ty mới), chúng tôi đang sử dụng Route53 cho DNS nội bộ và chỉ cần thêm tiền tố vào tên. Ví dụ: tên máy chủ công cộng có thể là foo.example.comvà đối tác bên trong của nó là i.foo.example.com, có địa chỉ là địa chỉ 10.xxx. Điều này có một số vấn đề bảo mật có khả năng phơi bày nội bộ của chúng tôi, nhưng nó bị hạn chế.
Tom Harrison Jr

2
Amazon hiện hỗ trợ các vùng lưu trữ riêng, cho phép phân giải DNS bị hạn chế chỉ có thể phân giải thông qua các máy chủ DNS của Amazon từ các VPC được liên kết với vùng lưu trữ riêng. docs.aws.amazon.com/Route53/latest/DeveloperGuide/ từ
jnt30

4

Sẽ không có cái gì đó giống như Avahi hoạt động? Điều này thậm chí còn được cài đặt và đóng gói độc đáo cho hầu hết các bản phân phối Linux. Chỉ cần cung cấp cho mỗi trường hợp cần có thể truy cập được một tên máy chủ duy nhất và Bob là chú của bạn.


1
Mạng AWS thật kỳ lạ ... Tôi không nhất thiết cho rằng Avahi sẽ thực sự hoạt động. Mặc dù vậy, không mất nhiều thời gian để kiểm tra nó.
womble

Đây sẽ là một giải pháp thú vị vì nó có nghĩa là tôi chỉ phải đặt tên cho trường hợp của mình và phần còn lại là ma thuật. Nhưng có rất ít tài liệu và tôi không rõ ràng ngay lập tức nếu điều này phù hợp với môi trường máy chủ sản xuất. Tôi sẽ ghi nhớ nó - cảm ơn.
Tom Harrison Jr
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.