IPv6 - Cisco - Global Home Page formerly named IPng (next generation) is the latest version of the...

49
© 2005 Cisco Systems, Inc. All rights reserved. IPv6

Transcript of IPv6 - Cisco - Global Home Page formerly named IPng (next generation) is the latest version of the...

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6

© 2005 Cisco Systems, Inc. All rights reserved.

Overview

222© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6: What is it?

IPv6, formerly named IPng (next generation) is the latest version of the Internet Protocol (IP). IPv6 is intended to address the concern of IPv4 address exhaustion. There are too few IP addresses available for the future demand of device connectivity (especially cell phones and mobile devices). Currently, IPv6 is most useful for mobility, quality of service, privacy extension, and so forth. It is expected that IPv4 will be supported until at least 2025, to allow time for bugs and system errors in IPv6 to be corrected.

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4 History lesson…

A considerable waste of IPv4 addresses was generated by two factors:• The unwise allocation of classful addresses; often entities with just a little

over 255 hosts asked for a Class B, capable of accommodating 65,000 hosts.• Users were not challenged to justify their address requests.

Host growth challenged the address space resources and led to private addressing and Network Address Translation (NAT). The increase in the number of hosts is also matched by an increase in the number of networks and this leads to scalability problems for the routers.

• In 1994, the core routers had approximately 34,000 routes, doubling very year. By 2004, it was expected to reach a million routes. Variable-length subnet mask (VLSM), Classless Inter-Domain Routing (CIDR), and a new IP address-allocation strategy was the response to the routing table explosion.

• Although the core routing table size was predicted to grow from 34,000 to 80,000 between 1994 and 1995, in fact it reached 76,000 routes only in 2000 and about 160,000 in mid 2004.

© 2005 Cisco Systems, Inc. All rights reserved.

IP For Everybody

Compare the numbers… and realize why IPv6 is great• 4,294,967,296 = Total number of IPv4 IPs• 18,446,744,073,709,551,616 = IPs in a IPv6 /64 prefix (the

typical space a home user gets!)

Ipv4 makes citizens consumers who are only able to connect to compartmentalized networks run by companies or governments.Ipv6 gives citizens the opportunity to become real Internet participates.

© 2005 Cisco Systems, Inc. All rights reserved.

That’s a lot of addresses!

IPv4 supports 4.2 billion addresses, which is inadequate for giving even ONE address to every living person.IPv6 will provide 340 unidecillion addresses . That’s 340 with 36 zeros. This will give each person on the planet 5 sextillion addresses. That’s five with 21 zeroes! This will provide a virtually inexhaustible supply of IP addresses for the future. (Assuming 6.5 Billion people today).

© 2005 Cisco Systems, Inc. All rights reserved.

A Need for IPv6?

Internet population• ~945M by end CY 2004—only 15% of the total population• How to address the future Worldwide population?

(~9B in CY 2050)• Emerging Internet countries need address space

Mobile Internet introduces new generation of Internet devices• PDA (~20M in 2004), mobile phones (~1.5B in 2003), tablet PC

Transportation—mobile networks• 1B automobiles forecast for 2008—begin now on vertical markets• Internet access on planes, e.g. Lufthansa—train, e.g.

Narita express

Consumer, home and industrial appliances

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Vertical Activity

© 2005 Cisco Systems, Inc. All rights reserved.

Why Not NAT

NAT breaks the end-to-end modelGrowth of NAT has slowed down growth of transparent applicationsNo easy way to maintain states of NAT in case of node failuresNAT breaks end to end securityNAT complicates mergers, double NATing is needed for devices to communicate with each other

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Technology

101010© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Protocol

Changes in Some Key Areas

Simplification of header formatExpanded address spaceExtensibility (improved option support)Stateless auto-configurationBuilt-in security and mobility

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4 and IPv6 Header Comparison

IPv4 Header IPv6 Header

Field’s name kept from IPv4 to IPv6

