Assigning an IPv6 address is a crucial step in configuring networks to support the vast and expanding digital universe enabled by the latest internet protocol. This guide breaks down the process into easily understandable segments for beginners, learners, and students. By the end of this article, you will grasp the various methods of assigning IPv6 addresses, including manual assignment, SLAAC, EUI-64, and DHCPv6.
Manual Assignment
Manual assignment is straightforward. You can assign an IPv6 address to an interface on a router or a device by entering the configuration mode and specifying the address directly. For instance, you can use the commands:
interface fa 0/0
ipv6 address ABCD:1234:0001:0002:5678:9012:3000:0001/64
or its abbreviated form:
ipv6 address ABCD:1234:1:2:5678:9012:3000:1/64
This method gives network administrators full control over the address configuration, ensuring precise network design and planning.
Stateless Address Auto Configuration (SLAAC)
SLAAC allows a device to automatically configure its own IPv6 address without needing a DHCP server. The address comprises two parts: the network prefix and the interface identifier. The interface identifier can be derived from the device’s MAC address using a standardized process. This method is particularly useful for automatically configuring a large number of devices on a network.
Command:
interface fa 0/0
ipv6 address autoconfig
Explanation:
First 64 bit (Network Bit) is fixed with range FE80:0000:0000:0000 (FE80::)
Last 64 bit are decided from the Interface MAC Address
Two steps/Process to decide Host bit from Interface MAC Address
Suppose that Interface MAC Address is AB:CD:00:12:34:56 (48 bit)
Step 1: 4 character of Hexa-Decimal added in between the MAC Address (FFFE)
Interface MAC = AB:CD:00:12:34:56 (48 bit)
24 bit OUI + 24 bit VS (Decide by Manufacturer)
6 Hex Character + 6 Hex Character
OUI: Organization Unit Identifier
VS: Vender Specific
AB:CD:00: :12:34:56
AB:CD:00:FF:FE:12:34:56
ABCD:00FF:FE12:3456
Step 2: 7th bit will change (inverted)
AB => 10 11 => 1010 1011 => 7th bit change => 1010 1001 => 10 9 => A9
Final 64 bit of Host after two steps process is
A9CD:00FF:FE12:3456
Entire IPv6 with autoconfig command for selected interface is
FE80::A9CD:EFFF:FE12:3456
EUI-64 Process
The EUI-64 (Extended Unique Identifier-64) process is similar to SLAAC in that it automatically generates the interface identifier part of the IPv6 address from the MAC address. However, it specifically refers to the method of extending a 48-bit MAC address to create a 64-bit interface identifier, with particular steps including inserting ‘FFFE’ in the middle of the MAC address and inverting the 7th bit. This method is used in conjunction with specifying a network prefix manually, offering a balance between automatic configuration and manual network design.
Command:
interface fa 0/0
ipv6 add 2001:192:168:4::/64 eui-64
Explanation:
First 64 bit (Network Bit) is only we need to decide
Last 64 bit are decided from the Interface MAC Address
Suppose we need to assign Address with Network Range
ABCD:EF00:1234:5678::/64
Two Steps/Process to identify Host bit from Interface MAC Address
Suppose that Interface MAC Address is AB:CD:00:12:34:56 (48 bit)
Step 1: 4 character of Hexa-Decimal added in between the MAC Address (FFFE)
Interface MAC = AB:CD:00:12:34:56 (48 bit)
24 bit OUI + 24 bit VS (Decide by Manufacturer)
6 Hex Character + 6 Hex Character
OUI: Organization Unit Identifier
VS: Vender Specific
AB:CD:00: :12:34:56
AB:CD:00:FF:FE:12:34:56
ABCD:00FF:FE12:3456
Step 2: 7th bit will change (inverted)
AB => 10 11 => 1010 1011 => 7th bit change => 1010 1001 => 10 9 => A9
Final 64 bit of Host after two steps process is
A9CD:00FF:FE12:3456
Entire IPv6 with SLAAC command for selected interface is
ABCD:EF00:1234:5678:A9CD:EFFF:FE12:3456
DHCPv6
DHCPv6 is the IPv6 equivalent of the DHCP protocol used in IPv4, where a DHCP server dynamically assigns IPv6 addresses to devices on the network. This method is useful for administrators who want to maintain control over address assignments while automating the process for efficiency and scalability.
Key Notes for IPv6 Address Configuration
When configuring IPv6 addresses, keep in mind the recommended CIDR values for different network types, the unique approach to assigning router IDs in IPv6 networks, and the capability of using dual-stack configurations to support both IPv4 and IPv6 simultaneously. These considerations ensure your network is optimized for both functionality and future growth.
Key Notes for IPv6 Address:
1. CIDR Value for Directly Connected Network
Directly Connected router interface with IPv6 usage CIDR Value between /17 to /126
ABCD:1234:5678:ABCD:1234:5678:90AB:CDEF/80
ABCD:1234:5678:ABCD:1234:0000:0000:0000 (N ID)
2. CIDR Value for Loopback Address
If we want to configure Virtual Interfaces with IPv6 then we can use CIDR Value /128
3. Router-ID
IPv6 could not assign as a Router ID, We need to use 1 IPv4 address for this purpose or we can configure Router-ID manually.
4. Dual Stack
We can use IPv6 Address and IPv4 Address both at same time in single interface for our topology to work for both Internet Protocol like IPv4 and IPv6 that is known as Dual Stack.
5. Prefix Length
Number of Network Bit in IP Address
Length of Network Bit in IP Address
Suggestion or Tips from Nikunj Gohil
Logic for IPv6 Address Range to Practice Lab easily
Loopback Address
Logic: FD00:10:R:R::R
Example: FD00:10:1:1::1
Physically Connected Network like Router to Router or other L3 Devices
Logic: FD00:172:16:RR::R
Let say right now you want to assign IP for R5 on the interface where R5 and R6 connected with each other
Example: FD00:172:16:56::5
Locally Connected Network like Employee Network or User Department Network
Logic: FD00:192:168:R::R
Let say Network Number 7 for Sales Department
Example: FD00:192:168:7::7
Miss the Beginning or Fundamental of IPv6?
Explore following links to read previous Blog related to IPv6
Introduction to IPv6: The Next-Generation Internet Protocol
Understanding IPv6 Address Structure and Types in Easy way
Do you want to Connect with Nikunj Gohil?
Instagram @NikunjGohil001