Yandex Cloud
Search
Discuss with expertTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex BareMetal
    • All guides
      • Creating a VRF
      • Creating a private subnet
      • Configuring DNS in a private subnet
      • Ordering a dedicated public subnet
      • Deleting a dedicated public subnet
      • Creating a private connection to cloud networks
      • Creating a static route
    • Overview
    • Integrations with other Yandex Cloud services
      • Overview
      • Stock server configurations
      • Custom server configuration
      • On-request server configuration
      • Overview
      • Extend: Virtualization
      • Extend: Yandex Cloud Stackland
      • Extend: Managed Service for Kubernetes®
      • Overview
      • Public network
      • Private network
      • DHCP
      • DNS in a private network
      • MC-LAG
      • Restrictions in BareMetal networks
      • Overview
      • Images
      • Access management
      • Additional server settings
      • Management console
      • Monitoring metrics
    • Quotas and limits
  • Pricing policy
  • Release notes
  • FAQ

In this article:

  • Examples
  • Leasing a new dedicated public subnet
  • Transforming an ephemeral public subnet into a dedicated one
  1. Step-by-step guides
  2. Network
  3. Ordering a dedicated public subnet

Ordering a dedicated public subnet

Written by
Yandex Cloud
Improved by
Danila N.
Updated at November 2, 2026
View in Markdown
  • Examples
    • Leasing a new dedicated public subnet
    • Transforming an ephemeral public subnet into a dedicated one

A dedicated public subnet is a public subnet made up of an IP address range that will be available to your servers in the selected pools.

You can lease a new dedicated public subnet or convert an existing ephemeral public subnet to a dedicated one.

Leasing a new dedicated public subnetLeasing a new dedicated public subnet

Management console
CLI
API

Note

The minimum rent period for a public subnet is one month from the order date.

  1. In the management console, select the folder where you want to reserve a dedicated public subnet.

  2. Navigate to BareMetal.

  3. In the left-hand panel, select Public addresses and subnets.

  4. Click Order a public subnet at the top of the page.

  5. In the Availability zone field, select the availability zone where the subnet will be available.

  6. Under Pool, select one or more pools the subnet will be available in.

    You can link a dedicated public subnet with several pools at the same time. You can edit the pool list after the subnet has been created.

  7. In the table, select the size of the subnet you want to order.

    • /28: 16 IP addresses, 14 of which are available for use.
    • /29: 8 IP addresses, 6 of which are available for use.

    If you need a larger public subnet, contact support to request it.

  8. Under General information:

    1. In the Name field, enter the name of the public subnet.
    2. Optionally, in the Description field, add a subnet description.
    3. Optionally, under Labels, click Add label and set labels.
  9. Click Order.

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.

  1. View the description of the command for leasing a new dedicated public subnet:

    yc baremetal public-subnet create --help
    
  2. Lease a subnet:

    yc baremetal public-subnet create \
      --hardware-pool-ids <pool_1_ID>,<pool_2_ID>,... \
      --prefix-length 29 \
      --name <public_subnet_name> \
      --description "<public_subnet_description>" \
      --labels <key>=<value>
    

    Where:

    • --hardware-pool-ids: IDs of the pools where the subnet will be available.

      You can link a dedicated public subnet with several pools at the same time. You can edit the pool list after the subnet has been created.

    • --prefix-length: Size of the subnet you want to order.

      You can only order subnets of size /29 (six available IP addresses) and /28 (14 available IP addresses).

    • --name: Subnet name. The naming requirements are 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.
    • --description: Subnet description. This is an optional setting.

    • --labels: Subnet labels. This is an optional setting.

To lease a new dedicated public subnet, use the create REST API method for the PublicSubnet resource or the PublicSubnetService/Create gRPC API call.

Converting an ephemeral public subnet to a dedicated oneConverting an ephemeral public subnet to a dedicated one

Note

You can only convert an ephemeral public subnet to a dedicated public subnet of size /31.

