J jhooq.com / tools

Kubernetes IP Calculator

How many IP addresses does your EKS, GKE or AKS cluster really need? Pick the cloud, the instance type or the pods per node, the node count and the zones. You get the maximum pods per node, the VPC addresses every node takes, the subnet size per zone and the pod and service ranges, computed from the rules each provider publishes and linked to them. Nothing leaves your browser.

EKS ENI and prefix delegation mathsGKE node Pod rangesAKS Overlay, Pod Subnet, legacy CNI1404 EC2 instance typesOpens in the VPC Subnet PlannerTerraform and CLI snippetsNo upload, no sign-up

Result

Where the addresses go

Ranges to create

Checks

Take it with you


      

How the calculator works

Each cloud hands out pod addresses differently, so the same "50 nodes" costs a different amount of address space on each. The calculator applies the published rule for the cloud you pick, shows the arithmetic, and links every rule to the page it came from. The EKS instance table (ENIs and IPv4 addresses per ENI for 1404 instance types) is generated from the file the EKS AMI itself uses, commit 8254d71 of 2026-09-28.

The rules, per cloud

Cloud and modeMax pods per nodeWhat a node takes from your networkSource
EKS, VPC CNI secondary IPsENIs Γ— (IPs per ENI βˆ’ 1) + 2; managed node groups cap at 110 (under 30 vCPU) or 250Every attached ENI has all its addresses allocated. With the default WARM_ENI_TARGET of 1 a node holds one spare ENI, so m5.large (3 Γ— 10) takes up to 30 VPC addresses for 29 pods.EKS instance types, VPC CNI README
EKS, prefix delegationENI slots Γ— 16 + 2, capped at 110 or 250Each ENI slot holds a /28 prefix (16 addresses) instead of one address; the node takes prefixes Γ— 16 plus one primary address per ENI. Prefixes need contiguous, aligned free blocks.EKS prefix mode
EKS, cluster subnets-At least 6 free addresses per subnet for the control plane (16 recommended), in at least two Availability Zones. Service CIDR /12 to /24 inside a private range, not overlapping the VPC.EKS network requirements
GKE, VPC-native8 to 256 (default 110; Autopilot 32)Each node gets an alias range of /(31 βˆ’ ⌈logβ‚‚ podsβŒ‰): /24 for 110 pods, /28 for 8. The Pod secondary range must hold one block per node and a node pool range is at least /24. Nodes take one primary address each; the primary range reserves 4.GKE max Pods per node, VPC-native clusters
AKS, Azure CNI Overlaydefault 250, max 250Nodes take one VNet address each (plus surge). Pods come from a private pod CIDR, a /24 per node; the default 10.244.0.0/16 holds 256 nodes.AKS IP planning
AKS, Azure CNI Pod Subnetdefault 110, max 250Nodes in the node subnet, pods in a separate VNet pod subnet. Addresses go to nodes in batches of 16, the next batch when fewer than 8 remain. Pod subnets up to /16.AKS dynamic IP allocation
AKS, Azure CNI node subnet (legacy)default 30, max 250(nodes + surge) + (nodes + surge) Γ— maxPods VNet addresses, assigned up front whether pods run or not. 50 nodes Γ— 30 pods = 1,581 addresses, a /21.AKS IP planning
Reserved addresses-AWS and Azure reserve 5 addresses per subnet, Google Cloud 4. Smallest subnet: /28 on AWS, /29 on Azure and Google Cloud.Usable IPs per subnet

What it does not do

It does not model Windows nodes, IPv6 clusters, EKS custom networking with secondary CIDRs, security groups for pods (branch ENIs), GKE multi-Pod CIDR, or AKS static block allocation. Those change the arithmetic; the per-cloud sources above describe each one. The numbers are planning maximums: real clusters also lose addresses to load balancers, endpoints and node replacements.

Frequently asked questions

How many pods can run on an m5.large in EKS?
29 with the default VPC CNI: 3 ENIs Γ— (10 IPs βˆ’ 1) + 2. With prefix delegation the formula gives 434, and the managed node group cap of 110 applies.

How many IP addresses does an EKS node consume?
Up to ENIs Γ— IPs per ENI in secondary-IP mode, because the CNI allocates every address of an attached ENI and keeps a spare ENI warm by default. An m5.large can hold 30 VPC addresses; set WARM_IP_TARGET and MINIMUM_IP_TARGET to shrink the warm pool.

Why is my EKS subnet out of IP addresses with only 10 nodes?
Because pods, not nodes, take the addresses. Ten m5.2xlarge nodes at 58 pods each can hold 600 addresses, and a /23 has 507 usable. Use a /19 per zone, or turn on prefix delegation.

How big should the GKE Pod range be?
One block of /(31 βˆ’ ⌈logβ‚‚ pods per nodeβŒ‰) per node: 110 pods per node is a /24 per node, so 900 nodes need a /14 secondary range. Reduce max Pods per node to shrink it.

Which AKS network plugin uses the fewest VNet addresses?
Azure CNI Overlay: one VNet address per node, pods from a private CIDR. Legacy Azure CNI pre-assigns maxPods addresses per node, so 50 nodes at the default 30 pods take 1,581 VNet addresses.

Does the calculator upload anything?
No. The page runs entirely in your browser; the share link stores the inputs in the URL fragment, which browsers do not send to the server.