---
title: VPC
url: https://docs.vultr.com/products/compute/instances/cloud-gpu/networking/vpc
description: A private network solution that allows secure communication between Vultr instances within the same region
publish_date: 2024-09-23T20:20:14.617047Z
last_updated: 2026-05-26T18:48:13.434388Z
---

# How to Attach VPC Networks on a Vultr Cloud GPU Instance

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

Follow this guide to attach VPC networks on a Vultr Cloud GPU instance using the Vultr Console, API, or CLI.

=== "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 **IPv4** on the left navigation menu.
    1. Click the **VPC Network** drop-down, select a Vultr VPC network and click **Attach**.
    1. Click **Attach VPC** in the confirmation prompt to apply changes to your instance.

=== "Vultr API"

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

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

    1. Send a `GET` request to the [**List VPCs** endpoint](https://www.vultr.com/api/#tag/VPCs/operation/list-vpcs) to list all VPCs in your Vultr account and note the target VPC network's ID.

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

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

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

=== "Vultr CLI"

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

        ```console
        $ vultr-cli instance list
        ```

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

        ```console
        $ vultr-cli vpc list
        ```

    1. Attach the VPC network to the instance.

        ```console
        $ vultr-cli instance vpc attach <instance-id> --vpc-id="<vpc-id>"
        ```

=== "Terraform"

    1. Open your Terraform configuration for the existing Cloud GPU instance.

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

        ```terraform
        # Create a new VPC network
        resource "vultr_vpc" "private_net" {
            region      = "del"
            description = "Private network for GPU workloads"
        }

        # Attach the VPC network to the GPU instance
        resource "vultr_instance" "gpu" {
            # ...existing fields (region, plan, os_id, label, etc.)

            vpc_ids = [vultr_vpc.private_net.id]
        }
        ```

    1. Apply the configuration and observe the following output:

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