Reserving an internal IP address
You can reserve an internal IP address and use it for data transfer between cloud resources.
- In the management console
, navigate to the folder where you want to reserve an IP address. - Navigate
to Virtual Private Cloud. - In the left-hand panel, select
Subnets. - Select the subnet where you want to reserve the address.
- Navigate to the
IP addresses tab. - Click Reserve IP address.
- In the window that opens:
- Enter a name and description for the internal address.
- In the Internal IPv4 address field, enter the address you would like to reserve.
- Optionally, enable Deletion protection.
- Optionally, specify labels.
- Click ** Reserve**.
If you do not have the Yandex Cloud CLI yet, install and initialize it.
The folder used by default is the one specified when creating the CLI profile. To change the default folder, use the yc config set folder-id <folder_ID> command. You can also specify a different folder for any command using --folder-name or --folder-id. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.
-
See the description of the CLI command for reserving an address:
yc vpc address create --help -
Reserve an internal IP address by specifying the subnet ID:
yc vpc address create \ --name <address_name> \ --internal-ipv4 subnet=<subnet_ID>,address=<IP_address>Where:
--name: Internal IP address name.--internal-ipv4: Internal IPv4 address description:subnet: ID of the subnet the address is reserved in.address: Specific IP address to reserve. If not specified, the address will be assigned automatically.
To protect the address from deletion, add the
--deletion-protectionflag.Result:
id: e9b6un9gkso6******** folder_id: b1g7gvsi89m3******** created_at: "2024-05-08T07:55:49Z" name: my-internal-address internal_ipv4_address: address: 192.168.0.10 subnet_id: e2lghukd9iqo******** reserved: true type: INTERNAL ip_version: IPV4The internal IP address has been reserved.
With Terraform
Terraform is distributed under the Business Source License
For more information about the provider resources, see the guides on the Terraform
If you do not have Terraform yet, install it and configure the Yandex Cloud provider.
To manage infrastructure using Terraform under a service account or user accounts (a Yandex account, a federated account, or a local user), authenticate using the appropriate method.
-
In the configuration file, specify the properties of the resources you want to create:
-
name: Internal IP address name. The name format is as follows:- Length: between 3 and 63 characters.
- It can only contain lowercase Latin letters, numbers, and hyphens.
- It must start with a letter and cannot end with a hyphen.
-
folder_id: Folder ID. -
internal_ipv4_address: Internal IPv4 address description:subnet_id: ID of the subnet the address is reserved in.address(optional): Specific IP address to reserve. If not specified, the address will be assigned automatically.
Here is an example of the configuration file structure:
resource "yandex_vpc_address" "internal_addr" { name = "<address_name>" folder_id = "<folder_ID>" internal_ipv4_address { subnet_id = "<subnet_ID>" } }For more information about
yandex_vpc_addressproperties in Terraform, see this provider guide. -
-
Create resources:
-
In the terminal, navigate to the configuration file directory.
-
Make sure the configuration is correct using this command:
terraform validateIf the configuration is valid, you will get this message:
Success! The configuration is valid. -
Run this command:
terraform planYou will see a list of resources and their properties. No changes will be made at this step. Terraform will show any errors in the configuration.
-
Apply the configuration changes:
terraform apply -
Type
yesand press Enter to confirm the changes.
This will create all the resources you need in the specified folder. You can check the new resources and their configuration using the management console
or this CLI command:yc vpc address list -
To reserve an internal IP address, use the create REST API method for the Address resource or the AddressService/Create gRPC API call, and provide in the request the internalIpv4AddressSpec parameter for the REST API or internal_ipv4_address_spec for the gRPC API with the following fields:
-
ID of the folder for the address in the
folderIdfield for the REST API orfolder_idfor the gRPC API. -
Internal IP address name in the
namefield. The name format is as follows:- Length: between 3 and 63 characters.
- It can only contain lowercase Latin letters, numbers, and hyphens.
- It must start with a letter and cannot end with a hyphen.
-
Subnet ID in the
subnetIdfield for the REST API orsubnet_idfor the gRPC API. -
Optionally, specific IP address to reserve in the
addressfield. If not specified, the address will be assigned automatically.
To protect the address from deletion, provide in the request the deletionProtection parameter for the REST API or deletion_protection for the gRPC API, set to true.