Each IPv6 node on the network needs a globally unique address to communicate outside its local segment. But where a node get such an address from? There are a few options:

  • Manual assignment - Every node can be configured with an IPv6 address manually by an administrator. It is not a scalable approach and is prone to human error.  
  • DHCPv6 (The Dynamic Host Configuration Protocol version 6) - The most widely adopted protocol for dynamically assigning addresses to hosts. Requires a DHCP server on the network and additional configuration.
  • SLAAC (Stateless Address Autoconfiguration)   -  It was designed to be a simpler and more straight-forward approach to IPv6 auto-addressing. In its current implementation as defined in RFC 4862 , SLAAC does not provide DNS server addresses to hosts and that is why it is not widely adopted at the moment. 

In this lesson, we are going to learn how SLAAC works and what are the pros and cons of using it in comparison to DHCPv6.

What is SLAAC?

SLAAC stands for Stateless Address Autoconfiguration and the name pretty much explains what it does. It is a mechanism that enables each host on the network to auto-configure a unique IPv6 address without any device keeping track of which address is assigned to which node.

Stateless and Stateful in the context of address assignment mean the following:

  • A stateful address assignment involves a server or other device that keeps track of the state of each assignment. It tracks the address pool availability and resolves duplicated address conflicts. It also logs every assignment and keeps track of the expiration times.
  • Stateless address assignment means that  no server keeps track of what addresses have been assigned and what addresses are still available for an assignment. Also in the stateless assignment scenario, nodes are responsible to resolve any duplicated address conflicts following the logic: Generate an IPv6 address, run the Duplicate Address Detection (DAD), if the address happens to be in use, generate another one and run DAD again, etc.

How does SLAAC work?

To fully understand how the IPv6 auto-addressing work, let's follow the steps an IPv6 node takes from the moment it gets connect to the network to the moment it has a unique global unicast address.

Step 1: The node configures itself with a link-local address

When an IPv6 node is connected to an IPv6 enabled network, the first thing it typically does is to auto-configure itself with a link-local address. The purpose of this local address is to enable the node to communicate at Layer 3 with other IPv6 devices in the local segment. The most widely adopted way of auto-configuring a link-local address is by combining the link-local prefix FE80::/64 and the EUI-64 interface identifier, generated from the interface's MAC address. 

Figure 1 shows a step by step example of how a local address is generated from MAC address 7007.1234.5678.

Generating a link-local address from interface's MAC address

Once the above steps are completed, the node has a fully functional EUI-64 format link-local address as shown below:

Step 2: The node performs Duplicate Address Detection (DAD)

After the IPv6 host has its link-local address auto-configured, it has to make sure that the address is actually unique in the local segment. Even though the chances that another node has the same exact address are very slim. It has to perform a process called Duplicate Address Detection (DAD).

DAD is a mechanism that involves a special type of address called solicited-node multicast . Upon configuring an IPv6 address, every node joins a multicast group identified by the address FF02::1:FFxx:xxxx where xx:xxxx are the last 6 hexadecimal values in the IPv6 unicast address. Therefore, for each configured unicast address, no matter if it is link-local or global, the host joins the respective auto-generated solicited-node multicast group.

In our example, the last 6 hexadecimal values of the link-local address are 34:5678 so the node joins the multicast group FF02::1:FF 34:5678 . As PC1 is running a Windows 10 operating system, we can verify that with the following command:

Having this logic in mind, we know that if another host has the same exact link-local address, it will also be listening for messages on the solicited-node multicast group auto-generated from this address - FF02::1:FF34:5678. In order for PC1 to check that, it sends an ICMPv6 message with a destination address set to this group, and the source address set to the IPv6 unspecified address. In the ICMPv6 portion of the packet, PC1 puts the whole address in the Target Address field. Figure 2 illustrates that process. PC1 then sends the packet on the network. Only nodes that are listening to this exact auto-generated multicast group will open the packet, all other nodes will discard it. If any node has an IPv6 address that has the same last 6 hex digits, will look in the ICMPv6 portion and check if the target address matches any of its own addresses. If there is a match, the host will reply back that this IPv6 address is already in use. If nobody replies back, PC1 will conclude that this address is unique and available to be used, and will assign it.

PC1 performs IPv6 DAD for its link-local address

This process is called Duplicate Address Detection (DAD) and is done upon every new address assignment. In our example, PC1 sends the ICMPv6 Neighbor Solicitation message as shown in figure 2, and nobody replies back. PC1 will then know for sure that this link-local address is unique in this local segment.

Step 3: The node sends a Router Solicitation message

Step 1 and 2 in this example depict the process of generating and assigning a unique link-local address. This process is not exactly part of the Stateless Autoconfiguration feature but without a link-local address, PC1 won't be able to communicate at layer 3 with any other IPv6 node. Thus, it is a pre-requisite for the SLAAC to work and that's why we have included it in our example.

After PC1 has a link-local address, it can now start the process of auto-configuring a global unicast address using SLAAC. The first step of this process is to send an ICMPv6 message called Router Solicitation (RS) . The purpose of this message is to ' ask ' all IPv6 routers attached to this segment about the global unicast prefix that is used. The destination address is the all-routers multicast address FF02::2 and for source, PC1 uses its link-local address. Note that only routers are subscribed to multicast group FF02::2, which means that only Router 1 will process this message, and all other nodes on the local segment will discard it.

After Router 1 gets the Router Solicitation message, it responds back with an ICMPv6 message called Router Advertisement (RA). The RA message includes the global IPv6 prefix on the link and the prefix length. In our example, these would be the prefix 2001:1234:A:b:: and the prefix length of /64. For the source of this RA packet, Router 1 uses its own link-local address and destination is the all-nodes multicast address FF02::1. The process is illustrated in figure 3.

Step 4: The node configures its global unicast address

Once PC1 gets back the Router Advertisement from  Router 1, it combines the prefix 2001:1234:A:B::/64 with its EUI-64 interface identifier (7207:12FF:FE34:5678) resulting in the global unicast address 2001:1234:A:B:7207:12FF:FE34:5678/64. Because the Router Advertisement came from Router 1, PC1 sets its IPv6 default gateway to the link-local address of R1.

Now PC1 has a global unicast address and a default gateway. But the SLAAC process is not completed. PC1 must know for sure this auto-generated address is unique in the local segment. Thus, PC1 performs the Duplicate Address Detection (DAD) process. 

Step 5: The node performs Duplicate Address Detection (DAD)

We have already explained the DAD process in detail in step 2. When PC1 auto-generate its global unicast address, it immediately joins the auto-generated solicited-node multicast group FF02::1:FF34:5678. To be sure that nobody else is using this address, PC1 then sends an ICMPv6 message called Neighbor Solicitation to the solicited-node address FF02::1:FF34:5678 and waits to see if a node replies back. If no reply is received back, PC1 knows that this address is unique and can start using it for communication outside its local segment including on the Internet.

The problem with SLAAC

So far so good. We have seen how a node can auto-configure a globally unique IPv6 address and a default gateway.

However, SLAAC does not provide DNS information and without DNS, many services such as surfing the Internet are not possible.  

There is a field in the Router Advertisement header, that is designed to solve this problem.

Router Advertisement Flags

As we said above, by default, SLAAC does not provide DNS. And without DNS, many services that require resolution from URL addresses to IP won't work. There is a field in the RA message that helps nodes understand where to get an IPv6 address and DNS information from. 

Examining the Router Advertisement Flags

If the M-flag is set to 1, it indicates that addresses are available via DHCPv6. The router is basically telling the nodes to ask the DHCP server for addresses and DNS information. If the M flag is set, the O flag can be ignored because DHCPv6 will return all available information.

If the O-flag is set to 1, it indicates that DNS information is available via DHCPv6. The router is basically telling the nodes to auto-configure an address via SLAAC and ask the DHCP server for DNS information.

If neither M nor O flags are set, this indicates that no DHCPv6 server is available on the segment.

The Prf-flag (Default Router Preference) can be set to Low (1), Medium (0), or High(3). When a node receives Router Advertisement messages from multiple routers, the Default Router Preference (DRP) is used to determine which router to prefer as a default gateway.

Examining the Router Advertisement Flags with Wireshark

Configuring SLAAC on Cisco routers

Typically, when IPv6 unicast-routing is enabled on a Cisco router, it starts to send RA messages via all interfaces that have a configured IPv6 global unicast address. 

In our example, when interface GigabitEthernet 0/0 is configured with a global IPv6 unicast address, it immediately starts sending RA messages on the local segment. 

Most parameters can be verified using the show ipv6 interface command

If there is a DHCPv6 server available on the segment, we can set the M-flag or the O-flag in the RA messages using the following options. 

If you'd like to disable the SLAAC feature on this interface, you can use the suppress command under the interface ipv6 options

  • Artificial Intelligence
  • Generative AI
  • Cloud Computing
  • CPUs and Processors
  • Data Center
  • Edge Computing
  • Enterprise Storage
  • Virtualization
  • Enterprise Buyer’s Guides
  • Internet of Things
  • Network Management Software
  • Network Security
  • United States
  • Newsletters
  • Foundry Careers
  • Terms of Service
  • Privacy Policy
  • Cookie Policy
  • Copyright Notice
  • Member Preferences
  • About AdChoices
  • E-commerce Links
  • Your California Privacy Rights

Our Network

  • Computerworld

tim_ferrill

IPv6: How to configure static and DHCP IP addressing and deal with DNS

Ipv6 offers several ways that aren’t possible in ipv4 to assign ip addresses, and dns set-up has differences as well..

IPv6 wireless network protocol

As IP technology has matured, the range of devices that the internet protocol supports goes well beyond computers to include cell phones, entertainment systems, and Internet of Things (IoT) devices, which created the need for more IP addresses and the development of IPv6 to provide them.

With more and more device types requiring network connectivity, the demand for addresses in an IPv4-based network is at a premium. It can provide somewhere south of 4,294,967,296 unique addresses. IPv6 , on the other hand, can yield roughly 3.4×10 38 , which should be ample for a very long time.

IPv6 also includes performance enhancements like refined multicasting, stateless address autoconfiguration (SLAAC), simplified headers to streamline router processing, and the option to allow larger packets. Security also gets a potential boost in IPv6 with IPSec, which was initially built for IPv6 and then retrofitted for IPv4.

Dealing with IPv6 includes familiarizing yourself with two important IP concepts: DHCP and DNS. Here are tips on both.

Key IPv6 addressing concepts

IPv6 addressing within a network has a few major differences from IPv4. With IPv4 certain address ranges are reserved for private networks (such as 10.0.0.0/8 or 192.168.0.0/16) and link-local addressing without dynamic host configuration protocol (DHCP) (169.254.0.0/16).

DHCP automatically assigns IP addresses and distributes other information to hosts on a network so they can communicate with other endpoints. At the same time, by assigning active IP addresses only to active devices, DHCP can reuse them to help conserve IPv4 addresses. IPv6 has similar concepts but refines each idea a little further.

Link-local addresses in IPv6 exist on each interface, regardless of whether the interface has an address assigned from DHCP or is configured using another method. Link-local IPv6 addresses have a prefix of fe80::/10 and a 64-bit suffix which can be computed and managed by the host itself without requiring additional networking components. IPv6 hosts can verify the uniqueness of their link-local addresses through a neighbor discovery process, which reaches out to the local network in order to verify that the address is not already in use.

Once a link-local address has been established, the IPv6 host attempts to determine if an IPv6-capable router is available through the use of a router solicitation message. If an IPv6 router is available it will respond with a router advertisement, which includes network configuration information such as a network prefix that is used for automatic address configuration using SLAAC or whether the host should obtain additional configuration information from a DHCPv6 server.

Configuring a Static IPv6 address in Windows

Typical to Windows, there are three ways to configure a static IPv6 address for a network adapter, all of which work in Windows 10 and in both Windows Server 2016 and 2019. The first way uses the classic Control Panel method as follows.

From the Control Panel, navigate to Network and Internet, Network and Sharing Center, and then choose the Change adapter settings link in the left panel. (You can shortcut all the clicking by searching for “View Network Connections” from the Start Menu or the Search bar).

Once you locate the network adapter you wish to configure, you can view the properties and locate the Internet Protocol Version 6 (TCP/IPv6) node and configure the properties for the IPv6 protocol. As with IPv4 you can set the adapter to obtain the IPv6 address automatically or configure your own IPv6 address, subnet, default gateway, and DNS server information. If you need to set multiple IPv6 addresses this can be accomplished by clicking the Advanced button.

The second method of setting a static IP address involves the more modern Settings application. In Settings go to Network & Internet and click the Properties button for the interface you wish to configure. Click the Edit button under IP settings, change the configuration type to Manual, enable IPv6, and populate your settings.

The third way is to use the Windows PowerShell command-line interface. In order to set a static IPv6 address using the New-NetIPAddress cmdlet you will need either the name or the numeric index of the adapter you wish to configure. Both of these values are available using the Get-NetAdapter cmdlet. From an administrative PowerShell prompt enter one of the following commands (on a single line) replacing the details as necessary for your environment:

Managing IPv6 Addressing for a Windows Network

Static IP addresses are generally OK to use when the device is hosting a critical network service that requires retaining a consistent network address, but for general use you’ll want to have a way to automate address configuration.

In an IPv4 network DHCP is the obvious answer for IP configuration and can also provide critical networking details such as the default gateway or DNS-server addresses through DHCP options. IPv6 offers three potential scenarios for managing addressing and network configuration.

SLAAC is a straightforward option assuming your router supports the appropriate router-advertisement messages. DHCP is certainly still in play to handle stateful addressing in the form of DHCPv6. You can also potentially have a hybrid scenario where your router handles addressing, and DHCPv6 simply provides the relevant network-configuration details.

In Windows Server 2016 and 2019, configuring DHCPv6 is extremely straightforward. If your router is configured to handle router advertisements and addressing through SLAAC you can simply manage the IPv6 server options to configure DNS servers or other options. If you prefer to roll with stateful addressing you can add one or more DHCPv6 scopes and configure a prefix, any exclusions, and lease durations. DHCPv6 scopes will maintain a list of leases and their expirations just as an IPv4 scope would, and they also provide an easy path for creating IPv6 reservations from existing leases.

Setting up DNS Name Resolution for IPv6

DNS is incredibly important in an IPv6 network, even moreso than in an IPv4 network because trying to configure connectivity and access resources using only IPv6 addresses is borderline insane. The biggest difference to note in regard to using DNS with IPv6 is that the IPv4 A records, which convert a fully qualified domain name (FQDN) to an IPv4 address, are replaced by AAAA (quad-A) records. All other record types such as CNAME, MX, NS, SOA, and the various DNSSEC-related record types simply reference the FQDN of the AAAA record. Reverse lookup zones, which are used to find a hostname from an IP address, are different in IPv6 simply because they are built on the IP address structure, but the process of creating and using these zones are functionally identical.

The DNS server role in Windows Server supports both IPv4 and IPv6 through a similar set of tools and processes. As with A records, AAAA records can either be created manually for critical systems or the dynamic update process can be leveraged to manage DNS records for the entire enterprise.

AAAA records can be manually created using the DNS console through the same process as A records: Right click the required DNS zone, select the New Host (A or AAAA) option, and populate the Host name and IP address. Dynamic updates are enabled through the DNS console, but most of the work is done by DHCP; the update process is configured within the DHCP console and updates are performed by the DHCP client service on individual hosts. Dynamic updates can also be manually initiated from the command line using the ipconfig command with the /registerdns switch.

Related content

Launch puts china firmly in the communications satellite game, bgp: what is border gateway protocol, and how does it work, what is dns and how does it work, google unveils $1b plan for subsea cables to japan, newsletter promo module test.

tim_ferrill

Tim Ferrill is an IT professional and writer living in Southern California. He has covered Windows, Windows Phone, and Windows Server for several publications, including CITEworld and InfoWorld.

More from this author

Certifications that can land you a job as a network-automation engineer, free training from 8 top vendors to advance your it career, surviving a mastodon stampede, tame active directory groups to streamline management, prep for automation, just-in-time it infrastructure: how to attain it for strategic advantage, 9 hot jobs in the evolving data center, how to inventory server software with powershell, how to inventory server storage with powershell, most popular authors.

