Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex BareMetal
    • Все инструкции
    • Обзор сервиса
      • Обзор
      • Готовые конфигурации серверов
      • Своя конфигурация сервера
      • Конфигурация сервера под заказ
      • Обзор
      • Публичная сеть
      • Приватная сеть
      • DHCP
      • MC-LAG
      • Ограничения в сетях BareMetal
      • Обзор
      • Образы
      • Аудитные логи Audit Trails
      • Управление доступом
      • Дополнительные настройки серверов
      • Метрики Monitoring
    • Квоты и лимиты
    • Все руководства
    • Подключение существующего сервера BareMetal к Cloud Backup
    • Настройка VRRP для кластера серверов BareMetal
    • Организация сетевой связности в приватной подсети BareMetal
    • Организация сетевой связности между приватными подсетями BareMetal и Virtual Private Cloud
    • Организация сетевой связности между приватной подсетью BareMetal и on-premise-ресурсами
    • Доставка USB-устройств на сервер BareMetal или виртуальную машину
    • Настройка межсетевого экрана OPNsense в режиме кластера высокой доступности
    • Развертывание веб-приложения на серверах BareMetal с L7-балансировщиком и защитой Smart Web Security
    • Подключение сервера BareMetal как внешнего узла к кластеру Managed Service for Kubernetes
    • Настройка DNS-связности между сегментами Yandex BareMetal и Yandex Virtual Private Cloud для доступа к Managed Service for PostgreSQL по FQDN
  • Правила тарификации
  • Вопросы и ответы

В этой статье:

  • Подготовьте инфраструктуру
  • Необходимые платные ресурсы
  • Создайте кластер Managed Service for PostgreSQL
  • Создайте виртуальную машину для DNS-форвардера
  • Арендуйте сервер BareMetal
  • Настройте сетевую связность
  • Создайте группу безопасности для DNS-форвардера
  • Настройте DNS-форвардер на виртуальной машине
  • Настройте DNS-клиент на сервере BareMetal
  • Проверьте доступ к кластеру Managed Service for PostgreSQL по FQDN
  • Проверьте результат
  • Как удалить созданные ресурсы
  1. Практические руководства
  2. Настройка DNS-связности между сегментами Yandex BareMetal и Yandex Virtual Private Cloud для доступа к Managed Service for PostgreSQL по FQDN

Настройка DNS-связности между сегментами Yandex BareMetal и Yandex Virtual Private Cloud для доступа к Managed Service for PostgreSQL по FQDN

Статья создана
Yandex Cloud
Обновлена 3 марта 2026 г.
  • Подготовьте инфраструктуру
    • Необходимые платные ресурсы
    • Создайте кластер Managed Service for PostgreSQL
    • Создайте виртуальную машину для DNS-форвардера
    • Арендуйте сервер BareMetal
    • Настройте сетевую связность
    • Создайте группу безопасности для DNS-форвардера
  • Настройте DNS-форвардер на виртуальной машине
  • Настройте DNS-клиент на сервере BareMetal
  • Проверьте доступ к кластеру Managed Service for PostgreSQL по FQDN
  • Проверьте результат
  • Как удалить созданные ресурсы

Использование полных доменных имен (FQDN) для подключения к облачным сервисам, таким как Yandex Managed Service for PostgreSQL, является рекомендуемой практикой: это обеспечивает абстракцию от инфраструктуры и автоматизацию процессов. FQDN остается стабильным, в то время как IP-адреса могут изменяться при масштабировании, восстановлении или миграции сервисов.

Однако если сервер в сегменте BareMetal подключен к облаку через Yandex Cloud Interconnect, возникает проблема с разрешением FQDN облачных сервисов: прямые DNS-запросы из внешней подсети блокируются.

Для решения этой задачи предлагается развернуть промежуточную виртуальную машину в той же подсети, что и кластер Managed Service for PostgreSQL, в роли DNS-форвардера на базе Bind9. Этот сервер будет принимать DNS-запросы от сервера BareMetal, перенаправлять их в Yandex Cloud DNS и возвращать ответы клиенту, обеспечивая корректное разрешение FQDN облачных сервисов.

