Identifying Public vs Private IP Ranges: Complete RFC Reference
A definitive engineering guide to distinguishing public routable Internet addresses from RFC 1918 private subnets, Carrier-Grade NAT (CGNAT) pools, and special-purpose reserved blocks.
Quick Answer
A public IP address is globally unique and routable across Tier-1 Internet service providers. A private IP address belongs to reserved non-routable ranges (RFC 1918: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) intended exclusively for internal local area networks. Border routers automatically drop packets containing private addresses.
- RFC 1918 Private: 10.0.0.0/8 (16.7M IPs), 172.16.0.0/12 (1M IPs), 192.168.0.0/16 (65.5K IPs).
- Carrier-Grade NAT: 100.64.0.0/10 (RFC 6598) is reserved for ISP shared middleboxes.
- APIPA Link-Local: 169.254.0.0/16 indicates a failed DHCP handshake.
1. The RFC 1918 Private Address Allocation
Published in February 1996, RFC 1918 established three distinct blocks of IPv4 address space dedicated for private enterprise networks. These blocks are never allocated by IANA or Regional Internet Registries to any individual entity:
2. Comprehensive Address Scope Comparison
Examine the complete registry of reserved, private, carrier, and public IPv4 ranges:
| IP Prefix Range | RFC Standard | Address Count | Designated Purpose | Global Routability |
|---|---|---|---|---|
| 0.0.0.0/8 | RFC 1122 | 16,777,216 | Current network / Source address only | Non-routable (Drops on WAN) |
| 10.0.0.0/8 | RFC 1918 | 16,777,216 | Private enterprise networks (Large LAN) | Non-routable (Private) |
| 100.64.0.0/10 | RFC 6598 | 4,194,304 | Carrier-Grade NAT (Shared ISP WAN) | Carrier internal only |
| 127.0.0.0/8 | RFC 1122 | 16,777,216 | Host loopback interface (localhost) | Internal device only |
| 169.254.0.0/16 | RFC 3927 | 65,536 | Link-Local auto-configuration (APIPA) | Single physical wire segment |
| 172.16.0.0/12 | RFC 1918 | 1,048,576 | Private enterprise networks (Medium LAN) | Non-routable (Private) |
| 192.168.0.0/16 | RFC 1918 | 65,536 | Private local networks (Home / Small office) | Non-routable (Private) |
| 224.0.0.0/4 | RFC 5771 | 268,435,456 | Multicast groups (IGMP streaming) | Multicast trees only |
| 240.0.0.0/4 | RFC 1112 | 268,435,456 | Reserved for future / Experimental | Non-routable (Bogon) |
Public vs Private IP Identification Decision Tree
[ Check Incoming IP Address Range ]
|
+-----------------+-----------------+
| |
[ RFC 1918 Private ] [ RFC 6598 CGNAT ]
10.0.0.0/8, 172.16.0.0/12, 100.64.0.0/10
192.168.0.0/16 |
| Carrier-Grade NAT
Local LAN Only / Home Router (Shared ISP WAN Gateway)
| |
+-----------------+-----------------+
|
[ Global Public IP ]
Everything else (except loopback/APIPA)
Routable on global Internet backbones
3. How NAT Maps Private IPs to a Single Public IP
Network Address Translation (NAT, specifically Port Address Translation or NAT44) is the bridge between private and public IP spaces.
When your computer (e.g. 192.168.1.50:54210) sends an HTTP request to Google (142.250.190.46:443), your home router replaces the source private IP with its own public WAN IP and assigns a unique temporary port in its NAT state table. When Google replies, the router looks up the port in its state table and forwards the packet back to your internal device.
Frequently Asked Questions
Why does my home router display an IP starting with 100.64.x.x on its WAN status?
An IP address in the range 100.64.0.0 to 100.127.255.255 indicates Carrier-Grade NAT (CGNAT, standardized by RFC 6598). Because public IPv4 addresses are exhausted, your ISP is not providing you with a true public IP; instead, your router is behind an ISP-level NAT gateway alongside hundreds of your neighbors. This prevents inbound port forwarding.
Can two different companies use the exact same 10.0.0.0/8 private IP addresses?
Yes. RFC 1918 private IP addresses are non-routable on the public Internet. Because border routers drop packets containing private IPs, millions of internal networks around the world simultaneously reuse 10.0.0.0/8 and 192.168.1.0/24 without any IP address conflict on the global Internet.
What is APIPA (169.254.0.0/16)?
Automatic Private IP Addressing (APIPA, RFC 3927) is a link-local fallback mechanism. If your computer is configured for DHCP but fails to receive an answer from a DHCP server (e.g., your router is rebooting or the Ethernet cable is disconnected), the operating system automatically assigns itself an address in the 169.254.x.x range so local devices can still communicate on the same wire.
Data & Technical Sources
- IETF RFC 1918 — Address Allocation for Private Internets
- IETF RFC 6598 — IANA-Reserved IPv4 Prefix for Shared Address Space (CGNAT)
- IETF RFC 3927 — Dynamic Configuration of IPv4 Link-Local Addresses (APIPA)