ipv6 automatic address assignment

Show me more

$75m ransom payment made - 5 key ransomware findings.

Image

Network hiring, skills and certification trends

Image

Chinese firms bypass US export restrictions on AI chips using AWS cloud

Image

Has the hype around ‘Internet of Things’ paid off? | Ep. 145

Image

Episode 1: Understanding Cisco’s Converged SDN Transport

Image

Episode 2: Pluggable Optics and the Internet for the Future

Image

How to see how many days passed since the beginning of the Linux epoch

Image

How to use the pv command

Image

How to use the stat command

Image

IPv6 SLAAC – Stateless Address Autoconfiguration

There are three options on how to configure IPv6 addresses on our networks. The first one is to statically assign a unicast IPv6 address to an interface of the device. Another option is Stateless Address Autoconfiguration (SLAAC), which uses link-local addresses and the interface’s MAC address. Lastly, stateful autoconfiguration which uses Dynamic Host Configuration Protocol version 6 (DHCPv6).

Stateless Autoconfiguration (SLAAC) Process

IPv6 Stateless Address Autoconfiguration or SLAAC allows devices on a network to automatically configure IPv6 addresses on its interface without managing a DHCP server.

Here is the command to configure Stateless Autoconfiguration to the device’s interface:

Link-Local Address

The first thing that happens is that the device gives itself its own link-local address. The IPv6 link-local address configuration for its own interface is done automatically. The link-local address can be acquired by combining the link-local prefix FE80::/64 and the EUI-64 interface identifiers generated from the interface’s MAC address that is padded in the middle with FFFE – 16 bits.

For example, I have a MAC address of AA40:1134:5531. To create a link-local address, we will insert 0xFFFE in the middle of it: AA40:11FF:FE34:5531

Then flip the 7TH bit of the MAC address, which results to: A840:11FF:FE34:5531

10101010 represents the first 8 bits of the MAC address (AA), which, when inverting the 7th bit becomes 10101000 (A8). Therefore, the resulting IPv6 EUI-64 link-local address is this: FE80::A840:11FF:FE34:5531.

Most modern operating systems randomize the host portion of the address rather than using the standard EUI-64 for security and privacy reasons.

Duplicate Address Detection (DAD)

When the client device has obtained the IPv6 link-local address on its interface, the second step will be to send Duplicate Address Detection (DAD) ICMPv6 message to its link. This checks if the target address matches existing addresses, ensuring it is a unique link-local address and not duplicated in the local segment.

When the device autoconfigures or receives an IPv6 address, they send three DADs out via Network Discovery Protocol – Network Solicitation (NDP NS), asking if anyone has this same address.

Router Solicitation and Router Advertisement

After the device confirms that its IPv6 address is unique and there’s no duplicate link-local address as its interface becomes enabled, the next step of the SLAAC process is to send a Router Solicitation message (RS) that requests that routers generate Router Advertisements (RA). This message aims to query all IPv6-speaking routers attached to this segment about the global unicast prefix used.

SLAAC

Global Unicast Address

Since our client device has only a link-local unicast address configured on its interface, which is not meant to be routed, it needs to configure a global unicast address.

When our client device received the router advertisement sent by the router, it combines the global unicast prefix address (2001:1385:A:B:: /64) with its EUI-64 interface identifier (A840:11FF:FE34:5531), resulting in the global unicast address 2001:1385:A:B:A840:11FF:FE34:5531/64 that can be routed on the Internet. The default gateway of our client device will be the router that sends Router Advertisements (RA) to it.

Stateless autoconfiguration (SLAAC) assigns IP addresses automatically without the need for a DHCP server to keep track of the IP address of a host. However, SLAAC does not provide DNS information, and without DNS, many services, such as surfing the Internet, are not possible.

DHCPv6 – Dynamic Host Configuration Protocol v6

Another way to assign IPv6 addresses to hosts is via DHCPv6. DHCPv6 is an update to DHCPv4, with its main difference being that it supports IPv6’s new addressing scheme. Unlike SLAAC, DHCPv6 is called stateful configuration because it keeps track of which hosts have which IP address and stores information about them.

DHCPv6 Process

The first step is the DHCPv6 client must find addresses of other devices on the link via Neighbor Discovery Process (NDP). If a DHCP client detects a router, it will check the Router Advertisement (RA) sent by a router to see if a DHCPv6 has been set up, or if no router advertisement messages are seen, the client will send DHCP solicit messages, which is a multicast message addressed with a destination of ff02::1:2 that calls out, “All DHCP agents, both servers and relays.” The DHCPv6 client will use the link-local scope to send the DHCP solicit message to ensure that the message isn’t forwarded, by default, beyond the local link.

In practice, a DHCP server is still required to give out information such as DNS information to be able to surf the internet, unlike SLAAC, which only configures IPv6 addresses.

Download our Free CCNA Study Guide PDF for complete notes on all the CCNA 200-301 exam topics in one book.

We recommend the Cisco CCNA Gold Bootcamp as your main CCNA training course . It’s the highest rated Cisco course online with an average rating of 4.8 from over 30,000 public reviews and is the gold standard in CCNA training:

ipv6 automatic address assignment

  • Concept of frame switching
  • MAC learning and aging concepts
  • Concept of switching in networking
  • Virtualization fundamentals in networking
  • Types of encryption in wireless networking
  • SSID in detail for wireless communication
  • Wireless Principle in Networking

CCNA TUTORIALS

A perfect guide to getting ccna certified.

  • IPv6 Internet Protocol Version6

IPv6 Stateless Address Autoconfiguration (SLAAC)

IPv6 Stateless Address Autoconfiguration (SLAAC), ccna, CCNA TUTORIALS

Contents of this article

In this article, I describe IPV6 configuration method IPv6 Stateless Address Autoconfiguration (SLAAC). IPv6 Stateless Address Autoconfiguration (SLAAC) is a fundamental mechanism that allows devices to automatically configure their own IPv6 addresses and other network parameters without the need for manual configuration or a central DHCP server. SLAAC simplifies the process of address assignment and enhances the efficiency of IPv6 networks. In this explanation, we’ll delve into the details of IPv6 Stateless Address Autoconfiguration (SLAAC), its components, and how it works.

Key Components of IPv6 Stateless Address Autoconfiguration (SLAAC)

1. router advertisement (ra) messages:.

SLAAC relies on Router Advertisement (RA) messages, which are periodically sent by routers on the network. These messages contain essential information that hosts use to configure their IPv6 addresses.

The RA messages include the IPv6 prefix that hosts use to construct their addresses. The prefix is the network portion of the address that remains constant across devices on the same subnet.

3. Interface Identifier:

The interface identifier is the unique portion of the IPv6 address generated by the host. It can be derived from the device’s MAC address or using privacy extensions to enhance security.

4. Valid and Preferred Lifetimes:

The RA messages provide information about the validity and preferred lifetime of the IPv6 address. Hosts use this information to manage their addresses, initiate address renewal, and decide when to switch to a new address.

SLAAC Process:

The IPv6 Stateless Address Autoconfiguration (SLAAC) process involves the following steps:

1. RA Messages:

Routers on the network periodically send out Router Advertisement (RA) messages. These messages are usually part of the Neighbor Discovery Protocol (NDP).

2. Address Configuration:

When a device receives an RA message, it extracts the prefix information and combines it with its own unique interface identifier. This creates a complete IPv6 address.

3. Duplicate Address Detection (DAD):

Before using the configured address, the device performs Duplicate Address Detection (DAD) to ensure that the address is not already in use on the network. If the address is unique, the device proceeds to use it.

4. Address Lifetimes:

The RA messages include address lifetimes: valid and preferred lifetimes. The valid lifetime indicates how long the address is valid, while the preferred lifetime indicates how long the address is preferred for new communication.

5. Address Renewal and Expiry:

As the address’s preferred lifetime approaches expiry, the device may initiate address renewal or generate a new address. After the valid lifetime expires, the address is no longer used.

Privacy Extensions:

To enhance privacy and security, IPv6 introduces privacy extensions, which allow devices to generate temporary, random interface identifiers in addition to their permanent ones. These temporary addresses change over time, making it more challenging to track devices based on their addresses.

Advantages of SLAAC:

1. automation:.

SLAAC simplifies address configuration, reducing the need for manual intervention on individual devices.

2. Efficiency:

It minimizes network traffic by decreasing reliance on DHCP server interactions.

3. Network Resilience:

If the central DHCP server is unavailable, devices can still configure their addresses using SLAAC.

4. Scalability:

SLAAC scales well in large networks, as devices can autonomously configure addresses without overloading the network.

IPv6 Stateless Address Autoconfiguration (SLAAC) is a powerful mechanism that simplifies and automates the process of configuring IPv6 addresses on devices. By leveraging Router Advertisement messages and combining prefixes with interface identifiers, devices can autonomously generate unique addresses. With the added privacy extensions, SLAAC enhances security and ensures efficient address management in IPv6 networks, contributing to a seamless and streamlined network experience.

IPv6 Stateless Address Autoconfiguration (SLAAC) via other approach

Stateless Address Autoconfiguration (SLAAC) is a key feature of IPv6 that enables devices to automatically configure their own unique IPv6 addresses without the need for manual configuration or the involvement of a central server. SLAAC simplifies the process of assigning addresses and allows devices to connect to IPv6 networks seamlessly. Let’s explore the principles, benefits, and implementation of SLAAC in more detail.

Principles of IPv6 Stateless Address Autoconfiguration (SLAAC):

IPv6 Stateless Address Autoconfiguration (SLAAC) operates based on the information provided by routers on the network through Router Advertisement (RA) messages. These messages include the IPv6 prefix and other configuration parameters necessary for devices to generate their own addresses. The process involves the following steps:

1. Router Advertisement (RA):

Routers periodically send RA messages to the local network, announcing the network’s IPv6 prefix and other relevant information.

2. Interface Identifier:

Devices use their interface identifier, often derived from their MAC address or using Privacy Extensions, to create a unique identifier.

3. Address Formation:

The device combines the network prefix received from the RA message with the generated interface identifier to form a complete IPv6 address.

4. Lifetime Management:

RA messages also include information about the address’s validity and preferred lifetime. This helps devices manage and update their addresses as necessary.

Benefits of IPv6 Stateless Address Autoconfiguration (SLAAC):

SLAAC eliminates the need for manual address configuration, reducing administrative overhead and potential human errors.

2. Scalability:

SLAAC is well-suited for networks with a large number of devices since addresses are generated locally without relying on a central server.

3. Efficiency:

The process of address assignment is efficient, as devices can configure their addresses based on readily available information.

4. Simplicity:

SLAAC simplifies the process of onboarding new devices to a network, making it ideal for environments with frequent device additions.

Implementing IPv6 Stateless Address Autoconfiguration (SLAAC):

Implementing IPv6 Stateless Address Autoconfiguration (SLAAC) involves ensuring that your network routers are configured to send Router Advertisement (RA) messages with the necessary prefix information. Here’s a general guide:

1. Router Configuration:

Routers need to be configured to send RA messages. This can be done through router configuration interfaces, such as Cisco IOS, Juniper JunOS, or open-source router software like radvd.

2. Prefix Information:

In the RA messages, include the IPv6 prefix of the network segment where the router is located. The prefix will be used by devices for address formation.

3. Network Devices:

Configure network devices (such as computers, smartphones, and other IPv6-capable devices) to have their network interfaces set to automatically configure using SLAAC.

4. Network Testing:

Verify that devices are correctly receiving the RA messages and configuring their IPv6 addresses based on the provided prefix.

Privacy Extensions enhance privacy by generating temporary addresses for outgoing connections. These temporary addresses change over time, making it more challenging for tracking activities based on IP addresses. Many modern operating systems support Privacy Extensions by default.

Security Considerations:

While SLAAC is efficient and convenient, it’s essential to consider security aspects. For example, securing router advertisements to prevent unauthorized devices from announcing incorrect prefixes is crucial. Additionally, Network Access Control (NAC) mechanisms should be in place to ensure that only authorized devices can join the network.

In conclusion, Stateless Address Autoconfiguration (SLAAC) is a core feature of IPv6 that simplifies the process of assigning addresses to devices in a network. By relying on Router Advertisement (RA) messages and local address formation, SLAAC enhances automation, scalability, and efficiency in IPv6 networks. Proper implementation and security measures ensure a seamless and secure IPv6 network environment.

IPv6 Stateless Address Autoconfiguration (SLAAC)

Stateless Address Autoconfiguration (SLAAC) is a fundamental feature of the IPv6 protocol that simplifies the process of assigning and configuring IPv6 addresses on devices within a network. SLAAC allows devices to automatically generate their own IPv6 addresses and obtain other necessary configuration parameters without the need for manual intervention or a central server. It is a key component of IPv6’s design to streamline address assignment and network setup. In this guide, we’ll explore the concept of SLAAC, how it works, and its benefits.

How SLAAC Works:

SLAAC operates based on Router Advertisement (RA) messages sent by routers on the network. These messages provide essential information that devices need for address configuration:

Routers periodically send RA messages on the local network to announce various network parameters, including the IPv6 prefix that devices should use.

2. Network Prefix:

The IPv6 prefix is a portion of the IPv6 address that represents the network portion. It is usually provided by the router in the RA message.

Devices generate a unique interface identifier for themselves. This identifier is typically derived from the device’s Media Access Control (MAC) address or using Privacy Extensions to enhance address privacy.

4. Combining Prefix and Interface Identifier:

Devices combine the received IPv6 prefix with their unique interface identifier to form a complete IPv6 address.

Benefits of SLAAC:

1. automated configuration:.

SLAAC eliminates the need for manual address configuration on each device, reducing administrative overhead.

2. Simplified Network Setup:

Devices can be connected to the network and obtain addresses without requiring extensive configuration.

3. Efficient Address Utilization:

SLAAC allows devices to generate addresses based on network information, ensuring efficient utilization of the IPv6 address space.

4. Reduced Network Traffic:

SLAAC reduces network traffic by minimizing the reliance on a central server for address assignment.

To enhance privacy, IPv6 introduces Privacy Extensions as part of SLAAC. Privacy Extensions allow devices to generate temporary and frequently changing interface identifiers. These temporary addresses help prevent device tracking based on static interface identifiers.

Example of SLAAC Configuration:

Assume you have a router on the network that sends out RA messages and announces the prefix `2001:0db8:1234:abcd::/64`.

1. A device receives the RA message with the prefix `2001:0db8:1234:abcd::/64`.

2. The device generates a unique interface identifier, which could be derived from its MAC address or Privacy Extensions.

3. The device combines the prefix and interface identifier to create a complete IPv6 address:

   2001:0db8:1234:abcd::generated-interface-identifier

SLAAC and Additional Configuration:

While SLAAC provides IPv6 addresses, it does not provide additional configuration parameters, such as DNS server addresses or domain names. In scenarios where more comprehensive configuration is needed, networks can use a combination of SLAAC and Dynamic Host Configuration Protocol for IPv6 (DHCPv6).

Conclusion for IPv6 Stateless Address Autoconfiguration (SLAAC):

Stateless Address Autoconfiguration (SLAAC) is a crucial mechanism in IPv6 networks that simplifies the process of assigning and configuring IPv6 addresses on devices. By leveraging RA messages and network prefixes, SLAAC enables automated address assignment, streamlined network setup, and efficient address utilization. It’s an integral part of IPv6’s design philosophy to support the evolving demands of the modern digital landscape. You may drop a comment below or contact us for any queries or suggestions related to this article.

Other Related posts:

  • IPv6 Address Configuration on Hosts
  • IPv6 Address Configuration on Routers
  • IPv6 Link-Local Addresses
  • IPv6 Unique Local Addresses (ULA)
  • IPv6 Global Unicast Addresses
  • Working of IPv6 in Internetwork
  • Stateless Autoconfiguration SLAAC
  • IPv6 Address system in computer networking

Related Posts

IPv6 Future Trends and Developments, ccna, ccna tutorials

IPv6 Future Trends and Developments

IPv6 and Internet Exchange Points (IXPs), ccna, ccna tutorials

IPv6 and Internet Exchange Points (IXPs):

IPv6 and Autonomous Systems, ccna, ccna tutorials

IPv6 and Autonomous Systems

