Post on 24-Jan-2021
1
22 v1.0
IPv6 OverviewW E B I N A R C O U R S E
2
3 v1.03
Overview
• Global IPv6 End-User Readiness
• IPv6 Packet Header Format
• Introduction of IPv6 Extension Headers
• IPv6 Address Representation
• Overview of IPv6 Address Types
• Homework
4 v1.04
Global IPv6 End-User Readiness
Source: https://stats.labs.apnic.net/ipv6/ (20200602)
Results are generated from the samples collected by APNIC Lab from Internet.
5 v1.05
Global IPv6 End-User Readiness
Source: https://stats.labs.apnic.net/ipv6/ (20200602)
6 v1.06
IPv6 End-User Readiness in Asia
Source: https://stats.labs.apnic.net/ipv6/ (20200602)
7 v1.07
IPv6 End-User Readiness in Oceania
Source: https://stats.labs.apnic.net/ipv6/ (20200602)
8
IPv6 Packet Header FormatIPv6 Overview
9 v1.09
IPv6 is Network Layer Replacement of IPv4
Application Layer
Transport Layer
Network Layer
Datalink Layer
IPv4 IPv6
32 bit 128 bit
10 v1.010
Comparison of IPv6 and IPv4 Packet Headers
I P v 6 H e a d e r
8200
11 v1.011
Comparison of IPv6 and IPv4 Packet Headers
I P v 6 H e a d e r
791
I P v 4 H e a d e r
8200
12 v1.012
Comparison of IPv6 and IPv4 Packet Headers
I P v 6 H e a d e r
791
I P v 4 H e a d e r
8200
Keep the same name -- 3 parts
13 v1.013
Comparison of IPv6 and IPv4 Packet Headers
I P v 6 H e a d e r
791
I P v 4 H e a d e r
8200
Keep the same name -- 3 partsDifferent names with similar functions -- 4 parts
14 v1.014
Comparison of IPv6 and IPv4 Packet Headers
I P v 6 H e a d e r
791
I P v 4 H e a d e r
8200
Keep the same name -- 3 partsDifferent names with similar functions -- 4 partsNew function – 1 part
15 v1.015
IPv6 & IPv4 Packet Example
• Example IPv6 packet on this link:
• https://www.cloudshark.org/captures/84fd54ad03e0
• Example IPv4 packet on this link:
• https://www.cloudshark.org/captures/09f49cda5b80
16
Introduction of IPv6 Extension HeadersIPv6 Overview
17 v1.017
What is an Extension Header?
IPv6 Packet
18 v1.018
What is an Extension Header?
IPv6 Packet
Upper-layer Example:TCP Segment
IPv6 Header
Optional internet-layer information, such as, fragmentation information, encryption, etc.
19 v1.019
What is an Extension Header?
IPv6 Packet
Upper-layer Example:TCP Segment
IPv6 Header
Extension Headers
Optional internet-layer information, such as, fragmentation information, encryption, etc.
20 v1.020
IPv6 Packet
IP
v6
H
ea
de
r
21 v1.021
IPv6 Packet
Maybe the payload is the TCP segment.
IP
v6
H
ea
de
rPa
yloa
d
22 v1.022
IPv6 Extension Header
IP
v6
H
ea
de
r
TCP Segment
Extension HeaderMaybe the payload is composed of an extension header and the TCP segment.
Payl
oad
23 v1.023
IPv6 Extension Headers
TCP Segment
Extension Header 2
Extension Header 1
IP
v6
H
ea
de
r
Maybe the payload is composed of 2 extension headers and the TCP segment.P
ay
loa
d
2424 v1.0
Maybe the payload is composed of several extension headers and the TCP segment.
TCP Segment
Extension Header 2
Extension Header 1
Extension Header 4
Extension Header 3
IP
v6
H
ea
de
rP
ay
loa
d
25 v1.025
Extension Header Types
Extension HeaderHop-by-Hop Options RoutingFragmentDestination OptionsAuthenticationEncapsulating Security Payload
• Following are the extension header types listed in RFC 8200:
26 v1.026
Extension Header Types and Type Value
Extension Header Type ValueHop-by-Hop Options 0Routing 43Fragment 44Destination Options 60Authentication 51Encapsulating Security Payload 50
• Following are the extension header types listed in RFC 8200:
27 v1.027
Extension Header Example
• Example IPv6 packet with an Extension Header on this link:
• https://www.cloudshark.org/captures/7dd0b50eb768
• https://www.cloudshark.org/captures/90fd94cba716
What is the type of extension header in each of the packets?
28 v1.028
Extension Header Example
• Example IPv6 packet with an Extension Header on this link:
• https://www.cloudshark.org/captures/7dd0b50eb768
• https://www.cloudshark.org/captures/90fd94cba716
What is the type of extension header in each of the packets?
Fragment Header
Hop-by-Hop Options Header
29 v1.029
Extension Header Order
• When more than one extension header is used in the same packet, it is recommended that those headers appear in the following order in RFC 8200:
TCP Segment
IPv6 Header
Extension Headers
IPv6 header
Hop-by-Hop Options header
Destination Options header
Routing header
Fragment header
Authentication header (RFC 4302)
Encapsulating Security Payload header (RFC 4303)
Destination Options header
TCP header (Upper-Layer header)
IPv6 Packet
30
IPv6 Address RepresentationIPv6 Overview
31 v1.031
IPv6 Address Format
IPv6 address is represented in hexadecimal.
Example: 2001:0db8:0000:0000:0000:036e:1250:2b00
32 v1.032
IPv6 Address Format
IPv6 address is represented in hexadecimal.
Example: 2001:0db8:0000:0000:0000:036e:1250:2b001 2 3 4 5 6 7 8
33 v1.033
IPv6 Address Format
IPv6 address is represented in hexadecimal.
Example:
Binary format (128-bit):
2001:0db8:0000:0000:0000:036e:1250:2b00
0010000000000001 0000110110111000 000000000000000000000011011011100000000000000000 0000000000000000
0001001001010000 0010101100000000
4 hexadecimal digits
34 v1.034
IPv6 Address Format
:0db8:0000:0000:0000:036e:1250:2b00
0000110110111000 000000000000000000000011011011100000000000000000 0000000000000000
0001001001010000 0010101100000000
Binary format (128-bit):
0010000000000001
2001
4 hexadecimal digits
Components of an IPv6 address:
Example:
35 v1.035
IPv6 Address Format
Components of an IPv6 address:
Example:
Binary format (128-bit):
:0db82001: :0000:0000:036e:1250:2b000000
0000110110111000001000000000000100000011011011100000000000000000 0000000000000000
0001001001010000 0010101100000000
0000000000000000
36 v1.036
IPv6 Address Format
Components of an IPv6 address:
Example:
Binary format (128-bit):
:0db82001: :0000:0000:036e:1250:2b000000
0000110110111000001000000000000100000011011011100000000000000000 0000000000000000
0001001001010000 0010101100000000
0000000000000000
Separated by colons
37 v1.037
IPv6 Address Format
Components of an IPv6 address:
Example: :0db8:0000:0000:0000:036e:1250:2b00
0010000000000001
2001
16 binary bits(1 x 16 bits)
4 hexadecimal digits
38 v1.038
0000 0000 0001
100
IPv6 Address Format
Components of an IPv6 address:
Example: :0db8:0000:0000:0000:036e:1250:2b002
4 hexadecimal digits
Dec Hex Binary
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 a 1010
11 b 1011
12 c 1100
13 d 1101
14 e 1110
15 f 1111
0010
nibble
16 binary bits
39 v1.039
0010
2
0000 0001
10
IPv6 Address Format
Components of an IPv6 address:
Example: :0db8:0000:0000:0000:036e:1250:2b00
4 hexadecimal digits
Dec Hex Binary
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 a 1010
11 b 1011
12 c 1100
13 d 1101
14 e 1110
15 f 1111
0
0000
nibble
16 binary bits
nibble
40 v1.040
0000
0
0010
2
0001
1
IPv6 Address Format
Components of an IPv6 address:
Example: :0db8:0000:0000:0000:036e:1250:2b00
4 hexadecimal digits
Dec Hex Binary
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 a 1010
11 b 1011
12 c 1100
13 d 1101
14 e 1110
15 f 1111
0
0000
nibble
16 binary bits
nibble nibble
41 v1.041
0
00000000
0
0010
2
IPv6 Address Format
Components of an IPv6 address:
Example: :0db8:0000:0000:0000:036e:1250:2b00
4 hexadecimal digits
Dec Hex Binary
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 a 1010
11 b 1011
12 c 1100
13 d 1101
14 e 1110
15 f 1111
1
0001
nibble
16 binary bits
nibble nibble nibble
42 v1.042
IPv6 Address Format
Components of an IPv6 address:
Example: :0000:0000:0000:036e:1250:2b00
0010000000000001
32 bits(2 x 16 bits)
:0db82001
0000110110111000
8 hexadecimal digits
43 v1.043
IPv6 Address Format
Components of an IPv6 address:
Example: :0000:0000:036e:1250:2b00
0010000000000001
48 bits(3 x 16 bits)
0000110110111000
:0000:0db82001
0000000000000000
12 hexadecimal digits
44 v1.044
IPv6 Address Format
Components of an IPv6 address:
Example: :0db82001: :0000:0000:036e:1250:2b000000
00001101101110000010000000000001
0000001101101110
0000000000000000
0000000000000000 0001001001010000 0010101100000000
0000000000000000
128 bits(8 x 16 bits)
32 hexadecimal digits in 8 fields
45 v1.045
Quiz 1
• (Single Choice) How many fields (or parts) in a complete format of an IPv6
address?
o A. 6
o B. 16
o C. 8
o D. 10
46 v1.046
Quiz 1
• (Single Choice) How many fields (or parts) in a complete format of an IPv6
address?
o A. 6
o B. 16
o C. 8
o D. 10
47 v1.047
Omitting Leading Zeros
Example 1: 2001:0db8:0000:0000:0000:036e:1250:2b00
48 v1.048
Omitting Leading Zeros
Example 1:
2001:0db8:0000:0000:0000:036e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
49 v1.049
Omitting Leading Zeros
Example 1:
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
50 v1.050
Omitting Leading Zeros
Example 1:
Example 2:
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
2001:0db8:010d:000a:00dd:c000:e000:0001
51 v1.051
Omitting Leading Zeros
Example 1:
Example 2:
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
2001:0db8:010d:000a:00dd:c000:e000:0001
2001:0db8:010d:000a:00dd:c000:e000:0001
52 v1.052
Omitting Leading Zeros
Example 1:
Example 2:
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
2001:0db8:010d:000a:00dd:c000:e000:0001
2001:db8:10d:a:dd:c000:e000:1
53 v1.053
Example 1:
Example 2:
Omitting Leading Zeros
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
2001:0db8:010d:000a:00dd:c000:e000:0001
2001:db8:10d:a:dd:c000:e000:1
Trailing 0s must be included
54 v1.054
Double Colon “::”
• Sometimes, it is common to see the long strings of zero bits in IPv6 address. For
example, 2001:db8:0:0:0:0:0:1.
• In order to make writing addresses containing zero bits easier, “::” is available to
compress the zeros.
• The use of “::” indicates one or more groups of 16 bits of zeros.
• The “::” can only appear once in an address.
4291
55 v1.055
Double Colon “::”
• Example 1:
2001:db8:0:0:0:36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
56 v1.056
Double Colon “::”
• Example 1:
2001:db8:0:0:0:36e:1250:2b00
::
2001:0db8:0000:0000:0000:036e:1250:2b00
• Compressed form:
57 v1.057
• Example 1:
Double Colon “::”
2001:db8:0:0:0:36e:1250:2b00
2001:db8::36e:1250:2b00
2001:0db8:0000:0000:0000:036e:1250:2b00
• Compressed form:
58 v1.058
• Example 2: 2001:db8:0:0:0:0:0:1
Double Colon “::”
2001:db8::1
• Example 3: 2001:db8:0:0:0:0:0:0
2001:db8::
Compressed form:
Compressed form:
59 v1.059
Recommendation of “::” Placement in RFC 5952
• When there is an alternative choice in the placement of a “::”, the longest run of
consecutive 16-bit 0 fields MUST be shortened
Example: 2001:db8:0:0:1234:0:0:0
2001:db8::1234:0:0:0
2001:db8:0:0:1234::
There are 2 compressed formats:
60 v1.060
Recommendation of “::” Placement in RFC 5952
• When there is an alternative choice in the placement of a “::”, the longest run of
consecutive 16-bit 0 fields MUST be shortened
Example: 2001:db8:0:0:1234:0:0:0
2001:db8::1234:0:0:0
2001:db8:0:0:1234:: RFC 5952
There are 2 compressed formats:
61 v1.061
Recommendation of “::” Placement in RFC 5952
• When the length of the consecutive 16-bit 0 fields are equal the first sequence of
zero bits MUST be shortened.
Example: 2001:db8:0:0:1:0:0:1
2001:db8::1:0:0:1
2001:db8:0:0:1::1
There are 2 compressed formats:
62 v1.062
Recommendation of “::” Placement in RFC 5952
• When the length of the consecutive 16-bit 0 fields are equal the first sequence of
zero bits MUST be shortened.
Example: 2001:db8:0:0:1:0:0:1
2001:db8::1:0:0:1
2001:db8:0:0:1::1
RFC 5952
There are 2 compressed formats:
63 v1.063
Quiz 2
• Please write the most compressed format of the following IPv6 address to its,
using the RFC 5952 standard (both omitting leading zeros and using “::”).
o 2001:0db8:0001:0000:0000:0000:fac4:00b0
64 v1.064
Quiz 2
• Please write the most compressed format of the following IPv6 address to its,
using the RFC 5952 standard (both omitting leading zeros and using “::”).
o 2001:0db8:0001:0000:0000:0000:fac4:00b0
• Answer: 2001:db8:1::fac4:b0
65 v1.065
IPv6 Prefix
An IPv6 address prefix is represented by the notation:
ipv6-address/prefix-length
Prefix-length is a decimal value specifying how many of the leftmost contiguous bits of the address comprise the prefix.
4291
66 v1.066
IPv6 Prefix
An IPv6 address prefix is represented by the notation:
ipv6-address/prefix-length
Example 1: 2001:db8::/32
67 v1.067
IPv6 Prefix
An IPv6 address prefix is represented by the notation:
ipv6-address/prefix-length
Example 1: 2001:db8::/32
Example Network
2001:db8::/32 This example network is using the IPv6 address block 2001:db8::/32.
68 v1.068
IPv6 Prefix
An IPv6 address prefix is represented by the notation:
ipv6-address/prefix-length
Example 1: 2001:db8::/32
Example Network
2001:db8::/32 This example network is using the IPv6 address block 2001:db8::/32.
:0000:0000:0000:
0010000000000001
32 bits
:0db82001
0000110110111000
0000:0000:0000/32
Prefix
69
Overview of IPv6 Address TypesIPv6 Overview
70 v1.070
Overview of IPv6 Address Types
IPv6 Addressing
Unicast
Global Unicast
2000::/3
Link-Local
fe80::/10
Loopback
::1/128
Unspecified Address::/128
Unique Local
fc00::/7
Embedded IPv4::/80
Anycast Multicast
Assigned
ff00::/8
Solicited Node
ff02::1:ff00:0000/104
Figure 1: IPv6 Address Types
71 v1.071
IPv6 Address Types: Unicast
IPv6 Addressing
Unicast
Global Unicast
2000::/3
Link-Local
fe80::/10
Loopback
::1/128
Unspecified Address::/128
Unique Local
fc00::/7
Embedded IPv4::/80
Anycast Multicast
Assigned
ff00::/8
Solicited Node
ff02::1:ff00:0000/104
Figure 1: IPv6 Address Types
72 v1.072
IPv6 Address Types: Anycast
IPv6 Addressing
Unicast Anycast Multicast
Assigned
ff00::/8
Solicited Node
ff02::1:ff00:0000/104
Global Unicast
2000::/3
Link-Local
fe80::/10
Loopback
::1/128
Unspecified Address::/128
Unique Local
fc00::/7
Embedded IPv4::/80
Figure 1: IPv6 Address Types
73 v1.073
IPv6 Address Types: Multicast
IPv6 Addressing
Unicast Anycast Multicast
Assigned
ff00::/8
Solicited Node
ff02::1:ff00:0000/104
Global Unicast
2000::/3
Link-Local
fe80::/10
Loopback
::1/128
Unspecified Address::/128
Unique Local
fc00::/7
Embedded IPv4::/80
Figure 1: IPv6 Address Types
74 v1.074
Link-Local IPv6 Unicast Addresses
• Link-Local addresses (fe80::/10) are for use on a single link.
Link-local Scope
75 v1.075
Link-Local IPv6 Unicast Addresses
fe80::1897:279d:5a41:7c8
Host1Router
fe80::c800:beff:fe5d:1c
en0
host:~user$ ifconfig
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500ether 78:4f:43:75:83:d1inet6 fe80::1897:279d:5a41:7c8%en0 prefixlen 64 secured scopeid 0x8inet6 2001:db8:6a02:2c00:104d:7d3b:794a:6834 prefixlen 64 autoconf securedinet6 2001:db8:6a02:2c00:d186:85f0:bad0:7807 prefixlen 64 autoconf temporaryinet 10.0.0.120 netmask 0xffffff00 broadcast 10.0.0.255nd6 options=201<PERFORMNUD,DAD>media: autoselectstatus: active
en0
What does this “%en0” mean?
%en0 is the zone index for the interface en0.
Zone index helps uniquely distinguish which link/subnet an interface is connected to. The zone indices are strictly local to the device.
On Linux OS or MacOS, run ifconfig, on windows OS, run ipconfig, please check the IPv6 addresses on your computer.
76 v1.076
Homework
• 1. Complete a quiz and get your certificate for this webinar:
o Link: https://academy.apnic.net/en/quizz/ipv6-overview/
77 v1.077
Homework
• 1. Complete a quiz and get your certificate for this webinar:
o Link: https://academy.apnic.net/en/quizz/ipv6-overview/
• 2. Take the online courses “IPv6 Fundamentals” and “IPv6 Address Planning” on
APNIC Academy.
academy.apnic.net
78 v1.078
Homework
• 1. Complete a quiz and get your certificate for this webinar:
o Link: https://academy.apnic.net/en/quizz/ipv6-overview/
• 2. Take the online courses “IPv6 Fundamentals” and “IPv6 Address Planning” on
APNIC Academy.
academy.apnic.net
79 v1.079
Acknowledgements
• Figure 1: Adapted from Graziani, R. (2013). IPv6 Fundamentals: A Straightforward Approach to
Understanding IPv6. USA: Cisco Press, Figure 4-1. IPv6 Address Types.
80 v1.080
Last but not least
Wish you and your family stay safe and healthy!
81 v1.081
Thank You!END OF SESSIONThank You!
END OF SESSION
82