Fields not kept in IPv6

Name and position changed in IPv6

New field in IPv6Lege

nd

Version Traffic Class Flow Label

Next Header Hop LimitPayload Length

Source Address

Destination Address

Fragment OffsetFlags

Total LengthType of ServiceIHL

PaddingOptions

Destination Address

Source Address

Header ChecksumProtocolTime to Live

Identification

Version

© 2005 Cisco Systems, Inc. All rights reserved.

The Chain of Pointers Formed by the Next Header Field

IPv6 HeaderNext Header = 6 (TCP)

TCP Segment

IPv6 HeaderNext Header = 43 (Routing)

TCP SegmentRouting HeaderNext Header = 6 (TCP)

Authentication HeaderNext Header = 6 (TCP)

IPv6 HeaderNext Header = 43 (Routing)

Routing HeaderNext Header = 51 (AH)

TCP Segment

© 2005 Cisco Systems, Inc. All rights reserved.

ADDRESSING

141414© 2005 Cisco Systems, Inc. All rights reserved.

© 2005 Cisco Systems, Inc. All rights reserved.

The IPv6 Address Space

128-bit address space• 2128 possible addresses• 340,282,366,920,938,463,463,374,607,431,768,211,456

addresses (3.4 x 1038)

128 bits were chosen to allow multiple levels of hierarchy and flexibility in designing hierarchical addressing and routingTypical unicast IPv6 address:• 64 bits for subnet ID, 64 bits for interface ID

© 2005 Cisco Systems, Inc. All rights reserved.

Addressing

Representation• 16 bit hexadecimal numbers• Numbers are separated by (:)• Hex numbers are not case sensitive• Leading zeros in contiguous block could be

represented by (::)

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Address Formats

To make IPv6 addresses less cumbersome, two colons (::) may be used to compress successive zeros at the beginning, middle, or end of an IPv6 address.The hexadecimal letters in IPv6 addresses are not case-sensitive. Examples of valid IPv6 addresses:

1080:0:0:0:8:800:200C:417A = 1080::8:800:200c:417a

FF01:0:0:0:0:0:0:101 =

=

=

ff01::101

0:0:0:0:0:0:0:1 ::1

0:0:0:0:0:0:0:0 ::

© 2005 Cisco Systems, Inc. All rights reserved.

Addressing

Prefix Representation• Representation of prefix is just like CIDR• In this representation you attach the prefix length• Like v4 address 198.10.0.0/16• V6 address is represented the same way 3ef8:ca62:12::/40

© 2005 Cisco Systems, Inc. All rights reserved.

Address Representation

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Address Types

202020© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Addresses: Type & Scope

IPv6 addresses come in different types (Unicast, multicast, anycast) and different scopes (link, global, and so on). • The type of the address determines if packets are destined

for one or for many machines. • The scope of the address determines which contexts the

address makes sense in.IPv6 addresses are assigned to interfaces on nodes, not to the nodes themselves. This is a big change from IPv4, where very often the address associated with a machine's interface is that machine. IPv6 interfaces commonly and usefully have more than one IPv6 address.

© 2005 Cisco Systems, Inc. All rights reserved.

Basic Address Types in IPv6

unicast:for one-to-onecommunication

multicast:for one-to-manycommunication

anycast:for one-to-nearestcommunication

M

M

M

U

A

A

A

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Unicast Addresses

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.

U

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Multicast Address

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 interfacesthat typically belong to different nodes. A packet sent to a multicast address is delivered to all interfaces identified by the multicast address.

M

M

M

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Anycast AddressThe anycast address is a global unicast address that is assigned to a set of interfaces that typically belong to different nodes. Hence an anycast address identifies multiple interfaces. 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.One expected use of anycast addresses is to identify the set of routers belonging to an organization providing internet service. Such addresses could be used as intermediate addresses in an IPv6 Routing header, to cause a packet to be delivered via a particular service provider or sequence of service providers.

A

A

A