Management console
CLI
API
  1. In the management console, select the folder containing the ephemeral public subnet you want to convert to a dedicated one.
  2. Navigate to BareMetal.
  3. In the left-hand panel, select Public addresses and subnets.
  4. In the list of public subnets that opens, in the ephemeral subnet row, click and select Make dedicated.
  5. Under Pool, select one or more pools the subnet will be available in.

    You can link a dedicated public subnet with several pools at the same time. You can edit the pool list after the subnet has been created.

  6. Under General information:

    1. In the Name field, enter the name of the public subnet.
    2. Optionally, in the Description field, add a subnet description.
    3. Optionally, under Labels, click Add label and set labels.
  7. Click Order.
  1. View the description of the command for transforming an ephemeral public subnet:

    yc baremetal public-subnet update --help
    
  2. Transform the subnet:

    yc baremetal public-subnet update \
      --id <ephemeral_public_subnet_ID> \
      --type dedicated \
      --hardware-pool-ids <pool_1_ID>,<pool_2_ID>,... \
      --name <public_subnet_name> \
      --description "<public_subnet_description>" \
      --labels <key>=<value>
    

    Where:

    • --id: ID of the ephemeral public subnet.

    • --type: Type to transform the subnet into.

    • --hardware-pool-ids: IDs of the pools where the subnet will be available.

      You can link a dedicated public subnet with several pools at the same time. You can edit the pool list after the subnet has been created.

    • --name: Subnet name.

    • --description: Subnet description. This is an optional setting.

    • --labels: Subnet labels. This is an optional setting.

To convert an ephemeral public subnet to a dedicated one, use the update REST API method for the PublicSubnet resource or the PublicSubnetService/Update gRPC API call.

Updating the pools of a dedicated public subnetUpdating the pools of a dedicated public subnet

Management console
CLI
API
  1. In the management console, select the folder containing the dedicated public subnet in question.

  2. Navigate to BareMetal.

  3. In the left-hand panel, select  Public addresses and subnets.

  4. Select the public subnet in question.

  5. Click  Edit at the top right.

  6. In the Pool field, select the pools where you need the subnet to be available.

    You cannot change the public subnet's availability zone.

  7. Click Save changes.

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.

  1. View the description of the command for updating the public subnet:

    yc baremetal public-subnet update --help
    
  2. Update the list of pools:

    yc baremetal public-subnet update \
      --id <public_subnet_ID> \
      --hardware-pool-ids <pool_1_ID>,<pool_2_ID>,...
    

    Where:

    • --id: Public subnet ID.
    • --hardware-pool-ids: Full new list of IDs of the pools where the subnet needs to be available.

To update the pool list, use the update REST API method for the PublicSubnet resource or the PublicSubnetService/Update gRPC API call. Provide a new list of IDs in the hardwarePoolIds field and add hardwarePoolIds to the updateMask field.

ExamplesExamples

Leasing a new dedicated public subnetLeasing a new dedicated public subnet

Lease a new dedicated public subnet of the /29 size:

CLI
API
yc baremetal public-subnet create \
  --hardware-pool-ids ru-central1-m3,ru-central1-m4 \
  --prefix-length 29 \
  --name demo-public-subnet \
  --description "My first public subnet" \
  --labels env=test

Result:

id: ly5jmqxxrcsu********
cloud_id: b1gia87mbaom********
folder_id: b1g0ijbfaqsn********
name: demo-public-subnet
description: My first public subnet
zone_id: ru-central1-m
hardware_pool_ids:
  - ru-central1-m3
  - ru-central1-m4
type: DEDICATED
prefix_length: "29"
cidr: 94.139.248.184/29
gateway_ip: 94.139.248.185
created_at: "2025-06-26T14:11:49.458568Z"
labels:
  env: test
curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <IAM_token>" \
  -d '{
    "folderId": "b1g07hj5r6i4********",
    "name": "new-public-subnet",
    "description": "New public subnet",
    "hardwarePoolIds": [
      "ru-central1-m3",
      "ru-central1-m4"
    ],
    "prefixLength": "29",
    "labels": {
      "key": "public-subnet"
    }
  }' \
  "https://baremetal.api.cloud.yandex.net/baremetal/v1alpha/publicSubnets"

Where:

  • <IAM_token>: IAM token used for authentication.

  • folderId: Folder ID.

  • hardwarePoolIds: Pool IDs.

  • prefixLength: Size of the subnet you want to order.

  • name: Name of the public subnet. The naming requirements are 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.
  • description: Subnet description. This is an optional parameter.

  • labels: Subnet labels. This is an optional parameter.

Result:

