Internet Protocol version 6 (IPv6) is what you are going to discover onwards. Here, you will get format, features and related required information of IPv6 addresses and its related protocols.
2. Limitations of IPv4
• Scarcity of IPv4 Addresses
• Security Related Issues
IPsec
• Address configuration related issues
• Quality of service (QoS)
3. IPv6 History and related RFCs
1970s -> RFC 791 (IPv4) in1981 -> Internet, 1990s -> IETF, new protocol, 1994, which is going to
replace IPv4.
Recommendation for IP Next Generation Protocol (RFC 1752) in 1995.
IPv6 Address Allocation Management (RFC 1881) in 1995.
Compact Representation of IPv6 Addresses (RFC 1924) in 1996.
RIPng for IPv6 (RFC 2080) was in January 1997.
IPv6 Specification (RFC 2460) in December 1998.
Basic Socket Interface Extensions for IPv6 (RFC 2553) in March 1999.
DHCPv6 (RFC 3315) in July 2003.
IPv6 Prefix Options for DHCPv6 (RFC 3633) in 2003. RFC 3633 later updated with RFC 6603 in 2012.
Stateless DHCPv6 (RFC 3736) in April 2004.
Deprecating Site Local Addresses (RFC 3879) in September 2004.
Mobility Support in IPv6 (RFC 3775) in June 2004.
IPv6 Flow Label Specification (RFC 3697) in March 2004.
Unique Local IPv6 Unicast Addresses (RFC 4193) in October 2005.
IPv6 Addressing Architecture (RFC 4291) in February 2006.
IPv6 Node Requirements (RFC 4294) in April 2006.
Multiprotocol Extensions for BGP-4 (RFC 4760) in January 2007.
Neighbor Discovery for IPv6 (RFC 4861) in September 2007.
Privacy Extensions for Stateless Address Autoconfiguration in IPv6 (RFC 4941) in September 2007.
OSPF for IPv6 (RFC 5340) in July 2008.
4. IPv6 Features
• New Packet Format and Header
• Large Address Space
• Stateful and Stateless IPv6 address configuration
Stateless configuration -> Link-Local Addresses -> Router
Solicitation multicast -> Router Advertisement ->
Network-Layer configuration parameters
Stateful configuration from DHCPv6 or static
configuration like IPv4.
5. • Multicast
IPv4 (unicast, multicast, broadcast)
IPv6 (unicast, multicast)
Effect of broadcast can be achieved by sending a
packet to the link-local all nodes multicast group
at address ff02::1.
• Integrated Internet Protocol Security (IPSec)
A set of Internet standards that uses cryptographic
security services to provide Confidentiality,
Authentication, Data integrity.
Optional in IPv4 but Integral in IPv6.
6. • Neighbor Discovery Protocol (NDP)
Based on ICMPv6 messages that manage the interaction
nodes on the same link.
No ARP for IPv6. ARP is replaced by NDP.
• Extensibility
Extension Headers after IPv6 header.
The size of IPv6 extension headers is constrained only by
the size of the IPv6 datagram packet, unlike 40 bytes of
options of IPv4.
• Jumbograms
Optional feature of IPv6.
Allow packets with payloads 2^32 - 1 (4,294,967,295) bytes
by making use of a 32-bit length field.
14. Introduction to IPv6 Addressing
• IPv4
size of an address in IPv4 address is 32-bit (4-bytes)
number of possible addresses in IPv4 is 2^32
(4,294,967,296)
32-bit binary addresses divided into 4-Octets (Bytes)
represented in decimals, separated by a dot.
E.g. 192.168.100.10
• IPv6
size of an address in IPv6 address is 128-bit (16-bytes)
number of possible addresses in IPv6 is 2^128 (3.4x10^38)
represented in hexadecimal numbers, separated by a
colon.
E.g. 2001:0DB8:0000:0002:0022:2217:FF3B:118C
15. prefix and prefix length in IPv6
• For example, consider the below IPv4 address:
172.16.133.18 - IPv4 address
255.255.0.0 - Subnet mask
• Here, 172.16 denotes the network part and
133.18 denotes the host part.
• IPv6 has similar mechanism.
16. • What is IPv6 Network Prefix
Example
• 2001:0DB8:0000:000b:0000:0000:0000:001A/64,
2001:0DB8:0000:000b::/64 represents the network prefix
and the possible IPv6 addresses ranges from
2001:0DB8:0000:000b:0000:0000:0000:0001/64
to
2001:0DB8:0000:000b:ffff:ffff:ffff:ffff/64
• Similar to IPv4 network address and subnet mask representation,
172.16.0.0/16 represents all IPv4 addresses from 172.16.0.0 to
172.16.255.255.
• Note that the network prefix shown above,
2001:0DB8:0000:000b::/64,
includes the 48 bit IPv6 global routing prefix 2001:0DB8:0000::/48
and the next 16 bits "000b" are used for internal subnetting within an
organization.
17. • What is IPv6 Prefix Length
IPv6 Prefix Length is used to identify how many
bits of a Gobal Unicast IPv6 Address are there in
network part.
For example, in 2001:0DB8:0000:000b::/64, the
number 64 is used to identify that the first 64 bits
are in network part.
18. IPv6 Address formats
• The 128-bit address is divided in to 16-bits, and each 16-bit block is
converted to a 4-digit hexadecimal number and separated by
colons. Also called colon hexadecimal.
• Format of IPv6 address is xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
where each x is a hexadecimal digit representing 4 bits or a nibble.
• IPv6 addresses range from
0000:0000:0000:0000:0000:0000:0000:0000 to
ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff.
An IPv6 address can be simplified by the following two methods.
Omit leading zeros: Omit the leading zeros in any 16-bits.
For example, IPv6 address
2001:0DB8:0000:0000:0022:F376:FF3B:AC99 may be written as
2001:DB8:0:0:22:F376:FF3B:AC99.
Double colon: Use double colons (::) in place of a series of zeros. For
example, The above address can be further simplified as
2001:DB8::22:F376:FF3B:AC99.
• Q. Simplify / shorten / compress
2001:0000:0000:000b:0000:0000:0000:001A
19. Types of IPv6 Addresses:
Global Unicast, Link-local, Multicast, Anycast, Loopback addresses
• Global Unicast IPv6 addresses:
Used to identify a single interface.
Standard globally unique unicast addresses (public IPv4
addresses) as in IPv4, one per host interface.
Global Unicast IPv6 addresses are internet routable IPv6
addresses.
• Link Local IPv6 addresses:
Link Local IPv6 addresses allow communications between
devices on a local link.
Link Local IPv6 addresses are not routable.
They are used on a subnet.
Normal Link Local IPv6 address prefix is fe80::/10.
20. • Multicast:
A multicast address identifies zero or more interfaces
on the same or different hosts.
A multicast transmission sends packets to all
interfaces that are part of a multicast group.
The group is represented by the IPv6 destination
address of the packet.
IPv6 multicast addresses start with FF.
Following are the important IPv6 multicast addresses.
ff02::1 - All nodes on the local network segment
ff02::2 - All routers on the local network segment
21. • Anycast:
An anycast address identifies multiple interfaces.
An anycast transmission sends packets to only one of the
interfaces associated with the address, not to all of the
interfaces.
This interface is typically the closest interface, as defined by
the routing protocol.
• Loopback:
Used by a node to send an IPv6 packet to itself.
An IPv6 loopback address functions the same as an IPv4
loopback address (127.0.0.0 /8).
The IPv6 loopback address is
0000:0000:0000:0000:0000:0000:0000:0001 /128, which can be
also represented as ::1.
23. • 128 bit IPv6 global unicast addresses has two 64-bit
parts.
• Leftmost 64-bit address defines globally unique prefix.
• In the leftmost 64 bits, first 48 bits are assigned by ISP
to the organization and the remaining 16 bits can be
used by the organization for subnetting.
• By using 16 bits for subnetting, we will get 65536
subnets (2^16).
• The remaining 64 bits on the right side of 128 bit IPv6
address is used to identify the hosts in the subnet.
24. Different methods to assign a Global
Unicast IPv6 address to an interface
• In IPv6, a network interface must be
configured with following important IPv6
configuration settings for internet
communication.
A Global Unicast IPv6 Address
IPv6 Address Prefix
IPv6 Address Prefix length
Default Router IPv6 address
DNS Server IPv6 address
25. using Stateful DHCPv6
• Similar to DHCP in IPv4, IPv6 network interfaces can also be
configured with an IPv6 address, Prefix length, IPv6 address
of the default gateway, and the DNS IPv6 address using IPv6
stateful DHCP.
• Some important differences between DHCPv4 and DHCPv6
are
1) IPv4 DHCP, DHCP client uses limited broadcast IPv4 address
(255.255.255.255) to discover DHCP Server. DHCPv6 clients
uses IPv6 DHCP servers and relay agents IPv6 Multicast
Address (ff02::1:2) to discover DHCP Server.
2) IPv4 DHCP provide the default router information the DHCP
clients. DHCPv6 does not provide the default router
information. DHCPv6 servers just rely NDP (Neighbor
Discovery Protocol) messages between DHCPV6 clients and
routers.
• Note that there are changes in names and formats between
DHCPv4 messages and DHCPv6 messages. But the basic
process of leasing an IP address remains the same.
26. using Stateless Autoconfiguration
• Allows a network interface to automatically learn
the IPv6 Network Prefix, IPv6 Prefix Length,
default router IPv6 address and DNSv6 server
addresses.
• IPv6 uses the Router Solicitation and Router
Advertisement messages to learn the IPv6
Network Prefix, IPv6 Prefix Length, default router
IPv6 address from network routers.
• After obtaining the those from network routers,
IPv6 network interfaces can automatically derive
a Global Unicast IPv6 Address using EUI-64
method.
• IPv6 can use Stateless DHCPv6 to learn the DNS
Server IPv6 addresses.
27. using Static Configuration
• You can type-in the entire 128-bit IPv6 address
for the network interface.
• You can configure 64 bit IPv6 Global Unicast
Address network prefix and then use EUI-64
method to derive the remaining 64 host part
bits.
28. What are IEEE EUI-64 based Global
Unicast IPv6 addresses
29.
30. How to configure Static Global Unicast
IPv6 Address in a Cisco Router Interface
• Router#configure terminal
• Router(config)#interface fastEthernet 0/0
• Router(config-if)#ipv6 address 2001:db8:aaaa:1::1/64
• Router(config-if)#no shutdown
• Router(config-if)#exit
• Router(config)#exit
• Router#show ipv6 interface brief
FastEthernet0/0 [up/up]
FE80::C800:DFF:FE80:8
2001:DB8:AAAA:1::1
31. How to configure EUI-64 based Global
Unicast IPv6 Address in a Cisco Router
Interface (MAC address "ca00.0cf0.0008")
• Router#configure terminal
• Router(config)#int fastEthernet 0/0
• Router(config-if)#ipv6 address 2001:db8:aaaa:1::/64 eui-64
• Router(config-if)#no shutdown
• Router(config-if)#exit
• Router(config)#exit
• Router#show ipv6 interface brief
FastEthernet0/0 [up/up]
FE80::C800:CFF:FEF0:8
2001:DB8:AAAA:1:C800:CFF:FEF0:8
32. Link Local IPv6 Addresses,
How Link Local IPv6 addresses are
generated
• The IPv6 addresses starting with FE
in hexadecimals represent link local IPv6 addresses.
• Link-local addresses cannot be routed to public networks
and limited to the local network.
• Link-local addresses are auto-configured (or auto-
generated plug-and-play) addresses (Stateless addresses)
similar to IPv4 APIPA addresses (169.254.0.0/16).
• Typically, getting an APIPA IPv4 address in an IPv4 network
is because of some network error, but a Link local
addresses are IPv6 addresses which can be used for local
communication.
• A link-local address is for use on a single link and should
never be routed.
33. • IPv6 Link Local addresses are identified among
IPv6 addresses by reserving the left most 64
bits as
1111111010000000 0000000000000000 0000000000000000 0000000000000000
(translates to FE80 in hexadecimals).
• IPv6 Link Local addresses are used by devices
for communicating with other nodes on the
same link.
• The scope of an IPv6 Link Local address is the
local link.
34.
35. Unique Local IPv6 Addresses
• IPv6 Unique Local addresses are the addresses
which can be used inside an enterprise
company at multiple sites.
• IPv6 Unique Local Addresses are defined
in IETF RFC 4193 and reserved with a range of
FD00::/7.
• A range of FD00::/7 means that IPv6 Unique
Local addresses begin with 7 bits with
exact binary pattern as 1111 110L.
36. • If the value of single binary bit "L" is set to 1, the Unique local IPv6 multicast
address is locally assigned. The value 0 may be defined in the future.
• So we can have two Unique Local IPv6 Unicast Address prefixes. 1111 1100 (FC
in hexadecimals) and 1111 1101 (FD in hexadecimals).
• Unique local IPv6 multicast addresses starting with FD (L binary bit set to 1) are
locally assigned.
• Globally unique but IPv6 Unique Local addresses are not expected to be routable
on the Internet, but IPv6 Unique Local addresses are routable inside of a company's
multiple sites.
• Defined by organizations by routing topology and filtering policies at the site
boundary level. The well-known prefix of IPv6 Unique Local addresses can be used
for filtering the inbound and outbound IPv6 traffic with Unique Local source and
destination addresses at site level.
• DNS entries for Unique Local IPv6 Addresses are not created in public Internet DNS.
• Unique Local IPv6 addresses can be viewed as globally unique "private routable"
IPv6 addresses, which are typically used inside an organization.
37. Multicast IPv6 Address:
Format, Prefix, Flags and Scope
• For IPv6 multicast addresses, the first eight bits
are reserved as 1111 1111. Thus, the prefix of an
IPv6 multicast address is FF00::/8.
• A IPv6 multicast address identifies multiple
interfaces.
• IPv6 devices can join or leave a multicast group at
any time and IPv6 nodes can join and listen to
multiple IPv6 multicast addresses at the same
time.
41. • Group ID
• The next 112 bits Group ID is used to identify the multicast group within
the given scope (either permanent or transient).
• Most important Link-local scope IPv6 multicast addresses are listed below.
42. Anycast IPv6 Addresses
• used for Anycast type of IPv6 network
communication.
• used only as destination addresses.
• typically assigned only to IPv6 routers.
• Anycast addresses are from IPv6 unicast address
range. So from a client perspective, it is not
possible to determine the IPv6 address is an
anycast address.
• The network devices which are dealing with
Anycast type of IPv6 addresses are routers and
only IPv6 routers are aware about the Anycast
IPv6 address.
54. • Neighbor Discovery Protocol (NDP) uses ICMPv6 Type
field values from 133 to 137.
• Following table lists Neighbor Discovery Protocol (NDP)
related ICMPv6 Type field values and their use.
55. Discovering Routers, Network Prefix and
Prefix Length Dynamically using NDP
Router Solicitation &
Router Advertisement messages
56. NDP Router Solicitation
• IPv6 hosts multicast (to a destination All router
multicast IPv6 address FF02::2) an ICMPv6
message for the key IPv6 configuration
information like Default Gateway, IPv6
Prefix and Prefix Length.
• The ICMPv6 message which the IPv6 hosts
multicasts asking for Default Router, IPv6
Prefix and Prefix Length is called as the Router
Solicitation (RS) message. ICMPv6 Type value for
Router Solicitation message is 133.
57. • The format for NDP Router Solicitation (RS)
message is shown below.
58. • Following screen shot is a Wireshark capture
of NDP Router Solicitation (RS) message.
59. • Following table provides more information
about NDP Router Solicitation (RS) message
fields.
60. NDP Router Advertisement
• IPv6 routers reply back ICMPv6 Router Advertisement
(RA) message (at a destination IPv6 all nodes multicast
address FF02::1) in response to a Router Solicitation
message from IPv6 hosts.
• The Router Advertisement (RA) message contains the
key IPv6 configuration information like Default
Router, IPv6 Prefix, Prefix Length, link MTU etc.
• ICMPv6 Type value for Router Advertisement message
is 134.
• Note that the IPv6 Routers send Router Advertisement
(RA) messages periodically also, at a destination IPv6
all nodes multicast address FF02::1 to inform their
presence.
61. • The format for NDP Router Advertisement
(RA) message is shown below.
62. • Following screen shot is a Wireshark capture
of NDP Router Advertisement (RA) message.
63. • Following table provides more information
about NDP Router Advertisement (RA)
message fields.
64.
65.
66. Resolving Link-layer address
(MAC address) dynamically using
NDP Neighbour Solicitation (NS) and Neighbour
Advertisement (NA) Messages
67. NDP Neighbour Solicitation (NS)
• NDP Neighbor solicitation messages are sent
by an IPv6 device to resolve the link-layer
address (MAC Address) of another IPv6
device.
• The source IPv6 address in a NDP Neighbor
Solicitation message is the IPv6 address of the
corresponding interface in the local-link.
• The destination address in a NDP Neighbor
solicitation message is the Solicited-Node IPv6
Multicast address.
68. • The format for NDP Neighbour Solicitation
(NS) message is shown below.
70. • Following table provides more information
about NDP Neighbour Solicitation message
fields.
71. NDP Neighbour Advertisement (NA)
• NDP Neighbour Advertisement messages can be
Solicited or Unsolicited.
Solicited Neighbour Advertisement messages are
response messages to a Neighbour Solicitation
message sent from another IPv6 device.
Unsolicited Neighbour Advertisement messages are
sent from an IPv6 device when there is a change in the
link-layer address of an interface, with the destination
address as All-nodes IPv6 multicast address (FF02::1).
• Every IPv6 devices will process this message,
because every IPv6 devices in the link have joined
to All-nodes IPv6 multicast address.
72. • NDP Neighbour Advertisement (NA) message
format is shown below.
73. • Following screen shot is a Wireshark capture
of NDP Neighbour Advertisement (NA)
message.
74. • Following table provides more information about
NDP Neighbour Advertisement message fields.
75. Solicited-Node Multicast IPv6 Address
• Solicited-Node IPv6 multicast addresses are
derived from the unicast IPv6 address of the
interface.
• Solicited-Node IPv6 multicast addresses have
a network prefix of FF02::1:FF00:0/104 and
the remaining 24 bits are taken from the
unicast IPv6 address.
76. • E.g. Consider a Global Unicast IPv6 Address
2001:db8:aaaa:1::1111:777f/64. The last 24 bits are the last
6 hexadecimal digits 11777F
(in binaries 000100010111011101111111). The complete Solicited-
Node IPv6 multicast address is the Solicited-Node prefix
(FF02::1:FF00:0/104) prepended to 11777F.
• The Solicited-Node IPv6 multicast address for above Global Unicast
IPv6 address is FF02::1:FF11:777F
• The main advantage behind using Solicited-Node Multicast IPv6
address is that only the interface which is configured with the
particular Unicast IPv6 address will be listening to Solicited-Node
Multicast IPv6 address.
• All other interfaces are not disturbed every time a Neighbour
Solicitation message is sent to the Solicited-Node Multicast IPv6
address, which belongs to another interface.