Чтобы настроить DNS-связность:

  1. Подготовьте инфраструктуру.
  2. Настройте DNS-форвардер на виртуальной машине.
  3. Настройте DNS-клиент на сервере BareMetal.
  4. Проверьте доступ к кластеру Managed Service for PostgreSQL по FQDN.
  5. Проверьте результат.

Если созданные ресурсы вам больше не нужны, удалите их.

Подготовьте инфраструктуруПодготовьте инфраструктуру

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь.
  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки решения входят:

  • плата за использование виртуальной машины и диска (см. тарифы Yandex Compute Cloud);
  • плата за использование кластера Managed Service for PostgreSQL (см. тарифы Yandex Managed Service for PostgreSQL);
  • плата за аренду серверов BareMetal (см. тарифы Yandex BareMetal);
  • плата за использование ресурсов Yandex Cloud Interconnect (см. тарифы Yandex Cloud Interconnect).

Создайте кластер Managed Service for PostgreSQLСоздайте кластер Managed Service for PostgreSQL

  1. В консоли управления выберите каталог, в котором хотите создать кластер.

  2. В списке сервисов выберите Managed Service for PostgreSQL.

  3. Нажмите кнопку Создать кластер.

  4. Задайте параметры кластера:

    • Имя кластера — укажите имя кластера.
    • База данных — задайте имя базы данных, имя пользователя и пароль.
    • Сетевые настройки — выберите зоны доступности и подсети.
  5. Нажмите кнопку Создать кластер.

    Примечание

    При создании кластера Managed Service for PostgreSQL автоматически создается приватная DNS-зона mdb.yandexcloud.net, в которой появляются DNS-записи для хостов кластера. FQDN хостов имеют формат c-<идентификатор_кластера>-<номер_хоста>.mdb.yandexcloud.net. Внутри зоны автоматически создаются DNS-записи для базы данных — например, мастер: 10.129.0.29 и реплика: 10.130.0.15.

Подробнее о создании кластера читайте в инструкции.

Создайте виртуальную машину для DNS-форвардераСоздайте виртуальную машину для DNS-форвардера

  1. В консоли управления выберите каталог, в котором хотите создать виртуальную машину.
  2. В списке сервисов выберите Compute Cloud.
  3. На панели слева выберите Виртуальные машины.
  4. Нажмите кнопку Создать виртуальную машину.
  5. В блоке Общая информация задайте имя виртуальной машины.
  6. В блоке Образ загрузочного диска выберите образ Ubuntu 22.04 LTS.
  7. В блоке Сетевые настройки:
    • В поле Подсеть выберите подсеть, в которой размещены хосты кластера Managed Service for PostgreSQL (например, 10.129.0.0/24).
    • Укажите внутренний IP-адрес виртуальной машины (например, 10.129.0.10).
    • Убедитесь, что зона доступности совпадает с зоной размещения кластера Managed Service for PostgreSQL (например, ru-central1-b).
  8. Нажмите кнопку Создать ВМ.

Подробнее о создании виртуальной машины читайте в инструкции.

Арендуйте сервер BareMetalАрендуйте сервер BareMetal

  1. В консоли управления выберите каталог, в котором хотите арендовать сервер.
  2. В списке сервисов выберите BareMetal.
  3. Нажмите кнопку Заказать сервер.
  4. Выберите параметры сервера:
    • Выберите подходящую конфигурацию сервера.
    • Присвойте или получите по DHCP приватный IP-адрес (например, 172.16.2.2).
  5. Нажмите кнопку Заказать сервер.

Подробнее об аренде сервера читайте в инструкции.

Настройте сетевую связностьНастройте сетевую связность

Настройте связность между подсетями BareMetal и Virtual Private Cloud через Yandex Cloud Interconnect:

  1. Создайте сеть Virtual Private Cloud с подсетями в нужных зонах доступности.
  2. Создайте приватную подсеть BareMetal.
  3. Настройте подключение через Yandex Cloud Interconnect между подсетью BareMetal и подсетью Virtual Private Cloud, в которой размещен кластер Managed Service for PostgreSQL.

Подробнее о настройке сетевой связности читайте в инструкции.

