> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nscale.com/llms.txt
> Use this file to discover all available pages before exploring further.

# VPC Networks

A Virtual Private Cloud (VPC) is an isolated network boundary for your resources. Instances, clusters, and filesystems inside a VPC can communicate with each other but are isolated from resources in other VPCs. You need at least one VPC before you can create instances. VPCs are project-scoped and region-bound.

<Note>
  **Prerequisite:** You need an existing project before creating a VPC.
</Note>

## Summary

This page explains how to create and manage **Virtual Private Cloud (VPC) networks** in the **nscale Console UI**.

Use this workflow if you:

* Need a private network boundary for workloads in a **specific project**
* Want to prepare networking before creating instances (you need at least one VPC to create instances)

The Console guides you through VPC creation in a short, three-step flow — **Details**, **Network Configuration**, and **Add Routes** — so you can size the network and (optionally) tune its IP allocation before any machines are provisioned.

## Availability

This feature is available for **On-demand** and **Reserved** cloud services.

## Requirements

* A **project** where the VPC will be created (VPCs are project-scoped; you can create multiple VPCs per project)
* Permission and sufficient **quota** to create a VPC

<Info>
  VPCs are project-scoped — you can create and use multiple VPCs within the same project.
</Info>

<Warning>
  Your VPC's workload subnet must have at least a **/24 CIDR block** (256 IP addresses). This is the minimum for any network.
</Warning>

## VPC Lifecycle

| Action     | Details                                                                                                                                                                                                                                             |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Create** | Walk through the three-step flow: enter the **details** (name, project, region, nameservers), define the **network configuration** (address, mask, and optional advanced IP reservations), and optionally **add routes**.                           |
| **Edit**   | Update the **name**, **nameservers**, and **routes** at any time after creation. Note: nameserver changes propagate via DHCP and may take up to 24 hours to apply on machines. Reboot the instance or run `dhclient` to force an immediate refresh. |
| **Delete** | Remove a VPC that is no longer needed.                                                                                                                                                                                                              |

<Warning>
  You **cannot change** the region or the IP address range of a VPC after creation. The IP allocation is permanent — to change it you would need to delete the VPC and reprovision every machine in it. Plan these values carefully.
</Warning>

## Step-by-step

### Create a new VPC

1. In the Console, open your project, then open **Network** in the project sidebar.
2. Select **VPCs**.
3. Click **Create VPC**.

<img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-list.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=cd210d8372f9f416c5ced0bcf58bca4e" alt="VPC list with the Create VPC button" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-list.png" />

#### Step 1 — Details

4. Fill in the VPC details:

   * **Name**: Enter a name for your network. It can only contain lowercase alphanumeric characters and dashes (e.g. `ml-platform-vpc`).
   * **Project**: Choose the project where the VPC should exist.
   * **Region**: Select the region for the VPC.
   * **Nameservers**: Optionally add one or more DNS server IPs.

   <Tip>
     If you leave **Nameservers** blank, Nscale-provided DNS defaults are used.
   </Tip>

   <Warning>
     Adding an explicit DNS server **bypasses internal hostname resolution** — instances in the VPC will not be able to resolve each other by hostname. Use with caution.
   </Warning>

   <img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-create-details.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=b23cfce1a34e27bb982851141d2d37ea" alt="VPC creation — Details step" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-create-details.png" />

5. Click **Next: Network Configuration**.

#### Step 2 — Network Configuration

6. Define the VPC's address range:

   * **Network Address**: The base network address (e.g. `10.0.0.0`). This must be the network base address — the host bits below the mask must be zero.
   * **Network Mask**: The prefix length, from `/8` to `/24`. This sets the total number of IP addresses available in the network.

   <Tip>
     **Sizing examples:** `/16` gives you 65,536 addresses (a large VPC), while `/24` gives you 256. Choose a `/16` or `/20` if you expect to scale.
   </Tip>

   <Info>
     This IP allocation is permanent. To change it, you'd need to delete this VPC and reprovision all your machines.
   </Info>

   <img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-create-network-config.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=7198bf45bc6ef9774ae2ddca0c2f0b50" alt="VPC creation — Network Configuration step" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-create-network-config.png" />