IPv6 in Mobile Networks, ccna, ccna tutorials

IPv6 in Mobile Networks

IPv6 in Cable and Broadband Networks, ccna, ccna tutorials

IPv6 in Cable and Broadband Networks

IPv6 and Global Internet Governance , ccna, ccna tutorials

IPv6 and Global Internet Governance 

Leave a reply.

Your email address will not be published. Required fields are marked *

PacketMania

Technology | Knowledge | Sharing

IPv6 Dynamic Address Allocation Mechanism Illustrated

IPv6 supports multiple addresses, making address assignments more flexible and convenient. Unlike IPv4, which relied solely on the DHCP protocol for address assignment, IPv6 incorporates a native Stateless Address AutoConfiguration SLAAC) protocol. SLAAC can either work alone to provide IPv6 addresses to hosts, or it can work with DHCPv6 to generate new assignment schemes. Here is a comprehensive analysis of the dynamic address allocation mechanism for IPv6.

Who the hell knew how much address space we needed? — Vint Cerf (American Internet pioneer and one of "the fathers of the Internet")

IPv6 Address Overview

Address formats.

ipv6 automatic address assignment

The interface identifier can be generated in several ways:

  • Static manual setting
  • Converted from the interface's MAC address using the modified EUI-64 format
  • Obtained from a DHCPv6 server
  • Automatically established randomly or cryptographically

IETF recommends a canonical textual representation format for ease of writing. It includes leading zeros suppression and compression of consecutive all-zero fields. With the network prefix length at the end, the above address can be shortened to 2001:db8:130f :: 7000: 0 :140b/ 64 .

Address Types

RFC 4291 defines three types of addresses:

  • Unicast: A network address corresponds to a single network node, point-to-point connection.
  • Anycast: The target address corresponds to a group of receiving nodes, but only the "nearest" one receives.
  • Multicast: The target address corresponds to a group of nodes that can receive replicated messages.

Note that there are no broadcast addresses in IPv6, their function being superseded by multicast addresses. Anycast addresses are syntactically indistinguishable from unicast addresses and have very limited applications. A typical application for anycast is to set up a DNS root server to allow hosts to look up domain names in close proximity. For unicast and multicast addresses, they can be identified by different network prefixes:

Address Type Binary Form Hexadecimal Form Application
Link-local address (unicast) 1111 1110 10 fe80::/10 Use on a single link, non-routable
Unique local address (unicast) 1111 1101 fd00::/8 Analogous to IPv4 private network addressing
Global unicast address 001 2000::/3 Internet communications
Multicast address 1111 1111 ff00::/8 Group communications, video streaming

ipv6 automatic address assignment

  • All Nodes Addresses on the local link — ff02::1
  • All Routers Addresses on the local link — ff02::2
  • Solicited-Node Address on local link — ff02::1:ffxx:xxxx

Dynamic Allocation Schemes

Ndp protocol.

IPv6 dynamic address assignment depends on Neighbor Discovery Protocol (NDP). NDP acts at the data link layer and is responsible for discovering other nodes and corresponding IPv6 addresses on the link and determining available routes and maintaining information reachability to other active nodes. It provides the IPv6 network with the equivalent of the Address Resolution Protocol (ARP) and ICMP router discovery and redirection protocols in IPv4 networks. However, NDP adds many improvements and new features. NDP defines five ICMPv6 message types:

  • Router Solicitation (RS)
  • Router Advertisement (RA)
  • Neighbor Solicitation (NS)
  • Neighbor Advertisement (NA)

The first two message types here, RS and RA, are the keys to implementing dynamic IPv6 address assignment. The host sends an RS message to the multicast address ff02::2 of all routers in the local network segment to request routing information. When the router receives the RS from the network node, it sends an immediate RA in response. The message format of the RA is as follows


2
3
4
5
6
7
8
9
10
11
12
13

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cur Hop Limit |M|O| Reserved | Router Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reachable Time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Retrans Timer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-

It defines two special bits, M and O, with the following meaning:

  • M — "Managed address configuration" flag, set to 1 when the address is obtained from DHCPv6.
  • O — "Other configuration" flag, set to 1 to indicate that other configuration information is available via DHCPv6

The RA message ends with the Options section, which originally had three possible options: Source Link-Layer Address, MTU, and Prefix Information. Later, RFC 8106 (which replaced RFC 6106) added the Recursive DNS Server (RDNSS) and DNS Search List (DNSSL) options. The Prefix Information option directly provide hosts with on-link prefixes and prefixes for Address Autoconfiguration, and it has the following format


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Prefix Length |L|A| Reserved1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Valid Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Preferred Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Prefix +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Here the Prefix Length and the Prefix jointly determine the network prefix of the IPv6 address. In addition, the Prefix Information option also defines two special bits, L and A:

  • L — on-link flag. When set, indicates that this prefix can be used for on-link determination.
  • A — autonomous address-configuration flag. When set, indicates that this prefix can be used for SLAAC.

Similar to the IPv4 subnet mask feature, the purpose of the "on-link" determination is to allow the host to determine which networks an interface can access. By default, the host only considers the network where the link-local address is located as "on-link". If the "on-link" status of a destination address cannot be determined, the host forwards the IPv6 datagram to the default gateway (or default router) by default. When the host receives an RA message, if the "on-link" flag for a prefix information option is set to 1 and the Valid Lifetime is also a non-zero value, the host creates a new prefix network entry for it in the prefix list. All unexpired prefix network entries are "on-link".

Message Sequence

After understanding the NDP protocol and the information conveyed by the RA messages, let's see how they guide the network nodes to achieve dynamic address assignment.

Routers in the network periodically send RA messages to the multicast addresses (ff02::1) of all nodes in the local subnet. However, to avoid latency, the host sends one or more RS messages to all routers in the local subnet as soon as it has finished booting. The protocol requires the routers to respond to the RA messages within 0.5 seconds. Then, based on the values of the M/O/A bits in the received RA messages, the host decides how to dynamically configure the unique local and global unicast addresses of the interface and how to obtain other configuration information. With certain combinations of bit fetch values, the host needs to run DHCPv6 client software to connect to the server to obtain address assignment and/or other configuration information. The entire process is shown in the following message sequence diagram.

Note: Unlike the IPv4 DHCP protocol, DHCPv6 clients use UDP port 546 and servers use UDP port 547.

Next explain in detail three dynamic allocation schemes determined by the combination of the M/O/A-bit values:

SLAAC + Stateless DHCPv6

Stateful dhcpv6.

SLAAC is the simplest automatic IPv6 address assignment scheme and does not require any server. It works by sending an RS message request after the host starts up and the router sends back RA messages to all nodes in the local network segment. If the RA message contains the following configuration

  • M-bit and O-bit all clear in the message header
  • L-bit and A-bit all set in Prefix Information option

Then the host receives this RA message and performs the following operations to implement SLAAC:

  • Combine the network prefix with the local interface identifier to generate a unique local address or global unicast address.
  • Install the default gateway (or default route) to point to the router address (source address of the RA message).
  • Set this interface as the "on-link" corresponding to the network prefix, which is also the next-hop interface of the default gateway above.
  • If the RDNSS and/or DNSSL options are included, install the name servers and domain name suffixes.

This way, the host gets one or more IPv6 unique local addresses or global unicast addresses, plus the default gateway and domain name service information to complete various Internet connections.

The following is an example of the SLAAC configuration on a Cisco Catalyst 9300 Multilayer Access Switch:


2
3
4
5
6

interface Vlan10
ipv6 enable
ipv6 address 2001:ABCD:1000::1/64
ipv6 nd ra dns server 2001:4860:4860::8888 infinite
ipv6 nd ra dns search-list example.com

The Layer 3 interface of the Cisco Multilayer Switch provides routing functionality. As you can see, when IPv6 is activated on the Layer 3 interface in VLAN 10, its default address auto-assignment scheme is SLAAC. the control bits of RA messages from this interface are all set according to the SLAAC scheme, and the network prefixes for each IPv6 address it configures are automatically added to the RA prefix information options list. Of course, the network administrator can also exclude certain network prefixes with a separate interface configuration command. The last two lines of the example configuration command specify RDNSS and DNSSL, which are also added to the RA message options.

