---
title: VPC 2.0
url: https://docs.vultr.com/products/compute/instances/bare-metal/networking/vpc-2
description: A guide for connecting Vultr Bare Metal instances to VPC 2.0 networks for enhanced private networking capabilities.
publish_date: 2024-09-23T20:20:30.729275Z
last_updated: 2026-05-26T18:50:11.918469Z
---

# How to Attach VPC 2.0 Networks on a Vultr Bare Metal Instance

A Virtual Private Cloud (VPC) 2.0 network enables a secure and isolated private networking interface on your instance for communication with other instances on the same network. You can attach multiple VPC 2.0 networks to enable communication between an instance and other nodes attached to the same network.

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

=== "Vultr Console"

    1. Navigate to **Products** and click **Compute**.
    1. Click your target instance to open its management page.
    1. Navigate to the **Settings** tab.
    1. Click **VPC 2.0** on the left navigation menu.    
    1. Click **Enable VPC 2.0** to attach a new VPC 2.0 network to your instance.
    1. Click **Enable VPC 2.0** in the confirmation prompt to apply changes and attach a new VPC 2.0 network to your instance.
    1. Click the **VPC 2.0** drop-down to select a specific network and click **Attach** to apply changes.

=== "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 Instance VPC 2.0 Networks** endpoint](https://www.vultr.com/api/#tag/instances/operation/list-instance-vpc2) to list all VPC 2.0 networks in your Vultr account and note the target VPC 2.0 network's ID.

        ```console
        $ curl "https://api.vultr.com/v2/instances/{instance-id}/vpc2" \
          -X GET \
          -H "Authorization: Bearer ${VULTR_API_KEY}"
        ```

    1. Send a `POST` request to the [**Attach VPC 2.0 to Instance** endpoint](https://www.vultr.com/api/#tag/instances/operation/attach-instance-vpc2) to attach the VPC 2.0 network to the Bare Metal instance.

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

=== "Vultr CLI"

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

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

    1. List all VPC 2.0 networks in your Vultr account and note the target VPC 2.0 network's ID.

        ```console
        $ vultr-cli vpc2 list
        ```

    1. Attach the VPC 2.0 network to the instance.

        ```console
        $ vultr-cli vpc2 nodes attach <vpc2-id> \
                --nodes="<instance-id>"
        ```

=== "Terraform"

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

    1. Create (or reference) a VPC 2.0 network and attach it to the Bare Metal instance.

        ```terraform
        # Create a new VPC 2.0 network
        resource "vultr_vpc2" "private_net" {
            region      = "del"
            description = "Private network for Bare Metal workloads"
        }

        # Attach the VPC 2.0 network to the Bare Metal instance
        resource "vultr_bare_metal_server" "bm1" {
            # ...existing fields (region, plan, os_id, label, etc.)

            vpc2_ids = [vultr_vpc2.private_net.id]
        }
        ```

    1. Apply the configuration and observe the following output:

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