В примерах ниже используются:

  • подсеть BareMetal: 172.16.2.0/24;

  • IP-адрес сервера BareMetal: 172.16.2.2;

  • подсеть Virtual Private Cloud с хостами Managed Service for PostgreSQL: 10.129.0.0/24;

  • IP виртуальной машины с Bind9: 10.129.0.10;

  • DNS-резолверы Virtual Private Cloud: 10.129.0.2 и 10.130.0.2.

    Примечание

    DNS-резолверы Virtual Private Cloud имеют адреса вида 10.X.0.2, где X — номер подсети. Для каждой подсети в Virtual Private Cloud доступен свой DNS-резолвер.

Создайте группу безопасности для DNS-форвардераСоздайте группу безопасности для DNS-форвардера

Консоль управления
  1. В консоли управления выберите каталог, в котором вы создаете инфраструктуру.

  2. В списке сервисов выберите Virtual Private Cloud.

  3. На панели слева выберите Группы безопасности и нажмите кнопку Создать группу безопасности.

  4. В поле Имя задайте имя dns-forwarder-sg.

  5. В поле Сеть выберите сеть, в которой размещена виртуальная машина с Bind9.

  6. В блоке Правила создайте следующие правила для управления трафиком:

    Направление
    трафика
    Описание Диапазон портов Протокол Источник /
    Назначение
    CIDR блоки /
    Группа безопасности
    Входящий dns-udp 53 UDP CIDR 172.16.2.0/24
    Входящий dns-tcp 53 TCP CIDR 172.16.2.0/24
    Исходящий dns-udp-forward 53 UDP CIDR 10.129.0.0/24
    Исходящий dns-tcp-forward 53 TCP CIDR 10.129.0.0/24
    Исходящий dns-udp-forward 53 UDP CIDR 10.130.0.0/24
    Исходящий dns-tcp-forward 53 TCP CIDR 10.130.0.0/24

    Примечание

    В примере используются подсети 10.129.0.0/24 и 10.130.0.0/24, в которых находятся DNS-резолверы 10.129.0.2 и 10.130.0.2. Замените их на подсети, в которых находятся DNS-резолверы ваших подсетей Virtual Private Cloud. DNS-резолверы Virtual Private Cloud имеют адреса вида 10.X.0.2, где X — номер подсети.

  7. При необходимости добавьте правило для SSH-доступа к виртуальной машине:

    Направление
    трафика
    Описание Диапазон портов Протокол Источник /
    Назначение
    CIDR блоки /
    Группа безопасности
    Входящий ssh 22 TCP CIDR <CIDR_административной_подсети>
  8. Нажмите Создать.

Настройте DNS-форвардер на виртуальной машинеНастройте DNS-форвардер на виртуальной машине

  1. Подключитесь к виртуальной машине по SSH.

  2. Установите Bind9:

    sudo apt update
    sudo apt install -y bind9 bind9-utils dnsutils
    
  3. Откройте файл /etc/bind/named.conf.options и укажите параметры форвардинга:

    sudo nano /etc/bind/named.conf.options
    

    Пример конфигурации:

    options {
      directory "/var/cache/bind";
    
      recursion yes;
      allow-recursion {
        172.16.2.0/24;
        localhost;
      };
      allow-query {
        172.16.2.0/24;
        localhost;
      };
    
      forwarders {
        10.129.0.2;
        10.130.0.2;
      };
    
      dnssec-validation auto;
      listen-on { any; };
      listen-on-v6 { any; };
    };
    
  4. Проверьте конфигурацию и перезапустите сервис:

    sudo named-checkconf
    sudo systemctl restart bind9
    sudo systemctl enable bind9
    
  5. Убедитесь, что сервис запущен:

    sudo systemctl status bind9 --no-pager
    
  6. Если на виртуальной машине запущен локальный резолвер systemd-resolved, который перезаписывает /etc/resolv.conf, настройте его для работы с Bind9:

    sudo systemctl stop systemd-resolved
    sudo systemctl disable systemd-resolved
    sudo mv /etc/resolv.conf /etc/resolv.conf.backup
    

    Создайте статический файл /etc/resolv.conf:

    sudo nano /etc/resolv.conf
    

    Добавьте запись:

    nameserver 127.0.0.1
    
  7. Настройте nameserver в Ubuntu. Отредактируйте файл /run/systemd/resolve/stub-resolv.conf:

    sudo nano /run/systemd/resolve/stub-resolv.conf
    

    Измените значение параметра nameserver на 127.0.0.1.

  8. Проверьте работу форвардера локально:

    dig @127.0.0.1 NS mdb.yandexcloud.net +short
    

    В ответе должны появиться адреса DNS-серверов зоны.

    Альтернативная проверка:

    dig @127.0.0.1 yandex.ru +short
    

    Команда должна вернуть IP-адрес домена, что подтверждает работу форвардинга.

