Назад | Перейти на главную страницу

Пиринг сети Google Cloud VPC - DNS не используется?

У меня две сети VPC:

Они связаны друг с другом через пиринговую сеть VPC. Машины из сети A могут легко подключаться к машинам из сети B через IP.

Однако они не могут получить доступ друг к другу через свои внутренние DNS-имена (machinea.c.gc-project.internal).

Согласно облачная документация google, это невозможно сделать, заявив:

Внутренние DNS-имена Compute Engine, созданные в сети, недоступны для одноранговых сетей. IP-адрес виртуальной машины должен использоваться для доступа к экземплярам виртуальной машины в одноранговой сети.

Как я могу решить эту проблему, чтобы они действительно могли использовать имена DNS?

Прямо сейчас я просто поместил IP в файлы хостов друг друга, но должен быть какой-то способ получше, верно?

В определенной степени вы уже ответили на свой вопрос. Вы правы, согласно документации, на которую вы ссылаетесь, внутренняя схема DNS сегодня недоступна для пиринга VPC на GCP.

У вас есть три варианта.

  1. Используйте файлы hosts, как и раньше. Это легко настроить, но может быть сложно поддерживать по мере роста вашей среды, хотя вы можете обратиться к инструментам управления конфигурацией, которые помогут в этом - например, Ansible - для автоматического распространения и поддержки обновлений.

  2. Вы можете развернуть новую зону DNS в Google Cloud DNS. Подробнее об этой услуге здесь: Обзор Cloud DNS Хотя в настоящее время эта услуга предназначена только для публичных зон, поэтому вам нужно будет зарегистрировать домен или использовать уже имеющийся. И как общедоступная зона, имена можно будет разрешить в Интернете, что может быть или нежелательно. Вы также можете использовать внешнего публичного DNS-провайдера.

  3. Разверните свои собственные DNS-серверы. Вы можете настроить BIND или аналогичный на виртуальных машинах в качестве DNS-сервера. Вам нужно будет обновить настройки DNS на виртуальных машинах, чтобы использовать эти новые серверы, и я бы предложил развернуть как минимум два, например, по одному в каждом из ваших VPC, для обеспечения устойчивости. Основным преимуществом будет то, что зона может быть частной, поэтому вам не нужно будет покупать доменное имя или размещать записи в Интернете. Конечно, вам нужно будет поддерживать DNS-серверы, что может быть или нежелательно. Вы также можете запускать удаленные частные DNS-серверы, например, через VPN, но я бы не рекомендовал это как таковое, поскольку тогда вы создаете жесткую зависимость от VPN-соединения.

Стоит добавить, что и AWS, и Azure поддерживают частные зоны как часть своих собственных DNS-сервисов, поэтому не исключено, что Google добавит поддержку аналогичных в будущем.

Надеюсь, это поможет.