IPv6 Briefing, Games, & References

IPv6 Masterclass - Tutorial & Leet Speak Game

๐ŸŒ IPv6 Masterclass

From Confusion to Mastery - A Network Engineer's Guide

IPv6 Complete Tutorial

Why IPv6? 4.3 billion IPv4 addresses wasn't enough. IPv6 provides 340 undecillion addresses (3.4 ร— 10ยณโธ). That's enough for every grain of sand on Earth to have its own internet.
๐Ÿ”ข Hexadecimal Crash Course (Click to Expand)

IPv6 uses hexadecimal (base-16) instead of decimal (base-10). Here's what you need to know:

What does 0x mean?
The 0x prefix tells you a number is in hexadecimal (hex) format. It's like a label so you know "this is base-16, not base-10".
Examples: 0x10 = 16 in decimal, 0xff = 255 in decimal, 0x0a = 10 in decimal
Other Hex Representations:
โ€ข #RRGGBB - HTML/CSS colors (e.g., #ff0000 = red)
โ€ข \xFF - Escape sequences in strings
โ€ข $FF - Pascal/assembly notation
โ€ข Z'1A2F' - Fortran BOZ
โ€ข &HFF - Visual Basic notation
โ€ข FFh - Some assembly languages add 'h' suffix
โ€ข 2001:db8::dead:beef - IPv6 addresses (hex without any prefix!)
Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Hex 0 1 2 3 4 5 6 7 8 9 a b c d e f

Quick Conversions

Decimal 255 = Hex ff (11111111 in binary)
Decimal 16 = Hex 10 (00010000 in binary)
Decimal 128 = Hex 80 (10000000 in binary)
Decimal 172 = Hex ac (10101100 in binary)

๐Ÿ”ข Hex Calculator

Enter any decimal number (0-255) to see its hex and binary representation:

Why Engineers Care: ff02::1 = All 1's in the last byte means "all hosts" - just like 255.255.255.255 in IPv4 broadcast!

Hex Patterns in IPv6

fe80::/10 - Link-Local always starts with "fe8" (11111110 10000000)
2000::/3 - Global addresses start with "2" or "3" (001x)
ff00::/8 - Multicast always starts with "ff" (11111111)

๐Ÿ“ Address Format

IPv6 addresses are 128 bits, written as 8 groups of 4 hexadecimal digits:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

Abbreviation Rules (CRITICAL!)

Rule 1: Leading zeros in each group can be removed
Rule 2: One (and ONLY one) sequence of consecutive all-zero groups can be replaced with ::
Rule 3: :: can only appear once per address
Full: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
Abbreviated: 2001:db8:85a3::8a2e:370:7334

Note: 0db8 โ†’ db8, 0370 โ†’ 370, 0000:0000 โ†’ ::

Loopback: 0000:0000:0000:0000:0000:0000:0000:0001 = ::1
Unspecified: 0000:0000:0000:0000:0000:0000:0000:0000 = ::

๐ŸŽฏ Address Types

Type Prefix Purpose Example
Global Unicast 2000::/3 Routable addresses (like public IPv4) 2001:db8::1
Link-Local fe80::/10 Auto-configured, non-routable, single link only fe80::1
Unique Local fc00::/7 Private addresses (like RFC1918) fd00::1
Multicast ff00::/8 One-to-many communication ff02::1
Loopback ::1/128 Local loopback ::1
Key Insight: No broadcast in IPv6! Use multicast instead (ff02::1 = all nodes on local link)

๐Ÿ”ข Subnetting & Prefixes

IPv6 uses CIDR notation (same as IPv4):

2001:db8:85a3::/48 = First 48 bits are network, remaining 80 bits for hosts

Common Prefix Sizes

Prefix Description Usable Bits
/32 ISP allocation 96 bits for subnets + hosts
/48 Site/Organization 16 bits = 65,536 subnets
/64 Standard subnet 64 bits = 18 quintillion hosts
/128 Single host (loopback) 0 bits
Golden Rule: Always use /64 for standard subnets. Never use smaller than /64 (except loopbacks). SLAAC (auto-configuration) requires /64.

๐Ÿ” How "ARP" Works in IPv6 (NDP - Neighbor Discovery Protocol)

IPv6 doesn't use ARP. Instead, it uses ICMPv6 Neighbor Discovery Protocol (NDP):

IPv4 Function IPv6 Equivalent Mechanism
ARP (Address Resolution) Neighbor Solicitation/Advertisement ICMPv6 type 135/136
Router Discovery Router Solicitation/Advertisement ICMPv6 type 133/134
DHCP (optional) DHCPv6 or SLAAC Auto-configuration

Neighbor Discovery Process:

1. Host wants to send to 2001:db8::2
2. Sends Neighbor Solicitation (multicast to ff02::1:ff00:2)
3. Target responds with Neighbor Advertisement
4. Host caches the MAC address (like ARP table)
Why Multicast? Instead of ARP broadcasts, IPv6 uses "solicited-node multicast" (ff02::1:ff00:0/104) to reduce network traffic. Only hosts matching the last 24 bits listen.

๐Ÿ“ IPv4 vs IPv6 Key Differences

Feature IPv4 IPv6
Address Size 32 bits 128 bits
Notation Dotted decimal Hexadecimal groups
Address Count 4.3 billion 340 undecillion
Header Size Variable (20-60 bytes) Fixed (40 bytes)
Checksum Yes (header) No (handled by L2/L4)
Fragmentation Routers can fragment Only source can fragment
Broadcast Yes No (use multicast)
NAT Common Not needed (end-to-end)

๐Ÿš€ IPv6 Address Configuration Methods

SLAAC (Stateless Auto-configuration)

