Internet Protocol Version 6 IPv 6 ChunChuan Yang

  • Slides: 50
Download presentation
Internet Protocol, Version 6 (IPv 6) Chun-Chuan Yang Dept. Computer Science & Info. Eng.

Internet Protocol, Version 6 (IPv 6) Chun-Chuan Yang Dept. Computer Science & Info. Eng. National Chi Nan University 1

Outline n n n n Networking Basics Introduction to IPv 6 Header Format IPv

Outline n n n n Networking Basics Introduction to IPv 6 Header Format IPv 6 Addressing Model ICMPv 6 Neighbor Discovery Transition from IPv 4 to IPv 6 vs. IPv 4 2

Basics: OSI 7 -Layer RM 3

Basics: OSI 7 -Layer RM 3

Basics: TCP/IPv 4 Protocol Suite 4

Basics: TCP/IPv 4 Protocol Suite 4

Internet Protocol (IP) n Features: q q q n n Layer 3 (Network layer)

Internet Protocol (IP) n Features: q q q n n Layer 3 (Network layer) Unreliable, Connectionless, Datagram Best-effort delivery Popular version: IPv 4 Major functions q q q Global addressing Datagram lifetime Fragmentation & Reassembly 5

IPv 4 Header 6

IPv 4 Header 6

IPv 4 companion protocols (1) n ARP: Address Resolution Protocol q n ICMP: Internet

IPv 4 companion protocols (1) n ARP: Address Resolution Protocol q n ICMP: Internet Control Message Protocol q n n Mapping from IP address to MAC address Error reporting & Query IGMP: Internet Group Management Protocol q Multicast member join/leave Unicast Routing Protocols (Intra-AS) q q Maintaining Unicast Routing Table E. g. RIP, OSPF (Open Shortest Path First) 7

IPv 4 companion protocols (2) n Multicast Routing Protocols q q n Exterior Routing

IPv 4 companion protocols (2) n Multicast Routing Protocols q q n Exterior Routing Protocols (Inter-AS) q n Maintaining Multicast Routing Table E. g. DVMRP, MOSPF, CBT, PIM E. g. BGP (Border Gateway Protocol) Quality-of-Service Frameworks q q Integrated Service (ISA, Int. Serv) Differentiated Service (Diff. Serv) 8

Why IPv 6? n n n Deficiency of IPv 4 Address space exhaustion New

Why IPv 6? n n n Deficiency of IPv 4 Address space exhaustion New types of service Integration q q n Multicast Quality of Service Security Mobility (MIPv 6) Header and format limitations 9

Advantages of IPv 6 over IPv 4 n n n n Larger address space

Advantages of IPv 6 over IPv 4 n n n n Larger address space Better header format New options Allowance for extension Support for resource allocation Support for more security Support for mobility 10

Header: from IPv 4 to IPv 6 Changed Removed 11

Header: from IPv 4 to IPv 6 Changed Removed 11

IPv 6 Header Format 12

IPv 6 Header Format 12

IPv 6 Packet (PDU) Structure 13

IPv 6 Packet (PDU) Structure 13

Traffic Class n The 8 -bit field in the IPv 6 header is available

Traffic Class n The 8 -bit field in the IPv 6 header is available for use by originating nodes and/or forwarding routers to identify and distinguish between different classes or priorities of IPv 6 packets. q n E. g. , used as the codepoint in Diff. Serv General requirements q q q Service interface must provide means for upper-layer protocol to supply the value of traffic class Value of traffic class can be changed by source, forwarder, receiver An upper-layer protocol should not assume the value of traffic class in a packet has not been changed. 14

IPv 6 Flow Label n n Related sequence of packets Needing special handling Identified

IPv 6 Flow Label n n Related sequence of packets Needing special handling Identified by src & dest addr + flow label Router treats flow as sharing attributes q n May treat flows differently q n E. g. path, resource allocation, discard requirements, accounting, security Buffer sizes, different forwarding precedence, different quality of service Alternative to including all info. in every header 15

Payload Length n n 16 -bit unsigned integer. Length of the IPv 6 payload,

Payload Length n n 16 -bit unsigned integer. Length of the IPv 6 payload, i. e. , the rest of the packet following this IPv 6 header, in octets. Note that any extension headers present are considered part of the payload, i. e. , included in the length count. 16

Extension Header Order Header Type Next Header Code 1 Basic IPv 6 Header 2

Extension Header Order Header Type Next Header Code 1 Basic IPv 6 Header 2 Hop-by-Hop Options 0 4 Routing header 43 5 Fragment header 44 6 Authentication header 51 7 Encapsulation Security Payload header 50 8 Destination Options 60 9 Mobility header 135 No Next header (Null) 59 Upper layer: TCP, UDP, ICMP 6, 17, 58 17

Hop-by-Hop Options n Must be examined by every router q n Specifies discard/forward handling

Hop-by-Hop Options n Must be examined by every router q n Specifies discard/forward handling Options q q Pad 1 Pad. N Jumbo payload Router alert (can be used for RSVP) 18

