Clase 8. IPv6 Address
Clase 8. IPv6 Address
https://stats.labs.lacnic.net/IPv6/graph-access.html
When will IPv6 exceed IPv4?
• Traffic doubles every 2 years.
• 80% of traffic is still IPv4.
• IPv6 is at 20%. Let’s assume its share increases by 10 % per year
• IPv6 reaches 60% in 2019
Transitioning to IPv6?
Dual Stack
Dual stack means that devices are able to run IPv4 and IPv6 in
parallel. It allows hosts to simultaneously reach IPv4 and IPv6
content, so it offers a very flexible coexistence strategy.
Benefits
• Native dual stack does not require any tunneling mechanisms on
internal networks
• Both IPv4 and IPv6 run independent of each other
• Dual stack supports gradual migration of endpoints, networks,
and applications
Dual Stack - Windows
Dual Stack - GNU/Linux
Tunneling – 6to4
6to4 is an IPv4 tunnel-based transition mechanism defined in RFC-
3056 (02/2001). It was designed to allow different IPv6 domains
communicate with other IPv6 domains through IPv4 clouds without
explicit IPv4 tunnels. Use protocol number 41 in the ipv4 header.
IPv6 over IPv4 GRE Tunnels
GRE – RFC 2784 (03/2000) provides a way to encapsulate
packets inside of a transport protocol and transmit them
from one tunnel endpoint to another. Use protocol
number 47 in the IPv4 header.
2001:0DB8:AAAA:1111:0000:0000:0000:0100
18,446,744,073,709,600,000
/ 315,360,000,000,000
= 58494,24 years
17
IPv6 Address Types…. Road Map
IPv6 Addresses
IPv6
Global Unicast Address (GUA)
IPv6 Internet
• Except under very specific circumstances, all end users will have
a global unicast address.
• Note: A host (an interface) can potentially have multiple IPv6
addresses on the same or different networks.
• Terminology:
• Prefix equivalent to the network address of an IPv4
address
• Prefix length equivalent to subnet mask in IPv4
• Interface ID equivalent to host portion of an IPv4 address
IPv6 GUA Assigment by RIRs
https://www.iana.org/assignments/ipv6-unicast-address-assignments/ipv6-unicast-address-assignments.xhtml
Options for Configuring a GUA Address
Global Unicast
Manual Dynamic
Stateless Stateful
Manual
SLAAC DHCPv6
SLAAC +
Manual + EUI 64 DHCPv6
IPv6 DHCPv6-PD
Unnumbered
Options for Configuring a GUA Address
Options for Configuring a GUA Address
32 bits
128 bits
3 + 1 = 4 (/64) : 4
2001:0DB8:CAFE:0001:0000:0000:0000:0100/64
2001:DB8:CAFE:1::100/64
Subnetting IPv6
Can you count in hex?
Just increment by 1 in Hexadecimal:
2001:0DB8:CAFE:0000::/64
2001:0DB8:CAFE:0001::/64
3-1-4 Rule
2001:0DB8:CAFE:0002::/64 ...
2001:0DB8:CAFE:0009::/64
2001:0DB8:CAFE:000A::/64
Hexadecimal 00 03 6B E9 D4 80
Step 1: Split the MAC address
Binary 0000 0000 0000 0011 0110 1011 1110 1101 0100 1000 0000
1001
Binary 0000 0010 0000 0011 0110 1011 1111 1111 1111 1110 1110 1101 0100 1000 0000
1001
Binary 02 03 6B FF FE E9 D4 80
LINK-LOCAL UNICAST RANGE
Link-Local Communications
• Used as a source IPv6 address before a device gets one dynamically (SLAAC and
DHCPv6).
• Router’s link-local address is used by devices as the default gateway.
• Routers exchange routing messages.
• Router use the link-local address as the next-hop address in the routing table: via
link-local address.
DYNAMIC LINK-LOCAL UNICAST
ADDRESS
First 10 bits
1111 1110 10xx xxxx Remaining 54 bits 64-bit Interface ID
fe80::Interface ID
• Unspecified Address
• :: (all-0s)
• Indicates the absence or anonymity of an IPv6 address (RS
source address)
• Used as a source IPv6 address during duplicate address
detection process
MULTICAST ADDRESSES
ff00::/8
Multicast
• Flag
• The first three flags are: 0 (reserved), R (rendezvous point), and P (network
prefix), used on multicast routing.)
• The fourth flag is the transient flag (T flag), which denotes two types of multicast
addresses:
• Permanent (0): These addresses, known as predefined multicast addresses, are
assigned by the Internet Assigned Numbers Authority (IANA) and include both
well-known and solicited-node multicast.
• Nonpermanent (1): These are “transient,” or “dynamically assigned,” multicast
addresses.
• They are assigned by multicast applications.
• An example might be ff18::cafe:1234, used for a multicast application with
organizational scope.
IPV6 MULTICAST ADDRESSES - SCOPE
Multicast
• Scope is a 4-bit field used to define the range of the multicast packet.
• Scope (partial list):
• 0 Reserved
• 1 Interface-Local scope
• 2 Link-Local scope
• 5 Site-Local scope
• 8 Organization-Local
scope
• e Global scope
MULTICAST ADDRESSES
Flag = 0, Assigned multicast
Scope = 2, Link-local scope
Prefix Flag Scope Predefined Group ID Compressed Description
Format (IPv6 assumed)
ff 0 2 0:0:0:0:0:0:1 ff02::1 All-devices
ff 0 2 0:0:0:0:0:0:2 ff02::2 All-routers
ff 0 2 0:0:0:0:0:0:5 ff02::5 OSPF routers
ff 0 2 0:0:0:0:0:0:6 ff02::6 OSPF DRs
ff 0 2 0:0:0:0:0:0:9 ff02::9 RIP routers
ff 0 2 0:0:0:0:0:0:A ff02::a EIGRP routers
ff 0 2 0:0:0:0:0:1:2 ff02::1:2 DHCP
servers/relay
agents
IPv6 does not have a broadcast address, but there is an all-nodes or all-
IPv6 devices multicast address, ff02::1, which has a similar effect.
MULTICAST ADDRESSES
Next
All ICMPv6 IPv6 Main ICMPv6
Header Data
messages Header 58 Header
ICMPV6 MESSAGES
• Neighbour or router discovery (133-137)
• Multicast Listener Discovery (130-132, 143)
• Diagnostics using Ping, Traceroute (128, 129)
• Destination Unreachable(1)
• Packet Too Big (2)
• Time Exceeded (3)
• Parameter Problem (4)
0 8 16 24 31
Type = 2 Code = 0 Checksum
IPv6
0 8 16 24 31
Type = 3 Code = 0 Checksum
Unused
Next
? Next
IPv6 Main Extension TCP
Header Header Data
Header 138
Header
6 Header
• Type 4
• Generated when a receiving device finds a problem with a field in
the main IPv6 header such as the Next Header field – packet is
discarded.
ICMPV6
ECHO REQUEST AND ECHO REPLY
Type 128 = Echo Request
Type 129 = Echo Reply
0 8 16 24 31
Type = 128/129 Code = 0 Checksum
Identifier Sequence Number
Data
• Redirect Message
Similar to ICMPv4 redirect message
Router-to-Device messaging
DYNAMIC ADDRESS ALLOCATION IN IPV6
DHCPv6 Server
To all IPv6 devices: ICMPv6 Router Advertisement
Let me tell you how
to do this …
1. SLAAC
2. SLAAC with
Stateless DHCPv6
3. Stateful DHCPv6
SLAAC
(Stateless Address
Autoconfiguration)
ROUTER ADVERTISEMENT FLAGS
ICMPv6 Router
Advertisement DHCPv6
Option 1, 2, or 3 Server
RA message contains three flags to tell a device how to obtain or create its global
unicast address:
• Address Autoconfiguration flag (A flag): When set to 1 (on), this flag tells the
receiving host to use SLAAC to create its global unicast address.
• Other Configuration flag (O flag): When set to 1 (on), this flag tells the host to
get other addressing information, other than its global unicast address, from a
stateless DHCPv6 server.
• Managed Address Configuration flag (M flag): When set to 1 (on), this flag tells
the host to use a stateful DHCPv6 server for its global unicast address and all other
addressing information.
SLAAC
2001:db8:cafe:1::/64
G0/0 R1
GUA ::1
WinPC
LLA fe80::1
LLA fe80::d0f8:9ff6:4201:7086
Method 1: SLAAC
2001:DB8:CAFE:1::/64
Link-local: FE80::1 Link-local: FE80::50A5:8A35:A5BB:66E1
R1 MAC: 00-03-6b-e9-d4-80 MAC: 00-21-9b-d9-c6-44
PC1
Router Solicitation
• Sent when device needs IPv6 1
addressing information. To: FF02::2 (All-IPv6 Routers)
Router Advertisement From: FE80::50A5:8A35:A5BB:66E1
• Sent every 200 seconds or in RS
response to RS ICMPv6 Router Solicitation
2
To: FF02::1 (All-IPv6 devices)
From: FE80::1 (Link-local address) RA
ICMPv6 Router Advertisement
ADDRESS RESOLUTION: IPV4 AND IPV6
2 1 Neighbor Know
My IPv6!
Neighbor Neighbor Cache IPv6, what
Here is the
Advertisement Solicitation is the
MAC?
MAC?
2001:DB8:CAFE:1::200/64 2001:DB8:CAFE:1::100/64
FF02::1:FF00:200 (Solicited Node Multicast)
MAC Address MAC Address
PC2 00-1B-24-04-A2-1E 00-21-9B-D9-C6-44 PC1
1
PC1> ping 2001:DB8:CAFE:1::200
4 3 Neighbor Cache 2 5
Neighbor Neighbor <empty until step 5>
Advertisement Solicitation
PC1
Neighbor Cache
IPv6 Address MAC Address
2001:DB8:ACAD:1::10 0021.9bd9.c644
? IPv6 - 2001:DB8:ACAD:1::10
MAC - 0021.9bd9.c644
!!!!!
R1#
Enabling IPv6 Unicast Routing on
Cisco_1
The ipv6 unicast-
routing global configuration
command must be configured
to enable the CISCO router to
forward IPv6 packets and
participate static/dynamic IPv6
routing.