IP & Domain Tools

CGNAT Public IP Pool Sizing Calculator

Size your CGNAT public pool from subscribers and ports.

Your numbers

%
%

Your results

Public IPv4 addresses needed
Public IPv4 addresses needed
—
Subscribers per public IP
—
Peak concurrent sessions
—
Port blocks per IP at the given ports/sub
—
Equivalent /24 blocks
—

CGNAT Public IP Pool Sizing Calculator by TheCalcTools

How the CGNAT Public IP Pool Sizing Calculator works

Enter subscribers and the share that is active at the busiest hour.

Set ports per active subscriber. Deterministic CGNAT assigns fixed blocks, commonly 512 to 2,048.

Divide total sessions plus headroom by the ports usable on each public IP (65,535 minus 1,024 reserved).

The formula

IPs = ceil(subscribers × active share × ports × (1 + headroom) / usable ports)

Worked example

Using the default values shown in the calculator:

Subscribers behind CGNAT500000
Concurrently active share40 %
Ports (sessions) per active subscriber1000
Usable ports per public IP64512
Headroom20 %
  1. 500,000 subscribers × 40% active = 200,000 active; × 1,000 ports = 200,000,000 sessions.
  2. With 20% headroom you need 3,721 public IPs, about 134.4 subscribers per IP.

Result:

Public IPv4 addresses needed3,721
Subscribers per public IP134.4
Peak concurrent sessions200,000,000
Port blocks per IP at the given ports/sub64
Equivalent /24 blocks14.54

Frequently asked questions

How many ports does a usable public IP have?

About 64,512 (ports 1,024 to 65,535).

What ratio do carriers use?

Typical sharing is 16:1 to 128:1 depending on port blocks and traffic profile.

Sources and further reading

More in IP & Domain Tools · All calculators

This calculator gives estimates for information only. Check important results independently before you rely on them. See our disclaimer.