{
  "done": true,
  "metadata": {
    "@type": "type.googleapis.com/yandex.cloud.baremetal.v1alpha.CreatePublicSubnetMetadata",
    "publicSubnetId": "ly52xefxa2hi********"
  },
  "response": {
    "@type": "type.googleapis.com/yandex.cloud.baremetal.v1alpha.PublicSubnet",
    "id": "ly52xefxa2hi********",
    "cloudId": "b1gia87mbaom********",
    "folderId": "b1g07hj5r6i4********",
    "name": "new-public-subnet",
    "description": "New public subnet",
    "zoneId": "ru-central1-m",
    "hardwarePoolIds": [
      "ru-central1-m3",
      "ru-central1-m4"
    ],
    "type": "EPHEMERAL",
    "prefixLength": "29",
    "cidr": "10.0.*.*/29",
    "dhcpOptions": {
        "startIp": "10.0.*.*",
        "endIp": "10.0.*.*"
      },
    "gatewayIp": "10.0.*.*"
    "createdAt": "2025-12-14T14:42:58.372557Z"
    "labels": {
      "env": "test"
    },
  "id": "ly5hcnsbx3l4********",
  "description": "Public subnet create",
  "createdAt": "2025-12-14T14:42:58.375290Z",
  "createdBy": "ajeb9l33h6mu********",
  "modifiedAt": "2025-12-14T14:42:58.375290Z"
}

Follow the status of the operation by the done field.

Transforming an ephemeral public subnet into a dedicated oneTransforming an ephemeral public subnet into a dedicated one

Change the public subnet type from ephemeral to dedicated:

CLI
API
yc baremetal public-subnet update \
  --id ly5vr6tugxk7******** \
  --type dedicated \
  --hardware-pool-ids ru-central1-m3,ru-central1-m4 \
  --description "Transformed dedicated public subnet"

Result:

id: ly5vr6tugxk7********
cloud_id: b1gia87mbaom********
folder_id: b1g0ijbfaqsn********
name: transformed-public-subnet
description: Transformed dedicated public subnet
zone_id: ru-central1-m
hardware_pool_ids:
  - ru-central1-m3
  - ru-central1-m4
type: DEDICATED
prefix_length: "29"
cidr: 94.139.248.184/29
gateway_ip: 94.139.248.185
created_at: "2025-06-26T14:11:49.458568Z"
curl -X PATCH \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <IAM_token>" \
  -d '{
    "updateMask": "type,hardwarePoolIds,name,description",
    "type": "DEDICATED",
    "hardwarePoolIds": ["ru-central1-m3", "ru-central1-m4"],
    "name": "transformed-public-subnet",
    "description": "Transformed dedicated public subnet"
  }' \
  "https://baremetal.api.cloud.yandex.net/baremetal/v1alpha/publicSubnets/<subnet_ID>"

Where:

  • updateMask: List of parameters to update, comma-separated.

  • type: New subnet type. The DEDICATED value for conversion into a dedicated subnet.

  • name: Name of the dedicated subnet. The naming requirements are 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.
  • description: Description of the dedicated subnet. This is an optional parameter.

Result:

{
  "done": true,
  "metadata": {
    "@type": "type.googleapis.com/yandex.cloud.baremetal.v1alpha.CreatePublicSubnetMetadata",
    "publicSubnetId": "ly52xefxa2hi********"
  },
  "response": {
    "@type": "type.googleapis.com/yandex.cloud.baremetal.v1alpha.PublicSubnet",
    "id": "ly52xefxa2hi********",
    "cloudId": "b1gia87mbaom********",
    "folderId": "b1g07hj5r6i4********",
    "name": "new-public-subnet",
    "description": "New public subnet",
    "zoneId": "ru-central1-m",
    "hardwarePoolIds": [
      "ru-central1-m3",
      "ru-central1-m4"
    ],
    "type": "DEDICATED",
    "prefixLength": "29",
    "cidr": "10.0.*.*/29",
    "dhcpOptions": {
        "startIp": "10.0.*.*",
        "endIp": "10.0.*.*"
      },
    "gatewayIp": "10.0.*.*"
    "createdAt": "2025-12-14T14:42:58.372557Z"
    "labels": {
      "env": "test"
    },
  "id": "ly5hcnsbx3l4********",
  "description": "Public subnet create",
  "createdAt": "2025-12-14T14:42:58.375290Z",
  "createdBy": "ajeb9l33h6mu********",
  "modifiedAt": "2025-12-14T14:42:58.375290Z"
}

Follow the status of the operation by the done field.

Was the article helpful?

Previous
Configuring DNS in a private subnet
Next
Deleting a dedicated public subnet
© 2026 Direct Cursus Technology L.L.C.