Hex to IP Converter
Convert hex values to IPv4 addresses and IP addresses to hex.
Hex to IP Converter
Convert hexadecimal numbers into dotted IPv4 addresses and IPv4 addresses back into hex. Paste one value per line: C0A80001 becomes 192.168.0.1, 0x7F000001 becomes 127.0.0.1, and 08080808 becomes 8.8.8.8. Switch to IP to Hex to get the eight-digit hex form of any address.
How an IPv4 address maps to hex
An IPv4 address is a 32-bit number split into four bytes. Each byte (0–255) is exactly two hex digits (00–FF), so the whole address is eight hex digits:
| Decimal | 192 | 168 | 0 | 1 |
|---|---|---|---|---|
| Hex | C0 | A8 | 00 | 01 |
Joined together this gives C0A80001. Converting back simply splits the hex string into pairs and converts each pair to decimal.
Accepted input formats
- A continuous hex number of up to eight digits:
C0A80001orc0a80001. - With a prefix:
0xC0A80001. - Byte-separated:
C0.A8.00.01,C0:A8:00:01,C0 A8 00 01, or0xC0.0xA8.0x00.0x01. - Short values are padded on the left, so
FFis0.0.0.255.
Where hex IP addresses appear
- Linux
/proc/net/tcpand/proc/net/routestore addresses in hex – note that these files use little-endian byte order, so0100007Fmust be reversed with Reverse Hex to7F000001before converting to127.0.0.1. - Packet captures and hex dumps show IP headers as raw bytes.
- Obfuscated URLs such as
http://0xC0A80001/are valid in most browsers and are used in phishing and security testing. - PXE boot and TFTP – PXELINUX looks for configuration files named after the client IP in hex, e.g.
C0A80001.
Output options
In IP-to-hex mode choose uppercase or lowercase digits, a 0x prefix, and dotted output (C0.A8.00.01). Other formats are available in the Decimal to IP, Binary to IP, and Octal to IP converters.
Frequently Asked Questions
How do I convert a hex value to an IP address?
Split the eight hex digits into four pairs and convert each pair to decimal. C0 A8 00 01 becomes 192.168.0.1. This tool does it for any number of lines at once.
What is 127.0.0.1 in hex?
7F000001 (or 0x7F000001). In little-endian files such as /proc/net/tcp it appears as 0100007F.
Why does my hex IP from /proc/net/tcp look wrong?
Linux writes those addresses in host byte order, which is little-endian on most machines. Reverse the bytes first (0100007F → 7F000001) and then convert.