IP Address Validator
DataCheck if an IPv4 or IPv6 address is correctly formatted. Auto-detects the version or choose manually — instant result, runs in your browser, no signup.
What is a IP Address?
An IP Address Validator checks whether a string is a correctly formatted IP (Internet Protocol) address. IP addresses are numerical identifiers assigned to every device on a network. There are two versions in active use: IPv4, the familiar four-octet format (192.168.1.1) that has been in use since the early internet, and IPv6, the 128-bit hexadecimal format (2001:db8::1) introduced to address IPv4 exhaustion.
This tool validates both versions. It auto-detects which version to apply based on the input — a colon in the address implies IPv6, otherwise IPv4 rules are applied. You can also force a specific version using the selector, which is useful when you want to confirm that a string is explicitly not a valid IPv4 address.
For IPv4, the tool checks that there are exactly four octets, each is a number from 0 to 255, and no leading zeros are present (which would be ambiguous in some parsing contexts). For IPv6, it validates both full 8-group notation and compressed notation using ::. It also identifies the address range for IPv4 — private, loopback, public, or multicast.
All validation runs in your browser. No address you enter is transmitted. See the URL Validator and Domain Name Validator for related network address checks.
How to use this IP Address calculator
- Open the IP Address Validator on this page.
- Type or paste the IP address into the IP Address field.
- Leave Version set to Auto-detect, or select IPv4 or IPv6 explicitly if you want to enforce a specific version.
- The result badge updates instantly. A green Valid badge confirms the address is correctly formatted.
- If the badge shows Invalid, read the error detail — it identifies the specific problem (wrong octet count, out-of-range value, leading zero, invalid IPv6 group).
- Fix the address and the badge updates immediately.
Formula & Methodology
IPv4: split on., check exactly 4 parts, each part is a non-negative integer 0–255 with no leading zeros. IPv6: split on::(at most one occurrence allowed). Each half is split on:, each group validated as 1–4 hexadecimal digits. With::, the total groups on both sides must be ≤ 7 (the::expands to fill the remaining groups). Valid IPv4 example:192.168.1.1— 4 octets, each in range. Range: private (192.168.x.x). Invalid IPv4 example:192.168.1.256— octet256exceeds the maximum value of 255. Valid IPv6 example:2001:db8::1— compressed notation with::replacing six zero groups. Invalid IPv6 example:2001::db8::1— two::sequences in one address, which is not permitted.