© 2005 Cisco Systems, Inc. All rights reserved.

Special Addresses

There are addresses with special meaning in IPv6.• ::/128 – the address with all zeroes is used to specify any

address, and is only to be used in software. • ::1/128 – the loopback address is a localhost address which

echoes packets to itself (corresponding to 127.0.0.1 in IPv4). • fe80::/10 – The link-local prefix specifies that the address is

valid only in the local physical link. • ff00::/8 – The multicast prefix is used for multicast

addresses. Note that broadcast as in IPv4 is not supported in IPv6; multicast should be used instead.

FF02::1 = All Nodes Link LocalFF02::2 = All Routers Link LocalFF02::9 = All RIPng Routers

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4 Address Compatibility

272727© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4 Addresses in IPv6 Format

IPv4 addresses are easily converted to IPv6 format. Three methods exist to do this: • standard IPv6 hexadecimal• hybrid IPv4-compatible address• IPv4-mapped address.

© 2005 Cisco Systems, Inc. All rights reserved.

Standard IPv6 Hexadecimal

For standard IPv6 hexadecimal, the IPv4 address 192.0.2.52 translates into hexadecimal as 0xC0000234Converted to an IPv6 address as • 0000:0000:0000:0000:0000:0000:C000:0234• or • ::C000:234

© 2005 Cisco Systems, Inc. All rights reserved.

Hybrid IPv4-CompatibleFor the sake of readability, the same IPv4 address can also be noted with decimal numbers as a hybrid IPv4-compatible address, in which case the address becomes • ::192.168.30.1

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4-mapped Addresses

For an IPv4-mapped address, the last 32 bits of a standard IPv6 address may be written in decimal.Thus, ::ffff:192.0.2.9 is the same as ::ffff:c000:209.

Mapped Addrs allow IPv6 appplications to communicate with IPv4 only application nodes.

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Address Allocation

323232© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

Internet Assigned Numbers Authority

The Internet Assigned Numbers Authority (IANA) allocates 2001::/16 to registries from the full address space. Each registry gets a /23 within the 2001::/16 space, as follows:• 2001:0200::/23 and 2001:0C00::/23 allocated to Asia Pacific Network

Information Centre (APNIC) for use in Asia.• 2001:0400::/23 allocated to American Registry for Internet Numbers

(ARIN) for use in the Americas.• 2001:0600::/23 and 2001:0800::/23 allocated to Reseaux IP

Europeens—Network Coordination Center (RIPE NCC) for use in Europe and the Middle East.

The registries allocate an initial /32 to the ISPs and the ISPs allocate a /48 to each customer or site.The /48 at each site could be further allocated to each LAN using a /64 for a maximum of 64 bits ID hosts in each LAN. Each site could subnet the site into a maximum of 65,535 LANs.

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 General PrefixesThe upper 64 bits of an IPv6 address are composed from a global routing prefix plus a subnet ID.A general prefix (e.g., /48) holds a short prefix, based on which a number of longer, more specific prefixes (e.g., /64) can be defined. 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 thespecific prefixes will be the same—and the same as the general prefix itself. The next 16 bits are all different. 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

© 2005 Cisco Systems, Inc. All rights reserved.

Hierarchical Addressing and Aggregation

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Adoption Strategies

363636© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

IPv4–IPv6 Transition/Coexistence

A wide range of techniques have been identified and implemented, basically falling into three categories:1. Dual-stack techniques, to allow IPv4 and IPv6 to

co-exist in the same devices and networks2. Tunneling techniques, to avoid order dependencies

when upgrading hosts, routers, or regions3. Translation techniques, to allow IPv6-only devices to

communicate with IPv4-only devices

Expect all of these to be used, in combination

© 2005 Cisco Systems, Inc. All rights reserved.

Dual Stack Approach

Dual stack node means:• Both IPv4 and IPv6 stacks enabled• Applications can talk to both• Choice of the IP version is based on name lookup and application

