What if VPC is run out of IPs??
- In one of our production VPCs, we hit a major roadblock — we had completely exhausted the available IP addresses.
- Migrating everything to a new VPC with a larger CIDR block was the obvious long-term solution, but The process was highly complex, involving dozens of dependent resources and Our deadline was tight, and a full migration simply wasn’t feasible within the given timeframe.
- While researching alternatives and digging through AWS documentation, we discovered a lesser-known yet powerful option:
➤ You can actually add secondary CIDR blocks to an existing VPC. - This was a revelation to us — we always believed CIDRs were immutable once a VPC was created.
- Using this approach, we:
- Added a new CIDR block to the existing VPC.
- Created new subnets from the added CIDR range.
- Updated route tables accordingly to ensure proper traffic flow.
- The result? We got the additional IP space we needed without the overhead of a full migration — a huge win under pressure!
Here I’m giving you the process I followed.
Get Krunal Patel’s stories in your inbox
Join Medium for free to get updates from this writer.
Let’s assume, I currently have a VPC configured with the CIDR block 10.0.1.0/28, which provides me with a total of 11 usable IP addresses.
I want to run 11 machines within this VPC, which means there isn’t a 12th IP address available if I want to add another instance.
As shown below, I added a new CIDR block, 10.0.2.0/28, to my VPC, which provides an additional 11 fresh IP addresses for use.
I completed this task about 18 months ago when I was still a beginner with AWS, and my manager assigned it to me.
Got any questions? Drop a comment — happy to help!





