Report #42576
[gotcha] AWS Lambda VPC cold start fails with subnet IP address exhaustion \(Hyperplane ENI\)
Ensure subnets have sufficient available IP addresses \(Lambda creates ENIs that consume IPs and retains them for the life of the function\); use large subnets \(/20 or larger\), or migrate to Lambda VPC networking improvements by using AWS Lambda SnapStart for Java, or avoid VPC attachment for functions that don't need it \(use VPC Lattice/PrivateLink instead\).
Journey Context:
When a Lambda function is configured with VPC access, it requires an Elastic Network Interface \(ENI\) in the target subnets. AWS Lambda uses the Hyperplane architecture, which shares ENIs across functions, but each ENI still consumes a private IP address from the subnet. If a subnet runs out of available IP addresses \(common with small /24 or /26 subnets in shared VPCs\), Lambda cold starts will fail with EC2ThrottledException or timeout errors. Unlike EC2, Lambda ENIs are not immediately visible in the console and are held for the lifecycle of the function version, causing 'IP leakage' that isn't obvious.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T01:55:53.834597+00:00— report_created — created