IPv6 client mobility
A client mobility is a wireless network feature that
-
supports seamless Layer 2 and Layer 3 roaming for IPv6-only and dual-stack clients
-
manages IPv6 client addresses and Neighbor Discovery (NDP) packet handling across controllers, and
-
retains the client's IP address and application connectivity as they move between access points and switches in the mobility group.
Link layer mobility is not sufficient for wireless client Layer 3 applications to work seamlessly while roaming. Cisco IOSd’s wireless mobility module uses mobility tunneling to retain seamless connectivity for the client’s Layer 3 PoP (point of presence) when the client roams across different subnets on different switches.
IPv6 is the next-generation network layer Internet protocol intended to replace IPv4 in the TCP/IP suite of protocols. This new version increases the global internet address space to accommodate users and applications that require unique global IP addresses. IPv6 incorporates 128-bit source and destination addresses, which provide significantly more addresses than the 32-bit IPv4 addresses.
To support IPv6 clients across controllers, ICMPv6 messages must be handled in a specific way to ensure the IPv6 client remains on the same Layer 3 network. The device keeps track of IPv6 clients by intercepting ICMPv6 messages to provide seamless mobility and protect the network from network attacks. Neighbor Discovery Protocol (NDP) packets are converted from multicast to unicast and delivered individually to each client. This unique solution ensures that Neighbor Discovery and Router Advertisement packets are not leaked across VLANs. Clients receive specific Neighbor Discovery and Router Advertisement packets, ensuring correct IPv6 addressing and avoiding unnecessary multicast traffic.
The configuration for IPv6 mobility is the same as for IPv4 mobility and does not require separate software on the client side to achieve seamless roaming. The device must be part of the same mobility group. Both IPv4 and IPv6 client mobility are enabled by default.
IPv6 client mobility provides these features:
-
Retains multiple client IPv6 addresses during Layer-2 and Layer-3 roaming.
-
Manages IPv6 Neighbor Discovery Protocol (NDP) packets.
-
Learns client IPv6 addresses.
![]() Note |
The configuration for IPv6 mobility in SDA wireless and Local mode is the same as for IPv4 mobility and does not require different software configuration on the client side to achieve seamless roaming. Refer to the IPv4 mobility section for configuration information. |
![]() Note |
f an IPv6 address is configured on the SVI, configure the ipv6 nd ra suppress all command on all client VLAN SVI interfaces on the controller. This prevents multiple devices from advertising themselves as routers. |
Using router advertisement
The Neighbor Discovery Protocol (NDP) is a protocol that
-
operates at the link layer and manages the discovery of other nodes on the network link
-
determination of their link-layer addresses, identification of available routers, and
-
the maintenance of reachability information for neighboring nodes.
A Router Advertisement (RA) is an IPv6 Neighbor Discovery Protocol (NDP) message
-
sent by routers to communicate network parameters such as available routers
-
network prefixes for IPv6 address configuration, and
-
link MTU information to hosts on the link.
RAs play a vital role in this process by allowing hosts to detect routers, generate IPv6 addresses, and configure other connection parameters.
Routers send RAs either on a regular basis or in response to Router Solicitation messages from hosts.
IPv6 wireless client mobility manages the IPv6 RA packet. The device forwards the link-local all-nodes multicast RA packets to both local and roaming wireless nodes mapped on the same VLAN where the RA was received.
Figure 1 illustrates how a roaming client “MN” receives RA from VLAN 200 in a foreign controller and how it acquires an new IP address and breaks into L3 mobility's point of presence.
Router advertisement throttling
A router advertisement throttle is a network control mechanism that
-
enforces limits on the frequency of router advertisement (RA) packets sent toward the wireless network
-
ensures routers that send multiple RA packets are restricted to a minimum frequency required for IPv6 client connectivity, and
-
maintains uninterrupted IPv6 connectivity for new or roaming clients by allowing RA packets in response to Router Solicitation (RS) packets.
If a client sends an RS packet, the router sends an RA back to the client. The controller allows this RA to pass and delivers it as a unicast message to the client. This process ensures that new or roaming clients are not affected by RA throttling.
IPv6 address learning
IPv6 address learning is the process
-
by which IPv6 clients acquire IP addresses, and
-
network devices such as switches or controllers, observe and record these assignments.
There are three ways for an IPv6 client to acquire IPv6 addresses:
-
Stateless Address Auto-Configuration (SLAAC)
-
Stateful DHCPv6
-
Static configuration
For these methods, the IPv6 client always sends NS DAD (duplicate address detection) to ensure that there is no duplicated IP address on the network. The device snoops the client's NDP and DHCPv6 packets to learn about the client's IP addresses. It then updates the controller's database. The database then informs the controller about the client's new IP address.
Handling multiple IP addresses
An IP address is a network identifier that
-
uniquely distinguishes a device on a network
-
supports both IPv4 and IPv6 formats, and
-
can be dynamically assigned, updated, or displayed for client devices.
If a new IP address is received after the RUN state, whether it is an addition or removal, the controller updates its local database with the new IP addresses for display purposes. IPv6 uses the same PEM state machine code flow as IPv4. When external entities, such as Prime Infrastructure, request IP addresses, the controller includes all available IPv4 and IPv6 addresses in the API or SPI interface response.
An IPv6 client can acquire multiple IP addresses from the stack for different purposes. For example, a client may have a link-local address for local traffic and a routable unique local or global address.
When the client is in the DHCP request state and the controller receives the first IP address notification from the database, for either an IPv4 or IPv6 address, the PEM moves the client into the RUN state.
If a new IP address is received after the RUN state, whether it is an addition or removal, the controller updates its local database with the new IP addresses for display purposes.
When external entities, such as Prime Infrastructure, request IP addresses, the controller provides all available IPv4 and IPv6 addresses.
IPv6 configuration
A IPv6 configuration is a network setup that
-
enables seamless support for IPv6 clients alongside IPv4 clients
-
requires manual VLAN configuration by the administrator to activate IPv6 features, and
-
implements snooping and throttling functionality to manage NDP packets between the switch controller device and its clients.
Prerequisites for IPv6 client mobility
Wireless IPv6 client mobility requires the wired and wireless network infrastructure to support IPv6 routing, suitable address assignment mechanisms, and compatible device configurations.
-
To enable wireless IPv6 client connectivity, the underlying wired network must support IPv6 routing and an address assignment mechanism, such as SLAAC or DHCPv6. The device must have Layer 2 adjacency to the IPv6 router. The VLAN should be tagged when packets enter the device. APs do not require connectivity on an IPv6 network because all traffic is encapsulated inside the IPv4 CAPWAP tunnel between the AP and the device.
- Ensure that all clients support IPv6 address assignment using either stateless autoconfiguration, such as Windows XP clients,
or stateful DHCPv6 IP addressing, such as Windows 7 clients.
Verify that your network switch or router supports the DHCP for IPv6 feature and is configured as a DHCPv6 server, such as a Cisco Catalyst 3850 or 5700 switch. Alternatively, use a dedicated server, such as a Windows 2008 server with a built-in DHCPv6 server.
Monitor IPv6 client mobility
-
This table lists the commands available for monitoring IPv6 client mobility and their corresponding descriptions:
| Commands | Description |
| show wireless client summary | Displays the wireless specific configuration of active clients. |
| show wireless client mac-address | Displays the wireless specific configuration of active clients based on their MAC address. |

Feedback