If a host connects to a port in VLAN 10, it immediately gets a global unicast address with the network prefix of 2001:ABCD:1000::/64, and its default gateway address is set to 2001:ABCD:1000::1. Open a browser and enter a URL, and it will send a message to the specified domain name server 2001:4860:4860::8888 (Google's public name server address) to obtain the IPv6 address of the destination URL to establish a connection.

SLAAC automatic address assignment is fast and easy, providing a plug-and-play IPv6 deployment solution for small and medium-sized network deployments. However, if a network node needs access to additional configuration information, such as NTP/SNTP server, TFTP server, and SIP server addresses, or if its functionality relies on certain Vendor-specific Information Options, it must choose SLAAC + stateless DHCPv6 scheme.

This scenario still uses SLAAC automatic address assignment, but the router instructs the host to connect to a DHCPv6 server for additional configuration information. At this point, the RA message sent back by the router has

  • M-bit clear and O-bit set in the message header

After receiving this RA message, the host performs the following actions:

  • Install a default gateway (or default route) pointing to the router address (source address of the RA message).
  • Start the DHCPv6 client and connect to the DHCPv6 server to request additional configuration information .
  • Save the additional configuration information replied by the DHCPv6 server .

As you can see, SLAAC + stateless DHCPv6 is not different from SLAAC in terms of address assignment. DHCPv6 only provides additional configuration information and does not assign IPv6 addresses. So the DHCPv6 server does not track the address assignment status of network nodes, which is what "stateless" means.

The corresponding configuration commands on the Catalyst 9300 switch are as follows.


2
3
4
5
6
7
8
9
10
11

ipv6 dhcp pool vlan-10-clients
dns-server 2001:4860:4860::8888
domain-name example.com
sntp address 2001:DB8:2000:2000::33
interface Vlan10
ipv6 enable
ipv6 address 2001:ABCD:1000::1/64
ipv6 nd other-config-flag
ipv6 dhcp server vlan-10-clients
# ipv6 dhcp relay destination 2001:9:6:40::1

The difference with the SLAAC example is that the VLAN 10 interface configuration command ipv6 nd other-config-flag explicitly specifies to set the O-bit of the RA message. Its next command, ipv6 dhcp server vlan-10-clients , activates the DHCPv6 server response feature of the interface, corresponding to the server's pool name of vlan-10-clients . The DHCPv6 server is configured above the interface configuration, starting at ipv6 dhcp pool vlan-10-clients , and contains the DNS server address, DNS domain name, and SNTP server address.

If you are using a separate DHCPv6 server located on a network segment, you can remove the ipv6 dhcp server command and enable the ipv6 dhcp relay destination command on the next line of the example to specify the address to forward DHCPv6 requests to the external server.

Many large enterprises use DHCP to manage the IPv4 addresses of their devices, so deploying DHCPv6 to centrally assign and manage IPv6 addresses is a natural preference. This is where Stateful DHCPv6 comes into play. This scenario also requires RA messages sent by the router but does not rely solely on network prefixes for automatic address assignment. The control bits of the RA messages are configured to

  • M-bit set in the message header, O-bit does not matter
  • L-bit and A-bit can be set or clear as desired in Prefix Information option

Upon receiving this RA message, the host performs the following actions:

  • Generate a unique local address or a global unicast address if there is a Prefix Information option with the A-bit set.
  • If there is a Prefix Information option with the L-bit set, set this interface to "on-link" with the corresponding network prefix.
  • If the RDNSS and/or DNSSL options are included, install the name servers and domain suffixes.
  • Start the DHCPv6 client and connect to the server to request addresses and other configuration information .
  • Set the address assigned by the DHCPv6 server to this interface .
  • Save additional configuration information from the DHCPv6 server response .

An example of the Stateful DHCPv6 configuration command on a Catalyst 9300 switch is as follows.


2
3
4
5
6
7
8
9
10
11
12

ipv6 dhcp pool vlan-10-clients
address prefix FD09:9:5:90::/64
address prefix 2001:9:5:90::/64
dns-server 2001:9:5:90::115
domain-name test.com
interface Vlan10
ipv6 enable
ipv6 address 2001:ABCD:1:1::1/64
ipv6 nd prefix 2001:ABCD:1:1::/64 no-advertise
ipv6 nd managed-config-flag
ipv6 dhcp server vlan-10-clients

Compared to SLAAC + Stateless DHCPv6 , the interface configuration here removes the ipv6 nd other-config-flag and replaces it with the ipv6 nd managed-config-flag command. This corresponds to setting the M-bit of the RA message header. The DHCPv6 server configuration adds two address prefix commands to set the network prefix. Also, the ipv6 nd prefix 2001:ABCD:1:1::/64 no-advertise configured for the interface specifies that the router does not include the 2001:ABCD:1:1::/64 prefix information option into the RA. So, this example host interface will not generate SLAAC addresses, but only two addresses from DHPCv6: a unique local address with the network prefix FD09:9:5:90::/64, and a global unicast address with the network prefix 2001:9:5:90::/64. The interface identifier for each of these two addresses is also specified by DHPCv6.

How to distinguish the source of dynamically assigned addresses for host interfaces? The method is simple. One thing to remember is that DHPCv6 does not send the network prefix length to the requestor, so the network prefix length of the addresses received from DHPCv6 is 128, while the network prefix length of the addresses generated by SLAAC will not be 128. See the following example of the wired0 interface on a Linux host:


2
3
4
5
6
7
8
9
10

wired0 Link encap:Ethernet HWaddr A0:EC:F9:6C:D9:30
inet6 addr: 2001:20::53c7:1364:a4d8:fd91/128 Scope:Global
inet6 addr: 2001:20::a2ec:f9ff:fe6c:d930/64 Scope:Global
inet6 addr: fe80::a2ec:f9ff:fe6c:d930/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:510 errors:0 dropped:0 overruns:0 frame:0
TX packets:1213 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:93670 (91.4 KiB) TX bytes:271979 (265.6 KiB)

We can immediately determine that the interface is using Stateful DHCPv6 address assignment, but also generates the SLAAC address with the same network prefix 2001:20::/64 received.

  • 2001:20::53c7:1364:a4d8:fd91/128 — DHCPv6 address, random interface identifer
  • 2001:20::a2ec:f9ff:fe6c:d930/64 — SLAAC addeess, interface identifer is MAC in EUI-64 format
  • fe80::a2ec:f9ff:fe6c:d930/64 — Link-local address, interface identifer is MAC in EUI-64 format

Note: DHPCv6 server also does not provide any IPv6 default gateway information. The host needs to be informed of the dynamic default gateway from the RA message.

Summary and Comparison

The following table shows the control bit combinations of RA messages concerning different address allocation and other configuration acquisition methods.

M-bit O-bit A-bit Host Address Other Configuration
0 0 0 Static Settings Manual Configuration
0 0 1 Prefix specified by RA, automatically generated manually configured
0 1 0 Static Settings DHCPv6
0 1 1 Prefix specified by RA, automatically generated DHCPv6
1 0 0 Stateful DHCPv6 DHCPv6
1 0 1 Stateful DHCPv6 and/or automatically generated DHCPv6
1 1 0 Stateful DHCPv6 DHCPv6
1 1 1 Stateful DHCPv6 and/or automatically generated DHCPv6

Summarize three dynamic allocation schemes:

Allocation Scheme Features Appiccation Scenarios
SLAAC Simple and practical, fast deployment SMB, Consumer Product Networking, Internet of Things (IoT)
SLAAC + Stateless DHCPv6 Auto Configuration, Extended Services SMBs need additional network services
Stateful DHCPv6 Centralized management and control Large enterprises, institutions, and campus networks

Note: Since IPv6 network interfaces can have multiple addresses (a link-local address, plus one or more unique local addresses and/or global unicast addresses), it becomes important how the source address is selected when establishing an external connection. RFC 6724 gives detailed IPv6 source address selection rules. In the development of embedded systems, the control plane and the data plane connected to the same remote device are often implemented by different functional components. For example, the control plane directly calls a Linux userspace socket to establish the connection, and the IPv6 source address used for the connection is selected by the TCP/IP stack, while the data plane directly implements data encapsulation processing and transmission in kernel space. In this case, the IPv6 source address selected by the control plane has to be synchronized to the data plane in time, otherwise, the user data might not be delivered to the same destination.

Troubleshooting Guide

The common IPv6 dynamic address assignment debugging and troubleshooting commands on Cisco routers and switches are listed in the following table.

Command Description
Displays a short summary of IPv6 status and configuration for each interface
Displays IPv6 and NDP usability status information for single interface
Displays IPv6 network prefix information for single interface
Display DHCPv6 configuration pool information
Displays all automatic client bindings from the DHCPv6 server binding table
Display DHCPv6 interface information
Debug IPv6 NDP protocol
Debug DHCPv6 server

The following console NDP protocol debug log shows that the router received an RS message from host FE80::5850:6D61:1FB:EF3A and responded with an RA message to the multicast address FF02::1 of all nodes in this network:


2
3
4
5
6
7
8

ICMP Neighbor Discovery events debugging is on
Router# show logging | include RS
ICMPv6-ND: Received RS on GigabitEthernet0/0/0 from FE80::5850:6D61:1FB:EF3A
Router# show logging | include RA
ICMPv6-ND: Sending solicited RA on GigabitEthernet0/0/0
ICMPv6-ND: Request to send RA for FE80::C801:EFFF:FE5A:8
ICMPv6-ND: Setup RA from FE80::C801:EFFF:FE5A:8 to FF02::1 on GigabitEthernet0/0/0

And the next log shows an example of Stateless DHCPv6 observed after entering the debug ipv6 dhcp debug command. Host FE80::5850:6D61:1FB:EF3A sends an INFORMATION-REQUEST message to the DHCPv6 server, which selects the source address FE80::C801:B9FF:FEF0:8 and sends a response message.


2
3
4
5
6
7
8

IPv6 DHCP debugging is on

IPv6 DHCP: Received INFORMATION-REQUEST from FE80::5850:6D61:1FB:EF3A on FastEthernet0/0
IPv6 DHCP: Option VENDOR-CLASS(16) is not processed
IPv6 DHCP: Using interface pool LAN_POOL
IPv6 DHCP: Source Address from SAS FE80::C801:B9FF:FEF0:8
IPv6 DHCP: Sending REPLY to FE80::5850:6D61:1FB:EF3A on FastEthernet0/0

The following debug log of Stateful DHCPv6 shows the complete process of two message exchanges (SOLICIT/ADVERTISE, REQUEST/REPLY) on lines 1, 15, 16, and 26.


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

IPv6 DHCP: Option UNKNOWN(39) is not processed
IPv6 DHCP: Option VENDOR-CLASS(16) is not processed
IPv6 DHCP: Using interface pool LAN_POOL
IPv6 DHCP: Creating binding for FE80::5850:6D61:1FB:EF3A in pool LAN_POOL
IPv6 DHCP: Binding for IA_NA 0E000C29 not found
IPv6 DHCP: Allocating IA_NA 0E000C29 in binding for FE80::5850:6D61:1FB:EF3A
IPv6 DHCP: Looking up pool 2001:ABCD::/64 entry with username '000100011F3E8772000C29806CCC0E000C29'
IPv6 DHCP: Poolentry for the user not found
IPv6 DHCP: Allocated new address 2001:ABCD::D9F7:61C:D803:DCF1
IPv6 DHCP: Allocating address 2001:ABCD::D9F7:61C:D803:DCF1 in binding for FE80::5850:6D61:1FB:EF3A, IAID 0E000C29
IPv6 DHCP: Updating binding address entry for address 2001:ABCD::D9F7:61C:D803:DCF1
IPv6 DHCP: Setting timer on 2001:ABCD::D9F7:61C:D803:DCF1 for 60 seconds
IPv6 DHCP: Source Address from SAS FE80::C801:B9FF:FEF0:8
IPv6 DHCP: Sending ADVERTISE to FE80::5850:6D61:1FB:EF3A on FastEthernet0/0
IPv6 DHCP: Received REQUEST from FE80::5850:6D61:1FB:EF3A on FastEthernet0/0
IPv6 DHCP: Option UNKNOWN(39) is not processed
IPv6 DHCP: Option VENDOR-CLASS(16) is not processed
IPv6 DHCP: Using interface pool LAN_POOL
IPv6 DHCP: Looking up pool 2001:ABCD::/64 entry with username '000100011F3E8772000C29806CCC0E000C29'
IPv6 DHCP: Poolentry for user found
IPv6 DHCP: Found address 2001:ABCD::D9F7:61C:D803:DCF1 in binding for FE80::5850:6D61:1FB:EF3A, IAID 0E000C29
IPv6 DHCP: Updating binding address entry for address 2001:ABCD::D9F7:61C:D803:DCF1
IPv6 DHCP: Setting timer on 2001:ABCD::D9F7:61C:D803:DCF1 for 172800 seconds
IPv6 DHCP: Source Address from SAS FE80::C801:B9FF:FEF0:8
IPv6 DHCP: Sending REPLY to FE80::5850:6D61:1FB:EF3A on FastEthernet0/0

For complex cases where it is difficult to identify whether the problem is with the host, router, or DHCPv6 server, we recommend using the free open-source network packet analysis software Wireshark to capture packets of the entire process for analysis. While analyzing packets with Wireshark, you can apply the keyword filtering function.

Filter String Only Show
icmpv6.type=133 ICMPv6 RS
icmpv6.nd.ra.flag ICMPv6 RA
dhcpv6 DHCPv6 packets

We can either run Wireshark directly on the host side, or we can use the Switched Port Analyzer (SPAN) provided with the switch. Running on the network side, SPAN can collectively redirect packets from a given port to the monitor port running Wireshark for capturing. Cisco Catalyst 9300 Series switches also directly integrate with Wireshark software to intercept and analyze filtered packets online, making it very easy to use.

Sample packet capture files for three allocation scheme are available here for download and study: slaac.pcap , stateless-dhcpv6.pcap , stateful-dhcpv6.pcap

IPv6 Product Certification Test

Accurate and effective testing of IPv6 products is key to ensuring high interoperability, security, and reliability of IPv6 infrastructure deployments. The IPv6 Ready logo is an IPv6 testing and certification program created by the IPv6 Forum . Its goals are to define IPv6 conformance and interoperability test specifications, provide a self-testing toolset, establish Global IPv6 Test Centers and provide product validation services, and finally, issue IPv6 Ready logo.

In May 2020, IPv6 Ready Logo Program published new version 5.0 test specifications :

  • IPv6 Core Protocols Test Specification (Conformance)
  • IPv6 Core Protocols Interoperability Test Specification (Interoperability)

Along with these two new test specifications, the project team also affirmed two permanent changes:

  • Testing must be done in an IPv6-only environment, without any IPv4 being used for the device to function.
  • The device under test must have IPv6 on and enabled on all IP interfaces by default.

Not surprisingly, the new version 5.0 core protocols test specification has a section dedicated to defining SLAAC test cases to validate this core IPv6 protocol.

IPv6 Core Protocol RFC List

In the list below, the RFCs shown in bold are directly covered by the IPv6 Ready Version 5.0 Core Protocol Test Specification:

  • RFC 4191 Default Router Preferences and More-Specific Routes
  • RFC 4193 Unique Local IPv6 Unicast Addresses
  • RFC 4291 IP Version 6 Addressing Architecture
  • RFC 4443 Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification
  • RFC 4861 Neighbor Discovery for IP version 6 (IPv6)
  • RFC 4862 IPv6 Stateless Address Autoconfiguration
  • RFC 4941 Privacy Extensions for Stateless Address Autoconfiguration in IPv6
  • RFC 5095 Deprecation of Type 0 Routing Headers in IPv6
  • RFC 6724 Default Address Selection for Internet Protocol Version 6 (IPv6)
  • RFC 6980 Security Implications of IPv6 Fragmentation with IPv6 Neighbor Discovery
  • RFC 7217 A Method for Generating Semantically Opaque Interface Identifiers with IPv6 Stateless Address Autoconfiguration (SLAAC)
  • RFC 8064 Recommendation on Stable IPv6 Interface Identifiers
  • RFC 8106 IPv6 Router Advertisement Options for DNS Configuration
  • RFC 8200 Internet Protocol, Version 6 (IPv6) Specification
  • RFC 8201 Path MTU Discovery for IP version 6
  • RFC 8415 Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
  • Gitalk Comments
  • Utterances Comments
  • Disqus Comments

Stack Exchange Network

Stack Exchange network consists of 183 Q&A communities including Stack Overflow , the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

How can I figure out what IPv6 to use if I want to set a static IP for my computer?

I recently installed Windows Server 2012 on my desktop. I changed my connection settings to hardcode my internal IP address as 192.168.0.99 (IPv4). Windows Server 2012 warned me that I should also set my IPv6 address to a static address, but I'm not sure what the equivalent address is in IPv6 format. I've attempted to google this, however after visiting a few websites that "convert IPv4 to IPv6" they each give me different values. I'm not sure which one is the correct one.

How does one go about translating an IPv4 address to and IPv6 address appropriately? Specifically, I'd like to know what 192.168.0.99 is in IPv6 format. Thanks!

  • windows-server-2012

BatchyX's user avatar

  • Tell your OS to use unique local addresses. These are the real replacement for private addresses. They cannot be fixed, because they have to be unique even when LAN are merged, but under normal condition, they should stay the same if there is no conflict. –  BatchyX Commented Jan 5, 2013 at 13:28
  • 2 the 192.168.*.* * (reusable/unrouted addresses) addresses are a work around for ipv4 to be able to continue to work while running out of address space. ipv6 is the solution. –  ctrl-alt-delor Commented Jan 5, 2013 at 14:25

5 Answers 5

IPv6 has an equivalent of IPv4 "private range" addresses – called Unique Local Address ( RFC 4193 ) – it uses the fd00::/8 range. Pick a random /48 or /64 prefix within that range (see Wikipedia article for examples) and use it for your network.

A direct translation of your internal IPv4 addresses wouldn't make much sense, however. (If you did that, you'd also have the same limits as with IPv4, don't you think?)

However, with IPv6 it is not necessary to use local addresses. There are several ways you can get a global address range for yourself, even if your ISP doesn't offer native IPv6 yet:

You can sign up at Tunnelbroker or similar services; most of them will give you a globally-reachable /64 block – that's one subnet – and many will even provide /48 or /56 blocks upon request (64k and 256 subnets respectively). The same tunnel also lets you access the global IPv6 internet.

Or you can use the 6to4 address range based on your global IP address. For example, if your ISP assigns you 192.0.123.234 (C0 00 7B EA in hexadecimal), then you're allowed to use 2002:c000:7bea::/48 . Such addresses are reachable from the Internet as well.

Community's user avatar

  • Good advise. If you want to run IPv6 on your LAN this is the way to do it. –  Sander Steffann Commented Jan 6, 2013 at 14:23

To expand grawity's answer (the equivalent to private ranges are Unique Local Addresses, RFC 4913), here is how to pick the actual address to use.

With IPv4 private ranges like 192.168.X. , you randomly pick the value for X, but only get a few values to choose from (you picked 192.168.0. ), and then pick a random number for the machine (you picked 99). You can have multiple networks, e.g. 192.168.1. , but can't really combine two existing sets of networks together as they will likely clash. Using the private range 10.X.Y. gives you more options, but is still limited.

With IPv6, start with 'fd', followed by ten hex digits for your unique allocation (x), and four hex digits for your network (y). Each machine then have a number up to 16 hex digits (z).

This will give you a value like 'fdxx:xxxx:xxxx:yyyy:zzzz:zzzz:zzzz:zzzz', although if you put a lot of zeros in it will be a lot shorter to write out.

e.g. Pick '12:3456:789a' as your first random ten (x), and then use network '0001' inside that (y), then for your machine pick '0000:0000:0000:0063' (because hex 63 is the same as decimal 99).

This would give your machine the IPv6 address 'fd12:3456:789a:0001:0000:0000:0000:0063'. (For your specific network use different, random, values for the 12:3456:789a part.)

As you can collapse zeros in shorthand notation, this becomes just 'fd12:3456:789a:1::63'.

Your entire allocation would be 'fd12:3456:789a::/48', and subnet you are using would be 'fd12:3456:789a:1::/64'.

Note that the above examples happen to have the same number (99 decimal, 0x0063 hex) for the machine in both the IPv4 and IPv6 ranges, but they don't have to match (it just might be easier).

Sly Gryphon's user avatar

Firstly, there is no use in using a IPv6 address on a home network but still if you want to you then you should set it to automatic (just for IPv6), also your router must support DHCPv6 or Windows server will convert IPv4 to IPv6 automatically. As you want to try out into for static IPv6 Address then...

There are multiple types of IPv6 addresses that can be used, frankly speaking, even I don't know about them all. Below is a conversion table for the IPv4 specified. This is one of the best tool I can trust.

Conversion Table

As far as I can say, you should use 2002:C0A8:63:0:0:0:0:0 as your static IPv6 Address. (I was using another format earlier but someone commented that the format should never be used on wire. I have myself switched to this format now.)

There is a similar ServerFault Question , I think this would help you a bit.

Akshat Mittal's user avatar

  • 2 Addresses link 0:0:0:0:0:ffff:c0a8:0063 are so that software can use the IPv6 APIs even when communicating over IPv4. They must never be used on the wire (and therefor also not as an interface address)! –  Sander Steffann Commented Jan 6, 2013 at 14:22
  • Okay, I have changed the IPv6 to 2002:C0A8:63:0:0:0:0:0 , its the 6-to-4 format –  Akshat Mittal Commented Jan 7, 2013 at 10:47

Yes if you are using NAT you don't have to move to IPv6 but 1) NAT is problematic, especially for Voice over IP services 2) NAT does not allow for incoming connections without setuo for each incoming connection and even then you are limited 3) NAT adds complication and increases routing time/effort

To answer the actual question asked you can encode an IPv4 address into an IPv6 address in the form ::FFFF:

So the IPv4 address of 119.225.152.21 can be represented in IPv6 as 0:0:0:0:0:FFFF:119.225.152.21 which is abreviated to ::FFFF:192.225.152.21

each section of the IPv4 address will be sent in Hex of course so a network trace will show ::FFFF:C0E1:9815 as 192=C0 in hex, 225=E1,152=98 in hex etc

This will be converted to the IPv4 address when leaving an IPv6 network and entering an IPv4 network

See this page has some info on this

http://computernetworkingnotes.com/ipv6-features-concepts-and-configurations/special-ipv6-to-devices.html

rms-mit's user avatar

There is no real need and probably no point to setting an IPv6 address on your internal network. Just stick with the IPv4 address and ignore the warning. The warning would be relevant for use on a public server so unless you have good reason for running IPv6 on your internal network I wouldn't worry about it.

On your other point, there is no IPv6 'translation' of an IPv4 address. They are separate systems.

In order to assign an IPv6 on your desktop, you would need to configure your internal router to manage an IPv6 network.

If you did want to run a home IPv6 network, then there are some helpful comments in the following questions:

  • Is there any benefit to using IPv6 on my home network?
  • How will home networks work in the IPv6 world?

harunahi's user avatar

  • 9 I'd still like to, for correctness, even if it is optional. –  myermian Commented Jan 5, 2013 at 13:19
  • You would need to also configure your router for IPv6 if you wanted to run an IPv6 network internally. There are some useful comments here: superuser.com/questions/43853/… –  harunahi Commented Jan 5, 2013 at 13:29
  • 1 IPv6 is used in a lot more places than you think. Every interface has a link-local IPv6 address by default these days. Setting a global IPv6 address is usually only useful when your ISP provides it to you, but you can run a local IPv6 network using ULA (Unique Local Addresses). –  Sander Steffann Commented Jan 6, 2013 at 14:20
  • 7 This was a mediocre answer in 2013; today it's dangerously out of date. –  Michael Hampton Commented Mar 11, 2017 at 23:21

You must log in to answer this question.

Not the answer you're looking for browse other questions tagged networking ipv6 static-ip ipv4 windows-server-2012 ..

  • The Overflow Blog
  • Ryan Dahl explains why Deno had to evolve with version 2.0
  • From PHP to JavaScript to Kubernetes: how one backend engineer evolved over time
  • Featured on Meta
  • We've made changes to our Terms of Service & Privacy Policy - July 2024
  • Bringing clarity to status tag usage on meta sites

Hot Network Questions

  • How would I make an agent noun out of the word "autodice -es f" or "autodicia"
  • Can I use rear (thru) axle with crack for a few rides, before getting a new one?
  • Why do combinatorists care about Kazhdan–Lusztig polynomials?
  • Can you successfully substitute pickled onions for baby onions in Coq Au Vin?
  • how replicate this effect with geometry nodes
  • One IO to control two LEDs. When one is lit, the other is not
  • Jacobi two square's theorem last step to conclusion
  • Multi Wire Branch Circuit for Kitchen Small Appliances Circuit, AFCI and GFCI required
  • Is my electrical rough-in code compliant?
  • Is there anything that stops the majority shareholder(s) from destroying company value?
  • Meaning of capacitor "× 2" symbol on data sheet schematic
  • GPLv3 obligations
  • Visualizing histogram of data on unit circle?
  • Is the Shroud of Turin about 2000 years old?
  • what's the purpose of dependent claims?
  • Explaining Arithmetic Progression
  • Thai word not breaking properly between lines, in LuaLaTeX
  • "Knocking it out of the park" sports metaphor American English vs British English?
  • Are there any virtues in virtue ethics that cannot be plausibly grounded in more fundamental utilitarian principles?
  • Are Experimental Elixirs Magic Items?
  • How to raise a vector to powers contained in a vector, change the list into a product, and do this for all the lines of a matrix, efficiently?
  • Use greek letters not as part of a math equation
  • Can objective morality be derived as a corollary from the assumption of God's existence?
  • The hat-check problem

ipv6 automatic address assignment

Your IP Address is: 185.80.149.115

Tip: try using "quotes around your search phrase"

  • RIPE Document Store
  • Documentation
  • IPv6 Info Centre

IPv6 Address Allocation and Assignment Policy

  • Policy Proposal 2019-06

This document defines registry policies for the assignment and allocation of globally unique IPv6 addresses to Internet Service Providers (ISPs) and other organisations. It was developed through joint discussions among the APNIC, ARIN and RIPE communities.

1. Introduction

1.1. overview.

This document describes policies for the allocation and assignment of globally unique Internet Protocol version 6 (IPv6) address space.

[ RFC 4291 ] designates 2000::/3 to be global unicast address space that the Internet Assigned Numbers Authority (IANA) may allocate to the RIRs. In accordance with [ RFC 4291 ], IANA allocated initial ranges of global unicast IPv6 address space from the 2000::/3 address block to the RIRs. This document concerns the initial and subsequent allocations of the 2000::/3 unicast address space, for which RIRs formulate allocation and assignment policies. All bits to the left of /64 are in scope.

2. Definitions

[Note: some of these definitions will be replaced by definitions from other RIR documents in order to be more consistent.]

The following terms and their definitions are of particular importance to the understanding of the goals, environment and policies described in this document.

Responsibility for management of IPv6 address spaces is distributed globally in accordance with the hierarchical structure shown below.

2.1. Internet Registry (IR)

An Internet Registry is an organisation that is responsible for distributing IP address space to its members or customers and for registering those distributions. IRs are classified according to their primary function and territorial scope within the hierarchical structure depicted in the figure above.

2.2. Regional Internet Registry (RIR)

Regional Internet Registries are established and authorised by respective regional communities and recognised by the IANA to serve and represent large geographical regions. The primary role of RIRs is to manage and distribute public Internet address space within their respective regions.

2.3. National Internet Registry (NIR)

A National Internet Registry primarily allocates address space to its members or constituents, which are generally LIRs organised at a national level. NIRs exist mostly in the Asia Pacific region.

2.4. Local Internet Registry (LIR)

A Local Internet Registry is an IR that primarily assigns address space to the users of the network services that it provides. LIRs are generally ISPs whose customers are primarily End Users and possibly other ISPs.

2.5. Allocate

To “allocate” means to distribute address space to IRs for the purpose of subsequent distribution by them.

2.6. Assign

To “assign” means to delegate address space to an ISP or End User for specific use within the Internet infrastructure they operate. Assignments must only be made for specific purposes documented by specific organisations and are not to be sub-assigned to other parties.

Providing another entity with separate addresses (not prefixes) from a subnet used on a link operated by the assignment holder is not considered a sub-assignment. This includes for example letting visitors connect to the assignment holder's network, connecting a server or appliance to an assignment holder's network and setting up point-to-point links with 3rd parties.

2.7. Utilisation

The actual usage of addresses within each assignment may be low when compared to IPv4 assignments. In IPv6, "utilisation" is only measured in terms of the bits to the left of the efficiency measurement unit (/56). In other words, "utilisation" effectively refers to the assignment of network prefixes to End Sites and not the number of addresses assigned within individual End Site assignments.

Throughout this document, the term "utilisation" refers to the assignment of network prefixes to End Sites and not the number of addresses assigned within individual subnets within those End Sites.

2.8. HD-Ratio

The HD-Ratio is a way of measuring the efficiency of address assignment [ RFC 3194 ]. It is an adaptation of the H-Ratio originally defined in [ RFC 1715 ] and is expressed as follows:

where (in the case of this document) the objects are IPv6 site addresses assigned from an IPv6 prefix of a given size.

2.9. End Site

An End Site is defined as the location of an End User (subscriber) who has a business or legal relationship (same or associated entities) with a service provider that involves:

  • that service provider assigning address space to the End User location
  • that service provider providing transit service for the End User location to other sites
  • that service provider carrying the End User's location traffic
  • that service provider advertising an aggregate prefix route that contains the End User's location assignment

3. Goals of IPv6 address space management

IPv6 address space is a public resource that must be managed in a prudent manner with regards to the long-term interests of the Internet. Responsible address space management involves balancing a set of sometimes competing goals. The following are the goals relevant to IPv6 address policy.

3.2. Uniqueness

Every assignment and/or allocation of address space must guarantee uniqueness worldwide. This is an absolute requirement for ensuring that every public host on the Internet can be uniquely identified.

3.3. Registration

Internet address space must be registered in a registry database accessible to appropriate members of the Internet community. This is necessary to ensure the uniqueness of each Internet address and to provide reference information for Internet troubleshooting at all levels, ranging from all RIRs and IRs to End Users.

The goal of registration should be applied within the context of reasonable privacy considerations and applicable laws.

3.4. Aggregation

Wherever possible, address space should be distributed in a hierarchical manner, according to the topology of network infrastructure. This is necessary to permit the aggregation of routing information by ISPs and to limit the expansion of Internet routing tables.

This goal is particularly important in IPv6 addressing, where the size of the total address pool creates significant implications for both internal and external routing.

IPv6 address policies should seek to avoid fragmentation of address ranges.

Further, RIRs should apply practices that maximise the potential for subsequent allocations to be made contiguous with past allocations currently held. However, there can be no guarantee of contiguous allocation.

3.5. Conservation

Although IPv6 provides an extremely large pool of address space, address policies should avoid unnecessarily wasteful practices. Requests for address space should be supported by appropriate documentation and stockpiling of unused addresses should be avoided.

3.6. Fairness

All policies and practices relating to the use of public address space should apply fairly and equitably to all existing and potential members of the Internet community, regardless of their location, nationality, size, or any other factor.

3.7. Minimised overhead

It is desirable to minimise the overhead associated with obtaining address space. Overhead includes the need to go back to RIRs for additional space too frequently, the overhead associated with managing address space that grows through a number of small successive incremental expansions rather than through fewer, but larger, expansions.

3.8. Conflict of goals

The goals described above will often conflict with each other, or with the needs of individual IRs or End Users. All IRs evaluating requests for allocations and assignments must make judgments, seeking to balance the needs of the applicant with the needs of the Internet community as a whole.

In IPv6 address policy, the goal of aggregation is considered to be the most important.

4. IPv6 Policy Principles

To address the goals described in the previous section, the policies in this document discuss and follow the basic principles described below.

4.1. Address space not to be considered property

It is contrary to the goals of this document and is not in the interests of the Internet community as a whole for address space to be considered freehold property.

The policies in this document are based upon the understanding that globally unique IPv6 unicast address space is licensed for use rather than owned. Specifically, IP addresses will be allocated and assigned on a license basis, with licenses subject to renewal on a periodic basis. The granting of a license is subject to specific conditions applied at the start or renewal of the license.

RIRs will generally renew licenses automatically, provided requesting organisations are making a “good faith” effort at meeting the criteria under which they qualified for or were granted an allocation or assignment. However, in those cases where a requesting organisation is not using the address space as intended, or is showing bad faith in following through on the associated obligation, RIRs reserve the right to not renew the license. Note that when a license is renewed, the new license will be evaluated under and governed by the applicable IPv6 address policies in place at the time of renewal, which may differ from the policy in place at the time of the original allocation or assignment.

4.2. Routability not guaranteed

There is no guarantee that any address allocation or assignment will be globally routable.

However, RIRs must apply procedures that reduce the possibility of fragmented address space which may lead to a loss of routability.

4.3. Minimum allocation

The minimum allocation size for IPv6 address space is /32.

4.4. Consideration of IPv4 infrastructure

Where an existing IPv4 service provider requests IPv6 space for eventual transition of existing services to IPv6, the number of present IPv4 customers may be used to justify a larger request than would be justified if based solely on the IPv6 infrastructure.

5. Policies for Allocations and Assignments

5.1. initial allocation, 5.1.1. initial allocation criteria for lirs.

To qualify for an initial allocation of IPv6 address space, an LIR must have a plan for making sub-allocations to other organisations and/or End Site assignments within two years.

5.1.2. Initial allocation size

LIRs that meet the initial allocation criteria are eligible to receive an initial allocation of /32 up to /29 without needing to supply any additional information.

LIRs may qualify for an initial allocation greater than /29 by submitting documentation that reasonably justifies the request. If so, the allocation size will be based on the number of users, the extent of the LIR infrastructure, the hierarchical and geographical structuring of the LIR, the segmentation of infrastructure for security and the planned longevity of the allocation.

5.2. Subsequent allocation

LIRs that have received an IPv6 allocation may receive a subsequent allocation in accordance with the following policies.

5.2.1. Subsequent allocation criteria

Subsequent allocation will be provided when an LIR:

a) Satisfies the evaluation threshold of past address utilisation in terms of the number of sites in units of /56. To this end, the HD-Ratio [ RFC 3194 ] is used to determine the utilisation thresholds. or