1. Router advertises prefix (e.g., 2001:db8:1::/64)
2. Host generates Interface ID (often EUI-64 from MAC)
3. Full address: 2001:db8:1::[interface-id]
4. Duplicate Address Detection (DAD) verifies uniqueness

EUI-64 Generation (from MAC address)

MAC: 00:1a:2b:3c:4d:5e
1. Split: 00:1a:2b : 3c:4d:5e
2. Insert ff:fe: 00:1a:2b:ff:fe:3c:4d:5e
3. Flip 7th bit: 02:1a:2b:ff:fe:3c:4d:5e
4. Interface ID: ::21a:2bff:fe3c:4d5e

DHCPv6 (Stateful)

Like DHCP for IPv4, but uses multicast groups:

ff02::1:2 = All DHCP servers/agents
ff05::1:3 = All DHCP servers (site scope)

๐ŸŽฎ IPv6 Address Playground

๐Ÿ“– "Leet" Speak Mapping (Click to Expand)

Alphabet to Hex Mapping (Word โ†’ IPv6)

Any word can be converted to valid IPv6 hex using these mappings:

Letter abcdef ghijklm
Hex abcdef 6,96195,613
Letter nopqrs tuvwxyz
Hex 909,4945 7073672
Examples:
"temp" โ†’ t=7, e=e, m=3, p=9/4 โ†’ 7e39 or 7e34
"john" โ†’ j=9, o=0, h=6, n=9 โ†’ 9069

Standard Leet Mappings:

0 = o, O
1 = i, I, l, L
2 = z, Z
3 = e, E
4 = a, A, r, R
5 = s, S
6 = g, G
7 = t, T
8 = b, B
9 = g, q, G, Q
Key Rules:
โ€ข Hex digits (0-9, a-f) can represent letters via leet speak
โ€ข Words are padded to 4 chars to make valid IPv6 groups

Find IPv6 Addresses That Spell Words

Enter a word, and we'll find valid IPv6 addresses that could represent it using leet speak!

Example: "DEAD" maps to d:e:a:d = dead
IPv6: 2001:db8::0:dead (group 8, last position) or 2001:db8:0000:0000:0000:0000:0000:dead (full format)
Single words are placed at the end (group 8) with trailing zeros in earlier groups
Enter your network prefix with CIDR notation (default: 2001:db8::/32). Examples: 2001:db8:1::/64 (LAN), 2001:db8::/32, 3fff::/20

๐Ÿ“– Quick Reference Card

๐Ÿ” IPv6 Address Validator

Paste an IPv6 address to check if it's valid:

Must-Memorize Prefixes

PrefixWhat It Is
::1/128Loopback
::/128Unspecified
fe80::/10Link-Local
fc00::/7Unique Local (Private)
2000::/3Global Unicast
ff00::/8Multicast
::ffff:0:0/96IPv4-Mapped IPv6

Key Multicast Groups

AddressPurpose
ff02::1All nodes on local link
ff02::2All routers on local link
ff02::5OSPF routers
ff02::1:ff00:0/104Solicited-node multicast (NDP)

Common ICMPv6 Types

TypeNamePurpose
128Echo RequestPing
129Echo ReplyPing reply
133Router SolicitationRequest router info
134Router AdvertisementRouter announces prefix
135Neighbor Solicitation"Who has this IP?"
136Neighbor Advertisement"I have this IP!"

Configuration Commands (Reference)

Cisco IOS:
ipv6 unicast-routing
interface GigabitEthernet0/0
ipv6 address 2001:db8:1::1/64
ipv6 address fe80::1 link-local

Linux:
ip -6 addr add 2001:db8:1::1/64 dev eth0
ip -6 route add default via 2001:db8:1::ff

Windows:
netsh interface ipv6 add address "Ethernet" 2001:db8:1::1
netsh interface ipv6 add route ::/0 "Ethernet" 2001:db8:1::ff

Troubleshooting Commands

ping: ping6 2001:db8::1 (Linux) or ping -6 2001:db8::1 (Windows)
neighbor table: ip -6 neigh show (Linux), netsh interface ipv6 show neighbors (Windows)
routing table: ip -6 route (Linux), netsh interface ipv6 show route (Windows)
socket stats: ss -6 -tan (Linux), netstat -an -p tcpv6 (Windows)

๐Ÿ“‹ RFCs and Standards

Essential reading for network engineers who want the authoritative sources:

Standard Title Link
RFC 3315 (2003) Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Read โ†’
RFC 3849 (2004) IPv6 Address Prefix Reserved for Documentation Read โ†’
RFC 4007 (2005) IPv6 Scoped Address Architecture Read โ†’
RFC 4193 (2005) Unique Local IPv6 Unicast Addresses Read โ†’
RFC 4291 (2006) IPv6 Addressing Architecture Read โ†’
RFC 4443 (2006) Internet Control Message Protocol (ICMPv6) Read โ†’
RFC 4861 (2007) Neighbor Discovery for IPv6 (NDP) Read โ†’
RFC 4862 (2007) IPv6 Stateless Address Autoconfiguration (SLAAC) Read โ†’
RFC 5952 (2010) A Recommendation for IPv6 Address Text Representation Read โ†’
RFC 6724 (2012) Default Address Selection for IPv6 Read โ†’
RFC 8200 (2017) Internet Protocol, Version 6 (IPv6) Specification Read โ†’
RFC 9637 (2024) Deprecation of 240/4 and IPv4 Class E Address Space Read โ†’
Pro Tip: RFC 8200 and RFC 4291 are the "core" IPv6 documents. RFC 4861 explains NDP (the "ARP replacement"). RFC 5952 is essential for understanding address formatting rules.

๐Ÿ”— Additional Resources

Useful online tools and references for IPv6 networking: