
Static Mode
In this mode, any arbitrary IPv6 network may be used for the WAN connection. Unlike 6to4, there is no correlation between the WAN and the LAN addresses.
To enable static IPv6 on the WAN, set the testvar ipv6WanMode to "static":
The DUT's IPv6 address is configured using the testvar ipv6WanIspAssignIp, whereas the ISP's WAN address is configured using the ipv6WanIspIp testvar. The value of these testvars must match the configuration of the DUT.
For example, if the DUT is configured with a static WAN IPv6 address of 3001::2, and a default router (next-hop gateway) of 3001::1, the testvars ipv6WanIspAssignIp and ipv6WanIspIp should be configured as follows:
DHCP Mode
In this mode, CDRouter expects the DUT to issue a DHCP Solicit on the WAN interface.
To enable DHCP on the WAN, set the testvar ipv6WanMode to "DHCP":
The DUT's IPv6 address is configured using the testvar ipv6WanIspAssignIp, whereas the ISP's WAN address is configured using the ipv6WanIspIp testvar. The value of these testvars must match the configuration of the DUT.
CDRouter also supports prefix delegation for this WAN mode. Please see this Knowledge Base article for information on configuring prefix delegation.
Autoconf Mode
In this mode, CDRouter expects the DUT to listen for a Router Advertisement on the WAN interface and to self-assign an IPv6 address using a prefix learned during this process.
To enable autoconf on the WAN, set the testvar ipv6WanMode to "autoconf":
Only two testvars must be configured for autoconf on the WAN. CDRouter will determine the correct prefix to advertise based on these testvar values:
CDRouter also supports prefix delegation for this WAN mode. Please see this Knowledge Base article for information on configuring prefix delegation.
To enable 6to4, set the testvar ipv6WanMode to "6to4":
6to4 (RFC 3056) lets IPv6 networks connect over the IPv4 Internet. A special IPv6 subnet, 2002::/16, is specifically allocated for 6to4 use. Since each public IPv4 address is unique, it can simply be used as bits 17-48 of a 2002:: address. This creates a unique 48 bit network for every IPv4 address. Since the IPv4 address is embedded in the IPv6 address, it's already known where the packet must be going, or is from. This makes delivery between nodes very easy.
This doesn't solve the issue of communicating with native IPv6 addresses. To get packets delivered to non 6to4 hosts, special relay servers are run on anycast, each at the same static, well-known IPv4 address. Any of these servers are able to route traffic between the 6to4 network and the native network. These servers are run for the general public by institutions advocating IPv6 adoption.
CDRouter IPv6 simulates a 6to4 relay server for testing this functionality. By default CDRouter creates a 6to4 relay server at the well known address 192.88.99.1. This address can be changed using the testvar ipv6RelayServer:
6to4 addresses are deterministic. The IPv4 WAN address determines the IPv6 prefix available for the LAN clients. These addresses can be allocated through autoconf or by DHCPv6.
To enable 6rd, set the testvar ipv6WanMode to "6rd":
6rd is a generalized application of 6to4. For a detailed explanation of 6rd and its differences from 6to4, please view our article Testing 6to4 and 6rd IPv6 Islands with CDRouter.
CDRouter IPv6 creates a 6rd relay server on the WAN stack for testing 6rd functionality. By default CDRouter creates a 6to4 relay server at the well known address 192.88.99.1. Under 6rd, the ISP will generally use its own relay server with a native ISP IPv4 address. This address can be changed using the testvar ipv6RelayServer:
6rd requires three additional testvars for complete configuration:
The ipv6rdPrefix testvar is of arbitrary length, assigned to an ISP by the IANA. The length of this prefix is determined with ipv6rdPrefixLen. Finally, the ipv6rdIPv4MaskLen indicates the number of leading bits to be dropped from the mapped IPv4 WAN address. This technique was written into the 6rd protocol in order to save prefix bits, since any bits in the IPv4 address that are not unique are useless for identifying the 6rd client.
To enable IPv6 over PPPoE, set the testvar ipv6WanMode to "PPPoE":
The PPPoE username, password, and authentication type must also be configured using the following testvars:
testvar pppoeUser qacafe testvar pppoePassword qacafe123 testvar pppAuthType CHAP
Release 6.3 of CDRouter IPv6 introduces support for PPPoE as a primary IPv6 WAN connection mode. IPv6 over PPP is formally defined in IETF RFC 5072. In addition, IETF RFC 4241 describes a dual-stack internet access model which defines the basic IPv6 over PPPoE architecture implemented by CDRouter.
PPPoE primarily provides authentication capabilities for IPv6. There are no NCP (IPv6CP) options for negotiating IPv6 addresses like there are for IPv4. As a result, following successful PPPoE connection establishment, the CPE must utilize another mechanism for obtaining global IPv6 address and prefix information. CDRouter currently supports three different scenarios for provisioning IPv6 address and prefix information CPE devices implementing IPv6 over PPPoE:
If the CPE is running PPPoE for IPv4 as well as IPv6, CDRouter requires that both IPCP and IPv6CP occur in the same PPPoE session. CDRouter does not support implementations where IPCP and IPv6CP occur in different PPPoE sessions.
For more information on IPv6 over PPPoE, including configuration examples for each of the three scenarios listed above, please see our Application Note on testing IPv6 over PPPoE with CDRouter.
Related articles that may also be helpful: