IPv6 Address to Binary Converter

Parses an IPv6 address — expanding "::" zero-run compression and validating each hex group — and converts it into 8 space-separated 16-bit binary groups covering the full 128 bits. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-27

Overview

Introduction

IPv6's compact colon-hex notation, especially with "::" zero-compression, hides just how much raw bit space a modern address actually spans.

This tool expands any valid IPv6 address — compressed or not — back into its full 128-bit binary form, split into the same 8 groups the address's hex notation implies.

What Is IPv6 Address to Binary Converter?

A converter that turns a standard IPv6 address into 8 space-separated 16-bit binary groups, one per hextet.

It fully understands "::" zero-run compression, so both a shortened address like ::1 and its fully expanded equivalent convert to the same underlying bits.

How IPv6 Address to Binary Converter Works

The address is checked for at most one "::"; if present, it's split into a left and right side, each parsed into hex groups, with enough zero groups inserted between them to reach a total of 8.

Without "::", the address must already have exactly 8 colon-separated groups. Every group is validated as 1-4 hex digits, then converted with `parseInt(group, 16).toString(2).padStart(16, "0")` to a zero-padded 16-bit binary string.

When To Use IPv6 Address to Binary Converter

Use it when studying IPv6 addressing to see exactly which bits a prefix or subnet boundary covers.

It's also useful for verifying a hand-expanded "::" abbreviation against the tool's automatic expansion.

Features

Advantages

  • Correctly expands "::" zero-compression rather than requiring a fully written-out address.
  • Validates group count and hex format, catching malformed addresses with a specific error.
  • Accepts groups with or without leading zeros, matching real-world IPv6 notation.

Limitations

  • Doesn't support embedded IPv4-in-IPv6 notation (e.g. ::ffff:192.168.1.1) — only pure hex-group addresses are accepted.
  • Doesn't validate whether the address falls in a specific reserved or documented range — it only handles syntax and bit conversion.

Examples

An address using :: compression

Input

2001:db8::1

Output

0010000000000001 0000110110111000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000001

"::" expands to five zero groups here (8 total groups minus the 2 on the left and 1 on the right), then 2001, db8, and 1 each convert to 16-bit binary.

The loopback address

Input

::1

Output

0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000001

"::" expands to seven all-zero groups, followed by the final group 1, which becomes 0000000000000001.

Best Practices & Notes

Best Practices

  • Double-check addresses with unusual group counts by mentally counting colons — 8 groups need exactly 7 colons when written in full, fewer once "::" is used.
  • Feed the output straight into the Binary to IPv6 Address Converter to confirm a clean round trip (modulo re-compression).

Developer Notes

Implemented with plain string splitting and regex validation (`/^[0-9a-fA-F]{1,4}$/` per group) rather than a full IPv6 parsing library, since the address space fits comfortably in `Number`'s exact integer range for 16-bit group values.

IPv6 Address to Binary Converter Use Cases

  • Teaching or learning how IPv6's "::" shorthand maps onto full 128-bit addresses
  • Verifying a manual zero-compression expansion during networking study
  • Preparing an IPv6 address for bitwise prefix or subnet comparisons

Common Mistakes

  • Using "::" twice in the same address, which is invalid because the expansion becomes ambiguous.
  • Providing fewer than 8 groups without using "::" to account for the missing ones.

Tips

  • Try the unspecified address :: (all zeros) to see all 8 groups expand to zero groups.
  • Compare a compressed and fully-expanded form of the same address to confirm they produce identical binary output.

References

Frequently Asked Questions