# Can u explain this representation of the IPv6 address 1001::1 64?

`::1` is for loopback address. An IPv6 address contains 8 16-bit pieces.

What do this representation `1001::1 64` mean (what is the full address with all 8 16-bit pieces)?

• Can you clarify what you mean by `1001::1 64`? Is this missing a slash or is there an extra space (or something else entirely)? Commented Jul 3, 2019 at 19:16
• Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can provide and accept your own answer. Commented Dec 15, 2019 at 4:33

This is explained in the IPv6 Addressing Architecture RFC (RFC 2373) in section 2.2 which deals with text representation of addresses. This provides three conventions for representing IPv6 addresses.

First:

``````The preferred form is x:x:x:x:x:x:x:x, where the 'x's are the
Examples:

FEDC:BA98:7654:3210:FEDC:BA98:7654:3210

1080:0:0:0:8:800:200C:417A

Note that it is not necessary to write the leading zeros in an
individual field, but there must be at least one numeral in every
field (except for the case described in 2.).
``````

Second:

``````Due to some methods of allocating certain styles of IPv6
of zero bits.  In order to make writing addresses containing zero
bits easier a special syntax is available to compress the zeros.
The use of "::" indicates multiple groups of 16-bits of zeros.
The "::" can only appear once in an address.  The "::" can also be

may be represented as:

``````

The third convention deals with mixed IPv4/IPv6 environments and I have rarely seen it used, so please check the RFC if you wanted more details.

What do this representation 1001::1 64 means?

Not 100% sure what the "64" part is doing here. While there are several things you could be intending, there are two cases that are most likely. Given the information above, I will answer both cases below.

Missing slash (i.e. representation is giving both the address and the network)

``````1001::1/64
``````

Becomes:

``````1001:0000:0000:0000:0000:0000:0000:0001/64
``````

``````1001::164
``````

Becomes:

``````1001:0000:0000:0000:0000:0000:0000:0164
``````

The double colon :: represents a string of consecutive zeros. So it expands to:

``````1001:0000:0000:0000:0000:0000:0000:0001
``````

The 64 should have been written with a slash as "/64" This is the subnet mask length, and works the same way as IPv4 (64 1's followed by 64 0's).

• Note: Only 2000::/3 is routed in the Internet.
– user2084
Commented Jul 3, 2019 at 16:54
``````1001:0000:0000:0000:0000:0000:0000:0001
``````