Comparing IPv4 and IPv6 at a Glance by Rick Graziani

When examining the details of the IPv4 and IPv6 headers, it's easy to miss some of the important differences between the two protocols. This chapter has provided a lot of information that may be difficult to digest, so this section summarizes some of the differences. As you read this section, refer to Figures 3-1 and 3-2.

These IPv4 field names are the same as those in IPv6:

• Version (IPv4 and IPv6): This is an easy one; the value is 4 in IPv4 and 6 in IPv6.

• Source Address and Destination Address (IPv4 and IPv6): Probably the most noticeable differences are the 32-bit IPv4 source and destination addresses, which have been increased to 128 bits in IPv6.

Some IPv4 field names were changed for IPv6, and in some cases the fields have functional differences:

• Type of Service (IPv4) has been changed to Traffic Class (IPv6): IPv4 can use either the 3-bit IP Precedence field along with another 3 bits for delay, throughput, and reliability, or the 6-bit Differentiated Services technique. IPv6 was designed to use the 6-bit Differentiated Services method.

• Total Length (IPv4) has been changed to Payload Length (IPv6): IPv4's Total Length field includes both the IPv4 header and the data, whereas the IPv6 Payload Length field specifies only the number of bytes of data (payload), including any extension headers, and does not include the main IPv6 header. Using the Jumbo Payload option in the Hop-by-Hop extension header, IPv6 provides jumbograms, which are IPv6 packets up to 4,294,967,295 (232–1) bytes.

• Time to Live (IPv4) has been changed to Hop Limit (IPv6): The IPv4 Time to Live (TTL) and IPv6 Hop Limit fields ensure that packets do not transit between networks for an indefinite period of time. These fields have the same function, with the name being more reflective of the field's actual use in IPv6.

• Protocol (IPv4) has been changed to Next Header (IPv6): In IPv4, this indicates the protocol being carried in the IPv4 data or payload. This same function exists in the Next Header field in IPv6 but can also indicate the existence of an extension header following the main IPv6 header.

The following fields that exist in IPv4 have been removed from IPv6:

• Internet Header Length (IPv4): This field is not needed in IPv6 because the main IPv6 header has a fixed length of 40 bytes. Any additional IPv6 headers are linked as indicated in the Next Header field and known as extension headers.

• Identification (IPv4), Flags (IPv4), and Fragment Offset (IPv4): These fields are used for fragmentation in IPv4. Fragmentation is only performed at the source in IPv6, using the Fragment extension header, and not by routers.

• Header Checksum (IPv4): Layer 2 technologies such as Ethernet perform their own checksum and error control. Upper-layer protocols such as TCP and UDP also have their own checksums, and therefore a checksum at Layer 3 is redundant and unnecessary. A UDP checksum, which is optional in IPv4, is mandatory in IPv6.

• Options (IPv4): Options in IPv4 are handled using extension headers in IPv6. Two IPv6 extension headers, Hop-by-Hop Options and Destination Options, contain their own sets of TLV options.

• Padding (IPv4): Because IPv6 has a fixed length of 40 bytes, it is unnecessary to extend the main IPv6 header to make sure that it falls on a 32-bit boundary. The main header falls on a 64-bit boundary.

The following are new fields in IPv6 that don't exist in IPv4:

• Flow Label (IPv6): This is a new field to IPv6, and the specifications of its use are still being determined by the IETF. RFC 2460 discusses using the Flow Label field to label sequences of packets that need special handling by IPv6 routers for "real-time" service. RFC 6437 contains additional details on the Flow Label field.

The following are new headers in IPv6 that don't exist in IPv4:

• Extension Headers (IPv6): IPv6 extension headers are used to provide flexibility and future enhancements to a fixed IPv6 header.

Other features:

• IPv6 over Ethernet: Ethernet II frames use the EtherType field with the hexadecimal value 86dd (0x86dd) to indicate that the payload is an IPv6 packet.

• Fragmentation: IPv6 routers do not perform fragmentation. When an IPv6 router receives a packet larger than the MTU of the egress interface, the router drops the packet and sends an ICMPv6 Packet Too Big message back to the source, including the MTU size of the egress link in bytes. Fragmentation can be done in IPv6 only by the source device, and it is handled using a Fragment extension header.

About the Author

Rick Graziani has been an instructor of computer networking and computer science courses at Cabrillo College in Aptos, California since 1994. Rick also teaches networking courses in the Computer Engineering department at the University of California, Santa Cruz and is on the Curriculum Engineering team for Cisco Networking Academy.

Organizations are increasingly transitioning to IPv6, the next generation protocol for defining how devices of all kinds communicate over networks. Now fully updated, IPv6 Fundamentals offers a thorough, friendly, and easy-to-understand introduction to the knowledge and skills you need to deploy and operate IPv6 networks.

Leading networking instructor Rick Graziani explains all the basics simply and clearly, step-by-step, providing all the details you'll need to succeed. You'll learn why IPv6 is necessary, how it was created, how it works, and how it has become the protocol of choice in environments ranging from cloud to mobile and IoT.

Graziani thoroughly introduces IPv6 addressing, configuration options, and routing protocols, including EIGRP for IPv6, and OSPFv3 (traditional configuration and with address families). Building on this coverage, he then includes more in-depth information involving these protocols and processes.

This edition contains a completely revamped discussion of deploying IPv6 in your network, including IPv6/IPv4 integration, dynamic address allocation, and understanding IPv6 from the perspective of the network and host. You'll also find improved coverage of key topics such as Stateless Address Autoconfiguration (SLAAC), DHCPv6, and the advantages of the solicited node multicast address.

Throughout, Graziani presents command syntax for Cisco IOS, Windows, Linux, and Mac OS, as well as many examples, diagrams, configuration tips, and updated links to white papers and official RFCs for even deeper understanding.

Learn how IPv6 supports modern networks encompassing the cloud, mobile, IoT, and gaming devices
Compare IPv6 with IPv4 to see what has changed and what hasn't
Understand and represent IPv6 addresses for unicast, multicast, and anycast environments
Master all facets of dynamic IPv6 address allocation with SLAAC, stateless DHCPv6, and stateful DHCPv6
Understand all the features of deploying IPv6 addresses in the network including temporary addresses and the privacy extension
Improve operations by leveraging major enhancements built into ICMPv6 and ICMPv6 Neighbor Discovery Protocol
Configure IPv6 addressing and Access Control Lists using a common topology
Implement routing of IPv6 packets via static routing, EIGRP for IPv6, and OSPFv3
Walk step-by-step through deploying IPv6 in existing networks, and coexisting with or transitioning from IPv4

Reader Lucas Schultz says, "If you are looking to take the CCNA and IPv6 is not clear to you after Cisco material, this is the book you. This is the best in depth discuss about IPv6 how it works and the mechanisms to make it work. Author made it very easy to read and understand. Highly recommend this book to IT personnel or CCNA certification.