Routing Header n n List of one or more intermediate nodes to visit Header

Routing Header n n List of one or more intermediate nodes to visit Header includes q q Next Header extension length Routing type (e. g. type 0 = Source Routing) Segments left 19

Source Routing Example 20

Source Routing Example 20

Fragment Header (1) n Fragment Offset: 8 -bit unsigned integer q q The offset,

Fragment Header (1) n Fragment Offset: 8 -bit unsigned integer q q The offset, in 8 -octet units, of the data following this header, relative to the start of the Fragmentable Part of the original packet Unfragmentable part: IPv 6 header + any extension headers that must be processed by nodes en route 21

Fragment Header (2) n n M flag: 1=more fragments, 0=last fragment Identification: combined with

Fragment Header (2) n n M flag: 1=more fragments, 0=last fragment Identification: combined with the src & dest addr uniquely identifies the original packet 22

Reassembly (1) n n n The Unfragmentable Part of the reassembled packet consists of

Reassembly (1) n n n The Unfragmentable Part of the reassembled packet consists of all headers up to, but not including, the Fragment header of the first fragment packet The Next Header field of the last header of the Unfragmentable Part is obtained from the Next Header field of the first fragment’s Fragment header The Payload Length of the reassembled packet is computed from the length of the Unfragmentable Part and the length and offset of the last fragment. 23

Reassembly (2) n PL. orig = PL. first - FL. first - 8 +

Reassembly (2) n PL. orig = PL. first - FL. first - 8 + (8 * FO. last) + FL. last q PL. orig = Payload Length field of reassembled packet. q PL. first = Payload Length field of first fragment packet. q q q FL. first = length of fragment following Fragment header of first fragment packet. FO. last = Fragment Offset field of Fragment header of last fragment packet. FL. last = length of fragment following Fragment header of last fragment packet. 24

Reassembly (3) PL. first IPv 6 Header Extension Header Fragment Header First Fragment .

Reassembly (3) PL. first IPv 6 Header Extension Header Fragment Header First Fragment . . 8 FL. first 8*FO. last IPv 6 Header Extension Header Fragment Header Last Fragment FL. last 25

IPsec Scenario 26

IPsec Scenario 26

IPSec Benefits n Provides strong security for external traffic n Resistant to bypass n

IPSec Benefits n Provides strong security for external traffic n Resistant to bypass n n n Below transport layer hence transparent to applications Can be transparent to end users Can provide security for individual users if needed 27

IPSec Functions n Authentication Header q n Encapsulating Security Payload (ESP) q n for

IPSec Functions n Authentication Header q n Encapsulating Security Payload (ESP) q n for authentication/integrity/encryption (privacy) A key exchange function q n for authentication/integrity only Manual or automated VPNs usually need combined function 28

Authentication Header VC ID for all packets sent during a Security Association connection Prevent

Authentication Header VC ID for all packets sent during a Security Association connection Prevent playback 29

Encapsulating Security Payload 30

Encapsulating Security Payload 30

IPv 6 Addressing Model n n n Addresses are assigned to interfaces, not hosts

IPv 6 Addressing Model n n n Addresses are assigned to interfaces, not hosts Interface expected to have multiple addresses Addresses have scope q q q Link-Local Site-Local Unique Local Global 31

Text Representation of Address n Colon-Hex q n 3 ffe: 3600: 2000: 0800: 0248:

Text Representation of Address n Colon-Hex q n 3 ffe: 3600: 2000: 0800: 0248: 54 ff: fe 5 c: 8868 Compressed Format: q 3 ffe: 0 b 00: 0 c 18: 0001: 0000: 0010 q becomes 3 ffe: b 00: c 18: 1: : 10 32

Address Type Prefixes 33

Address Type Prefixes 33

Global Unicast Address n Global routing prefix q n Subnet ID q n A

Global Unicast Address n Global routing prefix q n Subnet ID q n A (typically hierarchically-structured) value assigned to a site (a cluster of subnets/links) An identifier of a subnet within the site Interface ID q Constructed in Modified EUI-64 format 34

IEEE 802 IPv 6 Interface ID 35

IEEE 802 IPv 6 Interface ID 35

Site-Local Address n n Meaningful only in a single site zone, and may be

Site-Local Address n n Meaningful only in a single site zone, and may be reused in other sites Equivalent to the IPv 4 private address space Address are not automatically configured and must be assigned Prefix= FEC 0: : /48 36

Link-Local Address n n n Meaningful only in a single link zone, and may

Link-Local Address n n n Meaningful only in a single link zone, and may be reused on other links Link-local addresses for use during auto-configuration and when no routers are present Required for Neighbor Discovery process, always automatically configuration An IPv 6 router never forwards link-local traffic beyond the link Prefix= FE 80: : /64 37

Special IPv 6 Address n Loopback address (0: 0: 1 or : : 1)