7. (Optional) Turn on **Advanced Configuration** to control how the network's IP space is divided. See [Advanced Configuration (IP reservations)](#advanced-configuration-ip-reservations) below.

8. Click **Next: Add Routes**.

#### Step 3 — Add Routes

9. (Optional) Add static routes for the VPC:

   * **Prefix**: The destination CIDR block (e.g. `192.168.0.0/24`).
   * **Next hop**: The IP address traffic for that prefix should be forwarded to.
   * Click **Add Route** to add it to the list. Repeat for additional routes.

   <Tip>
     Routes are optional — you can add or change them later by editing the VPC.
   </Tip>

   <img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-create-routes.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=756cb16a558c3072385057e07dcddfcd" alt="VPC creation — Add Routes step" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-create-routes.png" />

10. Click **Create VPC**.

11. Verify the result — the new VPC appears in the **VPC list** for the selected project and begins provisioning.

<img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-dashboard.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=cb2ca98b8e27fb3eb9c65f6e2f6ab345" alt="VPC list showing the new VPC" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-dashboard.png" />

## Advanced Configuration (IP reservations)

By default, nscale automatically divides your VPC's IP space between the addresses handed to your machines (the **DHCP pool**) and a block reserved for **Nscale services** and **network services** (gateway, DNS, and metadata). Most VPCs never need to change this.

**Advanced Configuration** lets you tune that split. On the **Network Configuration** step, toggle **Advanced Configuration** on to reveal two controls and a live allocation preview:

* **Define your reservation block**: The block of IPs set aside for Nscale services and network services — these are unavailable for DHCP.
* **Define network services**: Your portion within the reservation block for gateway, DNS, and metadata. The remainder of the reservation block goes to Nscale services.

The selections always nest as **network ⊇ reservation block ⊇ network services**, and the **Network Allocation** summary updates live to show how many IPs go to **Network Services**, **Nscale Services**, and the **DHCP** pool.

<img src="https://mintcdn.com/nscale/brZSlQQ_eSjy7uhb/images/vpc-create-advanced-config.png?fit=max&auto=format&n=brZSlQQ_eSjy7uhb&q=85&s=5f1da5decb2761c007f98a5b6dfe8379" alt="VPC creation — Advanced Configuration with IP reservations" className="rounded-lg" width="3024" height="1390" data-path="images/vpc-create-advanced-config.png" />

<Note>
  Advanced Configuration is optional. If you leave it off, nscale applies a sensible default reservation and the rest of your network is available to the DHCP pool.
</Note>

## Quotas

To check your current network quota, go to the **Resource Usage** section on the **Dashboard**. The dashboard shows your provisioned and total limits for networks alongside GPU, servers, clusters, and filesystem quotas.

## Common Issues / Troubleshooting

* **Symptom:** You can't find a VPC you expect to see in the Console.

  **Likely cause:** The Console is currently scoped to a different **project**. VPC networks are **project-scoped**, so you'll only see VPCs created in the selected project.

  **Fix:** In the Console, switch to the correct **project**, then return to **Network → VPCs** and check the list again.

* **Symptom:** Your DNS server IPs changed after the VPC was created.

  **Likely cause:** DNS servers can change over time (for example, if your upstream DNS changes), and the VPC still has the older nameservers configured.

  **Fix:** Go to **Network → VPCs**, select the VPC, and update the **Nameservers**. You can return later at any time to edit them.

* **Symptom:** The **Region** list is missing the region you expect.

  **Likely cause:** VPCs can only be created in regions that support them, so other region types are filtered out of the picker.

  **Fix:** Choose one of the regions shown. If the region you need is missing entirely, contact support to confirm availability.

***

## Related Resources

<CardGroup cols={2}>
  <Card title="Instances" icon="rectangle-history-circle-plus" href="/docs/compute/create-new-instances">
    Create compute instances inside your VPC
  </Card>

  <Card title="Security Groups" icon="shield" href="/docs/network/security-groups">
    Control traffic rules for resources in your VPC
  </Card>

  <Card title="Filesystem" icon="files" href="/docs/storage/file-storage">
    Attach shared persistent storage within your VPC
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/networks/list-networks">
    Manage VPCs programmatically via the Networking and Storage API
  </Card>
</CardGroup>
