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

# VPC CIDR blocks

> Learn how VPCs use CIDR notation to define address ranges

CoreWeave <Tooltip tip="A Virtual Private Cloud (VPC) is a private network hosted within a public cloud infrastructure." cta="Learn more" href="/glossary#virtual-private-cloud-vpc">VPCs</Tooltip> use <Tooltip tip="Classless Inter-Domain Routing (CIDR) is a method for allocating IP addresses and routing IP packets." cta="Learn more" href="/glossary#classless-inter-domain-routing-cidr">Classless Inter-Domain Routing (CIDR)</Tooltip> notation to define IP address ranges for the hosts, Pods, Load Balancers, and other Services used in each VPC. This page describes how to size and assign CIDR blocks when you configure a VPC, so you can plan address space that supports your workloads and integrates cleanly with other networks.

Understanding CIDR blocks is especially useful if you need to know IP ranges before you integrate with existing environments, such as with [Direct Connect](/products/networking/direct-connect/about-direct-connect).

When you plan your network architecture, allocate enough IP addresses for your Nodes and their associated services. To convert CIDRs to IP address ranges, we recommend the [ARIN CIDR Calculator](https://account.arin.net/public/cidrCalculator).

## Configure CIDR blocks in VPCs

Use the following YAML fields to assign CIDR ranges to each resource type when you create or edit a VPC configuration. The following example shows a single VPC containing multiple clusters, with different CIDR ranges assigned to different resources:

```yaml title="Example vpc.yaml" highlight={5-6,21-23} theme={"system"}
organizations:
  abc123:
    vpcs:
      default-us-east-04:
        hostPrefixes:
          - 10.176.192.0/18
        pubImport: true
        site: us-east-04
    clusters:
      poc-gpu:
        version: v1.30
        site: us-east-04
        vpc: default-us-east-04
        podCIDR: 10.24.0.0/13
        serviceCIDR: 10.32.0.0/22
        internalLbCIDR: 10.32.4.0/22
      poc-cpu:
        version: v1.30
        site: us-east-04
        vpc: default-us-east-04
        podCIDR: 10.48.0.0/13
        serviceCIDR: 10.56.0.0/22
        internalLbCIDR: 10.56.4.0/22
```

### CIDR block size guidelines

CIDR blocks for Nodes, Pods, Services, and Load Balancers have different subnet allocation limits. The following guidelines are based on the maximum number of resources each CIDR block can accommodate:

| Key              | Value | Description                                                                             |
| ---------------- | ----- | --------------------------------------------------------------------------------------- |
| `hostPrefixes`   | `/18` | A `/18` CIDR block supports up to 4,000 **Nodes**. Each Node requires `2` IP addresses. |
| `podCIDR`        | `/13` | A `/13` CIDR block supports up to 100 **Pods** per Node.                                |
| `serviceCIDR`    | `/22` | A `/22` CIDR block supports up to 1,000 **Services**.                                   |
| `internalLbCIDR` | `/22` | A `/22` CIDR block supports up to 1,000 **Load Balancers**.                             |

<Info>
  If you have a smaller environment, you can use smaller CIDR ranges. For example, if you plan only 500 Nodes for the cluster, a large CIDR block isn't required. However, smaller CIDR ranges can limit future expansion, since Service IPs must be contiguous.
</Info>

## Plan CIDRs for connected VPCs

If your architecture connects multiple VPCs, plan address space carefully to avoid routing conflicts. When you connect two CoreWeave VPCs between CKS clusters, you must plan unique, non-overlapping address space across the clusters. At a minimum, the two clusters must have non-overlapping internal Load Balancer CIDR blocks. To simplify routing between VPCs, keep all CIDR ranges in each cluster non-overlapping, including the Pod, Service, and Load Balancer CIDRs.

Set non-overlapping CIDR ranges when you create or edit each VPC in the Cloud Console. For the configuration flow, see [Create and manage VPCs](/products/networking/vpc/create-manage-vpcs). For automation, you can provision VPCs and their prefixes with the VPC API (for example, with the `hostPrefixes` and `vpcPrefixes` fields).

Non-overlapping address space also benefits multi-cluster networking tools. If you use [Liqo](https://docs.liqo.io/en/v1.0.0/) for multi-cluster networking, its network fabric prefers NAT-less communication when PodCIDRs are disjoint, and applies address translation only when overlaps exist.

## Additional resources

### How-to guides

* [Create and manage VPCs](/products/networking/vpc/create-manage-vpcs)

### References

* [VPC API](/products/networking/vpc/vpc-api)