preference

TCP UDP

IPv4 IPv6

IPv6-Enable Application

Data Link (Ethernet)

0x0800 0x86dd FrameProtocol ID

Preferred method on

application’s servers

TCP UDP

IPv4 IPv6

Non IPv6-Enabled Application

Data Link (Ethernet)

0x0800 0x86dd

© 2005 Cisco Systems, Inc. All rights reserved.

TunnelingTunneling takes place at Layer 3 (the routing layer) and above, while encapsulation occurs at Layer 2 (the link layer). The mechanisms are architecturally the same.They involve “wrapping” one type of packet inside another to enable a transmission stream to traverse a dissimilar network infrastructure.Tunneling wraps IPv6 traffic within IPv4 packets so they can be sent over an IPv4 backbone.

Techniques:- ISATAP- 6to4

© 2005 Cisco Systems, Inc. All rights reserved.

Translation

Translation converts one set of IP protocols to another. It essentially works like NAT in the IPv4 scheme.Translation raises scaling concerns and causes complexity in applications. However, translation tools are critical in networks where some devices run IPv6 only while others support IPv4. For example, if a new portable device, such as a PDA, runs only the IPv6 protocol but must access other devices, such as printers that run only an IPv4 protocol, translation will be required to enable them to interoperate.Translation is viewed as a temporary solution.

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 on Cisco routers

414141© 2004, Cisco Systems, Inc. All rights reserved.FNS Overview

© 2005 Cisco Systems, Inc. All rights reserved.

Cisco IOS IPv6 Features

© 2005 Cisco Systems, Inc. All rights reserved.

Basic Connectivity for IPv6 on Cisco Routers

1. Enable forwarding of IPv6 unicast datagrams2. Enable IPv6 on participating interfaces3. Configure IPv6 addresses on interfaces4. Configure an IPv6 compatible routing protocol5. Verification

© 2005 Cisco Systems, Inc. All rights reserved.

Essential IPv6 commandsipv6 unicast-routing

Enables the forwarding of IPv6 unicast datagrams.

ipv6 enable 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.

ipv6 address ipv6-prefix/prefix-length eui-64

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.

ipv6 router rip <process_name>

Configures an IPv6 RIP routing process and enters router configuration mode for the IPv6 RIP routing process.

ipv6 rip <process_name> enable

Enables the specified IPv6 RIP routing process on an interface.

© 2005 Cisco Systems, Inc. All rights reserved.

Sample Configuration

The following commands configure the router for IPv6, create a RIPng process, and enable the Serial 0/0 interface for IPv6 routing.router(config)# ipv6 unicast-routing

router(config)# interface serial 0/0

router(config-if)# ipv6 enable

router(config-if)# ipv6 address 2001:0DB8:0:1::/64 eui-64

router(config-if) exit

rotuer(config)# ipv6 router rip MYRIP

router(config)# interface serial 0/0

router(config-if)# ipv6 rip MYRIP enable

© 2005 Cisco Systems, Inc. All rights reserved.

IPv6 Verification

There are numerous commands that can be used to view the status of your IPv6 configuration.show ipv6 interface <brief>

show ipv6 neighbors

show ipv6 route <summary>

show ipv6 rip

show ipv6 neighbors

ping ipv6 <address>

© 2005 Cisco Systems, Inc. All rights reserved.

© 2005 Cisco Systems, Inc. All rights reserved.

Resources

www.cisco.com/go/ipv6CCO IPv6 main page

IPv6 OverviewsTechnical configuration guidesPresentations

www.cisco.com/go/fnFind an IOS that supports IPv6

www.microsoft.com/ipv6www.ietf.orgwww.hs247.com/

Info about apps, operation systems and IPv6 connectivity optionswww.nav6tf.orgwww.ipv6forum.comwww.ipv6.org

© 2005 Cisco Systems, Inc. All rights reserved. 494949© 2004, Cisco Systems, Inc. All rights reserved.