📡 The Easiest Way to Find Your IP Address

Public vs private IP, and how to check yours

"What's my IP?" actually has two possible answers, because the IP shown in your router's settings page isn't the same as the IP a website sees when you visit it. This article covers the difference between public and private IPs, IPv4 vs IPv6, why your IP changes, and how NAT ties the two together.

Public IP vs private IP

Every device on a home or office network — your computer, phone, laptop — has its own private IP, something like 192.168.0.5 or 10.0.0.12. Address ranges like 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 are reserved specifically for private use and are never routed on the public internet, which is why the exact same private IP can be reused in millions of different homes at once without conflict. Your public IP, on the other hand, is the address that uniquely identifies your connection on the internet as a whole — it's assigned to your router by your internet service provider (ISP). When a website tells you "your IP is...", that's your public IP, not the private IP any individual device inside your home actually has.

IPv4 vs IPv6

IPv4 is the traditional 32-bit addressing scheme, written like 203.0.113.10, which allows for roughly 4.3 billion possible addresses. That seemed like plenty when the internet was designed, but as the number of connected devices exploded, addresses started running out — which is why IPv6 was introduced. IPv6 addresses are 128 bits, written like 2001:db8:85a3::8a2e:370:7334, and provide a space so large that exhaustion isn't a practical concern. Most ISPs and mobile carriers now run IPv4 and IPv6 side by side (dual stack), so it's common to have both a public IPv4 and a public IPv6 address at the same time, depending on how you're connected.

How NAT lets many devices share one IP

Even though a household may have many devices, the ISP usually assigns just one public IP. This is made possible by NAT (Network Address Translation). When a device inside your network sends a request out to the internet, your router rewrites that device's private IP and port with its own public IP and a port number before forwarding the packet. When the response comes back, the router checks its translation table to figure out exactly which internal device it belongs to and routes it there. From the outside, all traffic from your home looks like it's coming from one public IP — internally, the router is quietly multiplexing many devices' traffic through that single address.

Why your IP keeps changing

Most residential internet connections use a dynamic IP: the ISP periodically hands out a new public IP (after a router reboot, a reconnection, or when a lease expires) as a way to recycle a limited pool of addresses efficiently. If you're running a server that needs to always be reachable at the same address, you'd typically request a static IP instead. If you're curious what public IP — IPv4, IPv6, or both — your current connection is using right now, the fastest way to find out is a tool that shows it to you the instant you load the page.

📡 Try it yourself with the tool

The Easiest Way to Find Your IP Address — Public vs private IP, and how to check yours

More guides

🔁
How to Find a Domain's IP Address
Find the real server IP a domain points to
🛰️
How to Check DNS Propagation (What Is TTL?)
Understand TTL and check propagation after a nameserver change
📐
CIDR Notation and How to Calculate a Subnet Mask
Convert CIDR notation like /24 into a subnet mask
🩺
How to Check an SSL Certificate's Expiration Date
Check a certificate's expiry without opening a browser
🪪
Understanding JWT Structure and How to Decode It
The Header, Payload & Signature — explained
🗝️
How to Create an Apache .htpasswd File for Basic Auth
Generate an APR1-MD5 hashed .htpasswd file
🔑
What Makes a Strong Password (and How to Generate One)
Length, character sets & entropy explained
🔐
What Is Base64 Encoding and When to Use It
Why it's used in email attachments & data URIs
📘
Using a JSON Formatter to Read API Responses
Turn minified JSON into something readable
🗓️
How to Convert a Unix Timestamp to a Date
Turn seconds-since-1970 into a readable date
🗃️
How to Format Messy SQL Queries
Break a one-line SQL statement into readable clauses
🎨
Converting Between HEX, RGB, and HSL Color Codes
The difference between the three formats
🔠
camelCase, snake_case & Other Naming Conventions
When to use each naming style
🆚
How to Compare Two Text Files (Diff Checker)
Quickly spot differences between two versions