---
title: Reserved IPs
url: https://docs.vultr.com/products/compute/instances/bare-metal/networking/reserved-ips
description: A guide for assigning and managing persistent IP addresses on Vultr Bare Metal servers
publish_date: 2024-09-23T20:20:30.144804Z
last_updated: 2026-05-26T18:50:37.899516Z
---

# How to Attach Reserved IPs on a Vultr Bare Metal Instance

Reserved IP addresses enable you to reserve a specific public IP address you can attach to instances. You can attach multiple reserved IPs on a single instance to enable new network interfaces.

Follow this guide to attach reserved IPs on a Vultr Bare Metal instance using the Vultr Console, API, CLI, or Terraform.

=== "Vultr Console"

    1. Navigate to **Products**, expand the **Network** group and click **Reserved IPs**.
    1. Click your target reserved IP to open its management page.
    1. Click the **Attach to Server** drop-down and select your target Bare Metal instance.
    1. Click **Attach** to apply the reserved IP to your Bare Metal instance.

=== "Vultr API"

    1. Send a `GET` request to the [**List Bare Metal Instances** endpoint](https://www.vultr.com/api/#tag/baremetal/operation/list-baremetals) and note the target instance's ID in your output.

        ```console
        $ curl "https://api.vultr.com/v2/bare-metals" \
          -X GET \
          -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `GET` request to the [**List Reserved IPs** endpoint](https://www.vultr.com/api/#tag/reserved-ip/operation/list-reserved-ips) and note the target reserved IP's ID in your output.

        ```console
        $ curl "https://api.vultr.com/v2/reserved-ips" \
           -X GET \
           -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `POST` request to the [**Attach Reserved IP** endpoint](https://www.vultr.com/api/#tag/reserved-ip/operation/attach-reserved-ip) to attach a new reserved IP to the instance.

        ```console
        $ curl "https://api.vultr.com/v2/reserved-ips/{reserved-ip}/attach" \
          -X POST \
          -H "Authorization: Bearer ${VULTR_API_KEY}" \
          -H "Content-Type: application/json" \
          --data '{
            "instance_id" : "<instance-id>"
          }'
        ```

=== "Vultr CLI"

    1. List all reserved IPs in your Vultr account and note the target reserved IP's ID.

        ```console
        $ vultr-cli reserved-ip list
        ```

    1. List all Bare Metal instances in your Vultr account and note the target instance's ID.

        ```console
        $ vultr-cli bare-metal list
        ```

    1. Attach the reserved IP to the Bare Metal instance.

        ```console
        $ vultr-cli reserved-ip attach <reserved-ip-id> --instance-id <baremetal-instance-id>
        ```

=== "Terraform"

    1. Open your Terraform configuration for the existing Bare Metal instance.

    1. Update the `reserved_ip_id` value in the Bare Metal resource to the ID of the target reserved IP.

        ```terraform
        resource "vultr_bare_metal_server" "bm1" {
            # ...existing fields (region, plan, label, etc.)

            reserved_ip_id = "your-reserved-ip-id"
        }
        ```

        Or create a new reserved IP in Terraform and attach it to the Bare Metal instance:

        ```terraform
        resource "vultr_reserved_ip" "bm1_ip" {
            region  = "del"
            ip_type = "v4"
            label   = "bm1-reserved-ip"
        }

        resource "vultr_bare_metal_server" "bm1" {
            # ...existing fields (region, plan, os_id, label, etc.)

            reserved_ip_id = vultr_reserved_ip.bm1_ip.id
        }
        ```

    1. Apply the configuration and observe the following output:

        ```
        Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
        ```
