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

# Private Networking

> Connect your Private Cloud to AWS resources in your own accounts without traversing the public internet.

## Introduction

Private networking lets your Private Cloud reach AWS resources in your own accounts without exposing traffic to the public internet.

VPC Peering is available as a self-service flow in the Cloud dashboard. PrivateLink, VPC Lattice, and Transit Gateway are also supported, but require coordination with the Laravel Cloud team to set up.

## Connection types

When you create a private connection, you choose a connection type. The right choice depends on what you are connecting to and how your network is structured.

* **VPC Peering**: A direct network link between two VPCs, allowing connections to route internally using private IPs. Simple to set up and best for simple networks.
* **VPC Lattice**: A managed service mesh for connecting services across VPCs. Useful for strict security environments with heightened observability.
* **PrivateLink**: Expose an individual service in one VPC to another over a private endpoint. Common for connecting to vendor-managed databases or APIs privately.
* **Transit Gateway**: A regional hub that connects multiple VPCs or other gateways together. Best for complex, multi-VPC architectures.

## Setting up a VPC peering connection

To establish a VPC peering connection from the Cloud dashboard:

<Steps>
  <Step title="Open network settings">
    Click the "Private network" card from your environment's canvas and select "Request private connection".
  </Step>

  <Step title="Choose a Private Cloud">
    Select the Private Cloud the connection will be established with.
  </Step>

  <Step title="Select the connection type">
    Select "VPC Peering" as the connection type.
  </Step>

  <Step title="Provide connection details">
    Enter the following details:

    * **AWS account ID**: The 12-digit account ID of the AWS account that owns the VPC or resources you want to connect to.
    * **VPC ID**: The ID of the VPC you want to peer with. You can find this in your AWS VPC dashboard.
    * **CIDR range**: The IPv4 CIDR block of the target VPC. This must not overlap with your Private Cloud's CIDR range.
  </Step>

  <Step title="Submit the request">
    Submit the request. Laravel Cloud will provision the peering connection and update the connection's status as it progresses.
  </Step>

  <Step title="Accept the peering request in AWS">
    Once the connection reaches a state requiring your action, accept the peering request from your AWS account and update your VPC's route tables to direct traffic to the peering connection.
  </Step>
</Steps>

The connection card on the Private connections page shows both sides of the peering. The values you provided are listed under `Target`, and the corresponding values on the Laravel Cloud side are listed under `Ours`. Use the `Ours` IP information when configuring resources in your account that need to talk to your Private Cloud, and use the `Target` IPs when your Private Cloud needs to reach resources in your account.

If a connection fails or expires, click "Renew request" to restart the workflow without re-entering the details.

## PrivateLink, VPC Lattice, and Transit Gateway

These connection types are supported but are not yet available as a self-service flow in the dashboard. To set one up, [contact the Laravel Cloud team](https://cloud.laravel.com/enterprise) with:

* The connection type you need.
* The AWS account and VPC details for the target side.
* For PrivateLink: the service name or endpoint you need to connect to.
* For VPC Lattice: the resources or services you want to make available.
* For Transit Gateway: the existing Transit Gateway ID and routing details.

The Laravel Cloud team will provision the connection, and it will appear in your Private connections list once it is live.
