What you are claiming is your private IPv6 address is not a private IPv6 address. With IPv6, private addresses are called ULA (Unique Local Address), and they are defined by RFC 4193, Unique Local IPv6 Unicast Addresses. The range for IPv6 ULA is fc00::/7
, but the lower half of the addresses (fc00::/8
) are reserved for a future global authority to assign. The second half of the ULA (`fd00::/8) is available for local use, but the following 40 bits (Global ID) must be randomly generated by an approved pseudo-random number generator in order to minimize the possibility of conflict.
What you are calling a private IPv6 address is actually a Link-Local IPv6 address (fe80::/10
, see RFC 4291, IP Version 6 Addressing Architecture, Section 2.5.6. Link-Local IPv6 Unicast Addresses). Every IPv6 interface on every link will use the same network for the link-local addressing. This causes a problem since a device could have multiple interfaces, and every interface will use the same link-local network. That means that a device cannot determine which interface you mean when using a link-local address. To overcome that, you use a scope (interface) on the end of the address, e.g. fe80::b00:24ff:fe62:5fa4%eth0
. Unfortunately, the browser developers have not adopted this notation. That means you have no way to use an IPv6 Link-Local address with a browser.
You need to configure Global (2000::/3
) or ULA addressing on your network in order to use IPv6 with your browser.