Understanding IP Addresses

An IP address is the unique numeric label that identifies a device on a network so data can be routed to and from it. Every device that talks to the internet has at least one - a private address on your local network and a public address that the wider internet sees. This guide explains the two IP versions (IPv4 and IPv6), the public/private split defined by RFC 1918, the difference between static and dynamic addresses, and how carrier-grade NAT (CGNAT) changes the picture.

IPv4 and IPv6: the two address formats

There are two versions of the Internet Protocol in active use. IPv4 uses 32-bit addresses written as four decimal octets, for example 203.0.113.42, giving about 4.29 billion total addresses (232). That space was effectively exhausted - IANA handed out its last free IPv4 blocks in February 2011 - which is why IPv6 exists. IPv6 uses 128-bit addresses written as eight hexadecimal groups, for example 2001:db8::1, for roughly 3.4×1038 addresses (2128).

As of early 2026, native IPv6 reached about half of Google's global users for the first time, while APNIC's measurement put worldwide IPv6 capability near 42%. The two protocols cannot talk directly, so the internet runs dual-stack: most devices speak both at once. For a side-by-side breakdown of headers, NAT and notation, see our IPv4 vs IPv6 comparison.

Public vs private addresses (RFC 1918)

A public IP address is globally unique and reachable from anywhere on the internet; your ISP assigns it to your router. A private IP address is valid only inside a local network and is drawn from ranges reserved by RFC 1918. Because these ranges are reused on millions of networks, they are never routed on the public internet - your router translates between them and your public address using Network Address Translation (NAT).

Range (CIDR) Address span Class / size Typical use
10.0.0.0/8 10.0.0.0 – 10.255.255.255 Class A · ~16.7M hosts Large enterprise and cloud VPC networks
172.16.0.0/12 172.16.0.0 – 172.31.255.255 Class B · ~1M hosts Medium networks, some Docker defaults
192.168.0.0/16 192.168.0.0 – 192.168.255.255 Class C · ~65K hosts Home and small-office routers
100.64.0.0/10 100.64.0.0 – 100.127.255.255 Shared (RFC 6598) ISP carrier-grade NAT (not RFC 1918)

Want to confirm what kind of address you are looking at? Our IP Validation tool checks whether a string is a valid IPv4 or IPv6 address, and IP Lookup shows the network and geolocation details of any public address.

Static vs dynamic addresses

A dynamic address is leased automatically and can change over time; a static address is fixed and configured by hand or reserved. On your local network the router's DHCP server hands out dynamic private addresses; on the internet your ISP usually assigns a dynamic public address to residential customers.

Aspect Dynamic IP Static IP
Assignment Automatic via DHCP Manual or DHCP reservation
Stability Can change at any lease renewal Stays the same
Cost Included by default Often an extra ISP fee
Best for Ordinary browsing, most home users Servers, VPN endpoints, IP whitelisting

CGNAT: when you don't get your own public IPv4

Because IPv4 ran out, many ISPs deploy Carrier-Grade NAT (CGNAT), sharing one public IPv4 address among many subscribers. RFC 6598 reserves the 100.64.0.0/10 block specifically for the link between the ISP's CGNAT device and your home router - this is not RFC 1918 private space, and it is not routed on the public internet. The practical effect is two layers of NAT: once at your router and once on the carrier network.

CGNAT can break inbound connections such as port forwarding, self-hosting, remote desktop and some peer-to-peer features, because no port maps cleanly back to a single customer. If you need inbound reachability, ask your ISP for a dedicated public IPv4 address or enable IPv6, which sidesteps NAT entirely.

How IP addresses are assigned

Address allocation flows down a hierarchy. IANA delegates large blocks to the five Regional Internet Registries (ARIN, RIPE NCC, APNIC, LACNIC and AFRINIC), which allocate ranges to ISPs and large organizations. Your ISP then assigns a public address to your connection - dynamically via DHCP for most homes, or statically on request.

Inside your network, the router's DHCP server leases private addresses to each device for IPv4, while IPv6 commonly uses SLAAC (stateless address autoconfiguration) so devices self-assign a globally routable address from the prefix your ISP delegates. To see where a public address is registered and roughly located, try What's My IP Location.

Related tools & reading

Frequently asked questions

What is the difference between a public and a private IP address?

A public IP address is globally unique and routable on the internet; it is assigned to your router by your ISP and is what websites see. A private IP address comes from a reserved range (RFC 1918: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) and is only valid inside your local network. Your router uses NAT to share one public address among many private devices.

Why does my IP address change?

Most residential ISPs assign dynamic addresses via DHCP, so your public IP can change when your lease expires, your router reboots, or the ISP reconfigures its network. A static address stays the same but usually costs extra and is mainly needed for hosting servers or whitelisting. On your LAN, devices also get dynamic private addresses from the router unless you reserve them.

What is CGNAT and how does it affect me?

Carrier-Grade NAT (CGNAT) is a second layer of NAT run by your ISP, defined around the shared address space 100.64.0.0/10 (RFC 6598). It lets the ISP share a single public IPv4 address among many customers to cope with IPv4 scarcity. The downside is that you do not have a unique public IPv4 address, which can break inbound connections such as port forwarding, self-hosting, and some online gaming or P2P features.

How do I find my IP address?

To see your public IP, visit the ShowMyIP home page or an IP lookup tool - that is the address the internet sees. To find your private IP, check your operating system: run "ipconfig" on Windows, "ip addr" on Linux, or look under System Settings > Network on macOS. The private address typically starts with 192.168, 10, or 172.16-172.31.

Is an IPv6 address still private if it is globally routable?

Yes, the concepts are separate. IPv6 gives most devices a globally routable address, so it does not rely on NAT for connectivity. Privacy is instead provided by IPv6 privacy extensions (RFC 8981), which rotate the interface portion of the address, and by your firewall, which blocks unsolicited inbound traffic even though every device is individually addressable.

Last reviewed: Reviewed by the

How this tool works: This tool runs in your browser and on our server in real time. Depending on the tool, results are computed directly from the input you provide or retrieved from live, authoritative data sources at the moment you run a lookup. We do not sell your data, and your lookups are kept private — any history shown here is stored only on your device.