Cisco Ipv6
Cisco Ipv6
Cisco Ipv6
Implementing basic IPv6 connectivity in the Cisco IOS software consists of assigning IPv6 addresses to individual router interfaces. The forwarding of IPv6 traffic can be enabled globally, and Cisco Express Forwarding (CEF) switching for IPv6 can also be enabled. Basic connectivity can be enhanced by configuring support for AAAA record types in the Domain Name System (DNS) name-to-address and address-to-name lookup processes, and by managing IPv6 neighbor discovery.
Finding Support Information for Platforms and Cisco IOS Software Images
Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator at http://www.cisco.com/go/fn. You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.
Contents
Prerequisites for Implementing Basic Connectivity for IPv6, page 21 Restrictions for Implementing Basic Connectivity for IPv6, page 24 Information About Implementing Basic Connectivity for IPv6, page 24 How to Implement Basic Connectivity for IPv6, page 54 Configuration Examples for Implementing Basic Connectivity for IPv6, page 103 Where to Go Next, page 110 Additional References, page 110
This document assumes that you are familiar with IPv4. Refer to the publications referenced in the Additional References section for IPv4 configuration and command reference information. The following prerequisites apply to CEFv6 and dCEFv6:
To forward IPv6 traffic using CEFv6 or dCEFv6, you must configure forwarding of IPv6 unicast
datagrams globally on the router by using the ipv6 unicast-routing command in global configuration mode, and you must configure an IPv6 address on an interface by using the ipv6 address command in interface configuration mode.
IPv6c-21
Implementing Basic Connectivity for IPv6 Prerequisites for Implementing Basic Connectivity for IPv6
You must enable CEFv4 globally on the router by using the ip cef command in global
configuration mode before enabling CEFv6 globally on the router by using the ipv6 cef command in global configuration mode.
On distributed architecture platforms that support both CEFv6 and dCEFv6, such as the
Cisco 7500 series routers, you must enable dCEFv4 globally on the router by using the ip cef distributed command in global configuration mode before enabling dCEFv6 globally on the router by using the ipv6 cef distributed command in global configuration mode.
Note
By default, the Cisco 12000 series Internet routers support only dCEFv6.
To use Unicast RPF, enable CEF switching or dCEF switching in the router. There is no need to
configure the input interface for CEF switching. As long as CEF is running on the router, individual interfaces can be configured with other switching modes.
Note
For Unicast RPF to work, CEF must be configured globally in the router. Unicast RPF will not work without CEF.
Table 1 identifies the earliest release for each early-deployment train in which each feature became available.
Table 1 Minimum Required Cisco IOS Release
Feature IPv6 for Cisco IOS IPv6 address formats IPv6 address types: Unicast DNS for IPv61 Map host names to IPv6 addresses IPv6 path MTU discovery AAAA DNS lookups over an IPv4 transport ICMPv6 IPv6 neighbor discovery2 IPv6 stateless autoconfiguration ATM PVC and ATM LANE3
Minimum Required Cisco IOS Release by Release Train 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC
IPv6c-22
Implementing Basic Connectivity for IPv6 Prerequisites for Implementing Basic Connectivity for IPv6
Table 1
Minimum Required Cisco IOS Release by Release Train 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC
PPP service over packet over SONET, ISDN, and 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, serial (synchronous and asynchronous) interfaces 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC Ethernet, Fast Ethernet, Gigabit Ethernet, and 10-Gigabit Ethernet Dual IPv4 and IPv6 protocol stacks Configuring IPv6 addressing and enabling IPv6 routing4 Cisco High-Level Data Link Control (HDLC) ICMPv6 redirect IPv6 neighbor discovery duplicate address detection DNS lookups over an IPv6 transport ICMPv6 rate limiting CEF and Distributed CEF (dCEF) switching for IPv6 CISCO-IP-MIB support CISCO-IP-FORWARDING-MIB support Dynamic packet transport (DPT) Unicast Reverse Path Forwarding (Unicast RPF) strict mode IPv6 address types: Anycast DHCP for IPv6 prefix delegation Stateless DHCP for IPv6 Remote bridged encapsulation (RBE) NetFlow for IPv6 Unicast Reverse Path Forwarding (Unicast RPF) loose mode DHCP for IPv6 Relay Agent 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(2)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(4)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(4)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(8)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.2(8)T, 12.0(21)ST, 12.0(22)S, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.0(21)ST, 12.0(22)S, 12.2(13)T, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.0(22)S, 12.2(14)S, 12.2(15)T, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.0(22)S, 12.2(14)S, 12.2(15)T, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.0(23)S 12.2(13)T, 12.2(14)S, 12.3, 12.3(2)T, 12.4, 12.4(2)T, 12.2(27)SBC 12.3(4)T, 12.2(25)S, 12.4, 12.4(2)T, 12.2(27)SBC 12.3(4)T, 12.4, 12.4(2)T 12.3(4)T, 12.4, 12.4(2)T 12.3(4)T, 12.4, 12.4(2)T 12.3(7)T, 12.4, 12.4(2)T 12.2(25)S, 12.2(27)SBC 12.3(11)T, 12.4, 12.4(2)T
IPv6c-23
Implementing Basic Connectivity for IPv6 Restrictions for Implementing Basic Connectivity for IPv6
Table 1
1. DNS over IPv6 support was added in Cisco IOS Release 12.2(8)T. 2. Static cache support was added in Cisco IOS Release 12.2(8)T. 3. Cisco Discovery Protocol support was added in Cisco IOS Release 12.2(8)T and Cisco IOS Release 12.2(14)S but is not in the 12.0 ST or 12.0 S trains. 4. MAC address support was added in Cisco IOS Release 12.2(4)T.
In Cisco IOS Release 12.2(11)T or earlier releases, IPv6 supports only process switching for packet forwarding. CEF switching and dCEF switching for IPv6 are supported in Cisco IOS Release 12.2(13)T. dCEF switching for IPv6 is supported in Cisco IOS Release 12.0(21)ST. IPv6 packets are transparent to Layer 2 LAN switches because the switches do not examine Layer 3 packet information before forwarding IPv6 frames. Therefore, IPv6 hosts can be directly attached to Layer 2 LAN switches. In any Cisco IOS release with IPv6 support, multiple IPv6 global and site-local addresses within the same prefix can be configured on an interface. However, multiple IPv6 link-local addresses on an interface are not supported. See the IPv6 Addressing and IPv6 Routing Configuration Example section for information on configuring multiple IPv6 global and site-local addresses within the same prefix on an interface. The 12.0 S Cisco IOS software release train provides IPv6 support on Cisco 12000 series Internet routers and Cisco 10720 Internet routers only.
IPv6 for Cisco IOS Software, page 25 Larger IPv6 Address Space for Unique Addresses, page 25 IPv6 Address Formats, page 26 IPv6 Address Type: Unicast, page 27 IPv6 Address Type: Anycast, page 30 IPv6 Address Type: Multicast, page 31 IPv6 Address Output Display, page 32 Simplified IPv6 Packet Header, page 33 CEF and dCEF Switching for IPv6, page 36 NetFlow for IPv6 Environments, page 38 DNS for IPv6, page 38
IPv6c-24
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Path MTU Discovery for IPv6, page 39 Cisco Discovery Protocol IPv6 Address Support, page 39 ICMP for IPv6, page 39 IPv6 Neighbor Discovery, page 40 Managing Link, Subnet, and Site Addressing Changes, page 45 Simplified Network Renumbering for IPv6 Hosts, page 50 IPv6 Prefix Aggregation, page 51 IPv6 Site Multihoming, page 51 IPv6 Data Links, page 52 Routed Bridge Encapsulation for IPv6, page 52 Dual IPv4 and IPv6 Protocol Stacks, page 52
IPv6c-25
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Note
Two colons (::) can be used only once in an IPv6 address to represent the longest successive hexadecimal fields of zeros. The hexadecimal letters in IPv6 addresses are not case-sensitive.
Table 2 Compressed IPv6 Address Formats
2001:0:0:0:0DB8:800:200C:417A 2001::0DB8:800:200C:417A
The loopback address listed in Table 2 may be used by a node to send an IPv6 packet to itself. The loopback address in IPv6 functions the same as the loopback address in IPv4 (127.0.0.1).
Note
The IPv6 loopback address cannot be assigned to a physical interface. A packet that has the IPv6 loopback address as its source or destination address must remain within the node that created the packet. IPv6 routers do not forward packets that have the IPv6 loopback address as their source or destination address. The unspecified address listed in Table 2 indicates the absence of an IPv6 address. For example, a newly initialized node on an IPv6 network may use the unspecified address as the source address in its packets until it receives its IPv6 address.
Note
The IPv6 unspecified address cannot be assigned to an interface. The unspecified IPv6 addresses must not be used as destination addresses in IPv6 packets or the IPv6 routing header. An IPv6 address prefix, in the format ipv6-prefix/prefix-length, can be used to represent bit-wise contiguous blocks of the entire address space. The ipv6-prefix must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons. The prefix
IPv6c-26
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
length is a decimal value that indicates how many of the high-order contiguous bits of the address comprise the prefix (the network portion of the address). For example, 2001:0DB8:8086:6502::/32 is a valid IPv6 prefix.
Global aggregatable address Site-local address (proposal to remove by IETF) Link-local address IPv4-compatible IPv6 address
001
Addresses with a prefix of 2000::/3 (001) through E000::/3 (111) are required to have 64-bit interface identifiers in the extended universal identifier (EUI)-64 format. The Internet Assigned Numbers Authority (IANA) allocates the IPv6 address space in the range of 2000::/16 to regional registries. The aggregatable global address typically consists of a 48-bit global routing prefix and a 16-bit subnet ID or Site-Level Aggregator (SLA). In the IPv6 aggregatable global unicast address format document (RFC 2374), the global routing prefix included two other hierarchically structured fields named Top-Level Aggregator (TLA) and Next-Level Aggregator (NLA).The IETF decided to remove the TLS and NLA fields form the RFCs because these fields are policy-based. Some existing IPv6 networks deployed before the change might still be using networks based on the older architecture.
IPv6c-27
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
A 16-bit subnet field called the subnet ID could be used by individual organizations to create their own local addressing hierarchy and to identify subnets. A subnet ID is similar to a subnet in IPv4, except that an organization with an IPv6 subnet ID can support up to 65,535 individual subnets. An interface ID is used to identify interfaces on a link. The interface ID must be unique to the link. They may also be unique over a broader scope. In many cases, an interface ID will be the same as or based on the link-layer address of an interface. Interface IDs used in aggregatable global unicast and other IPv6 address types must be 64 bits long and constructed in the modified EUI-64 format. Interface IDs are constructed in the modified EUI-64 format in one of the following ways:
For all IEEE 802 interface types (for example, Ethernet, and FDDI interfaces), the first three octets (24 bits) are taken from the Organizationally Unique Identifier (OUI) of the 48-bit link-layer address (MAC address) of the interface, the fourth and fifth octets (16 bits) are a fixed hexadecimal value of FFFE, and the last three octets (24 bits) are taken from the last three octets of the MAC address. The construction of the interface ID is completed by setting the Universal/Local (U/L) bitthe seventh bit of the first octetto a value of 0 or 1. A value of 0 indicates a locally administered identifier; a value of 1 indicates a globally unique IPv6 interface identifier. For all other interface types (for example, serial, loopback, ATM, Frame Relay, and tunnel interface typesexcept tunnel interfaces used with IPv6 overlay tunnels), the interface ID is constructed in the same way as the interface ID for IEEE 802 interface types; however, the first MAC address from the pool of MAC addresses in the router is used to construct the identifier (because the interface does not have a MAC address). For tunnel interface types that are used with IPv6 overlay tunnels, the interface ID is the IPv4 address assigned to the tunnel interface with all zeros in the high-order 32 bits of the identifier.
Note
For interfaces using PPP, given that the interfaces at both ends of the connection might have the same MAC address, the interface identifiers used at both ends of the connection are negotiated (picked randomly and, if necessary, reconstructed) until both identifiers are unique. The first MAC address in the router is used to construct the identifier for interfaces using PPP.
If no IEEE 802 interface types are in the router, link-local IPv6 addresses are generated on the interfaces in the router in the following sequence:
1. 2. 3.
The router is queried for MAC addresses (from the pool of MAC addresses in the router). If no MAC addresses are available in the router, the serial number of the router is used to form the link-local addresses. If the serial number of the router cannot be used to form the link-local addresses, the router uses a Message Digest 5 (MD5) hash to determine the MAC address of the router from the host name of the router.
Site-Local Address
A site-local address is an IPv6 unicast address that uses the prefix FEC0::/10 (1111 1110 11) and concatenates the subnet identifier (the 16-bit SLA field) with the interface identifier in the modified EUI-64 format. Site-local addresses can be used to number a complete site without using a globally unique prefix. Site-local addresses can be considered private addresses because they can be used to restrict communication to a limited domain. Figure 2 shows the structure of a site-local address. IPv6 routers must not forward packets that have site-local source or destination addresses outside of the site.
IPv6c-28
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 2
Subnet ID
52668
16 bits
Link-Local Address
A link-local address is an IPv6 unicast address that can be automatically configured on any interface using the link-local prefix FE80::/10 (1111 1110 10) and the interface identifier in the modified EUI-64 format. Link-local addresses are used in the neighbor discovery protocol and the stateless autoconfiguration process. Nodes on a local link can use link-local addresses to communicate; the nodes do not need site-local or globally unique addresses to communicate. Figure 3 shows the structure of a link-local address. IPv6 routers must not forward packets that have link-local source or destination addresses to other links.
Figure 3 Link-Local Address Format
128 bits 0 Interface ID
1111 1110 10
52669
FE80::/10 10 bits
IPv6c-29
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 4
Note
Anycast addresses can be used only by a router, not a host, and anycast addresses must not be used as the source address of an IPv6 packet. Figure 5 shows the format of the subnet router anycast address; the address has a prefix concatenated by a series of zeros (the interface ID). The subnet router anycast address can be used to reach a router on the link that is identified by the prefix in the subnet router anycast address.
Figure 5 Subnet Router Anycast Address Format
128 bits Prefix 0000000000000...000
52670
The following shows the configuration for an anycast prefix for 6to4 relay routers:
interface Tunnel0 no ip address ipv6 address 2001:0DB8:A00:1::1/64 ipv6 address 2001:oDB8:c058:6301::/128 anycast tunnel source Ethernet0 tunnel mode ipv6ip 6to4 ! interface Ethernet0 ip address 10.0.0.1 255.255.255.0 ip address 192.88.99.1 255.255.255.0 secondary ! ipv6 route 2001:0DB8::/16 Tunnel0 !
IPv6c-30
52727
::192.168.30.1 = ::C0A8:1E01
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
IPv6 nodes (hosts and routers) are required to join (receive packets destined for) the following multicast groups:
All-nodes multicast group FF02:0:0:0:0:0:0:1 (scope is link-local) Solicited-node multicast group FF02:0:0:0:0:1:FF00:0000/104 for each of its assigned unicast and anycast addresses
IPv6 routers must also join the all-routers multicast group FF02:0:0:0:0:0:0:2 (scope is link-local). The solicited-node multicast address is a multicast group that corresponds to an IPv6 unicast or anycast address. IPv6 nodes must join the associated solicited-node multicast group for every unicast and anycast address to which it is assigned. The IPv6 solicited-node multicast address has the prefix FF02:0:0:0:0:1:FF00:0000/104 concatenated with the 24 low-order bits of a corresponding IPv6 unicast or anycast address. (See Figure 7.) For example, the solicited-node multicast address corresponding to the IPv6 address 2037::01:800:200E:8C6C is FF02::1:FF0E:8C6C. Solicited-node addresses are used in neighbor solicitation messages.
52671
IPv6c-31
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 7
IPv6 unicast or anycast address Prefix Interface ID 24 bits Solicited-node multicast address FF02 0 128 bits
52672
FF
Lower 24
Note
There are no broadcast addresses in IPv6. IPv6 multicast addresses are used instead of broadcast addresses. For further information on IPv6 multicast, refer to the Implementing IPv6 Multicast document in the Cisco IOS IPv6 Configuration Library.
6 7 8
Connection 1 contains an IPv6 address that uses the maximum address length in the address field. Connection 2 shows the IPv6 address overflowing the address field and the following fields moved to the next line, but in alignment with the appropriate headers. Connection 3 contains an IPv6 address that fills the maximum length of the host name and address fields without wrapping any lines. Connection 4 shows the effect of both the host name and address fields containing a long IPv6 address. The output is shown over three lines keeping the correct heading alignment. Connection 5 displays a similar effect as
IPv6c-32
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
connection 4 with a very long IPv6 address in the host name and address fields. Note that the connection name field is actually truncated. Connection 6 displays a very short IPv6 address that does not require any change in the display. Connections 7 and 8 display short and long IPv4 addresses.
Note
The IPv6 address output display applies to all commands that display IPv6 addresses.
Version
Hd Len
Padding
Variable length
51457
The basic IPv6 packet header has 8 fields with a total size of 40 octets (320 bits). (See Figure 9.) Fields were removed from the IPv6 header because, in IPv6, fragmentation is not handled by routers and checksums at the network layer are not used. Instead, fragmentation in IPv6 is handled by the source of a packet and checksums at the data link layer and transport layer are used. (In IPv4, the User Datagram Protocol (UDP) transport layer uses an optional checksum. In IPv6, use of the UDP checksum is required to check the integrity of the inner packet.) Additionally, the basic IPv6 packet header and Options field are aligned to 64 bits, which can facilitate the processing of IPv6 packets.
IPv6c-33
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 9
Version
Destination Address
Next Header
Description Similar to the Version field in the IPv4 packet header, except that the field lists number 6 for IPv6 instead of number 4 for IPv4. Similar to the Type of Service field in the IPv4 packet header. The Traffic Class field tags packets with a traffic class that is used in differentiated services. A new field in the IPv6 packet header. The Flow Label field tags packets with a specific flow that differentiates the packets at the network layer. Similar to the Total Length field in the IPv4 packet header. The Payload Length field indicates the total length of the data portion of the packet. Similar to the Protocol field in the IPv4 packet header. The value of the Next Header field determines the type of information following the basic IPv6 header. The type of information following the basic IPv6 header can be a transport-layer packet, for example, a TCP or UDP packet, or an Extension Header, as shown in Figure 9. Similar to the Time to Live field in the IPv4 packet header. The value of the Hop Limit field specifies the maximum number of routers that an IPv6 packet can pass through before the packet is considered invalid. Each router decrements the value by one. Because no checksum is in the IPv6 header, the router can decrement the value without needing to recalculate the checksum, which saves processing resources.
Hop Limit
IPv6c-34
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Table 3
Description Similar to the Source Address field in the IPv4 packet header, except that the field contains a 128-bit source address for IPv6 instead of a 32-bit source address for IPv4. Similar to the Destination Address field in the IPv4 packet header, except that the field contains a 128-bit destination address for IPv6 instead of a 32-bit destination address for IPv4.
Destination Address
Following the eight fields of the basic IPv6 packet header are optional extension headers and the data portion of the packet. If present, each extension header is aligned to 64 bits. There is no fixed number of extension headers in an IPv6 packet. Together, the extension headers form a chain of headers. Each extension header is identified by the Next Header field of the previous header. Typically, the final extension header has a Next Header field of a transport-layer protocol, such as TCP or UDP. Figure 10 shows the IPv6 extension header format.
Figure 10 IPv6 Extension Header Format
IPv6 basic header (40 octets) IPv6 packet Any number of extension headers Data (for example, TCP or UDP)
Next Header
IPv6c-35
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Table 4 lists the extension header types and their Next Header field values.
Table 4 IPv6 Extension Header Types
Description This header is processed by all hops in the path of a packet. When present, the hop-by-hop options header always follows immediately after the basic IPv6 packet header. The destination options header can follow any hop-by-hop options header, in which case the destination options header is processed at the final destination and also at each visited address specified by a routing header. Alternatively, the destination options header can follow any Encapsulating Security Payload (ESP) header, in which case the destination options header is processed only at the final destination. The routing header is used for source routing. The fragment header is used when a source must fragment a packet that is larger than the Maximum Transmission Unit (MTU) for the path between itself and a destination. The Fragment header is used in each fragmented packet. The Authentication header and the ESP header are used within IP Security Protocol (IPSec) to provide authentication, integrity, and confidentiality of a packet. These headers are identical for both IPv4 and IPv6.
60
43 44
51 50 6 (TCP)
The upper-layer (transport) headers are the typical headers 17 (UDP) used inside a packet to transport the data. The two main transport protocols are TCP and UDP. Extension headers used by mobile nodes, correspondent nodes, and home agents in all messaging related to the creation and management of bindings.
Mobility header
135
Note
By default, the Cisco 12000 series Internet routers support only dCEFv6 (CEF switching is performed by the line cards). The Cisco 7500 series routers support both CEFv6 and dCEFv6. When CEFv6 is configured on Cisco 7500 series routers, CEF switching is performed by the Route Processor (RP); when dCEFv6 is configured, CEF switching is performed by the line cards.
IPv6c-36
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
In Cisco IOS Release 12.0(21)ST, dCEFv6 included support for IPv6 addresses and prefixes. In Cisco IOS Release 12.0(22)S or later releases and Cisco IOS Release 12.2(13)T or later releases, dCEFv6 and CEFv6 were enhanced to include support for separate FIBs for IPv6 global, site-local, and link-local addresses. Each IPv6 router interface has an association to one IPv6 global FIB, one IPv6 site-local FIB, and one IPv6 link-local FIB (multiple interfaces can have an association to the same FIB). All IPv6 router interfaces that are attached to the same IPv6 link share the same IPv6 link-local FIB. IPv6 packets that have an IPv6 global destination address are processed by the IPv6 global FIB; however, packets that have an IPv6 global destination address and either an IPv6 site-local or link-local source address are sent to the RP for process switching and scope-error handling. IPv6 packets that have a site-local destination address are processed by the IPv6 site-local FIB; however, packets that have a link-local source address are not forwarded off of the local link and are sent to the RP for process switching and scope-error handling.
Note
Unicast RPF is an input function and is applied only on the input interface of a router at the upstream end of a connection. The Unicast RPF feature checks whether any packet received at a router interface arrives on one of the best return paths to the source of the packet. The feature performs a reverse lookup in the CEF table. If Unicast RPF does not find a reverse path for the packet, Unicast RPF can drop or forward the packet, depending on whether an access control list (ACL) is specified. If an ACL is specified, then when (and only when) a packet fails the Unicast RPF check, the ACL is checked to verify if the packet should be dropped (using a deny statement in the ACL) or forwarded (using a permit statement in the ACL). Whether a packet is dropped or forwarded, the packet is counted in the global IP traffic statistics for Unicast RPF drops and in the interface statistics for Unicast RPF. If no ACL is specified, the router drops the forged or malformed packet immediately and no ACL logging occurs. The router and interface Unicast RPF counters are updated. Unicast RPF events can be logged by specifying the logging option for the ACL entries. Log information can be used to gather information about the attack, such as source address, time, and so on.
Note
With Unicast RPF, all equal-cost best return paths are considered valid. Unicast RPF works in cases where multiple return paths exist, provided that each path is equal to the others in terms of the routing cost (number of hops, weights, and so on) and as long as the route is in the FIB.
IPv6c-37
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Note
IP6.ARPA support was added in the Cisco IOS 12.3(11)T release. IP6.ARPA is not supported in releases prior to the Cisco IOS 12.3(11)T release. Table 5 lists the IPv6 DNS record types.
Table 5
Support for AAAA records and A records over an IPv6 transport or IPv4 transport is in Cisco IOS Release 12.2(8)T or later releases.
PTR
Maps an IPv6 address to a host name. (Equivalent to a PTR 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.0.0.0.8.1.c.0. record in IPv4.) y.y.y.y.e.f.f.3.ip6.int PTR www.abc.test
Note
The Cisco IOS software supports resolution of PTR records for the IP6.INT domain.
IPv6c-38
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Note
In IPv4, the minimum link MTU is 68 octets, which means that the MTU size of every link along a given data path must support an MTU size of at least 68 octets. In IPv6, the minimum link MTU is 1280 octets. We recommend using an MTU value of 1500 octets for IPv6 links.
IPv6c-39
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 11
ICMPv6 Type
Checksum
IPv6c-40
52728
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 12
ICMPv6 Type = 135 Src = A Dst = solicited-node multicast of B Data = link-layer address of A Query = what is your link address? ICMPv6 Type = 136 Src = B Dst = A Data = link-layer address of B
52673
After receiving the neighbor solicitation message, the destination node replies by sending a neighbor advertisement message, which has a value of 136 in the Type field of the ICMP packet header, on the local link. The source address in the neighbor advertisement message is the IPv6 address of the node (more specifically, the IPv6 address of the node interface) sending the neighbor advertisement message. The destination address in the neighbor advertisement message is the IPv6 address of the node that sent the neighbor solicitation message. The data portion of the neighbor advertisement message includes the link-layer address of the node sending the neighbor advertisement message. After the source node receives the neighbor advertisement, the source node and destination node can communicate. Neighbor solicitation messages are also used to verify the reachability of a neighbor after the link-layer address of a neighbor is identified. When a node wants to verifying the reachability of a neighbor, the destination address in a neighbor solicitation message is the unicast address of the neighbor. Neighbor advertisement messages are also sent when there is a change in the link-layer address of a node on a local link. When there is such a change, the destination address for the neighbor advertisement is the all-nodes multicast address. Neighbor solicitation messages are also used to verify the reachability of a neighbor after the link-layer address of a neighbor is identified. Neighbor unreachability detection identifies the failure of a neighbor or the failure of the forward path to the neighbor, and is used for all paths between hosts and neighboring nodes (hosts or routers). Neighbor unreachability detection is performed for neighbors to which only unicast packets are being sent and is not performed for neighbors to which multicast packets are being sent. A neighbor is considered reachable when a positive acknowledgment is returned from the neighbor (indicating that packets previously sent to the neighbor have been received and processed). A positive acknowledgmentfrom an upper-layer protocol (such as TCP)indicates that a connection is making forward progress (reaching its destination) or the receipt of a neighbor advertisement message in response to a neighbor solicitation message. If packets are reaching the peer, they are also reaching the next-hop neighbor of the source. Therefore, forward progress is also a confirmation that the next-hop neighbor is reachable. For destinations that are not on the local link, forward progress implies that the first-hop router is reachable. When acknowledgments from an upper-layer protocol are not available, a node probes the neighbor using unicast neighbor solicitation messages to verify that the forward path is still working.
IPv6c-41
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
The return of a solicited neighbor advertisement message from the neighbor is a positive acknowledgment that the forward path is still working (neighbor advertisement messages that have the solicited flag set to a value of 1 are sent only in response to a neighbor solicitation message). Unsolicited messages confirm only the one-way path from the source to the destination node; solicited neighbor advertisement messages indicate that a path is working in both directions.
Note
A neighbor advertisement message that has the solicited flag set to a value of 0 must not be considered as a positive acknowledgment that the forward path is still working. Neighbor solicitation messages are also used in the stateless autoconfiguration process to verify the uniqueness of unicast IPv6 addresses before the addresses are assigned to an interface. Duplicate address detection is performed first on a new, link-local IPv6 address before the address is assigned to an interface (the new address remains in a tentative state while duplicate address detection is performed). Specifically, a node sends a neighbor solicitation message with an unspecified source address and a tentative link-local address in the body of the message. If another node is already using that address, the node returns a neighbor advertisement message that contains the tentative link-local address. If another node is simultaneously verifying the uniqueness of the same address, that node also returns a neighbor solicitation message. If no neighbor advertisement messages are received in response to the neighbor solicitation message and no neighbor solicitation messages are received from other nodes that are attempting to verify the same tentative address, the node that sent the original neighbor solicitation message considers the tentative link-local address to be unique and assigns the address to the interface. Every IPv6 unicast address (global or link-local) must be checked for uniqueness on the link; however, until the uniqueness of the link-local address is verified, duplicate address detection is not performed on any other IPv6 addresses associated with the link-local address. The Cisco implementation of duplicate address detection in the Cisco IOS software does not check the uniqueness of anycast or global addresses that are generated from 64-bit interface identifiers.
Router advertisement
Router advertisement
One or more onlink IPv6 prefixes that nodes on the local link can use to automatically configure their IPv6 addresses Lifetime information for each prefix included in the advertisement
IPv6c-42
52674
Router advertisement packet definitions: ICMPv6 Type = 134 Src = router link-local address Dst = all-nodes multicast address Data = options, prefix, lifetime, autoconfig flag
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Sets of flags that indicate the type of autoconfiguration (stateless or statefull) that can be completed Default router information (whether the router sending the advertisement should be used as a default router and, if so, the amount of time (in seconds) the router should be used as a default router) Additional information for hosts, such as the hop limit and MTU a host should use in packets that it originates
RAs are also sent in response to router solicitation messages. Router solicitation messages, which have a value of 133 in the Type field of the ICMP packet header, are sent by hosts at system startup so that the host can immediately autoconfigure without needing to wait for the next scheduled RA message. Given that router solicitation messages are usually sent by hosts at system startup (the host does not have a configured unicast address), the source address in router solicitation messages is usually the unspecified IPv6 address (0:0:0:0:0:0:0:0). If the host has a configured unicast address, the unicast address of the interface sending the router solicitation message is used as the source address in the message. The destination address in router solicitation messages is the all-routers multicast address with a scope of the link. When an RA is sent in response to a router solicitation, the destination address in the RA message is the unicast address of the source of the router solicitation message. The following RA message parameters can be configured:
The time interval between periodic RA messages The router lifetime value, which indicates the usefulness of a router as the default router (for use by all nodes on a given link) The network prefixes in use on a given link The time interval between neighbor solicitation message retransmissions (on a given link) The amount of time a node considers a neighbor reachable (for use by all nodes on a given link)
The configured parameters are specific to an interface. The sending of RA messages (with default values) is automatically enabled on Ethernet and FDDI interfaces when the ipv6 unicast-routing global configuration command is configured. For other interface types, the sending of RA messages must be manually configured by using the no ipv6 nd ra suppress global configuration command. The sending of RA messages can be disabled on individual interfaces by using the ipv6 nd ra suppress interface configuration command.
Note
As of Cisco IOS Release 12.4(2)T, the ipv6 nd ra suppress and no ipv6 nd ra suppress commands replace the ipv6 nd suppress-ra and no ipv6 nd suppress-ra commands.
Note
For stateless autoconfiguration to work properly, the advertised prefix length in RA messages must always be 64 bits.
Multiple routers that route to distinct sets of prefixesRedirects (sent by nonoptimal routers for a destination) mean that hosts can choose any router and the system will work. However, traffic patterns may mean that choosing one of the routers would lead to considerably fewer redirects.
IPv6c-43
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Accidentally deploying a new routerDeploying a new router before it has been fully configured could lead to hosts adopting the new router as a default router and traffic disappearing. Network managers may want to indicate that some routers are more preferred than others. Multihomed situationsMultihomed situations may become more common, because of multiple physical links and because of the use of tunneling for IPv6 transport. Some of the routers may not provide full default routing because they only route to the 6-to-4 prefix or they route only to a corporate intranet. These situations cannot be resolved with redirects, which only operate over a single link.
The default router preference (DRP) extension provides a coarse preference metric (low, medium, or high) for default routers. The DRP of a default router is signaled in unused bits in RA messages. This extension is backward compatible, both for routers (setting the DRP bits) and hosts (interpreting the DRP bits). These bits are ignored by hosts that do not implement the DRP extension. Similarly, the values sent by routers that do not implement the DRP extension will be interpreted by hosts that do implement it as indicating a medium preference. DRPs need to be configured manually. For information on configuring the optional DRP extension, see the Configuring the DRP Extension for Traffic Engineering section.
IPv6 packet
Neighbor redirect packet definitions: ICMPv6 Type = 137 Src = link-local address of Router A Dst = link-local address of Host H Data = target address (link-local address of Router B), options (header of redirected packet) Note: If the target is a host, the target address is equal to the destination address of the redirect packet and the options include the link-layer address of the target host (if known). Subsequent IPv6 packets
60981
IPv6c-44
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Note
A router must be able to determine the link-local address for each of its neighboring routers in order to ensure that the target address (the final destination) in a redirect message identifies the neighbor router by its link-local address. For static routing, the address of the next-hop router should be specified using the link-local address of the router; for dynamic routing, all IPv6 routing protocols must exchange the link-local addresses of neighboring routers. After forwarding a packet, a router should send a redirect message to the source of the packet under the following circumstances:
The destination address of the packet is not a multicast address. The packet was not addressed to the router. The packet is about to be sent out the interface on which it was received. The router determines that a better first-hop node for the packet resides on the same link as the source of the packet. The source address of the packet is a global IPv6 address of a neighbor on the same link, or a link-local address.
Use the ipv6 icmp error-interval global configuration command to limit the rate at which the router generates all IPv6 ICMP error messages, including neighbor redirect messages, which ultimately reduces link-layer congestion.
Note
A router must not update its routing tables after receiving a neighbor redirect message, and hosts must not originate neighbor redirect messages.
IPv6c-45
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 15
MAC address: 00:2c:04:00:FF:56 Host autoconfigured address is: prefix received + interface ID
A node on the link can automatically configure site-local and global IPv6 addresses by appending its interface identifier (64 bits) to the prefixes (64 bits) included in the RA messages. The resulting 128-bit IPv6 addresses configured by the node are then subjected to duplicate address detection to ensure their uniqueness on the link. If the prefixes advertised in the RA messages are globally unique, then the IPv6 addresses configured by the node are also guaranteed to be globally unique. Router solicitation messages, which have a value of 133 in the Type field of the ICMP packet header, are sent by hosts at system startup so that the host can immediately autoconfigure without needing to wait for the next scheduled RA message.
General prefix: 2001:0DB8:2222::/48 Specific prefix: 2001:0DB8:2222:0000::/64 Specific prefix: 2001:0DB8:2222:0001::/64 Specific prefix: 2001:0DB8:2222:4321::/64 Specific prefix: 2001:0DB8:2222:7744::/64 Manually Based on a 6to4 interface Dynamically, from a prefix received by a DHCP for IPv6 prefix delegation client
More specific prefixes, based on a general prefix, can be used when configuring IPv6 on an interface.
StatefulAddress assignment is centrally managed and clients must obtain configuration information not available through protocols such as address autoconfiguration and neighbor discovery.
IPv6c-46
52676
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
StatelessConfiguration parameters that do not require a server to maintain any dynamic state for individual clients, such as DNS server addresses and domain search list options.
The DHCP for IPv6 implementation in the Cisco IOS Release 12.3(4)T supports only stateless address assignment. Extensions to DHCP for IPv6 also enables prefix delegation, through which an ISP can automate the process of assigning prefixes to a customer for use within the customer's network. Prefix delegation occurs between a provider edge (PE) device and customer premises equipment (CPE), using the DHCP for IPv6 prefix delegation option. Once the ISP has delegated prefixes to a customer, the customer may further subnet and assign prefixes to the links in the customer's network.
Rapid Commit
The DHCP for IPv6 client can obtain configuration parameters from a server either through a rapid two-message exchange (solicit, reply) or through a normal four-message exchange (solicit, advertise, request, reply). By default, the four-message exchange is used. When the rapid-commit option is enabled by both client and server, the two-message exchange is used.
Client Function
The DHCP for IPv6 client function can be enabled on individual IPv6-enabled interfaces. The DHCP for IPv6 client can request and accept those configuration parameters that do not require a server to maintain any dynamic state for individual clients, such as DNS server addresses and domain search list options. The DHCP for IPv6 client will configure the local Cisco IOS stack with the received information.
IPv6c-47
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
The DHCP for IPv6 client can also request the delegation of prefixes. The prefixes acquired from a delegating router will be stored in a local IPv6 general prefix pool. The prefixes in the general prefix pool can then be referred to from other applications; for example, the general prefix pools can be further delegated to downstream clients by a DHCP for IPv6 server process running on another interface.
Server Selection
A DHCP for IPv6 client builds a list of potential servers by sending a solicit message and collecting advertise message replies from servers. These messages are ranked based on preference value, and servers may add a preference option to their advertise messages explicitly state their preference value. If the client needs to acquire prefixes from servers, only servers that have advertised prefixes are considered.
IAPD and IAID
An Identity Association for Prefix Delegation (IAPD) is a collection of prefixes assigned to a requesting router. A requesting router may have more than one IAPD; for example, one for each of its interfaces. Each IAPD is identified by an IAID. The IAID is chosen by the requesting router and is unique among the IAPD IAIDs on the requesting router. IAIDs are made consistent across reboots by using information from the associated network interface, which is assumed to be permanently attached to the device.
Server Function
The DHCP for IPv6 server function can be enabled on individual IPv6-enabled interfaces. The DHCP for IPv6 server can provide those configuration parameters that do not require the server to maintain any dynamic state for individual clients, such as DNS server addresses and domain search list options. The DHCP for IPv6 server may be configured to perform prefix delegation. All the configuration parameters for clients are independently configured into DHCP for IPv6 configuration pools, which are stored in NVRAM. A configuration pool can be associated with a particular DHCP for IPv6 server on an interface when it is started. Prefixes to be delegated to clients may be specified either as a list of preassigned prefixes for a particular client or as IPv6 local prefix pools that are also stored in NVRAM. The list of manually configured prefixes or IPv6 local prefix pools can be referenced and used by DHCP for IPv6 configuration pools. The DHCP for IPv6 server maintains an automatic binding table in memory to track the assignment of some configuration parameters, such as prefixes between the server and its clients. The automatic bindings can be stored permanently in the database agent, which can be, for example, a remote TFTP server or local NVRAM file system.
Configuration Information Pool
A DHCP for IPv6 configuration information pool is a named entity that includes information about available configuration parameters and policies that control assignment of the parameters to clients from the pool. A pool is configured independently of the DHCP for IPv6 service and is associated with the DHCP for IPv6 service through the command line interface (CLI). Each configuration pool can contain the following configuration parameters and operational information:
A list of IPv6 addresses of DNS servers A domain search list, which is a string containing domain names for DNS resolution
IPv6c-48
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Prefix Assignment
A prefix-delegating router (DHCP for IPv6 server) selects prefixes to be assigned to a requesting router (DHCP for IPv6 client) upon receiving a request from the client. The server can select prefixes for a requesting client using static assignment and dynamic assignment mechanisms. Administrators can manually configure a list of prefixes and associated preferred and valid lifetimes for an IAPD of a specific client that is identified by its DUID. When the delegating router receives a request from a client, it checks if there is a static binding configured for the IAPD in the clients message. If one is present, the prefixes in the binding are returned to the client. If no such a binding is found, the server attempts to assign prefixes for the client from other sources. The Cisco IOS DHCP for IPv6 server can assign prefixes dynamically from an IPv6 local prefix pool. When the server receives a prefix request from a client, it attempts to obtain unassigned prefixes from the pool. After the client releases the previously assigned prefixes, the server returns them to the pool for reassignment. An IPv6 prefix delegating router can also select prefixes for a requesting router based on an external authority such as a RADIUS server using the Framed-IPv6-Prefix attribute. For more information on this feature, see the Implementing ADSL and Deploying Dial Access for IPv6 module.
Automatic Binding
Each DHCP for IPv6 configuration pool has an associated binding table. The binding table contains the records about all the prefixes in the configuration pool that have been explicitly delegated to clients. Each entry in the binding table contains the following information:
Client DUID Client IPv6 address A list of IAPDs associated with the client A list of prefixes delegated to each IAPD Preferred and valid lifetimes for each prefix The configuration pool to which this binding table belongs The network interface on which the server that is using the pool is running
A binding table entry is automatically created whenever a prefix is delegated to a client from the configuration pool, and it is updated when the client renews, rebinds or confirms the prefix delegation. A binding table entry is deleted when the client releases all the prefixes in the binding voluntarily, all prefixes' valid lifetimes have expired, or administrators run the clear ipv6 dhcp binding command.
Binding Database
The automatic bindings are maintained in RAM and can be saved to some permanent storage so that the information about configuration such as prefixes assigned to clients is not lost after a system reload or power down. The bindings are stored as text records for easy maintenance. Each record contains the following information:
DHCP for IPv6 pool name from which configuration was assigned to the client Interface identifier from which the client requests were received The client IPv6 address The client DUID IAID of the IAPD Prefix delegated to the client
IPv6c-49
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
The prefix length The prefix preferred lifetime in seconds The prefix valid lifetime in seconds The prefix expiration time stamp Optional local prefix pool name from which the prefix was assigned
At the beginning of the file, before the text records, a time stamp records the time when the database is written and a version number, which helps differentiate between newer and older databases. At the end of the file, after the text records, the text string *end* is stored to detect file truncation. The permanent storage to which the binding database is saved is called the database agent. Database agents include FTP and TFTP servers, RCP, Flash file system, and NVRAM.
MAC address: 00:2c:04:00:FF:56 Host autoconfigured addresses are: new address autoconfigured from a new prefix and old addresses autoconfigured from an old prefix
IPv6c-50
52677
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Note
The source address selection process in both IPv6 and IPv4 multihomed networks is an ongoing research topic being discussed by the IETF.
Figure 18 IPv6 Site Multihoming
ISP 2001:0410::/32
52681
52680
IPv6c-51
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
IPv6c-52
Implementing Basic Connectivity for IPv6 Information About Implementing Basic Connectivity for IPv6
Figure 19
Existing Application
TCP
UDP
TCP
UDP
IPv4 0x0800
IPv6 0x86dd
IPv4 0x0800
A new API has been defined to support both IPv4 and IPv6 addresses and DNS requests. An application can be upgraded to the new API and still use only the IPv4 protocol stack. The Cisco IOS software supports the dual IPv4 and IPv6 protocol stack technique. When an interface is configured with both an IPv4 and an IPv6 address, the interface will forward both IPv4 and IPv6 traffic. In Figure 20, an application that supports dual IPv4 and IPv6 protocol stacks requests all available addresses for the destination host name www.a.com from a DNS server. The DNS server replies with all available addresses (both IPv4 and IPv6 addresses) for www.a.com. The application chooses an addressin most cases, IPv6 addresses are the default choiceand connects the source node to the destination using the IPv6 protocol stack.
Figure 20 Dual IPv4 and IPv6 Protocol Stack Applications
IPv4 10.1.1.1
IPv6
3ffe:yyyy::1
52684
IPv6c-53
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Configuring IPv6 Addressing and Enabling IPv6 Routing, page 54 Defining and Using IPv6 General Prefixes, page 56 Configuring IPv4 and IPv6 Protocol Stacks, page 60 Configuring IPv6 ICMP Rate Limiting, page 61 Configuring the DRP Extension for Traffic Engineering, page 62 Configuring CEF and dCEF Switching for IPv6, page 63 Configuring NetFlow in IPv6 Environments, page 68 Mapping Host Names to IPv6 Addresses, page 77 Configuring IPv6 ATM and Frame Relay Interfaces, page 79 Configuring DHCP for IPv6, page 84 Verifying Basic IPv6 Connectivity Configuration and Operation, page 93
Note
The ipv6-address argument in the ipv6 address command must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons. The ipv6-prefix argument in the ipv6 address command must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons. The /prefix-length argument in the ipv6 address command is a decimal value that indicates how many of the high-order contiguous bits of the address comprise the prefix (the network portion of the address) A slash mark must precede the decimal value.
Solicited-node multicast group FF02:0:0:0:0:1:FF00::/104 for each unicast and anycast address assigned to the interface All-nodes link-local multicast group FF02::1 All-routers link-local multicast group FF02::2
IPv6c-54
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Note
Restrictions
In Cisco IOS Release 12.2(4)T or later releases, Cisco IOS Release 12.0(21)ST, and Cisco IOS Release 12.0(22)S or later releases, the ipv6 address or ipv6 address eui-64 command can be used to configure multiple IPv6 global and site-local addresses within the same prefix on an interface. Multiple IPv6 link-local addresses on an interface are not supported. Prior to Cisco IOS Releases 12.2(4)T, 12.0(21)ST, and 12.0(22)S, the Cisco IOS command-line interface (CLI) displays the following error message when multiple IPv6 addresses within the same prefix on an interface are configured:
Prefix <prefix-number> already assigned to <interface-type>
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 address ipv6-prefix/prefix-length eui-64 or ipv6 address ipv6-address link-local or ipv6 address ipv6-prefix/prefix-length anycast or ipv6 enable exit ipv6 unicast-routing
5. 6.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface ethernet 0/0
IPv6c-55
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 4
ipv6 address ipv6-prefix/prefix-length eui-64
Purpose Specifies an IPv6 network assigned to the interface and enables IPv6 processing on the interface. or Specifies an IPv6 address assigned to the interface and enables IPv6 processing on the interface. or Automatically configures an IPv6 link-local address on the interface while also enabling the interface for IPv6 processing. The link-local address can be used only to communicate with nodes on the same link.
or
ipv6 address ipv6-address link-local
or
ipv6 address ipv6-prefix/prefix-length anycast
or
ipv6 enable
Example:
Router(config-if)# ipv6 address 2001:0DB8:0:1::/64 eui-64
or
Example:
Router(config-if)# ipv6 address FE80::260:3EFF:FE11:6770 link-local
or
Specifying the ipv6 address eui-64 command configures site-local and global IPv6 addresses with an interface identifier (ID) in the low-order 64 bits of the IPv6 address. Only the 64-bit network prefix for the address needs to be specified; the last 64 bits are automatically computed from the interface ID. Specifying the ipv6 address link-local command configures a link-local address on the interface that is used instead of the link-local address that is automatically configured when IPv6 is enabled on the interface. Specifying the ipv6 address anycast command adds an IPv6 anycast address.
Example:
Router(config-if) ipv6 address 2001:0DB8:1:1:FFFF:FFFF:FFFF:FFFE/64 anycast
Example:
Router(config-if)# ipv6 enable
Step 5
exit
Exits interface configuration mode, and returns the router to global configuration mode.
Example:
Router(config-if)# exit
Step 6
ipv6 unicast-routing
Example:
Router(config)# ipv6 unicast-routing
Manually Based on a 6to4 interface Dynamically, from a prefix received by a DHCP for IPv6 prefix delegation client
More specific prefixes, based on a general prefix, can be used when configuring IPv6 on an interface.
IPv6c-56
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3.
enable configure terminal ipv6 general-prefix prefix-name [ipv6-prefix/prefix-length] [6to4 interface-type interface-number]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Defines a general prefix for an IPv6 address. When defining a general prefix manually, specify both the ipv6-prefix and /prefix-length arguments.
Example:
Router(config)# ipv6 general-prefix my-prefix 2001:0DB8:2222::/48
SUMMARY STEPS
1. 2. 3.
enable configure terminal ipv6 general-prefix prefix-name [ipv6-prefix/prefix-length] [6to4 interface-type interface-number]
IPv6c-57
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Defines a general prefix for an IPv6 address. When defining a general prefix based on a 6to4 interface, specify the 6to4 keyword and the interface-type interface-number argument. When defining a general prefix based on an interface used for 6to4 tunneling, the general prefix will be of the form 2001:a.b.c.d::/48, where a.b.c.d is the IPv4 address of the interface referenced.
Example:
Router(config)# ipv6 general-prefix my-prefix 6to4 ethernet0
Defining a General Prefix with the DHCP for IPv6 Prefix Delegation Client Function
The following task describes how to configure the DHCP for IPv6 client function on an interface and enable prefix delegation on an interface. The delegated prefix is stored in a general prefix.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 dhcp client pd prefix-name [rapid-commit]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
IPv6c-58
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 3
interface type number
Purpose Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface ethernet 0/0
Step 4
Enables the DHCP for IPv6 client process and enables a request for prefix delegation through a specified interface. The delegated prefix is stored in the general prefix prefix-name argument.
Example:
Router(config-if)# ipv6 dhcp client pd dhcp-prefix
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 address prefix-name ipv6-prefix/prefix-length
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface ethernet 0/0
Step 4
Configures an IPv6 prefix name for an IPv6 address and enables IPv6 processing on the interface.
Example:
Router(config-if) ipv6 address my-prefix 2001:0DB8:0:7272::/64
IPv6c-59
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure terminal ipv6 unicast-routing interface type number ip address ip-address mask [secondary] ipv6 address ipv6-prefix/prefix-length [eui-64]
DETAILED STEPS
Command
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
ipv6 unicast-routing
Example:
Router(config)# ipv6 unicast routing
Step 4
Specifies the interface type and number, and enters interface configuration mode.
Example:
Router(config)# interface ethernet 0
IPv6c-60
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command
Step 5
ip address ip-address mask [secondary]
Purpose Specifies a primary or secondary IPv4 address for an interface. Refer to the Configuring IP Addressing chapter of Cisco IOS IP Configuration Guide, Release 12.4, for information on configuring IPv4 addresses. Specifies the IPv6 network assigned to the interface and enables IPv6 processing on the interface.
Note
Example:
Router(config-if)# ip address 192.168.99.1 255.255.255.0
Step 6
Example:
Router(config-if)# ipv6 address 2001:0DB8:c18:1::3/64
See the Configuring IPv6 Addressing and Enabling IPv6 Routing section for more information on configuring IPv6 addresses.
SUMMARY STEPS
1. 2. 3.
IPv6c-61
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Configures the interval and bucket size for IPv6 ICMP error messages.
Example:
Router(config)# ipv6 icmp error-interval 50 20
The milliseconds argument specifies the interval between tokens being added to the bucket. The optional bucketsize argument defines the maximum number of tokens stored in the bucket.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 nd router-preference {high | medium | low}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
IPv6c-62
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 3
interface type number
Purpose Specifies the interface type and number, and enters interface configuration mode.
Example:
Router(config)# interface ethernet 0
Step 4
Example:
Router(config-if)# ipv6 nd router-preference high
Prerequisites
To forward CEFv6 and dCEFv6 traffic, you must configure the forwarding of IPv6 unicast datagrams globally on the router by using the ipv6 unicast-routing global configuration command, and you must configure an IPv6 address and IPv6 processing on an interface by using the ipv6 address interface configuration command. You must enable CEFv4 globally on the router by using the ip cef command in global configuration mode before enabling CEFv6 globally on the router. You must enable dCEFv4 by using the ip cef distributed command in global configuration mode before enabling dCEFv6.
Restrictions
The ipv6 cef and ipv6 cef distributed commands are not supported on the Cisco 12000 series Internet routers because this distributed platform operates only in dCEFv6 mode.
In Cisco IOS Release 12.0(22)S or later releases, the following restrictions apply to nondistributed and distributed architecture platforms configured for CEFv6 and dCEFv6:
Note
By default, the Cisco 12000 series Internet routers support only dCEFv6 (CEF switching is performed by the line cards).
IPv6c-63
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
IPv6 packets that have global or site-local source and destination addresses are CEFv6-switched
or dCEFv6-switched.
IPv6 packets that have link-local source and destination addresses are process-switched. IPv6 packets that are tunneled within manually configured IPv6 tunnels are CEFv6-switched.
Note
dCEFv6-switching of IPv6 packets that are tunneled within manually configured IPv6 tunnels is planned for a later release of the Cisco IOS software.
ATM PVC and ATM LANE Cisco High-Level Data Link Control Ethernet, Fast Ethernet, and Gigabit Ethernet FDDI Frame Relay PVC PPP over Packet-Over-SONET, ISDN, and serial (synchronous and asynchronous) interface types
The following interface and encapsulation types are not supported:
Note
Contact your local Cisco Systems account representative for specific CEFv6 and dCEFv6 hardware restrictions.
IPv6c-64
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3.
enable configure terminal ipv6 cef or ipv6 cef distributed ipv6 cef accounting [non-recursive | per-prefix | prefix-length]
4.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
IPv6c-65
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 3
ipv6 cef
Purpose Enables CEFv6 globally on the router. or Enables dCEFv6 globally on the router.
or
ipv6 cef distributed
Example:
Router(config)# ipv6 cef
or
Example:
Router(config)# ipv6 cef distributed
Step 4
Example:
Router(config)# ipv6 cef accounting
Network accounting for CEFv6 and dCEFv6 enables you to better understand CEFv6 traffic patterns within your network by collecting statistics specific to CEFv6 and dCEFv6 traffic. For example, network accounting for CEFv6 and dCEFv6 enables you to collect information such as the number of packets and bytes switched to a destination or the number of packets switched through a destination. The optional per-prefix keyword enables the collection of the number of packets and bytes express forwarded to an IPv6 destination (or IPv6 prefix). The optional prefix-length keyword enables the collection of the number of packets and bytes express forwarded to an IPv6 prefix length. When CEFv6 is enabled globally on the router, accounting information is collected at the RP; when dCEFv6 is enabled globally on the router, accounting information is collected at the line cards.
Note
Prerequisites
To use Unicast RPF, enable CEF switching or dCEF switching in the router. There is no need to configure the input interface for CEF switching. As long as CEF is running on the router, individual interfaces can be configured with other switching modes.
Note
It is very important for CEF to be configured globally in the router. Unicast RPF will not work without CEF.
IPv6c-66
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Restrictions
Unicast RPF should not be used on interfaces that are internal to the network. Internal interfaces are likely to have routing asymmetry, meaning that there are multiple routes to the source of a packet. Unicast RPF should be applied only where there is natural or configured symmetry. For example, routers at the edge of the network of an Internet service provider (ISP) are more likely to have symmetrical reverse paths than routers that are in the core of the ISP network. Routers that are in the core of the ISP network have no guarantee that the best forwarding path out of the router will be the path selected for packets returning to the router. Therefore, we do not recommend that you apply Unicast RPF where there is a chance of asymmetric routing. It is simplest to place Unicast RPF only at the edge of a network or, for an ISP, at the customer edge of the network.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 verify unicast source reachable-via {rx | any} [allow-default] [allow-self-ping] [list]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface atm 0
Step 4
ipv6 verify unicast source reachable-via {rx | any} [allow-default] [allow-self-ping] [list]
Verifies that a source address exists in the FIB table and enables Unicast RPF.
Example:
Router(config-if)# ipv6 verify unicast source reachable-via any
IPv6c-67
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Exporting NetFlow Statistics, page 68 Configuring and Customizing the NetFlow Cache, page 69 Managing NetFlow Statistics, page 71 Configuring an Aggregation Cache, page 72 Verifying Aggregation Cache Configuration and Data Export, page 74
SUMMARY STEPS
1. 2. 3. 4. 5. 6.
enable configure terminal ipv6 flow-export version 9 [bgp-nexthop] [origin-as [bgp-nexthop] | peer-as [bgp-nexthop]] ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix} enabled ipv6 flow-export template {refresh-rate packet-refresh-rate | timeout timeout-value}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config-if)# ipv6 flow-export version 9 bgp-nexthop
IPv6c-68
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 4
ipv6 flow-export destination ip-address udp-port
Example:
Router(config-if)# ipv6 flow-export destination 10.0.101.254 9991
Step 5
Example:
Router(config-flow-cache)# ipv6 flow-export template timeout 60
Sets the timeout rate to 60 minutes. Sets the refresh rate to 30 packets.
Step 6
Example:
Router(config-flow-cache)# ipv6 flow-export template refresh-rate 30
Step 7
Example:
Router(config-flow-cache)# ipv6 flow-export template options export-stats
Export statistics reports how many export packets have been sent and how many flows are exported. (Optional) Enables IPv6 flow capture for incoming (ingress) or outgoing (egress) packets. Two commands for ingress and egress can be specified on the same interface. If a switched packet belongs to a flow that is captured at both ingress and egress, it will be accounted twice.This command must be entered on each interface where NetFlow capture is needed.
Step 8
Example:
Router(config-flow-cache)# ipv6 flow ingress
Customize the number of entries in the NetFlow cache Customize the timeout. Customize the MPLS parameters. Customizing the NetFlow Cache, page 70
These options are all optional and are described in the following section:
IPv6c-69
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 1. 2. 3.
enable configure terminal ipv6 flow-cache entries number ipv6 flow-cache timeout {active minutes | inactive seconds} ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 flow-cache entries number
Changes the number of entries maintained in the NetFlow cache. The number of entries can be from 1024 to 524288. The default is 65536.
IPv6c-70
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 4
ipv6 flow-cache timeout {active minutes | inactive seconds}
Example:
Router(config)# ipv6 flow-cache timeout active 10
Step 5
Example:
Router(config)# ipv6 flow-aggregation cache mpls
Caution
Cisco recommends that you not change the number of NetFlow cache entries. Improper use of this feature could cause network problems. To return to the default NetFlow cache entries, use the no ip flow-cache entries global configuration command.
SUMMARY STEPS
1. 1. 2.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
IPv6c-71
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 2
show ip cache flow
Example:
Router# show ip cache flow
Step 3
Example:
Router# clear ip flow stats
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8.
enable configure terminal ipv6 flow-export destination ip-address udp-port ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix} cache {entries number | timeout {active minutes | inactive seconds}} cache {entries number | timeout {active minutes | inactive seconds}} ipv6 flow-export destination ip-address udp-port enabled Purpose Enables privileged EXEC mode.
Command
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Enables the exporting of information in NetFlow cache entries to a specific address or port.
Example:
Router# ipv6 flow-export destination 10.0.101.254 9991
IPv6c-72
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command
Step 4
ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix}
Purpose Enters aggregation cache configuration mode and enables an aggregation cache scheme (as, destination-prefix, prefix, protocol-port, or source-prefix).
Example:
Router(config)# ipv6 flow-aggregation cache as
Step 5
Specifies the number (in this example, 2046) of cache entries to allocate for the Autonomous System aggregation cache.
Example:
Router(config-flow-cache)# cache entries 2046
Step 6
Specifies the number of seconds (in this example, 199) that an inactive entry is allowed to remain in the aggregation cache before it is deleted.
Example:
Router(config-flow-cache)# cache timeout inactive 199
Step 7
Specifies the number of minutes (in this example, 45) that an active entry is active.
Example:
Router(config-flow-cache)# cache timeout active 45
Step 8
Example:
Router(config-flow-cache)# ipv6 flow-export destination 2001:0DB8::250:8bff:fee8:f800
Step 9
enabled
Example:
Router(config-flow-cache)# enabled
IPv6c-73
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Example:
Router# show ipv6 flow cache aggregation
To confirm data export, use the following command in privileged EXEC mode: Command
show ipv6 flow export [template]
Purpose Displays the statistics for the data export including the main cache and all other enabled caches.
Example:
Router# show ipv6 flow export template
Configuring the Minimum Mask of a Prefix Aggregation Scheme (Optional) Configuring the Minimum Mask of a Destination-Prefix Aggregation Scheme (Optional) Configuring the Minimum Mask of a Source-Prefix Aggregation Scheme (Optional)
SUMMARY STEPS
1. 2. 3. 4. 5.
enable configure terminal ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix} mask {destination | source} minimum value mask {destination | source} minimum value
IPv6c-74
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 flow-aggregation cache prefix
Step 4
Example:
Router(config-flow-cache)# mask source minimum value
Step 5
Example:
Router(config-flow-cache)# mask destination minimum value
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix} mask {destination | source} minimum value
IPv6c-75
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 flow-aggregation cache destination-prefix
Step 4
Example:
Router(config-flow-cache)# mask destination minimum 32
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal ipv6 flow-aggregation cache {as | bgp-nexthop | destination-prefix | prefix | protocol-port | source-prefix} mask {destination | source} minimum value
IPv6c-76
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 flow-aggregation cache source-prefix
Step 4
Example:
Router(config-flow-cache)# mask source minimum 5
Note
If the minimum mask has not been explicitly configured, no minimum mask information is displayed. The default value of the minimum mask is zero. The configurable range for the minimum mask is from 1 to 32. An appropriate value should be chosen by the user depending on the traffic. A higher value of the minimum mask will provide more detailed network addresses, but it may also result in increased number of flows in the aggregation cache.
IPv6c-77
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Similar to IPv4, IPv6 uses a naming scheme that allows a network device to be identified by its location within a hierarchical name space that provides for domains. Domain names are joined with periods (.) as the delimiting characters. For example, Cisco is a commercial organization that is identified by a com domain name, so its domain name is cisco.com. A specific device in this domain, the FTP server, for example, is identified as ftp.cisco.com.
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal ipv6 host name [port] ipv6-address1 [ipv6-address2...ipv6-address4] ip domain-name name or ip domain-list name ip name-server server-address1 [server-address2...server-address6] ip domain-lookup
5. 6.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 host cisco-sj 2001:0DB8:20:1::12
Typically, it is easier to refer to network devices by symbolic names rather than numerical addresses (services such as Telnet can use host names or addresses). Host names and IPv6 addresses can be associated with one another through static or dynamic means. Manually assigning host names to addresses is useful when dynamic mapping is not available.
IPv6c-78
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 4
ip domain-name name
Purpose (Optional) Defines a default domain name that the Cisco IOS software will use to complete unqualified host names. or (Optional) Defines a list of default domain names to complete unqualified host names.
or
ip domain-list name
Example:
Router(config)# ip domain-name cisco.com
or
Example:
Router(config)# ip domain-list cisco1.com
You can specify a default domain name that the Cisco IOS software will use to complete domain name requests. You can specify either a single domain name or a list of domain names. Any host name that does not contain a complete domain name will have the default domain name you specify appended to it before the name is looked up. The ip domain-name and ip domain-list commands are used to specify default domain names that can be used by both IPv4 and IPv6. Specifies one or more hosts (up to six) that can function as a name server to supply name information for DNS. The server-address argument can be either an IPv4 or IPv6 address.
Note
Step 5
Example:
Router(config)# ip name-server 2001:0DB8::250:8bff:fee8:f800 2001:0DB8:0:f004::1
Note
Step 6
ip domain-lookup
Example:
Router(config)# ip domain-lookup
The name lookup system can be statically configured using the commands described in this task. Some other functions in Cisco IOS, such as DHCP for IPv6 (see Configuring DHCP for IPv6, page 84) can dynamically modify the state of the name lookup system. Use the show hosts command to display the current status of the name lookup system.
Note
This task shows how to configure both ATM and Frame Relay PVCs and many of the steps are labeled optional because many networks will require only one type of PVC to be configured. The steps in this section are not applicable to ATM LAN Emulation (LANE).
IPv6c-79
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
IPv6 for Cisco IOS Software Support for Wide-Area Networking Technologies
IPv6 for Cisco IOS software supports wide-area networking technologies such as Cisco High-Level Data Link Control (HDLC), PPP over Packet Over SONET (PoS), ISDN, and serial (synchronous and asynchronous) interface types, ATM PVCs, and Frame Relay PVCs. These technologies function the same in IPv6 as they do in IPv4IPv6 does not enhance the technologies in any way. However, new commands for mapping protocol (network-layer) addresses to ATM and Frame Relay PVCs have been introduced for IPv6.
Note
Given that IPv6 supports multiple address types, and depending on which applications or protocols are configured on a point-to-multipoint interface, you may need to configure multiple explicit mappings between the IPv6 addresses of the interface and the PVC used to reach the addresses. For example, explicitly mapping both the link-local and global IPv6 address of a point-to-multipoint interface to the PVC that the interface terminates ensures that the Interior Gateway Protocol (IGP) configured on the interface forwards traffic to and from the PVC correctly. In IPv4, the Inverse Address Resolution Protocol (Inverse ARP) is used to dynamically map the network-layer address of a node at the far end of a PVC to that PVC. Refer to the Configuring ATM and Configuring Frame Relay chapters of Cisco IOS Wide-Area Networking Configuration Guide, Release 12.4, for information on configuring Inverse ARP. In IPv6, Inverse Neighbor Discovery is used to dynamically map the global IPv6 address of a node at the far end of a PVC to that PVC.
Note
Support for Inverse Neighbor Discovery is not in the current releases of the Cisco IOS software. Inverse Neighbor Discovery will be supported in a later release of the Cisco IOS software. Refer to the IPv6 for Cisco IOS Start Here document for Cisco IOS software release specifics for supported IPv6 features.
SUMMARY STEPS
1. 2. 3. 4.
IPv6c-80
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
5. 6. 7. 8. 9.
protocol ipv6 ipv6-address [[no] broadcast]] exit ipv6 address ipv6-address {/prefix-length | link-local} exit interface type number
10. frame-relay map ipv6 ipv6-address dlci [broadcast] [cisco] [ietf] [payload-compression] 11. ipv6 address ipv6-address {/prefix-length | link-local}
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface atm 0
Step 4
(Optional) Creates or assigns a name to an ATM PVC and places the router in ATM VC configuration mode.
Example:
Router(config-if)# pvc 1/32
Refer to the pvc command in Cisco IOS Wide-Area Networking Command Reference, Release 12.4, for information on supported arguments and keywords.
Step 5
(Optional) Maps the IPv6 address of a remote node to the PVC used to reach the address.
Example:
Router(config-if-atm-vc)# protocol ipv6 2001:0DB8:2222:1003::45
The ipv6-address argument must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons. The optional [no] broadcast keywords indicate whether the map entry should be used when IPv6 multicast packets (not broadcast packets) are sent to the interface. Pseudobroadcasting is supported. The [no] broadcast keywords in the protocol ipv6 command take precedence over the broadcast command configured on the same ATM PVC.
Step 6
exit
Exits ATM VC configuration mode, and returns the router to interface configuration mode.
Example:
Router(config-if-atm-vc)# exit
IPv6c-81
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 7
ipv6 address ipv6-address {/prefix-length | link-local}
Purpose Specifies an IPv6 network assigned to the interface and enables IPv6 processing on the interface.
Example:
Router(config-if)# ipv6 address 2001:0DB8:2222:1003::72/64
In the context of this task, a link-local address of the node at the other end of the link is required for the Interior Gateway Protocol (IGP) used in the network. Specifying the ipv6 address command with the link-local keyword configures a link-local address on the interface that is used instead of the link-local address that is automatically configured when IPv6 is enabled on the interface.
Step 8
exit
Exits interface configuration mode, and returns the router to global configuration mode.
Example:
Router(config-if)# exit
Step 9
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface serial 3
IPv6c-82
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 10
frame-relay map ipv6 ipv6-address dlci [broadcast] [cisco] [ietf] [payload-compression]
Purpose (Optional) Maps the IPv6 address of a remote node to the data-link connection identifier (DLCI) of the PVC used to reach the address.
Example:
Router(config-if)# frame-relay map ipv6 FE80::E0:F727:E400:A 17 broadcast
The ipv6-address argument must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons. The dlci argument specifies the DLCI number used to reach the specified IPv6 address on the interface. The acceptable range is from 16 to 1007. The optional broadcast keyword specifies that IPv6 multicast packets (not broadcast packets) should be forwarded to this IPv6 address when multicast is not enabled. (Refer to the frame-relay multicast-dlci command in the Frame Relay Commands chapter of Cisco IOS Wide-Area Networking Command Reference, Release 12.4, for information on defining a multicast DLCI.) The optional cisco keyword specifies the Cisco form of Frame Relay encapsulation. The optional ietf keyword specifies the IETF form of Frame Relay encapsulation. The optional payload-compression keyword specifies payload compression. (Refer to the frame-relay map ipv6 command in the IPv6 for Cisco IOS Command Reference document for subordinate keywords and arguments related to the payload-compression keyword.)
Step 11
Specifies an IPv6 network assigned to the interface and enables IPv6 processing on the interface.
Example:
Router(config-if)# ipv6 address 2001:0DB8:2222:1044::46/64
In the context of this task, a link-local address of the node at the other end of the link is required for the IGP used in the network. Specifying the ipv6 address command with the link-local keyword configures a link-local address on the interface that is used instead of the link-local address that is automatically configured when IPv6 is enabled on the interface.
IPv6c-83
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Configuring the DHCP for IPv6 Server Function, page 84 Configuring the DHCP for IPv6 Client Function, page 85 Configuring DHCP for IPv6 Relay Agent, page 86 Configuring a Database Agent for the Server Function, page 87 Configuring the Stateless DHCP for IPv6 Function, page 88 Restarting the DHCP for IPv6 Client on an Interface, page 91 Deleting Automatic Client Bindings from the DHCP for IPv6 Binding Table, page 92 Troubleshooting DHCP for IPv6, page 92
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
enable configure terminal ipv6 dhcp pool poolname domain-name domain dns-server ipv6-address prefix-delegation ipv6-prefix/prefix-length client-DUID [iaid iaid] [lifetime] prefix-delegation pool poolname [lifetime] exit interface type number
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
IPv6c-84
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 3
ipv6 dhcp pool poolname
Purpose Configures a DHCP for IPv6 configuration information pool and enters DHCP for IPv6 pool configuration mode.
Example:
Router(config)# ipv6 dhcp pool pool1
Step 4
domain-name domain
Example:
Router(config-dhcp)# domain-name domain1.com
Step 5
dns-server ipv6-address
Specifies the DNS IPv6 servers available to a DHCP for IPv6 client.
Example:
Router(config-dhcp)# dns-server 2001:0DB8:3000:3000::42
Step 6
Example:
Router(config-dhcp)# prefix-delegation 2001:0DB8:1263::/48 0005000400F1A4D070D03
Step 7
Specifies a named IPv6 local prefix pool from which prefixes are delegated to DHCP for IPv6 clients.
Example:
Router(config-dhcp)# prefix-delegation pool prefix-pool lifetime 1800 600
Step 8
exit
Example:
Router(config-if)# exit
Exits DHCP for IPv6 pool configuration mode configuration mode, and returns the router to global configuration mode. Specifies an interface type and number, and places the router in interface configuration mode.
Step 9
Example:
Router(config)# interface serial 3
Step 10
Example:
Router(config-if)# ipv6 dhcp server dhcp-pool
IPv6c-85
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 dhcp client pd prefix-name [rapid-commit]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface ethernet 0/0
Step 4
Enables the DHCP for IPv6 client process and enables a request for prefix delegation through a specified interface.
Example:
Router(config-if)# ipv6 dhcp client pd dhcp-prefix
IPv6c-86
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3. 4.
enable configure terminal interface type number ipv6 dhcp relay destination ipv6-address [interface-type interface-number]
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface ethernet4/2
Step 4
ipv6 dhcp relay destination ipv6-address [interface-type interface-number] Example: Router(config-if) ipv6 dhcp relay destination FE80::250:A2FF:FEBF:A056 ethernet4/3
Specifies a destination address to which client messages are forwarded and enables DHCP for IPv6 relay service on the interface.
SUMMARY STEPS
1. 2. 3.
enable configure terminal ipv6 dhcp database agent-URL [write-delay seconds] [timeout seconds]
IPv6c-87
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Example:
Router(config)# ipv6 dhcp database tftp://10.0.0.1/dhcp-binding
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8. 9.
enable configure terminal ipv6 dhcp pool poolname dns-server ipv6-address domain-name domain exit interface type number ipv6 dhcp server poolname [rapid-commit] [preference value] [allow-hint] ipv6 nd other-config-flag
IPv6c-88
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Configures a DHCP for IPv6 configuration information pool and enters DHCP for IPv6 pool configuration mode.
Example:
Router(config)# ipv6 dhcp pool dhcp-pool
Step 4
dns-server ipv6-address
Specifies the DNS IPv6 servers available to a DHCP for IPv6 client.
Example:
Roputer(config-dhcp) dns-server 2001:0DB8:3000:3000::42
Step 5
domain-name domain
Example:
Router(config-dhcp)# domain-name domain1.com
Step 6
exit
Example:
Router(config-if)# exit
Exits DHCP for IPv6 pool configuration mode configuration mode, and returns the router to global configuration mode. Specifies an interface type and number, and places the router in interface configuration mode.
Step 7
Example:
Router(config)# interface serial 3
Step 8
Example:
Router(config-if)# ipv6 dhcp server dhcp-pool
Step 9
ipv6 nd other-config-flag
Example:
Router(config-if)# ipv6 nd other-config-flag
IPv6c-89
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3. 4.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
Specifies an interface type and number, and places the router in interface configuration mode.
Example:
Router(config)# interface serial 3
Step 4
Example:
Router(config-if)# ipv6 address autoconfig
Enables automatic configuration of IPv6 addresses using stateless autoconfiguration on an interface and enables IPv6 processing on the interface.
IPv6c-90
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
SUMMARY STEPS
1. 2. 3.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
configure terminal
Example:
Router# configure terminal
Step 3
ipv6 source-route
Example:
Router(config)# ipv6 source-route
SUMMARY STEPS
1. 2.
IPv6c-91
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# clear ipv6 dhcp client Ethernet 1/0
Deleting Automatic Client Bindings from the DHCP for IPv6 Binding Table
This task explains how to delete automatic client bindings from the DHCP for IPv6 binding table.
SUMMARY STEPS
1. 2.
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
clear ipv6 dhcp binding [ipv6-address] Example: Router# clear ipv6 dhcp binding
Deletes automatic client bindings from the DHCP for IPv6 binding table.
SUMMARY STEPS
1. 2. 3.
IPv6c-92
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router> enable
Step 2
Example:
Router# debug ipv6 dhcp
Step 3
Example:
Router# debug ipv6 dhcp database
SUMMARY STEPS
1. 2. 3. 4. 5. 6. 7. 8.
enable show ipv6 interface [brief] [[interface-type interface-number] [prefix]] show ipv6 neighbors [interface-type interface-number | ipv6-address] show ipv6 route [ipv6-address | ipv6-prefix/prefix-length | protocol] show ipv6 traffic show frame-relay map show atm map show ipv6 dhcp
IPv6c-93
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
9.
10. show ipv6 dhcp database [agent-URL] 11. show ipv6 dhcp interface [interface-type interface-number] 12. show ipv6 dhcp pool [poolname] 13. show hosts 14. enable 15. show running-config
DETAILED STEPS
Command or Action
Step 1
enable
Example:
Router# enable
Step 2
Example:
Router# show ipv6 interface ethernet 0
Displays information about the status of IPv6 neighbor redirect messages, IPv6 neighbor discovery messages, and stateless autoconfiguration.
Step 3
Example:
Router# show ipv6 neighbors ethernet 2
Step 4
Example:
Router# show ipv6 route
Step 5
Example:
Router# show ipv6 traffic
Step 6
Displays the current map entries and information about the Frame Relay connections.
Example:
Router# show frame-relay map
Step 7
Displays the list of all configured ATM static maps to remote hosts on an ATM network and on ATM bundle maps.
Example:
Router# show atm map
IPv6c-94
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Command or Action
Step 8
show ipv6 dhcp
Example:
Router# show ipv6 dhcp
Step 9
Displays automatic client bindings from the DHCP for IPv6 database.
Example:
Router# show ipv6 dhcp binding
Step 10
show ipv6 dhcp database [agent-URL] Example: Router# show ipv6 dhcp database
Step 11
Example:
Router# show ipv6 dhcp interface
Step 12
Example:
Router# show ipv6 dhcp pool
Step 13
show hosts
Example:
Router# show hosts
Displays the default domain name, the style of name lookup service, a list of name server hosts, and the cached list of host names and addresses. Enables privileged EXEC mode.
Step 14
enable
Example:
Router> enable
Step 15
show running-config
Example:
Router# show running-config
Output Examples
This section provides the following output examples:
Sample Output for the show ipv6 interfaces Command Sample Output for the show ipv6 neighbors Command Sample Output for the show ipv6 route Command Sample Output for the show ipv6 traffic Command Sample Output for the show frame-relay map Command Sample Output for the show atm map Command
IPv6c-95
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Sample Output for the show ipv6 dhcp Command Sample Output for the show ipv6 dhcp binding Command Sample Output for the show ipv6 dhcp database Command Sample Output for the show ipv6 dhcp interface Command Sample Output for the show ipv6 dhcp pool Command Sample Output for the show running-config Command Sample Output for the show hosts Command
Note
For a description of each output display field, refer to the show ipv6 interface command in the IPv6 for Cisco IOS Command Reference document.
IPv6c-96
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Note
For a description of each output display field, refer to the show ipv6 neighbors command in the IPv6 for Cisco IOS Command Reference.
Note
For a description of each output display field, refer to the show ipv6 route command in the IPv6 for Cisco IOS Command Reference.
Note
For a description of each output display field, refer to the show ipv6 traffic command in the IPv6 for Cisco IOS Command Reference.
IPv6c-97
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
IPv6c-98
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Prefix: 3FFE:C00:C18:1::/72 preferred lifetime 240, valid lifetime expires at Nov 09 2002 02:02 AM (54246 Prefix: 3FFE:C00:C18:2::/72 preferred lifetime 300, valid lifetime expires at Nov 09 2002 02:03 AM (54258 Prefix: 3FFE:C00:C18:3::/72 preferred lifetime 280, valid lifetime
IPv6c-99
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
List of known servers: Address: FE80::202:FCFF:FEA1:7439, DUID 000300010002FCA17400 Preference: 20 IA PD: IA ID 0x00040001, T1 120, T2 192 Prefix: 3FFE:C00:C18:1::/72 preferred lifetime 240, valid lifetime 54321 expires at Nov 08 2002 09:10 AM (54319 seconds) Prefix: 3FFE:C00:C18:2::/72 preferred lifetime 300, valid lifetime 54333 expires at Nov 08 2002 09:11 AM (54331 seconds) Prefix: 3FFE:C00:C18:3::/72 preferred lifetime 280, valid lifetime 51111 expires at Nov 08 2002 08:17 AM (51109 seconds) DNS server: 2001:0DB8:1001::1 DNS server: 2001:0DB8:1001::2 Domain name: domain1.net Domain name: domain2.net Domain name: domain3.net Prefix name is cli-p1 Rapid-Commit is enabled
IPv6c-100
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
Note
Display text was omitted from the example. In the following example, the show running-config privileged EXEC command is used to verify that CEFv6 and network accounting for CEFv6 have been enabled globally on a nondistributed architecture platform, and that CEFv6 has been enabled on an IPv6 interface. The following output shows that both that CEFv6 and network accounting for CEFv6 have been enabled globally on the router, and that CEFv6 has also been enabled on Ethernet interface 0:
Router# show running-config Building configuration... Current configuration : 22324 bytes ! ! Last configuration change at 14:59:38 PST Tue Jan 16 2001 ! NVRAM config last updated at 04:25:39 PST Tue Jan 16 2001 by bird ! hostname Router ! ip cef ipv6 unicast-routing ipv6 cef ipv6 cef accounting prefix-length ! ! interface Ethernet0 ip address 10.4.9.11 255.0.0.0 media-type 10BaseT ipv6 address 2001:0DB8:C18:1::/64 eui-64 !
Note
IPv6c-101
Implementing Basic Connectivity for IPv6 How to Implement Basic Connectivity for IPv6
In the following example, the show running-config command in privileged EXECmode is used to verify that dCEFv6 and network accounting for dCEFv6 have been enabled globally on a distributed architecture platform, such as the Cisco 7500 series routers. The following example shows that both dCEFv6 and network accounting for CEFv6 have been enabled globally on the router.
Note
dCEFv6 is enabled by default on the Cisco 12000 series Internet routers and disabled by default on the Cisco 7500 series routers. Therefore, output from the show running-config privileged EXEC command on the Cisco 12000 series does not show whether dCEFv6 is configured globally on the router. The following output is from a Cisco 7500 series router.
Router# show running-config Building configuration... Current configuration : 22324 bytes ! ! Last configuration change at 14:59:38 PST Tue Jan 16 2001 ! NVRAM config last updated at 04:25:39 PST Tue Jan 16 2001 by bird ! hostname Router ! ip cef distributed ipv6 unicast-routing ipv6 cef distributed ipv6 cef accounting prefix-length
Note
Display text was omitted from the output. In the following example, the show running-config privileged EXEC command is used to verify static host name-to-address mappings, default domain names, and name servers in the host name cache, and to verify that the DNS service is enabled:
Router# show running-config Building configuration... ! ipv6 host cisco-sj 2001:0DB8:20:1::12 ! ip domain-name cisco.com ip domain-lookup ip name-server 2001:0DB8:C01F:768::1
Note
IPv6c-102
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
temp - temporary, perm - permanent NA - Not Applicable None - Not defined Host sdfasfd Port None Flags Age Type (temp, UN) 0 IPv6 Address(es)
IPv6 Addressing and IPv6 Routing Configuration Example, page 103 Dual Protocol Stacks Configuration Example, page 104 IPv6 ICMP Rate Limiting Configuration: Example, page 104 CEFv6 and dCEFv6 Configuration: Example, page 104 Configuring NetFlow in IPv6 Environments: Example, page 105 Host Name-to-Address Mappings Configuration: Example, page 105 IPv6 Address to ATM and Frame Relay PVC Mapping Configuration Examples, page 106 DHCP for IPv6 Configuration Examples, page 108
IPv6c-103
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
In the following example, multiple IPv6 global addresses within the prefix 2001:0DB8::/64 are configured on Ethernet interface 0:
interface ethernet 0 ipv6 address 2001:0DB8::1/64 ipv6 address 2001:0DB8::/64 eui-64
Note
In the following example, both dCEFv6 and network accounting for dCEFv6 have been enabled globally on a distributed architecture router. The forwarding of IPv6 unicast datagrams has been configured globally on the router with the ipv6 unicast-routing global configuration command and that dCEFv4 has been configured globally on the router with the ip cef distributed command in global configuration mode.
IPv6c-104
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
ip cef distributed ipv6 unicast-routing ipv6 cef distributed ipv6 cef accounting prefix-length
The following example shows the configuration for a loopback source interface. The loopback interface has the IPv6 address 2001:0DB8:1:1:FFFF:FFFF:FFFF:FFFE/64 and is used by the serial interface in slot 5, port 0.
Router# configure terminal Router(config)# interface loopback0 Router(config-if)# ipv6 address 2001:0DB8:1:1:FFFF:FFFF:FFFF:FFFE/64 Router(config-if)# exit Router(config)# interface serial 5/0:0 Router(config-if)# ip unnumbered loopback0 Router(config-if)# encapsulation ppp Router(config-if)# ipv6 flow cache Router(config-if)# exit Router(config)# ipv6 flow-export source loopback0 Router(config)# exit
The following example shows a router configured to capture the first 64 bits of the source address for packets entering this interface:
Router(config)# interface FastEthernet6/3.0 Router(config-subif)# ipv6 flow mask source macimum 64
IPv6c-105
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
IPv6 Address to ATM and Frame Relay PVC Mapping Configuration Examples
This section provides the following IPv6 ATM and Frame Relay PVC mapping configuration examples:
IPv6 ATM PVC Mapping Configuration ExamplePoint-to-Point Interface IPv6 ATM PVC Mapping Configuration ExamplePoint-to-Multipoint Interface IPv6 Frame Relay PVC Mapping Configuration ExamplePoint-to-Point Interface IPv6 Frame Relay PVC Mapping Configuration ExamplePoint-to-Multipoint Interface
Router 2 Configuration
interface ATM0 no ip address ! interface ATM0.132 point-to-point pvc 1/32 encapsulation aal5snap ! ipv6 address 2001:0DB8:2222:1003::45/64
IPv6c-106
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
Router 2 Configuration
interface ATM0 no ip address pvc 1/32 protocol ipv6 FE80::60:3E47:AC8:C broadcast protocol ipv6 2001:0DB8:2222:1003::72 encapsulation aal5snap ! ipv6 address 2001:0DB8:2222:1003::45/64
Note
Given that each PVC in the following example is configured on a different point-to-point subinterface, the configuration in the following example can also be used in a network that is not fully meshed. Additionally, configuring each PVC on a different point-to-point subinterface can help simplify your routing protocol configuration. However, the configuration in the following example requires more than one IPv6 network, whereas configuring each PVC on point-to-multipoint interfaces requires only one IPv6 network.
Router A Configuration
interface Serial3 encapsulation frame-relay ! interface Serial3.17 point-to-point description to Router B ipv6 address 2001:0DB8:2222:1017::46/64 frame-relay interface-dlci 17 ! interface Serial3.19 point-to-point description to Router C ipv6 address 2001:0DB8:2222:1019::46/64 frame-relay interface-dlci 19
Router B Configuration
interface Serial5 encapsulation frame-relay ! interface Serial5.17 point-to-point description to Router A ipv6 address 2001:0DB8:2222:1017::73/64 frame-relay interface-dlci 17 ! interface Serial5.18 point-to-point description to Router C ipv6 address 2001:0DB8:2222:1018::73/64 frame-relay interface-dlci 18
IPv6c-107
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
Router C Configuration
interface Serial0 encapsulation frame-relay ! interface Serial0.18 point-to-point description to Router B ipv6 address 2001:0DB8:2222:1018::72/64 frame-relay interface-dlci 18 ! interface Serial0.19 point-to-point description to Router A ipv6 address 2001:0DB8:2222:1019::72/64 frame-relay interface-dlci 19
Router B Configuration
interface Serial5 encapsulation frame-relay ipv6 address 2001:0DB8:2222:1044::73/64 frame-relay map ipv6 FE80::60:3E59:DA78:C 17 broadcast frame-relay map ipv6 FE80::60:3E47:AC8:8 18 broadcast frame-relay map ipv6 2001:0DB8:2222:1044::46 17 frame-relay map ipv6 2001:0DB8:2222:1044::72 18
Router C Configuration
interface Serial10 encapsulation frame-relay ipv6 address 2001:0DB8:2222:1044::72/64 frame-relay map ipv6 FE80::60:3E59:DA78:C 19 frame-relay map ipv6 FE80::E0:F727:E400:A 18 frame-relay map ipv6 2001:0DB8:2222:1044::46 frame-relay map ipv6 2001:0DB8:2222:1044::73
broadcast broadcast 19 18
Configuring the DHCP for IPv6 Server Function: Example, page 109 Configuring the DHCP for IPv6 Client Function: Example, page 109
IPv6c-108
Implementing Basic Connectivity for IPv6 Configuration Examples for Implementing Basic Connectivity for IPv6
Configuring a Database Agent for the Server Function: Example, page 109 Configuring the Stateless DHCP for IPv6 Function: Example, page 110
IPv6c-109
The client has no obvious DHCP for IPv6 configuration. However, the ipv6 address autoconfig command on the uplink to the service provider (Ethernet 0/0) causes two things to happen:
Addresses are autoconfigured on the interface, based on prefixes in RA messages received from the server. If received RA messages have the other configuration flag set, the interface will attempt to acquire other (for example, nonaddress) configuration from any DHCP for IPv6 servers.
Where to Go Next
If you want to implement IPv6 routing protocols, refer to the Implementing RIP for IPv6, Implementing IS-IS for IPv6, or Implementing Multiprotocol BGP for IPv6 modules.
Additional References
For additional information related to implementing IPv6 basic connectivity, see the following sections:
Related Documents, page 111 Standards, page 111 MIBs, page 112 RFCs, page 112 Technical Assistance, page 113
IPv6c-110
Related Documents
Related Topic IP addressing and IP services configuration tasks IP addressing and IP services commands: complete command syntax, command mode, defaults, usage guidelines, and examples Switching configuration tasks, including CEF and NetFlow Switching commands: complete command syntax, command mode, defaults, usage guidelines, and examples WAN configuration tasks WAN commands: complete command syntax, command mode, defaults, usage guidelines, and examples IPv6 supported feature list Document Title Configuring IP Addressing and Configuring IP Services chapters in the Cisco IOS IP Configuration Guide, Release 12.4 Cisco IOS IP Command Reference, Volume 1 of 4: Addressing and Services, Release 12.4 Cisco IOS Switching Services Configuration Guide, Release 12.4 Cisco IOS Switching Services Command Reference, Release 12.4
Cisco IOS Wide-Area Networking Configuration Guide, Release 12.4 Cisco IOS Wide-Area Networking Command Reference, Release 12.4 Start Here: Cisco IOS Software Release Specifics for IPv6 Features
IPv6 commands: complete command syntax, command Cisco IOS IPv6 Command Reference mode, defaults, usage guidelines, and examples IPv4 configuration and command reference information Cisco IOS Release 12.4 Configuration Guides and Command References
Standards
Standards Title No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
IPv6c-111
MIBs
MIBs
MIBs Link To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: http://www.cisco.com/go/mibs
CISCO-IP-FORWARD-MIB CISCO-IP-MIB
RFCs
RFCs RFC 1886 RFC 1981 RFC 2373 RFC 2374 RFC 2460 RFC 2461 RFC 2462 RFC 2463 RFC 2464 RFC 2467 RFC 2472 RFC 2492 RFC 2590 RFC 3152 RFC 3162 RFC 3315 RFC 3513 RFC 3633 RFC 3646 Title DNS Extensions to Support IP version 6 Path MTU Discovery for IP version 6 IP Version 6 Addressing Architecture An Aggregatable Global Unicast Address Format Internet Protocol, Version 6 (IPv6) Specification Neighbor Discovery for IP Version 6 (IPv6) IPv6 Stateless Address Autoconfiguration Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification Transmission of IPv6 Packets over Ethernet Networks Transmission of IPv6 Packets over FDDI Networks IP Version 6 over PPP IPv6 over ATM Networks Transmission of IPv6 Packets over Frame Relay Networks Specification Delegation of IP6.ARPA RADIUS and IPv6 Dynamic Host Configuration Protocol for IPv6 Internet Protocol Version 6 (IPv6) Addressing Architecture IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6 DNS Configuration Options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
IPv6c-112
Technical Assistance
Description Technical Assistance Center (TAC) home page, containing 30,000 pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content. Link http://www.cisco.com/public/support/tac/home.shtml
IPv6c-113
IPv6c-114