Создать входящее DNS-подключение
Примечание
В каждой облачной сети Virtual Private Cloud можно создать только одно входящее DNS-подключение.
Чтобы создать входящее DNS-подключение:
-
В консоли управления
перейдите на страницу каталога, в котором нужно создать входящее DNS-подключение. -
Перейдите в сервис Cloud DNS.
-
На панели слева выберите
Входящие подключения и нажмите кнопку Создать подключение. В открывшемся окне:-
В поле Имя задайте имя создаваемого DNS-подключения.
-
(Опционально) В поле Описание задайте произвольное описание DNS-подключения.
-
(Опционально) В поле Метки задайте метки для создаваемого ресурса.
-
(Опционально) Включите опцию Защита от удаления, чтобы защитить создаваемое DNS-подключение от случайного удаления.
-
В блоке Сетевые настройки в поле Сеть выберите облачную сеть Yandex Virtual Private Cloud, в которой будет создано входящее DNS-подключение.
-
В поле IP-адрес выберите зарезервированный внутренний IP-адрес, который будет использоваться для входящего DNS-подключения.
IP-адрес может относиться к любой из подсетей в облачной сети, выбранной на предыдущем шаге.
Если у вас нет зарезервированного внутреннего IP-адреса или вы хотите зарезервировать новый адрес, нажмите кнопку Зарезервировать и в открывшемся окне:
-
В поле Имя задайте имя резервируемого IP-адреса.
-
В поле Подсеть выберите подсеть, в которой будет зарезервирован адрес.
-
В поле Внутренний IPv4 адрес укажите IP-адрес, который будет зарезервирован.
IP-адрес должен относиться к диапазону IP-адресов выбранной подсети. Указывать IP-адреса, уже используемые ресурсами Yandex Cloud, нельзя.
-
(Опционально) Включите опцию Защита от удаления, чтобы защитить адрес от случайного удаления.
-
Нажмите кнопку Создать, чтобы зарезервировать адрес.
-
-
Нажмите кнопку Создать, чтобы создать входящее DNS-подключение.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id. Если вы обращаетесь к ресурсу по имени, поиск будет выполнен в каталоге по умолчанию. Если вы обращаетесь к ресурсу по идентификатору, поиск будет выполнен глобально — во всех каталогах с учетом прав доступа.
-
Посмотрите описание команды CLI для создания входящего DNS-подключения:
yc dns inbound-endpoint create --help -
Зарезервируйте IP-адрес для входящего DNS-подключения в нужной подсети:
yc vpc address create \ --name <имя_резервируемого_адреса> \ --description '<описание_адреса>' \ --internal-ipv4 subnet=<идентификатор_подсети>,address=<IP-адрес>Где:
-
--name— имя резервируемого внутреннего IP-адреса. -
--description— описание резервируемого IP-адреса. Необязательный параметр. -
--internal-ipv4— блок атрибутов резервирования внутреннего IP-адреса:subnet— идентификатор подсети, в которой будет зарезервирован IP-адрес.address— IPv4-адрес, который будет зарезервирован. IP-адрес должен относиться к диапазону IP-адресов выбранной подсети. Указывать IP-адреса, уже используемые ресурсами Yandex Cloud, нельзя.
Результат:
id: fl8not0e596n******** folder_id: b1gt6g8ht345******** created_at: "2026-07-05T13:21:12Z" name: my-address description: inbound endpoint address internal_ipv4_address: address: 192.168.3.3 subnet_id: fl8dmq91iruu******** reserved: true type: INTERNAL ip_version: IPV4Сохраните идентификатор (значение поля
id) зарезервированного адреса, он понадобится при создании DNS-подключения.Подробнее о команде
yc vpc address createчитайте в справочнике CLI. -
-
Создайте входящее DNS-подключение:
yc dns inbound-endpoint create \ --name <имя_входящего_подключения> \ --description '<описание_подключения>' \ --labels <ключ>=<значение>[,<ключ>=<значение>] \ --network-id <идентификатор_сети> \ --address-id <идентификатор_адреса> \ --deletion-protectionГде:
--name— имя создаваемого DNS-подключения.--description— описание подключения. Необязательный параметр.--labels— список меток. Необязательный параметр. Можно указать одну или несколько меток через запятую в формате<ключ1>=<значение1>,<ключ2>=<значение2>.--network-id— идентификатор облачной сети Yandex Virtual Private Cloud, в которой будет создано входящее DNS-подключение.--address-id— сохраненный ранее идентификатор зарезервированного IP-адреса, который будет использоваться для входящего DNS-подключения.--deletion-protection— параметр, включающий защиту создаваемого входящего DNS-подключения от случайного удаления. Необязательный параметр.
Результат:
id: dns80efu32ve******** folder_id: b1gt6g8ht345******** created_at: "2026-07-05T13:32:36.880Z" name: my-inbound-endpoint network_id: enpcfncr6uld******** address: 192.168.3.3 address_id: fl8not0e596n******** status: AVAILABLEПодробнее о команде
yc dns inbound-endpoint createчитайте в справочнике CLI. -
(Опционально) После создания входящего DNS-подключения проверьте разрешение FQDN-имен через это подключение. Для этого выполните команду
dig, указав IP-адрес входящего DNS-подключения и FQDN ресурса в Yandex Cloud.Например:
dig @192.168.3.3 my-sample-vm.kz1.internalРезультат:
; <<>> DiG 9.18.39-0ubuntu0.24.04.5-Ubuntu <<>> @192.168.3.3 my-sample-vm.kz1.internal ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26971 ;; flags: qr aa rd ra; MBZ: 0x4; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ; COOKIE: 5628ffd26cc7ebc0 (echoed) ;; QUESTION SECTION: ;my-sample-vm.kz1.internal. IN A ;; ANSWER SECTION: my-sample-vm.kz1.internal. 600 IN A 192.168.2.22 ;; Query time: 2 msec ;; SERVER: 192.168.3.3#53(192.168.3.3) (UDP) ;; WHEN: Sun Jul 05 13:39:52 UTC 2026 ;; MSG SIZE rcvd: 153
Terraform
Terraform распространяется под лицензией Business Source License
Подробная информация о ресурсах провайдера в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы управлять инфраструктурой с помощью Terraform от имени сервисного аккаунта или пользовательских аккаунтов: аккаунта на Яндексе, федеративного аккаунта и локального пользователя, аутентифицируйтесь соответствующим способом.
-
Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать:
resource "yandex_vpc_network" "my_net" {} resource "yandex_vpc_subnet" "subnet1" { network_id = yandex_vpc_network.my_net.id v4_cidr_blocks = ["192.168.3.0/24"] } resource "yandex_vpc_address" "dns_address" { name = "my-address" description = "inbound endpoint address" internal_ipv4_address { subnet_id = yandex_vpc_subnet.subnet1.id address = "192.168.3.3" } deletion_protection = false } resource "yandex_dns_inbound_endpoint" "dns_connection" { name = "my-inbound-endpoint" description = "DNS Inbound Endpoint" network_id = yandex_vpc_network.my_net.id address_id = yandex_vpc_address.dns_address.id deletion_protection = false }Где:
name— имя создаваемого DNS-подключения.description— описание подключения. Необязательный параметр.network_id— идентификатор облачной сети Virtual Private Cloud, в которой будет создано входящее DNS-подключение.address_id— идентификатор зарезервированного внутреннего IP-адреса, который будет использоваться для входящего DNS-подключения.deletion_protection— параметр, включающий защиту создаваемого входящего DNS-подключения от случайного удаления. Необязательный параметр.
-
Создайте ресурсы:
-
В терминале перейдите в директорию с конфигурационным файлом.
-
Проверьте корректность конфигурации с помощью команды:
terraform validateЕсли конфигурация является корректной, появится сообщение:
Success! The configuration is valid. -
Выполните команду:
terraform planВ терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply -
Подтвердите изменения: введите в терминале слово
yesи нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc dns inbound-endpoint get <имя_DNS-подключения> -
Чтобы зарезервировать статический публичный IP-адрес, воспользуйтесь методом REST API create для ресурса Address или вызовом gRPC API AddressService/Create.
Чтобы создать входящее DNS-подключение, воспользуйтесь методом REST API create для ресурса DnsInboundEndpoint или вызовом gRPC API DnsInboundEndpointService/Create.
Полезные ссылки
Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.