Ipv6 Cisco IOS
Contents
This article is under development....
This article will contain information about IPv6 on Cisco IOS equipment.
IPv6 Addresses
IPv6 Address Formats
IPv6 addresses are represented as a series of 16-bit hexadecimal fields separated by colons (:) in the format: x:x:x:x:x:x:x:x. Following are two examples of IPv6 addresses:
- 2001:DB8:7654:3210:FEDC:BA98:7654:3210
- 2001:DB8:0:0:8:800:200C:417A
It is common for IPv6 addresses to contain successive hexadecimal fields of zeros. To make IPv6 addresses less cumbersome, two colons (::) may be used to compress successive hexadecimal fields of zeros at the beginning, middle, or end of an IPv6 address (the colons represent successive hexadecimal fields of zeros).[1]
IPv6 Address Type: Unicast
An IPv6 unicast address is an identifier for a single interface, on a single node. A packet that is sent to a unicast address is delivered to the interface identified by that address. The Cisco IOS software supports the following IPv6 unicast address types:
- Aggregatable Global Address
- Link-Local Address
- Unique Local Address
- Pv4-Compatible IPv6 Address
Aggregatable Global Address
An aggregatable global address is an IPv6 address from the aggregatable global unicast prefix. Aggregatable global IPv6 addresses are defined by a global routing prefix, a subnet ID, and an interface ID. Except for addresses that start with binary 000, all global unicast addresses have a 64-bit interface ID. The IPv6 global unicast address allocation uses the range of addresses that start with binary value 001 (2000::/3)[2].
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 globally unique addresses to communicate[3].
Unique Local Address
A unique local address is an IPv6 unicast address that is globally unique and is intended for local communications. They are not expected to be routable on the global Internet and are routable inside of a limited area, such as a site. They may also be routed between a limited set of sites.
The structure of a unique local address[4]:
- Prefix - FC00::/7 prefix to identify local IPv6 unicast addresses.
- Global ID - 41-bit global identiier used to create globally unique prefix
- Subnet ID - 16-bit subnet ID is an identifier of a subnet within the site
- Interface ID - 64-bit Interface ID
NOTE: Site-Local Addresse - Because RFC 3879 deprecates the use of site-local addresses, configuration of private IPv6 addresses should be done following the recommendations of unique local addressing (ULA) in RFC 4193.
IPv4-Compatible IPv6 Address
An IPv4-compatible IPv6 address is an IPv6 unicast address that has zeros in the high-order 96 bits of the address and an IPv4 address in the low-order 32 bits of the address. The format of an IPv4-compatible IPv6 address is 0:0:0:0:0:0:A.B.C.D or ::A.B.C.D. The entire 128-bit IPv4-compatible IPv6 address is used as the IPv6 address of a node and the IPv4 address embedded in the low-order 32 bits is used as the IPv4 address of the node. IPv4-compatible IPv6 addresses are assigned to nodes that support both the IPv4 and IPv6 protocol stacks and are used in automatic tunnels[5].
IPv6 Address Type: Anycast
An anycast address is an address that is assigned to a set of interfaces that typically belong to different nodes. A packet sent to an anycast address is delivered to the closest interface—as defined by the routing protocols in use—identified by the anycast address. Anycast addresses are syntactically indistinguishable from unicast addresses because anycast addresses are allocated from the unicast address space. Assigning a unicast address to more than one interface makes a unicast address an anycast address[6].
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.
IPv6 Address Type: Multicast
An IPv6 multicast address is an IPv6 address that has a prefix of FF00::/8 (1111 1111). An IPv6 multicast address is an identifier for a set of interfaces that typically belong to different nodes. A packet sent to a multicast address is delivered to all interfaces identified by the multicast address. The second octet following the prefix defines the lifetime and scope of the multicast address[7].
Additionally, the configured interface automatically joins the following required multicast groups for that link:
- 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
IPv6 General Prefixes
The upper 64 bits of an IPv6 address are composed from a global routing prefix plus a subnet ID, as defined in RFC 3513. A general prefix (for example, /48) holds a short prefix, based on which a number of longer, more specific prefixes (for example, /64) can be defined. When the general prefix is changed, all of the more specific prefixes based on it will change, too. This function greatly simplifies network renumbering and allows for automated prefix definition.
For example, a general prefix might be 48 bits long ("/48") and the more specific prefixes generated from it might be 64 bits long ("/64"). In the following example, the leftmost 48 bits of all the specific prefixes will be the same—and the same as the general prefix itself. The next 16 bits are all different.
- General prefix: 2001:DB8:2222::/48
- Specific prefix: 2001:DB8:2222:0000::/64
- Specific prefix: 2001:DB8:2222:0001::/64
- Specific prefix: 2001:DB8:2222:4321::/64
- Specific prefix: 2001:DB8:2222:7744::/64
Address configuration
All interfaces on IPv6 nodes must have a link-local address, which is usually automatically configured from the identifier for an interface and the link-local prefix FE80::/10. A link-local address enables a node to communicate with other nodes on the link and can be used to further configure the node.
Address configuration on IPv6 is possible in 2 different ways:
- Stateless Autoconfiguration
- Statefull DHCPv6
Stateless Address Autoconfiguration (SLAAC)
Nodes can connect to a network and automatically generate global IPv6 addresses without the need for manual configuration or help of a server, such as a Dynamic Host Configuration Protocol (DHCP) server. With IPv6, a router on the link advertises in RA messages any global prefixes, and its willingness to function as a default router for the link. RA messages are sent periodically and in response to router solicitation messages, which are sent by hosts at system startup[8]. A node on the link can automatically configure global IPv6 addresses by appending its interface identifier (64 bits) to the prefixes (64 bits) included in the RA messages.
Perform this task to assign IPv6 addresses to individual router interfaces and enable the forwarding of IPv6 traffic globally on the router.
ipv6 unicast-routing
interface fastethernet 0/0
ipv6 address 2001:db8::/64 eui-64
The router will automaticaly start sending Router adverticements and the clients gets a SLAAC address.
DHCPv6
Links
References
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1027184
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1038771
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1038809
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1334130
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1038821
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1052470
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1112696
- ↑ http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-addrg_bsc_con_external_docbase_0900e4b1805a3c5b_4container_external_docbase_0900e4b1810cacfa.html#wp1213897