IPv6 Essentials: Address Format, Link-Local, Global, Loopback, and Dual Stack
Unit 3: Network Configuration. Lesson 11 of 41 in APlus Academy Core 1.
IPv4 ran out of addresses years ago. IPv6 has so many that every device on Earth can have a public address without NAT. Core 1 wants you to recognize the addresses and know the basic rules.
The format
An IPv6 address is 128 bits written as eight groups of four hexadecimal digits separated by colons:
2001:0db8:0000:0000:0000:ff00:0042:8329
Two rules shorten it. Leading zeros in a group can be dropped (0db8 becomes db8, 0000 becomes 0). One run of consecutive all-zero groups can be replaced by a double colon, once per address:
2001:db8::ff00:42:8329
The prefix works like a subnet mask: /64 means the first 64 bits identify the network and the last 64 bits identify the interface. Almost every LAN is a /64.
Kinds of addresses
- Link-local, starting with fe80::: every IPv6 interface makes one for itself automatically, with no server, and uses it to talk to neighbors on the same link. Seeing only an fe80 address means the device has not received a routable address.
- Global unicast, starting with 2000::/3 (in practice 2 or 3 as the first hex digit): the public, internet-routable addresses.
- Unique local, starting with fc00::/7 (usually fd): the IPv6 equivalent of private addresses.
- Loopback, ::1: the machine itself, like 127.0.0.1.
- Multicast, starting with ff: replaces broadcasts.
How devices get an address
A router announces the network prefix, and each host builds its own address by adding an interface identifier: stateless autoconfiguration (SLAAC). A DHCPv6 server can also hand out addresses and options. Either way, one interface routinely has several IPv6 addresses at once, which surprises people used to IPv4.
Dual stack and tunneling
Most networks run dual stack: IPv4 and IPv6 on every device at the same time, and the operating system prefers IPv6 when the destination has one. Where an IPv6 island must cross an IPv4-only network, tunneling wraps IPv6 packets inside IPv4.
What changes for a technician
- No NAT is needed; every device can be globally addressed, so the firewall carries the security job.
- No broadcasts, no ARP; neighbor discovery does the same work with multicast.
- Addresses are long, so DNS matters even more. AAAA records hold IPv6 addresses.
- A misconfigured IPv6 setup can slow a machine that keeps trying IPv6 first and timing out, which is why "disable IPv6 on the adapter" appears as a troubleshooting step.
IPv6 Essentials: Address Format, Link-Local, Global, Loopback, and Dual Stack, explained slowly
Why a second addressing system exists
IPv4 has about four billion addresses, which sounded infinite in 1981 and ran out around 2011. NAT stretched it by hiding whole networks behind one public address. IPv6 fixes the problem properly with 128-bit addresses: 340 undecillion of them, enough that every device can have a public address forever. Because both systems will coexist for years, a technician must recognize both on sight.
Reading an IPv6 address
full form 2001:0db8:0000:0000:0000:ff00:0042:8329 drop zeros 2001:db8:0:0:0:ff00:42:8329 (leading zeros in each group) compress 2001:db8::ff00:42:8329 (one run of zero groups becomes ::) prefix 2001:db8::/64 (first 64 bits are the network)
The double colon may appear only once, because otherwise the reader cannot tell how many zero groups each one stands for. Given 2001:db8::1, the machine expands it by filling the gap with zeros until eight groups exist. Practically every LAN uses a /64: 64 bits of network, 64 bits of interface identifier.
Recognizing the kind of address by its first digits
starts with kind meaning IPv4 cousin fe80:: link-local self-assigned; works only on the local link 169.254 (but here it is normal, not a fault) 2xxx or 3xxx global unicast public, internet-routable public addresses fc00::/7 (fd) unique local private to the organization 10/8, 172.16/12, 192.168/16 ::1 loopback this host 127.0.0.1 ff00::/8 multicast one to many broadcast (IPv6 has no broadcast)
The important nuance: every IPv6 interface always has a link-local address, and that is healthy. A device that has only a link-local address and no global or unique local address has not received a routable one; that is the IPv6 equivalent of an APIPA-only configuration.
Getting an address without asking
IPv4 devices must ask DHCP or be configured by hand. IPv6 routers periodically announce the network prefix, and each device can build its own address by appending an interface identifier: stateless address autoconfiguration, SLAAC. DHCPv6 still exists for organizations that want central control and for handing out options such as DNS servers. Because addresses can come from several sources and privacy features rotate them, one laptop commonly shows three or four IPv6 addresses at once. That is normal; do not "fix" it.
Dual stack in practice
situation behavior site has IPv4 and IPv6, destination has both OS prefers IPv6, falls back to IPv4 site has IPv6 only, destination IPv4 only needs a translation gateway (NAT64) IPv6 island across an IPv4 network tunneling: IPv6 packets wrapped in IPv4 IPv6 half-configured (router announces, ISP does not deliver) slow connections while IPv6 times out first
The last row explains a common help desk fix: "disable IPv6 on the adapter and the website loads instantly." The real repair is to make IPv6 work or to stop the router advertising it, but the diagnostic is worth knowing.
What changes for the technician
- No NAT. Every device is reachable by its global address unless the firewall says otherwise, so the firewall is doing the security job NAT used to do accidentally.
- No broadcast and no ARP. Neighbor discovery uses multicast to do the same work.
- DNS becomes essential; AAAA records map names to IPv6 addresses.
- Ping and traceroute have IPv6 forms (ping -6, tracert -6); the loopback is ::1.
Worked example
A user's adapter shows:
IPv6 address 2001:db8:1a2b:3c4d::1f/64 link-local address fe80::9c1e:4b2a:77d0:e3a1%12 IPv4 address 192.168.4.31 /24
This is a healthy dual-stack host: one global IPv6 address, the automatic link-local, and an IPv4 address. The %12 after the link-local is the interface index Windows needs because every interface has an fe80 address.
How the exam asks it
- "Which address is a link-local IPv6 address?" The one starting fe80.
- "How many bits are in an IPv6 address?" 128.
- "What does :: represent?" One or more consecutive groups of zeros, used once.
- "Which IPv6 address is the loopback?" ::1.
- "A device has an IPv4 and an IPv6 address at the same time. What is this called?" Dual stack.
What to memorize
- 128 bits, eight hex groups, colons; leading zeros dropped; :: once; /64 networks.
- fe80 link-local (always present), 2000::/3 global, fc00::/7 unique local, ::1 loopback, ff multicast.
- SLAAC from router advertisements, DHCPv6 optional. Dual stack prefers IPv6. AAAA records.