Special IPv 6 Address n Loopback address (0: 0: 1 or : : 1) q n IPv 4 -compatible address (0: 0: 0: w. c. x. z or : : w. c. x. z) q q n Identify a loopback interface Used by dual-stack nodes IPv 6 traffic is automatically encapsulated with an IPv 4 header and send to the destination using the IPv 4 infrastructure IPv 4 mapped address (0: 0: 0: FFFF: w. c. x. z or : : FFFF: w. c. x. z) q q Represent an IPv 4 -only node to an IPv 6 node Only use a single listening socket to handle connections from client via both IPv 6 and IPv 4 protocols. Never used as a source or destination address of IPv 6 packet Rarely implemented 38

Address Autoconfiguration (1) n n n Allow plug and play BOOTP and DHCP are

Address Autoconfiguration (1) n n n Allow plug and play BOOTP and DHCP are used in IPv 4 DHCPng will be used with IPv 6 Two Methods: Stateless and Stateful Stateless: q q A system uses link-local address as source and multicasts to "All routers on this link" Router replies and provides all the needed prefix info All prefixes have a associated lifetime System can use link-local address permanently if no router 39

Address Autoconfiguration (2) n Stateful: q q Problem w/ stateless: Anyone can connect Routers

Address Autoconfiguration (2) n Stateful: q q Problem w/ stateless: Anyone can connect Routers ask the new system to go DHCP server (by setting managed configuration bit) System multicasts to "All DHCP servers" DHCP server assigns an address 40

Network Layer in v 4 & v 6 41

Network Layer in v 4 & v 6 41

ICMPv 6 n An integral part of IPv 6 and MUST be fully implement

ICMPv 6 n An integral part of IPv 6 and MUST be fully implement by every IPv 6 node (RFC 2463) n Next Header value= 58 n Report delivery or forwarding errors n Provide simple echo service for troubleshooting n Neighbor Discovery (ND): 5 ICMP messages n Multicast Listener Discovery (MLD): 3 ICMP messages 42

ICMPv 6 Messages 43

ICMPv 6 Messages 43

Neighbor Discovery (ND) n n Node (Hosts and Routers) use ND to determinate the

Neighbor Discovery (ND) n n Node (Hosts and Routers) use ND to determinate the link-layer addresses for neighbors known to reside on attached links and quick purge cached valued that become invalid Hosts also use ND to find neighboring router that willing to forward packets on their behalf Nodes use the protocol to actively keep track of which neighbors are reachable and which are not, and to detect changed link-layer addresses Replace ARP, ICMP Router Discovery, and ICMP Redirect used in IPv 4 44

IPv 6 ND Mechanisms (1) n Router discovery q n Prefix discovery q n

IPv 6 ND Mechanisms (1) n Router discovery q n Prefix discovery q n Discovery additional parameter (ex. link MTU, default hop limit for outgoing packet) Address auto-configuration q n Equivalent to ICMPv 4 Address Mask Request/Reply Parameter discovery q n Equivalent to ICMPv 4 Router Discovery Configure IP address for interfaces Address resolution: Equivalent to ARP in IPv 4 45

IPv 6 ND Mechanisms (2) n Next-hop determination q q n n Neighbor unreachable

IPv 6 ND Mechanisms (2) n Next-hop determination q q n n Neighbor unreachable detection (NUD) Duplicate address detection (DAD) q n Destination address, or Address of an on-link default router Determine that an address considered for use is not already in use by a neighboring node First-hop Redirect function q q Inform a host of a better first-hop IPv 6 address to reach a destination, Equivalent to ICMPv 4 Redirect 46

Transition from IPv 4 to IPv 6 47

Transition from IPv 4 to IPv 6 47

Advantages of IPv 6 over IPv 4 (1) Feature Source and destination address IPSec

Advantages of IPv 6 over IPv 4 (1) Feature Source and destination address IPSec Payload ID for Qo. S in the header Fragmentation Header checksum Resolve IP address to a link layer address IPv 4 IPv 6 32 bits 128 bits Optional required No identification Using Flow label field Both router and the sending hosts Only supported at the sending hosts included Not included broadcast ARP request Multicast Neighbor Solicitation message 48

Advantages of IPv 6 over IPv 4 (2) Feature IPv 4 IPv 6 Determine

Advantages of IPv 6 over IPv 4 (2) Feature IPv 4 IPv 6 Determine the address of the best default gateway ICMP Router Discovery(optional) ICMPv 6 Router Solicitation and Router Advertisement (required) Send traffic to all nodes on a subnet Broadcast Link-local scope allnodes multicast address Configure address Manually or DHCP Autoconfiguration (IGMP) Multicast Listener Discovery (MLD) Manage local subnet group membership 49

IPv 6 References n RFC 2460: IPv 6 n RFC 2461: Neighbor Discovery n

IPv 6 References n RFC 2460: IPv 6 n RFC 2461: Neighbor Discovery n RFC 2462: Stateless Address Autoconfiguration n RFC 3513: Addressing Architecture n RFC 3679: Flow Label Specification n RFC 4443: ICMPv 6 n RFC 3810: Multicast Listener Discovery (MLDv 2) 50