b) Can justify new needs (which can't be satisfied within the previous allocation), according to the initial allocation size criteria as described in section 5.1.2.

5.2.2. Applied HD-Ratio

The HD-Ratio value of 0.94 is adopted as indicating an acceptable address utilisation for justifying the allocation of additional address space. Appendix A provides a table showing the number of assignments that are necessary to achieve an acceptable utilisation value for a given address block size.

5.2.3. Subsequent allocation size

When an LIR meets the subsequent allocation criteria, it is immediately eligible to obtain an additional allocation that results in a doubling of the address space allocated to it. Where possible, the allocation will be made from an adjacent address block, meaning that its existing allocation is extended by one bit to the left.

If an LIR needs more address space, it must provide documentation justifying its new requirements, as described in section 5.1.2. The allocation made will be based on the relevant documentation.

5.3. LIR-to-ISP allocation

There is no specific policy for an LIR to allocate address space to subordinate ISPs. Each LIR organisation may develop its own policy for subordinate ISPs to encourage optimum utilisation of the total address block allocated to the LIR. However, all /48 assignments to End Sites are required to be registered either by the LIR or its subordinate ISPs in such a way that the RIR/NIR can properly evaluate the HD-Ratio when a subsequent allocation becomes necessary.

5.4. Assignment

LIRs must make IPv6 assignments in accordance with the following provisions.

5.4.1. Assignment address space size

End Users are assigned an End Site assignment from their LIR or ISP. The size of the assignment is a local decision for the LIR or ISP to make, using a value of "n" x /64. Section 4.2 of ripe-690 provides guidelines about this.

5.4.2. Assignments shorter than a /48 to a single End Site

Assignments larger than a /48 (shorter prefix) or additional assignments exceeding a total of a /48 must be based on address usage or because different routing requirements exist for additional assignments.

In case of an audit or when making a request for a subsequent allocation, the LIR must be able to present documentation justifying the need for assignments shorter than a /48 to a single End-Site.

5.5. Registration

When an LIR holding an IPv6 address allocation makes IPv6 address assignments, it must register these assignments in the appropriate RIR database.

These registrations can either be made as individual assignments or by inserting an object with a status value of 'AGGREGATED-BY-LIR' where the assignment-size attribute contains the size of the individual assignments made to End Users. When more than a /48 is assigned to an organisation, it must be registered in the database as a separate object with status 'ASSIGNED'.

In case of an audit or when making a request for a subsequent allocation, the LIR must be able to present statistics showing the number of individual assignments made in all objects with a status of 'AGGREGATED-BY-LIR' in such a way the RIR is able to calculate and verify the actual HD-ratio.

5.6. Reverse lookup

When an RIR/NIR delegates IPv6 address space to an LIR, it also delegates the responsibility to manage the reverse lookup zone that corresponds to the allocated IPv6 address space. Each LIR should properly manage its reverse lookup zone. When making an address assignment, the LIR must delegate to an assignee organisation, upon request, the responsibility to manage the reverse lookup zone that corresponds to the assigned address.

5.7. Existing IPv6 address space holders

LIRs that hold one or more IPv6 allocations are able to request extension of each of these allocations up to a /29 without providing further documentation.

The RIPE NCC should allocate the new address space contiguously with the LIRs' existing allocations and avoid allocating non-contiguous space under this policy section.

6. Anycasting TLD and Tier 0/1 ENUM Nameservers

The organisations applicable under this policy are TLD managers, as recorded in the IANA's Root Zone Database and ENUM administrators, as assigned by the ITU. The organisation may receive up to four /48 prefixes per TLD and four /48 prefixes per ENUM. These prefixes must be used for the sole purpose of anycasting authoritative DNS servers for the stated TLD/ENUM, as described in BCP126/ RFC 4786 .

Assignments for authoritative TLD or ENUM Tier 0/1 DNS lookup services are subject to the policies described in the RIPE Document entitled " Contractual Requirements for Provider Independent Resource Holders in the RIPE NCC Service Region ".

Anycasting assignments are registered with a status of 'ASSIGNED ANYCAST' in the RIPE Database and must be returned to the RIPE NCC if not in use for infrastructure providing authoritative TLD or ENUM Tier 0/1 DNS lookup services any longer.

7. IPv6 Provider Independent (PI) Assignments

To qualify for IPv6 PI address space, an organisation must meet the requirements of the policies described in the RIPE NCC document entitled “ Contractual Requirements for Provider Independent Resources Holders in the RIPE NCC Service Region ”.

The RIPE NCC will assign the prefix directly to the End User organisations upon a request properly submitted to the RIPE NCC, either directly or through a sponsoring LIR. 

Assignments will be made from a separate 'designated block' to facilitate filtering practices.

The PI assignment cannot be further sub-assigned to other organisations.

7.1. IPv6 Provider Independent (PI) Assignment Size

The minimum size of the assignment is a /48.

The considerations of "5.4.2. Assignments shorter than a /48 to a single End-Site" must be followed if needed.

7.2. IPv6 Provider Independent (PI) Assignments for LIRs

LIRs can qualify for an IPv6 PI assignment for parts of their own infrastructure that are not used for customer end sites. Where an LIR has an IPv6 allocation, the LIR must demonstrate the unique routing requirements for the PI assignment.

The LIR should return the IPv6 PI assignment within a period of six months if the original criteria on which the assignment was based are no longer valid.

8. Transfer of IPv6 resources

The transfer of Internet number resources is governed by the RIPE Document, " RIPE Resource Transfer Policies ".

9. References

[RFC 1715] "The H Ratio for Address Assignment Efficiency", C. Huitema. November 1994,  ftp://ftp.ripe.net/rfc/rfc1715.txt

[RFC 2026] "The Internet Standards Process -- Revision 3 IETF Experimental RFC  ftp://ftp.ripe.net/rfc/rfc2026.txt  see Sec. 4.2.1

[RFC 2462] "IPv6 Stateless Address Autoconfiguration", S. Thomson, T. Narten, 1998,  ftp://ftp.ripe.net/rfc/rfc2462.txt

[RFC 4291] "IP Version 6 Addressing Architecture", R. Hinden, S. Deering. February 2006,  ftp://ftp.ripe.net/rfc/rfc4291.txt

[RFC 2928] "Initial IPv6 Sub-TLA ID Assignments", R. Hinden, S. Deering, R. Fink, T. Hain. September 2000  ftp://ftp.ripe.net/rfc/rfc2928.txt

[RFC 3194] "The H-Density Ratio for Address Assignment Efficiency An Update on the H ratio", A. Durand, C. Huitema. November 2001,  ftp://ftp.ripe.net/rfc/rfc3194.txt

[RFC 4786] "Operation of Anycast Services", J. Abley, K. Lindqvist. December 2006,  ftp://ftp.ripe.net/rfc/rfc4786.txt

10. Appendix A: HD-Ratio

The utilisation threshold T, expressed as a number of individual /56 prefixes to be allocated from IPv6 prefix P, can be calculated as:

Thus, the utilisation threshold for an LIR requesting subsequent allocation of IPv6 address block is specified as a function of the prefix size and target HD ratio. This utilisation refers to the use of /56s as an efficiency measurement unit, and does not refer to the utilisation of addresses within those End Sites. It is an address allocation utilisation ratio and not an address assignment utilisation ratio.

In accordance with the recommendations of [ RFC 3194 ], this document adopts an HD-Ratio of 0.94 as the utilisation threshold for IPv6 address space allocations.

The following table provides equivalent absolute and percentage address utilisation figures for IPv6 prefixes, corresponding to an HD-Ratio of 0.94.

10

70368744177664

10388121308479

14.76

11

35184372088832

5414630391777

15.39

12

17592186044416

2822283395519

16.04

13

8796093022208

1471066903609

16.72

14

4398046511104

766768439460

17.43

15

2199023255552

399664922315

18.17

16

1099511627776

208318498661

18.95

17

549755813888

108582451102

19.75

18

274877906944

56596743751

20.59

19

137438953472

29500083768

21.46

20

68719476736

15376413635

22.38

21

34359738368

8014692369

23.33

22

17179869184

4177521189

24.32

23

8589934592

2177461403

25.35

24

4294967296

1134964479

26.43

25

2147483648

591580804

27.55

26

1073741824

308351367

28.72

27

536870912

160722871

29.94

28

268435456

83774045

31.21

29

134217728

43665787

32.53

30

67108864

22760044

33.92

31

33554432

11863283

35.36

32

16777216

6183533

36.86

11. Appendix B: Background information

11.1. background.

The impetus for revising the 1999 provisional IPv6 policy started with the APNIC meeting held in Taiwan in August 2001. Follow-on discussions were held at the October 2001 RIPE and ARIN meetings. During these meetings, the participants recognised an urgent need for more detailed, complete policies. One result of the meetings was the establishment of a single mailing list to discuss a revised policy together with a desire to develop a general policy that all RIRs could use. This document does not provide details of individual discussions that lead to policies described in this document; detailed information can be found in the individual meeting minutes at the www.apnic.net, www.arin.net, and www.ripe.net web sites.

In September 2002 at the RIPE 43 Meeting in Rhodes, Greece, the RIPE community approved the policy allowing Internet experiments to receive temporary assignments. As a result, Section 6 was added to this document in January 2003.

11.2. Why a joint policy?

IPv6 addresses are a public resource that must be managed with consideration to the long-term interests of the Internet community. Although regional registries adopt allocation policies according to their own internal processes, address policies should largely be uniform across registries. Having significantly varying policies in different regions is undesirable because it can lead to situations where "registry shopping" can occur as requesting organisations request addresses from the registry that has the most favorable policy for their particular desires. This can lead to the policies in one region undermining the efforts of registries in other regions with regards to prudent stewardship of the address space. In cases where regional variations from the policy are deemed necessary, the preferred approach is to raise the issue in the other regional registries in order to develop a consensus approach that all registries can support.

11.3. The size of IPv6's address space

Compared to IPv4, IPv6 has a seemingly endless amount of address space. While superficially true, short-sighted and wasteful allocation policies could also result in the adoption of practices that lead to premature exhaustion of the address space.

It should be noted that the 128-bit address space is divided into three logical parts, with the usage of each component managed differently. The rightmost 64 bits, the Interface Identifier [RFC 4291], will often be a globally unique IEEE identifier (e.g., mac address). Although an "inefficient" way to use the Interface Identifier field from the perspective of maximizing the number of addressable nodes, the numbering scheme was explicitly chosen to simplify Stateless Address Autoconfiguration [ RFC 2462 ].

The middle bits of an address indicate the subnet ID. This field may often be inefficiently utilised, but the operational benefits of a consistent width subnet field were deemed to be outweigh the drawbacks. This is a variable length field, determined by each LIR's local assignment policy.

11.4. Acknowledgment

The initial version of this document was produced by the JPNIC IPv6 policy drafting team consisting of Akihiro Inomata, Akinori Maemura, Kosuke Ito, Kuniaki Kondo, Takashi Arano, Tomohiro Fujisaki, and Toshiyuki Yamasaki. Special thanks goes out to this team, who worked over a holiday in order to produce an initial document quickly.

An editing team was then organised by representatives from each of the three RIRs (Takashi Arano, Chair of APNIC's Policy SIG, Thomas Narten, Chair of ARIN's IPv6 WG, and David Kessens, Chair of the RIPE IPv6 Working Group).

The editing team would like to acknowledge the contributions to this document of Takashi Arano, John Crain, Steve Deering, Gert Doering, Kosuke Ito, Richard Jimmerson, David Kessens, Mirjam Kuehne, Anne Lord, Jun Murai, Paul Mylotte, Thomas Narten, Ray Plzak, Dave Pratt, Stuart Prevost, Barbara Roseman, Gerard Ross, Paul Wilson, Cathy Wittbrodt and Wilfried Woeber.

The final editing of the initial version of this document was done by Thomas Narten.

  • Stack Overflow for Teams Where developers & technologists share private knowledge with coworkers
  • Advertising & Talent Reach devs & technologists worldwide about your product, service or employer brand
  • OverflowAI GenAI features for Teams
  • OverflowAPI Train & fine-tune LLMs
  • Labs The future of collective knowledge sharing
  • About the company Visit the blog

Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Get early access and see previews of new features.

IPv6 Address Assignments

I have just started working with IPv6, so I've done a lot of reading in the last couple of days. Unfortunately, some of my questions have not been answered in my research.

My goal is to keep track of what addresses are assigned, and to what interface they are assigned. From what I've read, there are a few ways that an interface can get an IPv6 address, which I've listed below in sub sections. I've highlighted what I've discovered so far, and posed some questions in these sections. If anyone can make any corrections to what I've learned, or have answers to the questions, please do so. If anyone knows of a place I can find more information, I don't mind researching it more myself.

Edit: I've discovered that Prefix Delegation does not actually result in address assignment. It is used by DHCP servers to get the prefixes to use from another DHCP server.

The methods for obtaining an IPv6 address are:

  • StateLess Address Auto-Config (SLAAC)

Stateful DHCPv6

SLAAC is used in small networks to generate an IPv6 address for an interface. It requires (almost) no configuration and basically works as follows:

  • When the interface comes online, the client will generate a link-local IPv6 address using its interface ID address and the link-local prefix ( FE80::/10 ).
  • To verify this address is unique, a Neighbour Solicitation ( NS ) message is sent to the address. If there is a reply, then the address is in use and cannot be used. Auto-config is aborted and configuration should proceed manually. Question 1a: Is there really no fall back here?

Assuming no reply is received by the end of the timeout period, the address is assumed to be unique and it is assigned as the link-local address to the interface.

Now the node has connectivity to all other nodes on this link

The node either waits to receive a Router Advertisement ( RA ), or sends a Router Solicitation ( RS ) message to the multicast group for all routers. When an RS is received by a router, it will respond with an RA . The RA will contain a prefix.

  • The node will generate a global unicast address with the prefix and its interface ID.
  • Similar to when the link-local address was created, the node will send a message to the address to determine if it is unique. Question 2: Is this also an NS message? If there is a reply, then the address is already in use, address assignment must proceed manually. Question 1b: Again, is there any automated way to recover?
  • Assuming there was no reply within the timeout, then the address is then assigned as the global IPv6 address to the interface.

Question 3: It is possible to have more than one address for the interface. In fact, at the end of the above process, a single interface will have 2 addresses - a link-local one and a global unicast one. Is it possible to get additional addresses for this interface using SLAAC? Or must another method (e.g. DHCPv6) be used?

A node may obtain a link-local address using steps 1-3 from above. I believe this is optional and that it can simply use ::/128 (unspecified) as its source address in DHCP requests until it is assigned an address.

There are two methods of obtaining an address - normal and rapid-commit. Normal is a 4 message exchange ( Solicit , Advertise , Request , Reply ), and Rapid is a 2 message exchange ( Solicit , Reply ). Rapid-commit is done when the client requests it with a Rapid-Commit option in the Solicit message. It is essentially the same as Normal, and since it doesn't make a difference for my usage, I am going to ignore it for now.

Also, it is possible that messages are proxied through relays. Messages sent to a server from a relay are RELAY_FORW messages, and messages sent from the server to the relay are RELAY_REPL messages. The actual dialog between the client and server is encapsulated in its entirety within an OPTION_RELAY_MSG option. For the following, I am dealing only with non-relay messages. If a message was relayed, then it is easy to obtian the original message and the following still holds.

Address assignment takes place as follows:

  • The client sends a Solicit message to the "All DHCP Servers and Relays" multicast address. The purpose of this message it to discover the identity of a DHCP server on the local link.
  • A DHCP server responds with an Advertise message to the local multicast address.
  • The client sends a Request message directly to the DHCP server with options indicating that it would like to have an IP address. Question 4: In the PCAP files I've seen, it looks like this message is still sent to the multicast address ff02::1:2 . Any reason that this is not sent directly to the DHCP server from which the Advertise was received?
  • The DHCP server responds with a Reply containing the IP address.
  • The client should perform duplicate address detection similar to step 6 in the SLAAC method.
  • The node assigns this address to the interface and can begin using it.

This is the general method by which addresses are assigned, but more specifically, there are 3 ways that this can be done:

  • Non-temporary address assignment ( IA_NA )
  • Temporary address assignment ( IA_TA )
  • Prefix Delegation ( PD )

All three methods are accomplished by including an option in the Request which is then populated by the server and returned in the Reply . For the first two, a complete IPv6 address is returned which can then be assigned as an IP address for the interface. For the third, a prefix is returned similar to the RA in the SLAAC method. This prefix is then used with the interface identifier to create a complete global IPv6 address.

Question 5: In my pcap captures, I am seeing that the Solicit and Advertise often contain these options as well. This seems redundant in the non-rapid case since the Request and subsequent Reply must also contain the option. What is the purpose for including this option in the Solicit ? And what is the purpose of the DHCP server creating the IP address (or prefix) in the Advertise before being Request ed to do so?

Question 6: The RFCs indicate that multiple instances of the IA_NA (or IA_TA ) option can be included. I assume this means that the interface will then have multiple addresses. Does the client simply include multiple instances of the option in the Request to get multiple addresses? What happens if a DHCP server can supply some, but not all of the addresses? Does the entire Reply indicate a failure? Or are some addresses given?

Releasing Addresses

For DHCPv6, an address in use can be released with a Release message. An address assigned by the server in a Reply can be declined by the client with a Decline message instead of being used.

If a client fails to send the Release or Decline , the server will continue to hold the address for the client until it expires.

Question 7: If a client can't send the Release (or Decline ) and reboots, it will initiate a new DHCP request. Will the DHCP server give back the old address? Or will it assume this is a request for an additional IP address and assign a new one?

I am not sure how addresses created by SLAAC or DHCP PD are released, if ever. Perhaps the release of these addresses is only done internally and no external device need know of the event.

As I stated at the beginning, my goal is to keep track of all the address assignments that are currently valid. My plan was to do the following:

  • Create a map indexed by address which stores the client to which it is assigned (DUID).
  • Extract the Client-DUID option
  • For each IA , set map[address]=Client-DUID
  • Store the expiry time of the address
  • For each IA , set remove map[address]
  • When an address expires, it will be removed from the map

Question 8: How do I detect SLAAC generated addresses or DHCP PD addresses? Is there some field in the messages I can use to regenerate the complete IP address? I will already have the prefix, but the interface ID is unknown.

Is this sufficient to maintain a list of IP addresses assigned to clients?

Cœur's user avatar

  • That is a long question :). –  thuovila Commented Aug 5, 2013 at 7:48
  • Yes, I've already got some of the answers and will update it. –  Trenin Commented Aug 6, 2013 at 13:19
  • It's a long post and I will finish the article later, it's a question but I learned a lot from the post. Thanks. I will study and try to answer some questions later. –  dspjm Commented Aug 18, 2013 at 8:54
  • Some implementation details of DAD present here: criticalindirection.com/2015/06/30/ipv6_dad_floating_ips –  user31986 Commented Jul 17, 2015 at 21:24
  • You may get better answers to this question in networkengineering.stackexchange.com –  StockB Commented May 4, 2016 at 14:29

