IPv6 According to ICND1 Version 2
For more information on the new Cisco CCENT/CCNA exams, including special offers and study guides, visit our Cisco Press "About CCNA" page.
One of the most exciting things for me personally about the new ICND1 course from Cisco Systems is the fact that it delves even deeper into the next generation of the Internet Protocol suite. This next generation is known as IPv6.
In this article, we will examine many of the key facts that one should know about this protocol suite at the modified CCENT level. While this article might teach you some very specific facts, it will also serve as a nice guide for you to understand the scope of what is covered in the new ICND1.
We will not try to cover every detail, but at least by the end, you might have learned a thing or two and you will have a nice sense of what to study harder. Determining the scope of what to study with a topic like IPv6 is very important because you could fill an entire course or two just by studying IPv6 alone!
Introducing Basic IPv6
Most people realize that the main impetus for IPv6 is the fact that we are running out of available TCP/IP version 4 addresses. Network Address Translation (NAT) has been the main Band-Aid for this problem, and it certainly has done a remarkable job in holding off complete and total address depletion. But while many realize this about addressing, they do not realize how many more incredible features are gained in the new protocol suite.
IPv6 is simplified and made more efficient, more secure, and more mobile. We could very easily fill a brochure trying to sell someone on the new protocol suite.
But, alas, the new address space does get all the press. And it turns out that this is the main area of what you are expected to know about at the CCENT (ICND1) level. An IPv6 address is now 128 bits long (this is up from just 32 bits in IPv4). the remarkable increase in the number of addresses this expansion creates has been widely publicized. You can break it down to report that it creates billions and billions of available addresses for every little piece of the Earth’s surface. When you have an address that long, dotted decimal will no longer work well for the representation, so IPv6 addresses are represented with eight 16-bit hexadecimal fields that are separated by colons.
Here is an example of an IPv6 address:
There are three rules you absolutely need to remember:
- The A, B, C, D, E, and F in the hex fields are case-insensitive.
- The leading zeros in the fields are optional.
- Once in an address, you can represent successive fields of all zeros with a ::.
So for example, our address example can be represented just fine as follows:
That sure is a bit easier to deal with!
If you heard that there are no more broadcast packets in IPv6—you heard right. Multicast (addressing a packet for a group) completely replaces broadcasting. If you need to send a packet to every machine on the local segment, you can send the packet to the all nodes multicast address.
Unicasting packets still exists, of course, and you can also have anycast addressing. When you anycast, you configure the same unicast address on all members of a group. Now local routers can choose a device in the anycast group they deem "closest." As an administrator, you can program the routers to dictate how they deal with this definition of "closest."
A very important type of unicast address that's created automatically in IPv6 is called the link-local address. This address allows two IPv6 systems to immediately communicate with each other, but only over the local link. A link-local address is easy to spot because it always begins with FE80. Remember, the link-local address is created automatically any time you enable IPv6 on an interface (the ipv6 enable command) or if you assign a regular unicast address to the interface.
In IPv6 addressing, nodes can configure their own 64-bit host portion of their IPv6 address. The first 64 bits of the address are recommended for the network portion of the address. The format for a node automatically calculating its own host address portion is known as EUI-64. The MAC address on the device is used to create a unique 64-host ID.
Configuring an IPv6 address on a router interface is simple. In fact, in many places on a Cisco router or switch, the correct IPv6 command just replaces the keyword ip with ipv6. Setting an address is an example of this:
BellaRouter(config-if)# ipv6 address 2001:db8:D1A5:C900::/64 eui-64
Other Exciting Features
Other great features of IPv6 include these:
- A simplified and standard size IPv6 header in packets.
- Improved ICMPv6 that takes on more roles and responsibilities.
- Automatic Neighbor Discovery process.
- Stateless autoconfiguration: The local router gives the device its network prefix, and the device automatically creates its host portion using the EUI-64 format, as described earlier in this article. The ipv6 address autoconfig command is all that is required on a Cisco device to instruct the device to automatically acquire its address information.
- Stateless DHCP: Since devices can configure their own addresses now (with the help of routers), there is no longer a need for DHCP to assign and track IPv6 addresses. Instead, a DHCP server can be used to assign additional information such as DNS server and default gateway addresses; this is known as stateless DHCP.
Configuring IPv6 Static Routing and OSPFv3
In order to enable the capability of your Cisco router to actually route static and dynamic protocols like OSPF, use the following command:
BellaRouter(config)# ipv6 unicast-routing
In order to configure a static route, once again just replace the ip keyword command from the previous version of the command:
BellaRouter(config)# ipv6 route 2001:DB8:A01::/48 Gi0/1 2001:DB8:D1A5:C900::1
For an OPSFv3 configuration, enable OSPF under the interfaces that you want to run the routing protocol over and make sure to assign a 32-bit router ID, which is required if your router does not possess any 32-bit IPv4 addresses that the router can choose automatically:
BellaRouter(config)# interface GigabitEthernet0/0 BellaRouter (config-if)# ipv6 ospf 1 area 0 BellaRouter (config-if)# exit BellaRouter (config)# interface GigabitEthernet0/1 BellaRouter (config-if)# ipv6 ospf 1 area 0 BellaRouter (config-if)# exit BellaRouter (config)# ipv6 router ospf 1 BellaRouter (config-rtr)# router-id 0.0.0.1
You verify IPv6 configurations just as you would in IPv4. For example, the following commands could be used for verifications of the above configurations:
- show ipv6 route: View the IPv6 routing table on the device.
- show ipv6 interface brief: View a quick summary of the router interfaces, their IPv6 addresses, and their Layer 1 and Layer 2 status.
- show ipv6 ospf neighbor: View a table of OSPF neighbors.
- show ipv6 protocols: View key information about IPv6 routing protocols configured on the device.
I certainly hope you enjoyed this article and perhaps learned a thing or two. At the very least, perhaps it piqued your interest to delve into IPv6 and learn even more. Thank you so much for reading.