Octal to IP Converter

Work out which host an octal address really points at, whether it is dotted or written as one number.

Octal
IPv4
Runs locally in your browser

About the Octal to IP Converter

An obfuscated address in a phishing link, a log line from an old device, or a payload written to slip past a naive allowlist: all three can arrive as octal. Decoding them by hand is fiddly because base 8 does not map onto anything you read every day, so paste the list here and get dotted decimal back.

Both notations are accepted. A dotted value such as 0300.0250.01.01 is read octet by octet, with the leading zero optional, and a single value such as 030052000401 is treated as one 32 bit number and split into four bytes. The 0o prefix used by newer languages is understood as well.

Validation is strict on purpose. A digit of 8 or 9 cannot exist in base 8, an octet whose octal value passes 255 would not fit in a byte, and a single value above 37777777777 overflows 32 bits. Each of those produces a message quoting the line that failed, so a bad entry inside a long paste is easy to find rather than silently mangled.

The matching encoder is IP to Octal. When the same trick has been played in another base, HEX to IP and Decimal to IP handle the hexadecimal and integer variants.

How to use

  1. Paste the octal addresses, one on each line.
  2. Mix dotted octets and single 32 bit values freely.
  3. Read the dotted decimal addresses on the right.
  4. Copy them, or use Swap to encode addresses back into octal.

Common questions

Is a leading zero required?
No. Octets are read as base 8 either way, so 0300.0250.01.01 and 300.250.1.1 both decode to 192.168.1.1.
Why does 0378 fail?
The digit 8 does not exist in base 8. Octal digits run from 0 to 7, so the line is reported instead of being decoded.
How is a single number decoded?
It is parsed as one 32 bit octal value, then split into four bytes from the most significant byte down.
Do these addresses really resolve?
Many resolvers and browsers still accept octal form, which is why it appears in obfuscated links and why testing your filters against it is worthwhile.