2 Answers 2

OK - so I've done some more research and I have most of the answers now.

First of all, a correction. Addresses are not obtained via PD with DHCP. That is how DHCP servers obtain a network prefix to use for the DHCP clients they host. There is another DHCP server which deals with handing out these prefixes. Thus, PD can be ignored as a method for obtaining IP addresses.

Question 1a/b: Is there really no fall back here?

Answer: There is no automated fallback mechanism. One can be implemented, but it would be custom.

Question 2: Is this also an NS message?

Answer: Yes

Answer: Multiple addresses can be generated with SLAAC. A client can use the Router Advertisements from multiple routers, and each router may advertise multiple prefixes. Each prefix can be used by the host to create a global unicast address.

Question 8 (modified): How do I detect SLAAC generated addresses? Is there some field in the messages I can use to regenerate the complete IP address? I will already have the prefix, but the interface ID is unknown.

Answer: The only way to detect them is to listen for NS messages. Since these messages are optional, there is no guaranteed way to detect SLAAC generated addresses.

I still don't have answers for questions 4-7, but I am not too concerned with them at the moment.

There is a third method to get an IPv6 address, manual configuration.

bortzmeyer's user avatar

  • Yes - I referred to that in my post as the backup method when auto configuration fails. I am not concerned with that case since my goal is to keep track of the IP address assignments. If they are made statically, then the assignment can also be recorded statically. –  Trenin Commented Aug 6, 2013 at 18:09

Your Answer

Reminder: Answers generated by artificial intelligence tools are not allowed on Stack Overflow. Learn more

Sign up or log in

Post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy .

Not the answer you're looking for? Browse other questions tagged ipv6 dhcp or ask your own question .

  • The Overflow Blog
  • Ryan Dahl explains why Deno had to evolve with version 2.0
  • From PHP to JavaScript to Kubernetes: how one backend engineer evolved over time
  • Featured on Meta
  • We've made changes to our Terms of Service & Privacy Policy - July 2024
  • Bringing clarity to status tag usage on meta sites
  • Feedback requested: How do you use tag hover descriptions for curating and do...
  • What does a new user need in a homepage experience on Stack Overflow?

Hot Network Questions

  • How to raise a vector to powers contained in a vector, change the list into a product, and do this for all the lines of a matrix, efficiently?
  • If you get pulled for secondary inspection at immigration, missing flight, will the airline rebook you?
  • 2024 Taiwan Payment Modality
  • Efficiently tagging first and last of each object matching condition
  • How to ensure a BSD licensed open source project is not closed in the future?
  • What (if any) pre-breathes were "attempted" on the ISS, and why?
  • what's the purpose of dependent claims?
  • Do linguists have a noun for referring to pieces of commendatory language, as a sort of antonym of 'pejoratives'?
  • Why don't we observe protons deflecting in J.J. Thomson's experiment?
  • How to justify a ban on single-deity religions?
  • Is it OK to use the same field in the database to store both a percentage rate and a fixed money fee?
  • How to determine if a set is countable or uncountable?
  • Is there anything that stops the majority shareholder(s) from destroying company value?
  • xwininfo: what is "depth"?
  • Can you successfully substitute pickled onions for baby onions in Coq Au Vin?
  • If Miles doesn’t consider Peter’s actions as hacking, then what does he think Peter is doing to the computer?
  • Do cities usually form at the mouth of rivers or closer to the headwaters?
  • Short story in which the protagonist shrinks to the size of his model train set and is run over by one of his trains
  • Are Experimental Elixirs Magic Items?
  • In the US, can I buy iPhone and Android phones and claim them as expense?
  • Has the government of Afghanistan clarified what they mean/intend by the ban on 'images of living beings'?
  • If physics can be reduced to mathematics (and thus to logic), does this mean that (physical) causation is ultimately reducible to implication?
  • Postdoc supervisor has stopped helping
  • Which point on a hyperbola is closest to a circle

