IPv6 Calculator

Enter an address with a prefix length and you get the network address, the first and last address, how many addresses the prefix holds, and what kind of address it is. The bit view below the result shows where the network part ends and the interface part begins.

Notation: address/prefix. Both compressed and expanded input work.

Does an address fall within a prefix?

This tool compares the first bits of an address with those of a prefix. If they are all equal, the address is part of it. When the answer is no, you also see which bit is the first to differ.

A single address, without a prefix length.

Notation: prefix/length.

Compress ↔ Expand

An IPv6 address can be written in several ways, but only one of them is correct according to RFC 5952: lowercase, no leading zeros within a group, and :: for the longest run of zero groups. This tool shows both notations and what happens per group. IPv4 has no equivalent of this.

Either notation works; you get both back.

Address type & scope

In IPv6 you can read from an address itself how far it reaches. A fe80:: address never leaves its own link, fd00:: stays inside your own organisation, and ff02:: is multicast within the link. This tool names the type, the RFC behind it, and what it is for. For a multicast address you also get the flags; for a unicast address the derived solicited-node address and, if present, the MAC hidden inside it.

Any IPv6 address, with or without a prefix.

Split a prefix

This is where IPv6 differs most from IPv4. There is no VLSM here: you do not size a subnet to the number of hosts, because a /64 always holds more addresses than you will ever use. A /64 is the standard for a LAN, since SLAAC needs those 64 interface bits. So the question is not "how many hosts" but "how many subnets", and that is what this tool splits on.

Notation: prefix/length.

Must be longer than the original, by at most 20 bits.

EUI-64 (MAC ↔ interface ID)

With SLAAC a host can build its own address, and one way to do that is EUI-64: the MAC address is split in half, ff:fe goes in the middle, and one bit in the first byte is flipped. That last step is what trips people up, so the tool shows it step by step. The reverse also works, as long as the address really is EUI-64 based.