Настройте DNS-клиент на сервере BareMetalНастройте DNS-клиент на сервере BareMetal

  1. Подключитесь по SSH к серверу BareMetal.

  2. Назначьте DNS-сервером IP виртуальной машины с Bind9:

    sudo nano /etc/resolv.conf
    

    Пример:

    nameserver 10.129.0.10
    
  3. Если /etc/resolv.conf управляется системным сервисом, задайте DNS постоянным способом.

    Вариант 1: Используйте команду systemd-resolve для конкретного интерфейса:

    sudo systemd-resolve --interface ethXX --set-dns 10.129.0.10
    

    где ethXX — интерфейс приватной сети.

    Вариант 2: Отредактируйте файл /etc/systemd/resolved.conf:

    sudo nano /etc/systemd/resolved.conf
    

    Укажите:

    [Resolve]
    DNS=10.129.0.10
    Domains=~.
    

    Примените настройки:

    sudo systemctl restart systemd-resolved
    
  4. Проверьте DNS-разрешение:

    dig mdb.yandexcloud.net +short
    

    Проверьте разрешение FQDN хоста кластера Managed Service for PostgreSQL:

    dig c-<идентификатор_кластера>-<номер_хоста>.mdb.yandexcloud.net +short
    

    Команды должны вернуть IP-адреса хостов кластера из подсети Virtual Private Cloud (например, 10.129.0.29 — для мастера, 10.130.0.15 — для реплики).

Проверьте доступ к кластеру Managed Service for PostgreSQL по FQDNПроверьте доступ к кластеру Managed Service for PostgreSQL по FQDN

  1. Установите сертификат центра сертификации:

    mkdir -p ~/.postgresql && \
    wget "https://storage.yandexcloud.net/cloud-certs/CA.pem" \
      --output-document ~/.postgresql/root.crt && \
    chmod 0600 ~/.postgresql/root.crt
    
  2. Установите клиент PostgreSQL:

    sudo apt update && sudo apt install -y postgresql-client
    
  3. Подключитесь к базе по FQDN:

    psql "host=<FQDN_мастера>,<FQDN_реплики> port=6432 sslmode=verify-full dbname=<имя_БД> user=<имя_пользователя> target_session_attrs=read-write"
    

    Параметры подключения для вашего кластера можно взять в консоли управления на странице кластера Managed Service for PostgreSQL.

Проверьте результатПроверьте результат

После настройки:

  1. Сервер в сегменте BareMetal успешно разрешает доменные имена зоны mdb.yandexcloud.net.
  2. FQDN хостов кластера Managed Service for PostgreSQL разрешаются в приватные IP-адреса Virtual Private Cloud.
  3. Подключение к PostgreSQL выполняется по FQDN без указания IP-адресов вручную.

Важно

  • Используйте статические IP-адреса для виртуальной машины с DNS-форвардером и сервера BareMetal, чтобы избежать проблем с DNS-разрешением при перезапуске.

  • Регулярно проверяйте логи Bind9 для выявления проблем с DNS-запросами:

    sudo journalctl -u bind9 -f
    
  • При изменении подсети, в которой размещен кластер Managed Service for PostgreSQL, обновите адреса DNS-резолверов в параметре forwarders конфигурации Bind9.

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы остановить использование ресурсов и избежать лишних затрат:

  1. Удалите виртуальную машину с DNS-форвардером.
  2. Удалите группу безопасности, созданную для DNS-форвардера.
  3. Если тестовый кластер больше не нужен, удалите кластер Managed Service for PostgreSQL.
  4. Если связность через Yandex Cloud Interconnect была создана только для теста, удалите соответствующие сетевые настройки и ресурсы Cloud Interconnect.

Была ли статья полезна?

Предыдущая
Подключение сервера BareMetal как внешнего узла к кластеру Managed Service for Kubernetes
Следующая
Правила тарификации
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»