ipv6 automatic address assignment

IPv6 Autoconfiguration Types and States Explained

This tutorial explains the IPv6 stateless address autoconfiguration process in detail. Learn what the autoconfiguration process is, how it works, and what the autoconfiguration states are.

Every node in the network requires a unique IP address to communicate and exchange data with other notes. There are multiple ways to configure IP addresses on nodes. One such way is the address autoconfiguration. The address autoconfiguration is a feature of IPv6. It allows nodes to automatically configure IPv6 addresses for them.

The IPv6 address consists of 128 binary bits. These bits are divided into two equal portions. The first 64 bits are known as the network ID ( network address ) and the last 64 bits are known as the interface ID ( host address ). An interface ID identifies the interface in the subnet. A network ID identifies a group of interfaces in the network.

The address autoconfiguration process automatically creates the network ID and interface ID of the address based on several factors. Let's discuss these factors and how the autoconfiguration process works in detail.

Autoconfiguration process

When we start an IPv6 interface, the interface checks whether a valid IP configuration exists. If a valid IP configuration does not exist, the interface automatically initiates the address autoconfiguration process.

In the first step, the autoconfiguration process creates a link-local address . A link-local address allows the interface to communicate with other interfaces on the same link. To create a link-local address, the interface uses the following procedure.

To create the network ID, the first 10 bits are set to 1111 1110 10 and the remaining 54 bits are set to 0 . In hexadecimal notation, the binary number 1111111010 is written as the FE80 . In IPv6, a continuous set of 0 can be abbreviated as double colons ( :: ). Because of these two rules, the network ID of the link-local address always remains as FE80::/64 .

To create the interface ID, the interface uses the EUI-64 algorithm. This algorithm uses the hardware address (MAC) of the interface. The hardware address consists of 48 bits. The first 24 bits identify the company while the last 24 bits identify the interface. The EUI-64 algorithm inserts the hexadecimal value FFFE ( 16 bits in binary ) between the company identifier and the interface identifier. It also sets the 7 th bit of the MAC address to 1 which indicates that the address is locally defined.

Let's take an example. Suppose the MAC address of an interface is AC:62:E8:49:5F:62 . Then the link-local address created by the autoconfiguration process will be FE80::AE62:E8FF:FE49:5F62 . In this address, FE80:: is the network ID (address) and AE62:E8FF:FE49:5F62 is the interface ID (address).

The following image shows how the interface ID is calculated in this address.

calculating interface id autoconfiguration process

No two interfaces can use the same address. Before assigning the created address to the interface, the autoconfiguration process verifies that the created address is unique. An address that uniqueness is not verified is known as a tentative address .

To verify the uniqueness of the address, the autoconfiguration process starts the second phase.

In the second phase, the host sends a Neighbor Solicitation message to the address created in the first phase. If the created address is already used, the interface that is using the address replies with a Neighbor Advertisement message.

To learn IPv6 message types and their meaning in detail, you can the following tutorial.

IPv6 Neighbor Discovery Protocol Explained

If the host receives a Neighbor Advertisement message in the response to the sent Neighbor Solicitation message, it indicates that the address is already used. If the host does not receive any response to the sent Neighbor Solicitation message, it indicates that the address is not used.

If the created address is already used, the host stops the autoconfiguration process. At this point, manual configuration needs to be performed on the node. If the created address is not used, the host assigns the address to the interface. At this point, the interface can communicate with other interfaces on the same link.

After assigning the link-local address, the host starts the third phase of the autoconfiguration to acquire the site-local and global addresses. Before we learn the third phase of autoconfiguration, let briefly discuss two related terms. These terms are stateful autoconfiguration and stateless autoconfiguration .

In stateful autoconfiguration , a node receives an IP configuration or some part of the IP configuration from a DHCP server. In the stateless autoconfiguration , a node automatically configures its IP configuration either based on several factors or based on the information received from an IPv6 router.

A link-local address configured by the autoconfiguration process is an example of a stateless configuration. A site-local and global address can be configured from both methods. To configure these addresses through the stateful method, configure a DCHP server to provide IP configuration and configure nodes to obtain IP configuration from the DHCP server.

In this tutorial, we will discuss only the stateless configuration. We will discuss stateful configuration separately in the next tutorial.

In the third phase of the autoconfiguration process, the host sends router solicitation messages. If routers present on the link, they reply with router advertisement messages. A router advertisement specifies how the third phase of autoconfiguration should be performed.

Router advertisements contain information about the prefix and options. The most common options are the hop limit, reachable time, retransmission timer, and maximum transmission unit. If the options are set in the advertisement, the host configures the corresponding parameters accordingly.

The following image shows the steps of the autoconfiguration process that have been explained so far.

autoconfiguration creating site-local and global address

The prefix information is used to generate site-local and global addresses. The advertisement may contain zero, one, or more prefix information. For each prefix information, the host takes the following action.

It checks the autonomous address-configuration flag. If the value of this flag is set to 1 , the host can use the information available in the advertisement to generate addresses by using the stateless configuration method.

If the autonomous address-configuration flag is set 1 , the host checks another options in the prefix. These options are the subnet prefix and the lifetime values of the subnet prefix. The lifetime values indicate how long addresses that are generated from the subnet prefix remain valid.

The subnet prefix is used to generate site-local and global addresses. The process of generating the new address is the same. To generate the network ID, the subnet prefix is used. To generate the interface ID, the hardware address of an appropriate interface and EUI-64 algorithm is used.

Once the address is created, to verify the uniqueness of the address, the host uses the same steps that it uses to verify the uniqueness of the link-local address. The following image shows how the prefix information is used to create the site-local and global addresses.

autoconfiguration process explained

Address autoconfiguration states

An address created through the address autoconfiguration process goes through the five states. The following image shows these states.

address autoconfiguration timer

Any address created through the autoconfiguration process remains in the tentative state until the uniqueness of the address is verified. In the tentative state, a node can't use the address to receive unicast traffic. However, it can use the address to receive and process Neighbor Advertisement messages received in response to the Neighbor Solicitation messages.

Once the uniqueness of the address is verified, the address enters the preferred state. In the preferred state, the address can be used for unlimited communications. A node uses the preferred address to send and receive unicast traffic. The preferred lifetime field in the prefix information option of a router advertisement message defines the period of time that an address can remain in the tentative and preferred state.

From the preferred state, the address enters the deprecated state. In this state, the node can use the address for existing communication sessions but it can't use the address to start the new communication.

The valid state represents how long an address can be used for unicast communication. Since an address can be used for unicast communication in both the preferred and deprecated state, the valid state includes both states. The Valid lifetime field in the prefix information option of a router advertisement message defines the sum of the times that an address can remain in the tentative, preferred, and deprecated states.

From the preferred state, the address enters in the invalid state. In this state, the address can no longer be used to send and receive unicast traffic. An invalid address indicates that the valid lifetime of the address has expired.

That's all for this tutorial. If you like this tutorial, please share it with friends via your favorite social networking sites and subscribe to our YouTube channel.

By ComputerNetworkingNotes Updated on 2024-06-09

ComputerNetworkingNotes Networking Tutorials IPv6 Autoconfiguration Types and States Explained

  • Basic Networking Terms and Definitions
  • Anonymous user and Authentication Method
  • AAA Security in Computer Network
  • Access Control Type Explained
  • SCSI, PATA, SATA, and NVMe Explained
  • Why Do Hard Disks use Serial Transmission?
  • Differences between Hard disks and SSDs Explained
  • Megabytes (MB) V/s Mebibytes (MiB) Differences Explained
  • GUID Partition Table (GPT) Explained
  • BIOS v/s UEFI Explained

We do not accept any kind of Guest Post. Except Guest post submission, for any other query (such as adverting opportunity, product advertisement, feedback, suggestion, error reporting and technical issue) or simply just say to hello mail us [email protected]

IPv6 Address Assignment with Stateless Auto-Configuration

ipv6 automatic address assignment

The debate over the pros and cons of transitioning to IPv6 continues. Recent articles have agreed that many organizations are IPv6 capable, but because of NAT (Network address translation) borrowing us time against running out of available IP addresses, and the cost associated with upgrading providers’ hardware being a deterrent, IPv6 isn’t as widely used as some experts thought it may be at this time. In any case, it still seems safe to say that IPv6 is an inevitability.

What is IPv6 stateless auto-configuration?

One aspect of IPv6 that seems intriguing is the stateless auto-configuration. IPv6 stateless auto-configuration is a quick-and-easy, plug-and-play method of having a host join an existing IPv6 network.  Stateless auto-configuration process consists of the following:

The IPv6 host generates a link-local address for its interface. A link-local address is formed by taking the well-known link-local prefix of fe80:: and appending an interface identifier . The interface identifier is derived from the host’s MAC address. This link-local address is used solely on the host’s segment and is not routable. An example of a link-local address – fe80::21b:63ff:feab:e6a6 where 21b:63ff:feab:e6a6 was derived from the host’s MAC address using the EUI-64 interface id assignment.

The link-local address is created so the host can use it to send a Router solicitation message to the all-routers multicast group on its local segment, requesting a router inform the host on what network (prefix) it resides.

In response to its Router solicitation request, the host receives a Router Advertisement (RA) containing the prefix. The host creates its IPv6 address by appending its interface identifier to the prefix . An example of a host’s IPv6 address – 2001:DB8::212:7FFF:FEEB:6B40 where 212:7FFF:FEEB:6B40 was derived from the host’s MAC address using the EUI-64 interface id assignment.

Stateless auto-configuration is not a replacement for DHCP (Dynamic Host Configuration Protocol). DHCPv6 will still be used when hosts require addresses for NTP servers, TFTP servers, and other common options. DHCPv6 also offers the audit, tracking and management capabilities if more control of address assignment is required.

To learn more about Cisco training, visit https://go.skyline-ats.com/ciscotraining

' src=

Tony DeSimone

Tony DeSimone is a Senior Content Engineer at Skyline ATS with a unique combination of 17 years of certified IT instructor experience coupled with hands-on network administration, course development, and a business background with a degree in management information systems.

Breaking Down the Cisco ENCOR Exam: Infrastructure

Video: what’s the difference between lan, man and wan, related posts, use python pygal to visualize network snmp data, what nbar is and how to use it, how to troubleshoot a network connectivity issue, video: cisco exam taking tips 101, what you need to know about the comptia..., what is static routing and what do we..., top 5 ways to use gre tunneling, breaking down the cisco devnet associate exam: network..., finding the best way to learn about networking, how to run flask in containers.

Close Bitnami banner

Stateless autoconfiguration for IPv6

