Reserved Private IP
We’re pleased to announce the general availability of Reserved Private IP on Oracle Cloud Infrastructure (OCI). Reserved Private IPs (IPv4 and IPv6) enable stable, predictable private addressing for applications—independent of any single compute instance or networking resource. Instead of a private IP changing when an instance is rebuilt or replaced, you can reserve a private IP address, from within the VCN, which remains allocated and can be reused when needed. Reserved Private IP helps maintain consistent addressing within the confines of your VCN, reduce operational disruption, and simplify scenarios that depend on fixed IP addresses, such as security rules, third-party integrations, and high-availability failover.
There is no charge to use Reserved Private IP, and it is available in all OC1 regions. For more details, please check out the Reserved IP documentation.
Before we get started..
Before we get going, let’s define some of the things we’ll be talking about.
- IP address with an ephemeral lifetime: An IP address with an ephemeral lifetime is one that is available as long as the resource is operational. Once the resource is terminated, the IP address is returned to the subnet pool and eligible to be consumed by another resource.
- IP address with a reserved lifetime: An IP addresses with a reserved lifetime is one that operates independently of the resource which is using it. This IP address can be “reserved” and then attached to a resource at launch. If the resource is terminated, the IP address continues to be “reserved” and available for re-use (it is not returned to the general subnet pool for reallocation).
- Private IP address – An address used exclusively within the confines of your OCI cloud Virtual Cloud Network (VCN)
- OCI Flexible Network Load Balancer – NLB
- OCI Flexible Load Balancer – LB
Introducing Reserved Private IP (IPv4 and IPv6)
Reserved Private IPs can be created without being assigned to any VM Instance or device. You can reserve a private IP address from a VCN subnet and then assign it later to supported compute and networking resources. You can also reserve a specified private IP at launch time for Bare Metal Instances, VM instances, NLBs, and LBs. In either case, the private IP remains reserved even after the corresponding resource is terminated.
The OCI Console provides a subnet-level list view of private IP addresses in use. This view includes:
- Private IP addresses assigned to resources (Compute, NLB, LB, etc.)
- Reserved private IP addresses (including those not currently assigned)
This inventory makes it easier to understand which IPs are in use, and to manage the lifecycle of private IPs (for example, converting an ephemeral private IP to reserved, or removing a reservation so the IP can return to the subnet pool).
If you do not specify a private IP address at launch time for a VM instance in a subnet, OCI automatically assigns an ephemeral private IP from the available IPs in that subnet. If you specify a private IP address, it must not already be assigned to another resource.
Note: OCI reserves three IP addresses in every subnet (network address, default gateway, and broadcast address). These addresses are not available for customer use and are separate from any customer-reserved private IPs.

Use Cases
Security and Routing Policies
Stable, reusable Reserved Private IPs simplify security and routing policies. In on-premises or multi-cloud deployments, teams often need to configure security and routing rules that reference specific private IPs for access. Prior to this feature, teams either had to wait until cloud resources were deployed before finalizing policies, or they had to preconfigure broad CIDR blocks (which is less secure and less precise).
With Reserved Private IP, you can preconfigure security and routing policies ahead of time in a granular and predictable manner.
Predictable addressing
Most cloud customers use automation (for example, Terraform, Ansible, and other API-based methods) to build and operate cloud applications. In Infrastructure as Code (IaC) and immutable infrastructure environments, compute instances and load balancers are frequently created, destroyed, and recreated. When private IPs are ephemeral, IP changes can expand the “blast radius” across monitoring, alerting, dependency mapping, and operational runbooks. Reserved Private IPs reduce this operational burden by enabling repeatable and predictable IP addressing across networking and compute resources. Additionally, some enterprise systems still rely on static (fixed) IP configuration. Reserved Private IP helps mitigate operational risk by ensuring that an application’s “known” private IP address remains consistent across deployments and replacements.
Managing Reserved Private IPs from the subnet-level IP administration tab
The subnet-level IP administration tab allows you to:
- View all private IP addresses in the subnet
- Create new Reserved Private IPs
- Convert an existing ephemeral private IP to a Reserved Private IP
- Remove a reservation from a Reserved Private IP (returning it to the ephemeral pool for reassignment)
Viewing the Subnet-level IP administration tab in the OCI Console
VCN > Subnets > [Select a subnet] > IP adminstration
The subnet-level IP administration IPv4/IPv6 address table contains all private IPv4 and IPv6 addresses that exist in the subnet. In the example below, the subnet includes an OCI Application Load Balancer, an OCI Network Load Balancer, and two VM instances—each using an ephemeral private IP address.

Creating a Reserved Private IP
VCN > Subnets > [Select a subnet] > IP adminstration > Add reserved Private IP address
Creating a Reserved Private IP in your subnet is straightforward:
- Provide a name for your reserved private IP
- Enter the IP you want to reserve
- Provide the hostname for your device.



