redzilla
All tools
IP Addressing

NAT / PAT Exhaustion

Model how many concurrent sessions your NAT/PAT can hold from public IPs and the ephemeral port range, how many users it supports and when it runs out. Simplified model (the real limit depends on the 5-tuple).

Global addresses the overload (PAT) runs on. A single one is typical for offices.

Per public IP. Default 102465535 = 64,512 ports. Each outbound session consumes one source port.

Hosts behind the NAT opening sessions at the same time.

Open connections at once per host. Normal browsing ~1050; with many tabs, apps and streaming, 100+.

Examples
redzilla.cl — nat-pat
 

Capacity (sessions)
IPs × ports per IP
Demand (sessions)
users × sessions
Utilization
demand / capacity
Users supported
with this capacity

Port utilization

0 / 0 0 %

Rule of thumb: keep utilization below 80 % to leave headroom for peaks and bursts.

Breakdown

ItemValueNote
How it is calculated · and why it is an upper bound

1. Ports per IP = end_port − start_port + 1. The typical ephemeral range is 102465535 = 64,512 ports.

2. Capacity = public_IPs × ports_per_IP. It is the ceiling of concurrent outbound sessions the PAT can translate at once.

3. Demand = users × sessions_per_user. Sessions per public IP = demand / IPs.

4. Utilization = demand / capacity × 100. Exhaustion happens when demand exceeds capacity. Users supported = capacity / sessions_per_user. IPs needed = ceil(demand / ports_per_IP).

Note: this is an upper bound. In practice the NAT distinguishes sessions by the 5-tuple (source and destination IP and port + protocol), so the same source port can be reused toward different destinations. Real exhaustion depends on how many sessions go to the same destination and on the device's translation table.

Runs locally in your browser · no sign-up · nothing leaves your browser

Was this tool useful?
Disclaimer We take great care to keep every tool accurate and review it thoroughly; even so, we can't guarantee it is free of errors or take responsibility for how the results are used. We recommend double-checking anything critical.
Found an error? Let us know →