Stateless autoconfiguration for IPv6 is like a “mini-DHCP” server for IPv6. Routers running IPv6 can give the prefix of the network and a gateway address to clients looking for an IPv6 address. IPv6 uses the NDP (Neighbor Discovery Protocol), and one of the things this protocol offers is RS (Route Solicitation and (RA) Router Advertisement messages that help an IPv6 device configure an IPv6 address automatically. Let’s take a look at a configuration example:

two routers running ipv6

Besides configuring an IPv6 address, we must use the ipv6 unicast-routing command to make R2 act like a router. Remember this command since you need it for routing protocols as well.

We need to enable ipv6 address autoconfig on R1 to make sure it generates its own IPv6 address.

We can use debug ipv6 nd to watch the whole process.

We're Sorry, Full Content Access is for Members Only...

  • Learn any CCNA, CCNP and CCIE R&S Topic . Explained As Simple As Possible.
  • The Best Investment You’ve Ever Spent on Your Cisco Career!
  • Full Access to our 794 Lessons . More Lessons Added Every Week!
  • Content created by Rene Molenaar (CCIE #41726)

584 Sign Ups in the last 30 days

satisfaction-guaranteed

Forum Replies

Good article…

Making it a little more comprehensive will make it a lot better and one of the best learning source especially for starters.

Thanks. I’ll add some more IPv6 stuff in the feature, especially since the new CCNA exams cover much more IPv6 then the previous version.

good article. But I could not get ipv6 address from my neighbor router in gns3 ((

Did you enable the interfaces? It worked fine on a couple of 3600 routers in GNS3.

it works for me. using 7200

44 more replies! Ask a question or join the discussion by visiting our Community Forum

 > Example: Configuring dynamic IPv6 address assignment

 

 

Example: Configuring dynamic IPv6 address assignment

Network configuration.

As shown in Figure 73 , Switch A acts as a DHCPv6 server to assign IPv6 addresses to the clients on subnets 1::1:0:0:0/96 and 1::2:0:0:0/96.

On Switch A, configure the IPv6 address 1::1:0:0:1/96 for VLAN-interface 10 and 1::2:0:0:1/96 for VLAN-interface 20. The lease duration of the addresses on subnet 1::1:0:0:0/96 is 172800 seconds (two days), the valid time is 345600 seconds (four days), the domain name suffix is aabbcc.com, and the DNS server address is 1::1:0:0:2/96. The lease duration of the addresses on subnet 1::2:0:0:0/96 is 432000 seconds (five days), the valid time is 864000 seconds (ten days), the domain name is aabbcc.com, and the DNS server address is 1::2:0:0:2/96.

Figure 73: Network diagram

ipv6 automatic address assignment

Configure the interfaces on the DHCPv6 server:

# Specify an IPv6 address for VLAN-interface 10.

# Disable RA message suppression on VLAN-interface 10.

# Set the M flag to 1 in RA advertisements to be sent on VLAN-interface 10. Hosts that receive the RA advertisements will obtain IPv6 addresses through DHCPv6.

# Set the O flag to 1 in RA advertisements to be sent on VLAN-interface 10. Hosts that receive the RA advertisements will obtain information other than IPv6 address through DHCPv6.

# Specify an IPv6 address for VLAN-interface 20.

# Disable RA message suppression on VLAN-interface 20.

# Set the M flag to 1 in RA advertisements to be sent on VLAN-interface 20. Hosts that receive the RA advertisements will obtain IPv6 addresses through DHCPv6.

# Set the O flag to 1 in RA advertisements to be sent on VLAN-interface 20. Hosts that receive the RA advertisements will obtain information other than IPv6 address through DHCPv6.

Enable DHCPv6:

# Enable DHCPv6 server on VLAN-interface 10 and VLAN-interface 20.

# Exclude the DNS server addresses from dynamic assignment.

# Configure the DHCPv6 address pool 1 to assign IPv6 addresses and other configuration parameters to clients on subnet 1::1:0:0:0/96.

# Configure the DHCPv6 address pool 2 to assign IPv6 addresses and other configuration parameters to clients on subnet 1::2:0:0:0/96.

Verifying the configuration

# Verify that the clients on subnets 1::1:0:0:0/96 and 1::2:0:0:0/96 can obtain IPv6 addresses and all other configuration parameters from the DHCPv6 server (Switch A). (Details not shown.)

# On the DHCPv6 server, display IPv6 addresses assigned to the DHCPv6 clients.

 

 

Example: Configuring dynamic IPv6 prefix assignment 

 Configuring the DHCPv6 relay agent

© Copyright 2015, 2017 Hewlett Packard Enterprise Development LP

  • Skip to content
  • Skip to search
  • Skip to footer

IP Addressing Services Configuration Guide, Cisco IOS XE Dublin 17.15.x (Catalyst 9200 Switches)

Bias-free language.

The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.

IP Addressing Services Overview

  • IPv6 Client IP Address Learning
  • Configuring DHCP
  • DHCP Gleaning
  • DHCP Options Support
  • DHCPv6 Options Support
  • DHCPv6 Relay Source Configuration
  • Configuring IPv6 over IPv4 GRE Tunnels
  • Configuring HSRP
  • VRRPv3 Protocol Support
  • Configuring Enhanced Object Tracking
  • Configuring TCP MSS Adjustment
  • Enhanced IPv6 Neighbor Discovery Cache Management
  • IPv6 Neighbor Discovery Proxy
  • Troubleshooting IP Addressing Services

Clear Contents of Search

Chapter: IP Addressing Services Overview

Understanding ipv6, ipv6 addresses, 128-bit wide unicast addresses, dns for ipv6, ipv6 stateless autoconfiguration and duplicate address detection, ipv6 applications, dhcp for ipv6 address assignment, http(s) over ipv6.

This section provides information about IP Addressing Services.

IPv4 users can move to IPv6 and receive services such as end-to-end security, quality of service (QoS), and globally unique addresses. The IPv6 address space reduces the need for private addresses and Network Address Translation (NAT) processing by border routers at network edges.

For information about how Cisco Systems implements IPv6, go to Networking Software (IOS & NX-OS)

For information about IPv6 and other features in this chapter

See the Cisco IOS IPv6 Configuration Library .

Use the Search field on Cisco.com to locate the Cisco IOS software documentation. For example, if you want information about static routes, you can enter Implementing Static Routes for IPv6 in the search field to learn about static routes.

The switch supports only IPv6 unicast addresses. It does not support site-local unicast addresses, or anycast addresses.

The IPv6 128-bit addresses are represented as a series of eight 16-bit hexadecimal fields separated by colons in the format: n:n:n:n:n:n:n:n. This is an example of an IPv6 address:

2031:0000:130F:0000:0000:09C0:080F:130B

For easier implementation, leading zeros in each field are optional. This is the same address without leading zeros:

2031:0:130F:0:0:9C0:80F:130B

You can also use two colons (::) to represent successive hexadecimal fields of zeros, but you can use this short version only once in each address:

2031:0:130F::09C0:080F:130B

For more information about IPv6 address formats, address types, and the IPv6 packet header, see the IPv6 Addressing and Basic Connectivity Configuration Guide of Cisco IOS IPv6 Configuration Library on Cisco.com.

IPv6 Address Formats

IPv6 Address Type: Multicast

IPv6 Address Output Display

Simplified IPv6 Packet Header

The switch supports aggregatable global unicast addresses and link-local unicast addresses. It does not support site-local unicast addresses.

Aggregatable global unicast addresses are IPv6 addresses from the aggregatable global unicast prefix. The address structure enables strict aggregation of routing prefixes and limits the number of routing table entries in the global routing table. These addresses are used on links that are aggregated through organizations and eventually to the Internet service provider.

These addresses are defined by a global routing prefix, a subnet ID, and an interface ID. Current global unicast address allocation uses the range of addresses that start with binary value 001 (2000::/3). Addresses with a prefix of 2000::/3(001) through E000::/3(111) must have 64-bit interface identifiers in the extended unique identifier (EUI)-64 format.

Link local unicast addresses can be automatically configured on any interface by using the link-local prefix FE80::/10(1111 1110 10) and the interface identifier in the modified EUI format. Link-local addresses are used in the neighbor discovery protocol (NDP) and the stateless autoconfiguration process. Nodes on a local link use link-local addresses and do not require globally unique addresses to communicate. IPv6 routers do not forward packets with link-local source or destination addresses to other links.

For more information, see the section about IPv6 unicast addresses in the “Implementing IPv6 Addressing and Basic Connectivity” chapter in the Cisco IOS IPv6 Configuration Library on Cisco.com.

IPv6 supports Domain Name System (DNS) record types in the DNS name-to-address and address-to-name lookup processes. The DNS AAAA resource record types support IPv6 addresses and are equivalent to an A address record in IPv4. The switch supports DNS resolution for IPv4 and IPv6.

The switch uses stateless autoconfiguration to manage link, subnet, and site addressing changes, such as management of host and mobile IP addresses. A host autonomously configures its own link-local address, and booting nodes send router solicitations to request router advertisements for configuring interfaces.

Beginning from Cisco IOS XE Gibraltar 16.11.1 , an autoconfigured IPv6 address will contain interface identifiers that are not part of the reserved interface identifiers range specified in RFC5453.

For more information about autoconfiguration and duplicate address detection, see the “Implementing IPv6 Addressing and Basic Connectivity” chapter of Cisco IOS IPv6 Configuration Library on Cisco.com.

The switch has IPv6 support for these applications:

Ping, traceroute, Telnet, and TFTP

Secure Shell (SSH) over an IPv6 transport

HTTP server access over IPv6 transport

DNS resolver for AAAA over IPv4 transport

Cisco Discovery Protocol (CDP) support for IPv6 addresses

For more information about managing these applications, see the Cisco IOS IPv6 Configuration Library on Cisco.com.

DHCPv6 enables DHCP servers to pass configuration parameters, such as IPv6 network addresses, to IPv6 clients. The address assignment feature manages non-duplicate address assignment in the correct prefix based on the network where the host is connected. Assigned addresses can be from one or multiple prefix pools. Additional options, such as default domain and DNS name-server address, can be passed back to the client. Address pools can be assigned for use on a specific interface, on multiple interfaces, or the server can automatically find the appropriate pool.

For configuring DHCP for IPv6, see the Configuring DHCP for IPv6 Address Assignment section.

For more information about configuring the DHCPv6 client, server, or relay agent functions, see the Cisco IOS IPv6 Configuration Library on Cisco.com.

The HTTP client sends requests to both IPv4 and IPv6 HTTP servers, which respond to requests from both IPv4 and IPv6 HTTP clients. URLs with literal IPv6 addresses must be specified in hexadecimal using 16-bit values between colons.

The accept socket call chooses an IPv4 or IPv6 address family. The accept socket is either an IPv4 or IPv6 socket. The listening socket continues to listen for both IPv4 and IPv6 signals that indicate a connection. The IPv6 listening socket is bound to an IPv6 wildcard address.

The underlying TCP/IP stack supports a dual-stack environment. HTTP relies on the TCP/IP stack and the sockets for processing network-layer interactions.

Basic network connectivity ( ping ) must exist between the client and the server hosts before HTTP connections can be made.

For more information, see the “Managing Cisco IOS Applications over IPv6” chapter in the Cisco IOS IPv6 Configuration Library on Cisco.com.

Was this Document Helpful?

Feedback

Contact Cisco

login required

  • (Requires a Cisco Service Contract )

ipv6 automatic address assignment

New to Docker Compose? Find more information about the key features and use cases of Docker Compose or try the quickstart guide .

The Compose Specification is the latest and recommended version of the Compose file format. It helps you define a Compose file which is used to configure your Docker application’s services, networks, volumes, and more.

Legacy versions 2.x and 3.x of the Compose file format were merged into the Compose Specification. It is implemented in versions 1.27.0 and above (also known as Compose V2) of the Docker Compose CLI.

The Compose Specification on Docker Docs is the Docker Compose implementation. If you wish to implement your own version of the Compose Specification, see the Compose Specification repository .

Use the following links to navigate key sections of the Compose Specification.

IMAGES

  1. IPv6 Address system

    ipv6 automatic address assignment

  2. Creating an IPv6 Addressing Plan (part 2)

    ipv6 automatic address assignment

  3. PPT

    ipv6 automatic address assignment

  4. IPv6 Address Representation

    ipv6 automatic address assignment

  5. Ipv6 address types

    ipv6 automatic address assignment

  6. IPv6 Address Assignment Example

    ipv6 automatic address assignment

COMMENTS

  1. IPv6 Stateless Address Auto-configuration (SLAAC)

    SLAAC stands for Stateless Address Autoconfiguration and the name pretty much explains what it does. It is a mechanism that enables each host on the network to auto-configure a unique IPv6 address without any device keeping track of which address is assigned to which node. Stateless and Stateful in the context of address assignment mean the ...

  2. IPv6: How to configure static and DHCP IP addressing and deal with DNS

    Key IPv6 addressing concepts. IPv6 addressing within a network has a few major differences from IPv4. With IPv4 certain address ranges are reserved for private networks (such as 10.0.0.0/8 or 192 ...

  3. How do I assign IPv6 addresses manually?

    If you wish, you would in Windows set a computer's static IPv6 inside Start > Network > Network and Sharing Center > Change Adapter Setting , right-click on the Ethernet connection IPv6 and choose Properties, right-click "Internet Protocol Version 6 (TCP/IPv6)" and click on Properties, the set "Use the following IPv6 address".

  4. IPv6 SLAAC

    IPv6 Stateless Address Autoconfiguration or SLAAC allows devices on a network to automatically configure IPv6 addresses on its interface without managing a DHCP server. ... Another way to assign IPv6 addresses to hosts is via DHCPv6. DHCPv6 is an update to DHCPv4, with its main difference being that it supports IPv6's new addressing scheme. ...

  5. IPv6 Stateless Address Autoconfiguration (SLAAC)

    IPv6 Stateless Address Autoconfiguration (SLAAC) is a fundamental mechanism that allows devices to automatically configure their own IPv6 addresses and other network parameters without the need for manual configuration or a central DHCP server. SLAAC simplifies the process of address assignment and enhances the efficiency of IPv6 networks.

  6. IPv6 Dynamic Address Allocation Mechanism Illustrated

    SLAAC is the simplest automatic IPv6 address assignment scheme and does not require any server. It works by sending an RS message request after the host starts up and the router sends back RA messages to all nodes in the local network segment. If the RA message contains the following configuration. M-bit and O-bit all clear in the message header

  7. networking

    IPv6 has an equivalent of IPv4 "private range" addresses - called Unique Local Address - it uses the fd00::/8 range. Pick a random /48 or /64 prefix within that range (see Wikipedia article for examples) and use it for your network.. A direct translation of your internal IPv4 addresses wouldn't make much sense, however.

  8. IPv6 Address Assignment Example

    IANA "owns" the entire IPv6 address space and they assign certain prefixes to the RIRs (Regional Internet Registry). There are 5 RIRs at the moment: AFRINIC: Africa. APNIC: Asia/Pacific. ARIN: North America. LACNIC: Latin America and some Caribbean Islands. RIPE NCC: Europe, Middle east and Central Asia.

  9. IPv6 Configuration Guide, Cisco IOS Release 15.0S

    DHCP for IPv6 Address Assignment. DHCPv6 enables DHCP servers to pass configuration parameters, such as IPv6 network addresses, to IPv6 clients. ... Enables automatic configuration of IPv6 addresses using stateless autoconfiguration on an interface and enables IPv6 processing on the interface. Step 5: end Example: Router(config-if)# end ...

  10. IPv6 Addressing and Basic Connectivity Configuration Guide ...

    Perform this task to assign IPv6 addresses to individual device interfaces and enable IPv6 traffic forwarding globally on the device. By default, IPv6 addresses are not configured and IPv6 routing is disabled. ... Automatically configures an IPv6 link-local address on the interface while also enabling the interface for IPv6 processing. The link ...

  11. IPv6 Address Allocation and Assignment Policy

    This document describes policies for the allocation and assignment of globally unique Internet Protocol version 6 (IPv6) address space. [ RFC 4291] designates 2000::/3 to be global unicast address space that the Internet Assigned Numbers Authority (IANA) may allocate to the RIRs. In accordance with [ RFC 4291 ], IANA allocated initial ranges of ...

  12. dhcp

    Stateful DHCPv6. A node may obtain a link-local address using steps 1-3 from above. I believe this is optional and that it can simply use ::/128 (unspecified) as its source address in DHCP requests until it is assigned an address. There are two methods of obtaining an address - normal and rapid-commit.

  13. IPv6 Autoconfiguration Types and States Explained

    The address autoconfiguration is a feature of IPv6. It allows nodes to automatically configure IPv6 addresses for them. The IPv6 address consists of 128 binary bits. These bits are divided into two equal portions. The first 64 bits are known as the network ID ( network address) and the last 64 bits are known as the interface ID ( host address ...

  14. IP Addressing: DHCP Configuration Guide

    Automatic bindings can be stored permanently in the database agent, such as a remote TFTP server or a local NVRAM file system. ... DHCP for IPv6 Address Assignment. DHCPv6 enables DHCP servers to pass configuration parameters, such as IPv6 network addresses, to IPv6 clients. The DHCPv6 Individual Address Assignment feature manages nonduplicate ...

  15. IPv6 Address Assignment with Stateless Auto-Configuration

    IPv6 stateless auto-configuration is a quick-and-easy, plug-and-play method of having a host join an existing IPv6 network. Stateless auto-configuration process consists of the following: The IPv6 host generates a link-local address for its interface. A link-local address is formed by taking the well-known link-local prefix of fe80:: and ...

  16. 8.8: IPv6 Host Address Assignment

    8.7.1 Duplicate Address Detection. Whenever an IPv6 host obtains a unicast address - a link-local address, an address created via SLAAC, an address received via DHCPv6 or a manually configured address - it goes through a duplicate-address detection (DAD) process. The host sends one or more Neighbor Solicitation messages (that is, like an ARP query), as in 8.6 Neighbor Discovery, asking if ...

  17. Stateless autoconfiguration for IPv6

    I will use two routers to show you how stateless autoconfiguration works. R2 will have an IPv6 address and is going to send router advertisements. R1 will use this to configure its own IPv6 address. R2(config)#ipv6 unicast-routing. R2(config)#interface fastEthernet 0/0. R2(config-if)#ipv6 address 2001:1234::/64 eui-64.

  18. Configuring IPv6 address autoconfiguration

    The IPv6 address autoconfiguration automatically creates new IPv6 interfaces for a given line description, and assigns IPv6 addresses for the interfaces. ... Note: DHCPv6 is used to assign IPv6 addresses automatically after configuring and starting IPv6 Stateless Address Autoconfiguration when the IPv6 router on the network advertises the ...

  19. Example: Configuring dynamic IPv6 address assignment

    As shown in Figure 73, Switch A acts as a DHCPv6 server to assign IPv6 addresses to the clients on subnets 1::1:0:0:0/96 and 1::2:0:0:0/96.. On Switch A, configure the IPv6 address 1::1:0:0:1/96 for VLAN-interface 10 and 1::2:0:0:1/96 for VLAN-interface 20. The lease duration of the addresses on subnet 1::1:0:0:0/96 is 172800 seconds (two days), the valid time is 345600 seconds (four days ...

  20. Network Component: IPv6 Address Assignment

    Explanation of the IPv6 address assignment using Ethernet. The Network library maintains several IPv6 addresses for the Ethernet network interface: is used to communicate globally over internet. It is configured manually or via DHCPv6 in stateful mode. is configured by a Stateless Address Autoconfiguration and also used to communicate globally.

  21. IPv6 address assignment

    IP address assignment with relay agent information option. DHCP addressing mode on an interface. VCI pattern matching for DHCP assignment. DHCP shared subnet NEW. DHCP smart relay on interfaces with a secondary IP NEW. FortiGate DHCP works with DDNS to allow FQDN connectivity to leased IP addresses. Static routing.

  22. IP Addressing Services Configuration Guide, Cisco IOS XE Dublin 17.15.x

    Link local unicast addresses can be automatically configured on any interface by using the link-local prefix FE80::/10(1111 1110 10) and the interface identifier in the modified EUI format. ... For configuring DHCP for IPv6, see the Configuring DHCP for IPv6 Address Assignment section. For more information about configuring the DHCPv6 client ...

  23. Understanding IPv6 addressing on AWS and designing a scalable

    The IPv6 address space contains a total of 2^128 or 340 undecillion IPv6 addresses. Therefore, scalability and summarization are important. We focus guidance on IPv6 addressing best practices, and how you can use the scale and simplicity of the latest version of the internet protocol, as opposed to just copying IPv4 addressing plans.

  24. Bridge network driver

    User-defined bridges provide automatic DNS resolution between containers. Containers on the default bridge network can only access each other by ... setting it to 0.0.0.0 means it will be available on the host's IPv4 and IPv6 addresses. To restrict a published port to IPv4 only, the address must be included in the container's publishing options

  25. Overview

    Find the latest recommended version of the Docker Compose file format for defining multi-container applications.