As you can see, we have a private IP address of 10.0.1.150 which has a state of “available” and a lifetime of “reserved”.
Reserving an existing ephemeral private IP
VCN > Subnets > [Select a subnet] > IP adminstration
To change the lifetime of a private IP in your subnet, select the actions menu (three dots) to the far right of the row for the resource, and choose the option to reserve the IP.
After reserving the private IP associated with a VM instance (for example, reservedPrivateVM1), the private IP address will persist even if the VM instance is terminated.



Now that you have reserved the private IP associated with the Virtual Machine, reservedPrivateVM1, the private IP address will persist even if the VM instance itself is terminated.
Removing the reservation from a private IP
VCN > Subnets > [Select a subnet] > IP adminstration
If you no longer want an IP address to remain reserved, you can remove the reservation and return the IP to the ephemeral pool. Select the actions menu (three dots) for the relevant row and choose Remove IP address reservation.



Using Reserved Private IPs at launch
In addition to reserving an IP ahead of time from the subnet IP administration view, you can also specify both ephemeral or reserved private IP addresses at resource launch time (for supported resources). When a specified private IP is reserved at launch time, it remains reserved even if the resource is later terminated.
OCI Flexible Network Load Balancer (NLB)
You can now launch your Public or Private NLB with either an ephemeral or reserved private IP at launch time.
Using OCI Console to Create an NLB with a reserved private IP

OCI Flexible Load Balancer (LB)
Using OCI CLI to Create an NLB with a reserved private IP
➜ oci oci nlb network-load-balancer create \
--compartment-id ocid1.compartment.oc1..XXXXXXX \
--display-name "private-nlb-with-reserved-ip" \
--subnet-id ocid1.subnet.oc1.eu-frankfurt-1.YYYYYYY \
--is-private true \
--config-file /Users/harrycaray/.oci/config \
--profile OCI_FRA \
--reserved-ips '[{"id":"ocid1.privateip.oc1.eu-frankfurt-1.ZZZZZZZZZZ"}]'
{
"data": {
"backend-sets": {},
"compartment-id": "ocid1.compartment.oc1..XXXXXXX",
"defined-tags": {
"Oracle-Tags": {
"CreatedBy": "oracle_corporate_sso---idcs-oauth-application-corp-production-sso---/letsplayball",
"CreatedOn": "2026-04-02T20:14:35.722Z"
}
},
"display-name": "private-nlb-with-reserved-ip",
"freeform-tags": {},
"id": "ocid1.networkloadbalancer.oc1.eu-frankfurt-1.CCCCCCCCC",
"ip-addresses": [],
"is-preserve-source-destination": false,
"is-private": true,
"is-symmetric-hash-enabled": false,
"lifecycle-details": null,
"lifecycle-state": "CREATING",
"listeners": {},
"network-security-group-ids": [],
"nlb-ip-version": "IPV4",
"security-attributes": {},
"subnet-id": "ocid1.subnet.oc1.eu-frankfurt-1.YYYYYYYYY",
"system-tags": null,
"time-created": "2026-04-02T20:14:36+00:00",
"time-updated": "2026-04-02T20:14:36+00:00"
},
"opc-work-request-id": "ocid1.coreservicesworkrequest.oc1..AAAAAAA"
}
OCI Flexible Load Balancer (LB)
You can now launch your Private LB with either an ephemeral or reserved private IP at launch time.
Using OCI Console to Create an LB with a reserved private IP

Using OCI CLI to Create a private LB with a reserved private IP
➜ .oci oci lb load-balancer create \ --compartment-id ocid1.compartment.oc1..XXXXXXX \
--display-name jwdLB \
--subnet-ids '["ocid1.subnet.oc1.eu-frankfurt-1.YYYYYYY"]' \
--is-private true \
--shape-name flexible \
--shape-details '{"minimumBandwidthInMbps":10,"maximumBandwidthInMbps":100}' \
--config-file /Users/stevestone/.oci/config \
--profile OCI_FRA \
--reserved-ips '[{"id":"ocid1.privateip.oc1.eu-frankfurt-1.ZZZZZZZZZZ"}]'
{
"opc-work-request-id": "ocid1.loadbalancerworkrequest.oc1.eu-frankfurt-1.AAAAAAAAAAAA"
OCI Compute
You can now launch your OCI Compute Instances with either an ephemeral or reserved private IP at launch time.
Using OCI Console to Create a Compute VM instance with a reserved private IP

Conclusion
Reserved Private IP helps address a common enterprise requirement: maintaining stable private IP addressing across routine operations such as maintenance, scaling, and high-availability failover. With predictable private IPs that can persist independently of a specific resource’s lifecycle, you can reduce operational overhead and minimize disruption when replacing or rebuilding infrastructure.
On behalf of the Virtual Networking product team, we encourage you to share product feedback in the comments. Keep watching Oracle Cloud Infrastructure for updates as we continue to add new capabilities.
For more information, see the following resources:
