autoconfiguracion

57
Protocols in Telecommunication Networks 1 M.Sc. Information and Communication Technologies IPv6- Autonfiguration Anna Calveras

Upload: shanell-campbell

Post on 07-Nov-2015

2 views

Category:

Documents


0 download

DESCRIPTION

Autoconfiguración ipv6

TRANSCRIPT

  • Protocols in Telecommunication Networks 1M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    IPv6- Autonfiguration

    Anna Calveras

  • Protocols in Telecommunication Networks 2M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s SYLLABUS

    ICMPv6 Path MTU Discovery Neighbor Discovery Multicast over IPv6 Address Autoconfiguration

  • Protocols in Telecommunication Networks 3M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Documentation RFC 1981. Path MTU Discovery for IP version 6 RFC 2460. Internet Protocol, Version 6 (IPv6) Specification RFC 2710. Multicast Listener Discovery (MLD) for IPv6 RFC 3315. Dynamic Host Configuration Protocol for IPv6

    (DHCPv6) RFC 3810. Multicast Listener Discovery Version 2 (MLDv2) for

    IPv6 RFC 4443. Internet Control Message Protocol (ICMPv6) for the

    Internet Protocol Version 6 (IPv6) Specification RFC 4861. Neighbor Discovery for IP version 6 (IPv6) RFC 4862. IPv6 Stateless Address Autoconfiguration

  • Protocols in Telecommunication Networks 4M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Documentation Other:

    RFC 2711. IPv6 Router Alert Option RFC 3590. Source Address Selection for the Multicast Listener

    Discovery (MLD) Protocol RFC 3775. Mobility Support in IPv6 RFC4429. Optimistic Duplicate Address Detection (DAD) for

    IPv6 RFC4541. Considerations for Internet Group Management

    Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches

  • Protocols in Telecommunication Networks 5M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    ICMPV6

  • Protocols in Telecommunication Networks 6M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s ICMPv6 ICMPv6 vs ICMPv4

    Taking profit of IPv6 Messages translation

    Introducing ICMPv6 and its applications Message header Basic set of messages New applications

    Neighbor Discovery Multicast over IPv6 Address Autoconfiguration

    Playing with ICMPV6 The ping/ping6 tool

  • Protocols in Telecommunication Networks 7M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s ICMPv6 vs ICMPv4 Key IPv6 benefits for ICMPv6

    IPv6 addresses are longer enough to Build IP addresses based on MAC addresses Define a lot of multicast groups

    Broadcast is replaced by multicast Multicast link-local addresses can be defined

    All host, all routers Solicited-node multicast address

    Energy consumption reduced

    Taking profit of IPv6 Broadcast cannot be used, only multicast is allowed Multicast can be send to an specific group of MACs

  • Protocols in Telecommunication Networks 8M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Remember - Nodes required addresses A host is required to recognize the following addresses as

    identifying itself: One link-Local address for each interface Any additional Unicast and Anycast addresses that have been

    configured for the node's interfaces (manually or automatically). The loopback address The All-Nodes multicast addresses The Solicited-Node multicast address for each of its unicast

    and anycast addresses Multicast addresses of all other groups to which the node

    belongs

  • Protocols in Telecommunication Networks 9M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Remember - Link-Local Unicast Addresses For use in a single link Used:

    During automatic address configuration During neighbor discovery When no routers are present

    Routers MUST NOT forward packets with these addresses as destination or source

    1111111010 0 interface ID

    10 bits 54 bits 64 bits

    cccccc0gcccccccc ccccccccmmmmmmmm mmmmmmmmmmmmmmmm

    cccccc1gcccccccc cccccccc11111111 11111110mmmmmmmm mmmmmmmmmmmmmmmm

    MAC Address c: company identifier u: universal / local bitg: individual /group m: set by the manufacturer

  • Protocols in Telecommunication Networks 10M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Remember - Pre-Defined Multicast Addresses All Nodes Addresses:

    ff01::1 All IPv6 nodes scope 1 (interface-local) ff02::1 All IPv6 nodes scope 2 (link-local)

    All Routers Addresses: ff01::2 All routers in scope 1 (interface-local) ff02::2 All routers in scope 2 (link-local) ff05::2 All routers in scope 5 (site-local)

    Solicited-Node Address: ff02::1:ffxx:xxxx It takes the low-order 24 bits of one address and appending

    them to the prefix ff02::1:ff00/104 Ex: node with address 4037::01:800:200e:8c6c has the

    solicited-node address ff02::1:ff0e:8c6c Different unicast addresses can have the same solicited-node

    address

  • Protocols in Telecommunication Networks 11M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s ICMPv6 vs ICMPv4 Understanding the change of philosophy. Some examples:

    A router periodically announces its existence (Unsolicited Router Advertisement)

    IPv4: destination Address = 255.255.255.255 / 224.0.0.1 IPv6: destination Address = FF02::2 Benefits:

    Not a real change, just broadcast is forbidden A node A needs to know the MAC address of a node B

    IPv4: ARP Request with destination address FF:FF:FF:FF:FF:FF IPv6: Neighbor Solicitation with destination the solicited-node

    address derived of the unicast address of B Benefits:

    Host with a different solicited-node address will discard the packet

    Further benefits can be achieved with layer 2 support

  • Protocols in Telecommunication Networks 12M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    ICMPv6 vs ICMPv4 Understanding the change of philosophy. Another example:

    Node B MAC address: 00-24-81-8E-BF-7F Node B link-local address: 02-24-81-FF-FE-8E-BF-7F Node B solicited-node address: FF02::1:FF-8E-BF-7F

    Node A wants to know the MAC address of B A sends a Neighbor Solicitation packet with destination the solicited-

    node address FF02::1:FF-8E-BF-7F The packet is embedded in a frame with destination the MAC

    address corresponding to IPv6 multicast address 33-33-FF-8E-BF-7F

    Multicast aware layer 2 Only NIC with this multicast address registered will pass the frame to

    IP level

    IGMP & MLD* Snooping Switches (RFC 4541) The frame is only forwarded to the port where node B is attached

    *IPv6 multicast renames IGMP to the Multicast Listener Discovery Protocol (MLP) based on ICMPv6 messages

  • Protocols in Telecommunication Networks 13M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s ICMPv6 vs ICMPv4 Understanding the change of philosophy. Another example:

    IPv4

    IPv6 + multicast promiscuous mode

    IPv6 + multicast promiscuous node + MLD spoofing

    A

    B C D Nodes processing the frame

  • Protocols in Telecommunication Networks 14M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    ICMPv6 vs ICMPv4

    Messages translationCommon ICMPv4 MessageDestination Unreachable- Network unreachable (Type 3, Code 0) Destination Unreachable-Protocol unreachable (Type 3, Code 2) Destination Unreachable-Port unreachable (Type 3, Code 3) Destination Unreachable-Fragmentation needed and DF set (Type 3, Code 4)Time Exceeded-TTL expired (Type 11, Code 0)Parameter Problem (Type 12, Code 0)Redirect (Type 5, Code 0)

    ICMPv6 EquivalentDestination Unreachable-No route to destination (Type 1, Code 0)Parameter Problem-Unrecognized Next Header field (Type 4, Code 1)Destination Unreachable-Port unreachable (Type 1, Code 4)Packet Too Big (Type 2, Code 0)

    Time Exceeded-Hop Limit exceeded (Type 3, Code 0)Parameter Problem (Type 4, Code 0 or 2)Neighbor Discovery Redirect message (Type 137, Code 0)

  • Protocols in Telecommunication Networks 15M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Starting point: the role of ICMP in IPv4 networks

    Basically, ICMPv4 is intended to send error and informational messages

    Things have changed with IPv6: ICMPv6 is a key piece in order to achieve autoconfiguration

    Neighbor reachability ( ARP) Multicast membership ( IGMP) Address autonconfigurarion (New!)

    New capabilities and better performance is possible taking profit of IPv6 addressing system Link-local addresses Multicast

  • Protocols in Telecommunication Networks 16M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications RFC 4443, Internet Control Message Protocol for the

    Internet Protocol Version 6 Specification Required for any IPv6 implementation

    Message header Type: 0-127 Error msg /128-255 Informational msg Code: differentiates among messages of the same type Checksum : computed with IPv6 pseudo-header

    Type (1 byte) Code (1 byte) Checksum (2 bytes)

    Message body

  • Protocols in Telecommunication Networks 17M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of messages

    Error messages Sent by the destination node or an intermediate router, they notify

    errors in forwarding or delivery Destination Unreachable Packet Too Big Time Exceeded Parameter Problem

    ICMPv6 error messages are rate limited In order to conserve network banwidth Recommended method: token bucket

    Average rate (msg/s) % bandwidth Burst of messages are allowed If average rate does not

    exceed the overall transmission rate

  • Protocols in Telecommunication Networks 18M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of message Error messages

    Destination Unreachable (Type = 1) A packet cannot reach its destination Code:

    0: No Route to Destination 1: Communications whit the Destination Administratively Prohibited 2: Beyond the Scope of Source Address 3: Address Unreachable 4: Port Unreachable 5: Source Address Failed Ingress/Egress Policy 6: Reject Route to Destination

    Type=1 Code = 0-6 Checksum

    Unused

    Portion of discarded packet(the length of the whole ICMPv6 packet must be 1280 bytes)

    1280 bytes is the minimum MTU in order to support IPv6 (RFC 2460)

  • Protocols in Telecommunication Networks 19M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of message Error messages

    Packet Too Big (Type = 2) When a packet cannot be forwarded because the length of the

    packet is bigger than the MTU of the outer link MTU: the MTU of the link that has motivated the sending of this

    message

    Type=2 Code = 0 Checksum

    MTU

    Portion of discarded packet (the length of the whole ICMPv6 packet must be 1280 bytes)

  • Protocols in Telecommunication Networks 20M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of message Error messages

    Time Exceeded (Type = 3) Main reasons is that the hop limit field reaches the value of zero Code:

    0: Hop limit exceeded in transit Hop limit decremented to zero

    2: Fragment Reassembly Time Exceeded 60 seconds (RFC 2460)

    Type=3 Code = 0-1 Checksum

    Unused

    Portion of discarded packet (the length of the whole ICMPv6 packet must be 1280 bytes)

  • Protocols in Telecommunication Networks 21M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of message Error messages

    Parameter Problem (Type =4) A router discards a packet due to an error in a header or an

    extensions header Code:

    0: Erroneous Field Encountered 1: Unrecognized Next header Type Encountered 2: Unrecognized IPv6 Option Encountered

    Pointer: Identifies the octet offset within the invoking packet where the error was detected.

    Type=4 Code = 0-2 Checksum

    Pointer

    Portion of discarded packet (the length of the whole ICMPv6 packet must be 1280 bytes)

  • Protocols in Telecommunication Networks 22M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of messages

    Informational messages Provide diagnostic functions and additional host

    functionality Echo Request Echo Reply

    More messages are defined in others RFCs (see Neighbor Discovery and MLD)

  • Protocols in Telecommunication Networks 23M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications Basic set of message Informational messages

    Echo Request (Type = 128) & Echo Reply (Type = 129) Code = 0 Identifier: to associate request & replay messages Sequence Number: messages ordering Data: optional and equal for both messages

    Type=128 or 129 Code = 0 Checksum

    Identifier Sequence Number

    Data

  • Protocols in Telecommunication Networks 24M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Introducing ICMPv6 and its applications

  • Protocols in Telecommunication Networks 25M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    PATH MTU DISCOVERY

  • Protocols in Telecommunication Networks 26M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Path MTU Discovery Overview

    Changes from IPv4 to IPv6 Description

    ICMPv6 messages and options employed Procedure

    Applying Path MTU Discovery An example

  • Protocols in Telecommunication Networks 27M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Path MTU Discovery Overview

    RFC 1981 Purpose: learn the MTU of a path in order to avoid

    fragmentation Changes from IPv4 to IPv6. RFC 2460:

    1280 bytes is the minimum MTU in order to support IPv6 PMTU is strongly recommended

    Otherwise, the packets sent will be no larger than 1280 octets Note that, fragmentation is still possible but

    It is discouraged Only the source (and destination) node(s) can perform it

    Using Extension header named Fragment Header Routers never fragment packets

    This contributes to do not increase their process time Key point:

    Example 802.15.4 networks (MTU=128 bytes)

  • Protocols in Telecommunication Networks 28M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Path MTU Discovery Description/Procedure

    ICMP error message Packet Too Big is used

    Step 1: The sender assumes the link MTU of the interface on which the traffic is being forwarded

    Step 2: The sender sends IPv6 packets at the link MTU size Step 3: A router on the path unable to forward the packet sends

    an ICMP Packet Too Big msg back to the sender. This msgcontains the link MTU of the link on which the forwarding failed

    Step 4: The sender resets the PMTU to the value of the MTU field in the ICMPv6 Packet Too Big message

    Type=2 Code = 0 Checksum

    MTU

    Portion of discarded packet (the length of the whole ICMPv6 packet must be 1280 bytes)

  • Protocols in Telecommunication Networks 29M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Path MTU Discovery Procedure (II):

    Path MTU updates: If PMTU decreases

    The sending host will be alerted with a ICMP Error message Packet Too Big

    Discovery process is restarted

    if PMTU< the MTU of the link, PMTU can increase When PMTU timer expired (10 minutes recommended)

    PMTU = MTU of the link

  • Protocols in Telecommunication Networks 30M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Path MTU Discovery Applying Path MTU Discovery

    An example

    R2R1

    R3

    R4

    MTU1=MTU6=1500 bytesMTU2=MTU3=2000 bytesMTU4=1000 bytesMTU5=2000 bytes

    MTU6MTU1

    MTU5

    MTU4MTU2

    MTU3

    Host AHost B

    1. A sends a packet of 1500 bytes to B (PMTU=MTU1)2. R1 forwards the packet to R23. R2 is unable to forward the packet to R34. R2 sends an ICMP msg Packet Too Big to A5. A changes its PMTU to MTU4

    (PMTU==min(MTU)==MTU4)

    Like PMTU wait for PMTU timer and restart => PMTU could be equal to MTU1

  • Protocols in Telecommunication Networks 31M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    NEIGHBOR DISCOVERY (ND)

  • Protocols in Telecommunication Networks 32M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Neighbor Discovery (ND) Overview

    Changes from IPv4 to IPv6 Description

    ICMPv6 messages and options employed Conceptual host data structures Procedure

    Router Discovery Address Resolution Neighbor Unreachability Detection Redirect Function

  • Protocols in Telecommunication Networks 33M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Neighbor Discovery Overview

    RFC 4861 Purpose: IPv6 nodes on the same link use ND to discover

    each other's presence, to determine each other's link-layer addresses, to find routers, and to maintain reachabilityinformation about the paths to active neighbors

    ND only generates link traffic Offline packets are not forwarded by routers

    Packets are coded with Hop count = 255 If Hop count is 255, packet is silently discarded

    Security reasons Changes from IPv4 to IPv6

    ND replaces ARP! to determine link-layer address & test address

    uniqueness No more ARP frames in IPv6 networks

    New feature: Neighbor Unreachability Detection (NUD)

  • Protocols in Telecommunication Networks 34M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s ICMPv6 vs ICMPv4 IPv4 to IPv6 mapping of functions

    IPv4 Neighbor Function IPv6 Neighbor FunctionARP Request message Neighbor Solicitation messageARP Reply message Neighbor Advertisement msg.ARP cache Neighbor cacheGratuitous ARP Duplicate address detection (DAD)*Router Solicitation message (optional) Router Solicitation (required)*Router Advertisement message (optional) Router Advertisement (required)

    Redirect message Redirect message

    *Only used by Mobile IPv4

  • Protocols in Telecommunication Networks 35M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Neighbor Discovery Description

    Option format Type: type of the option Length: The length of the option (including the type and length

    fields) in units of 8 octets Value: includes specific fields of the options

    Type (1 byte) Length (1 byte) Value (n bytes)

  • Protocols in Telecommunication Networks 36M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    Neighbor Discovery Description

    5 new ICMPv6 informational messages Router Solicitation (Type=133, Code=0) Router Advertisement (Type=134, Code=0) Neighbor Solicitation (Type=135, Code=0) Neighbor Advertisement (Type=136, Code=0) Redirect (Type=137, Code=0)

    Theses messages can include zero or more of the following options

    Source/Target Link-layer Address Prefix Information

    Prefixes the router is given service Redirected Header

    Better route MTU Route Information

  • Protocols in Telecommunication Networks 37M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Neighbor Discovery Router Solicitation message

    Objective: the discovery of on-link routers IPv6

    From: link-local address or unspecified address (::) To: link-local scope all-routers multicast address (FF02::2)

    Ethernet From: NIC MAC address To: 33-33-00-00-02

    Type=133 Code = 0 Checksum

    Reserved

    OptionsSource Link-Layer Address option

  • Protocols in Telecommunication Networks 38M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    Neighbor Discovery Router Advertisement message

    Objective: provide information related to autoconfiguration to on-link host

    IPv6 From: Link-local address To:

    link-local scope all-nodes multicast address (FF02::1), or unicast address of the host that has sent a Router Solicitation msg

    from an unicast address

    When response to router solicitation Ethernet

    From: NIC router MAC address To:

    33-33-00-00-01, or The unicast MAC address of the host that sent Router Solicitation

    msg form an unicast address

    When response to router solicitation

  • Protocols in Telecommunication Networks 39M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Neighbor Discovery Router Advertisement message - Fields

    Type=134 Code = 0 Checksum

    OptionsSource Link-Layer Address option

    MTU optionPrefix Information options

    Adevertisement Interval optionHome Agent Information option

    Route Information options

    Current Hop Limit Flags Router Lifetime

    Reachable Time

    Retransmission Timer

  • Protocols in Telecommunication Networks 58M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Overview

    Changes from IPv4 to IPv6 Host and routers implications

    Layer 2 interaction

    MLD description ICMPv6 messages and options employed Procedure

    Timers and counters

  • Protocols in Telecommunication Networks 59M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Overview

    Purpose: MLD (Multicast Listener Discovery) is used by an IPv6 router to discover the presence of multicast listeners on directly attached links, and to discover which multicast addresses are of interest to those neighboring nodes

    Changes from IPv4 to IPv6 Multicast support is now mandatory RFC 3810: MLDv2 replaces IGMPv3

    Host support - Multicast traffic reception Apps are associated to multicast groups

    1 multicast group 1 IPv6 multicast address Socket is created to join the multicast group

    Driver is instructed to pass to higher layers MAC address corresponding to IPv6 multicast address

    MLD is used to inform local routers of this joining Also for link-local scope multicast addresses

    IGMP & MLD Snooping Switches (RFC 4541) Host support - Sending multicast traffic

    All hosts can sent packets to a multicast address

  • Protocols in Telecommunication Networks 60M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Overview

    Router Support - Multicast traffic reception It must place the network adapter to a special listening mode

    Multicast promiscuous mode Analyzes IEEE defined Individual/Group bit (I/G)

    I/G=0 Unicast I/G=1 Multicast

    If (I/G==1) the frame is passed to upper layers

    cccccc0gcccccccc ccccccccmmmmmmmm mmmmmmmmmmmmmmmm

    c: company identifier u: universal / local bitg: individual /group m: set by the manufacturer

  • Protocols in Telecommunication Networks 61M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Overview

    Router Support - Multicast traffic forwarding Forwarding is done taking into the account the scope of the

    multicast destination address If (scope > link-local)

    Packets are analyzed to determine forwarding interfaces Else

    Packets are processes but not forwarded

    Multicast forwarding table Shows multicast groups with at least a member for a specific

    multicast address on a specific link Multicast membership information is exchanged between

    routers using a multicast routing protocol E.g. Protocol Independent Multicast (PIM)

  • Protocols in Telecommunication Networks 62M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Multicast MLD&IGMP snooping switches

    Cisco Catalyst 3650

    3Com 4800G

    They support multicast L2 and L3 interaction More management so more energy consumption

    Related documentation Cisco: configuring IPv6 MLD Snooping

    http://www.cisco.com/en/US/docs/switches/lan/catalyst3750/software/release/12.2_35_se/configuration/guide/swv6mld.html

    3Com Switch 4800G Family Command reference http://support.3com.com/documents/switches/4800G/SW4800G_Com

    mand_ReferenceCMT.pdf

  • Protocols in Telecommunication Networks 63M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 RFC 2710. Multicast Listener Discovery (MLD) or

    MLDv1description 3 new ICMPv6 informational messages

    Multicast Listener Query (Type=130) General Query / Specific Query

    Multicast Listener Report (Type=131) Multicast Listener Done (Type=132)

    Other particularities in IPv6 header Hop-limit=1 Hop-by-hop Options extensions header with Router Alert option

    (RFC 2711) To be sure that the router process packet to multicast

    addresses for which the router is not a group member

    IPv6 HeaderNext Header =0

    (hop-by-hop)

    Hop-by-Hop Options H.Router Alert Option

    Next Header=58MLD Message

  • Protocols in Telecommunication Networks 64M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 Multicast Listener Discovery (MLD) description

    RFC 3810. Multicast Listener Discovery Version 2 (MLDv2) for IPv6

    Only two messages: A modified version of Multicast Listener Query (Type=130) A modified version of Multicast Listener Report (Type=143)

    Backwards compatible Support Multicast Listener Report and Done (Type=131 and

    132) Also:

    Hop-limit=1 Hop-by-hop Options extensions header with Router Alert

    option

  • Protocols in Telecommunication Networks 65M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Multicast over IPv6 MLDv2 description - Procedure

    Routers send modified Multicast Listener Query 3 types of queries:

    General query: There is any host interested in multicast traffic?

    Multicast-address specific query: There is any host interested in traffic to this multicast

    address? Multicast-address-and source specific query:

    There is any host interested in traffic to this multicast address from this source?

    From: link-local address of the interface of the sender To: specific multicast address queried or all-nodes multicast

    address (FF01::1)

  • Protocols in Telecommunication Networks 72M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    ADDRESS AUTOCONFIGURATION

  • Protocols in Telecommunication Networks 73M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Address Autoconfiguration Overview of the IPv6 autoconfiguration approaches

    Stateless vs stateful Changes from IPv4 to IPv6

    Autoconfigured address states Based on previous seen messages

    Stateless Address Autoconfiguration (new in IPv6) Description

    ICMPv6 messages and options employed Procedure

    Applying Stateless Address Autoconfiguration Link-local and global addresses

    Stateful Address Autoconfiguration DHCPv6

    Description Changes from IPv4 to IPv6

  • Protocols in Telecommunication Networks 74M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    Address Autoconfiguration Overview of the IPv6 autoconfiguration approaches

    Stateless RFC 4862. IPv6 Stateless Address Autoconfiguration Purpose: To specify the steps a host takes in deciding how to autoconfigure its interfaces

    in IPv6. These steps are: generating a link-local address

    FE80::/64 + EUI64 derived interface generating global addresses using stateless address autoconfiguration

    Using information provided by Router Advertisment join the solicited-node a multicast address

    MLD (Multicast Listener Discovery) report and the DAD (Duplicate Address Detection) procedure to verify the uniqueness of the

    addresses on a link Neighbor Solicitation message

    Provides an alternative to DHCPv6 Autoconfiguration can be performed without any server and specific protocol support

    Note that: DAD has to be performed for global and link-local addresses If global and link-local address are based on EUI64 only solicited-node multicast address

    exist and then only a MLD report has to be sent

  • Protocols in Telecommunication Networks 75M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Address Autoconfiguration Overview of the IPv6 autoconfiguration approaches

    Stateful Configuration is based on a the usage of a configuration protocol

    DHCPv6 (RFC 3315)

    Mixed approach is possible DHCPv6 + Router Advertisement message

    Changes from IPv4 to IPv6 DHCPv6 messages are simpler than DHCPv4

  • Protocols in Telecommunication Networks 81M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Stateless Address Autoconfiguration RFC 4429. Optimistic Duplicate Address Detection (DAD) for

    IPv6 Purpose: To minimize address configuration delays in the

    successful case, to reduce disruption as far as possible in the failure case, and to remain interoperable with unmodified hosts and routers

    Idea: IPv6 provide several ways to construct and unique IPv6 address

    New address state Optimistic ( deprecated) When DAD is done, the address moves to Prefered

  • Protocols in Telecommunication Networks 82M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Stateful Address Autoconfiguration RFC3315: DHCPv6

    DHCPv6 infrastructure Clients Servers Relays

    UDP protocol Clients listens port 546 Servers and relays listens port 547

    DHCPv6 vs DHPCv4 Messages structure simpler (see following slides)

    Each action has its related message Relay interaction

    All_DHCP_Relay_Agents_and_Servers address FF02::1:2

  • Protocols in Telecommunication Networks 83M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Stateful Address Autoconfiguration DHCPv6 message fields Client Server

    Message Type Transaction ID

    To group DHCPv6 messages that belongs to the same transaction Options

    Message-Type Transaction ID

    Options

    Option-Code Option_Len

    Option-Data

  • Protocols in Telecommunication Networks 84M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Stateful Address Autoconfiguration DHCPv6 message fields Relay Server

    Message-Type

    Hop-Count Link-Address

    Link-Address (16 octets=2+3*4+2)

    Link-Address Peer-Address

    Peer-Address (16 octets=2+3*4+2)

    Peer-Address Options

  • Protocols in Telecommunication Networks 89M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s

    Stateful Address Autoconfiguration

    DHCPv6 DHCPv4 EquivalentSOLICIT DHCPDISCOVERADVERTISE DHCPOFFERREQUEST, RENEW, REBIND DHCPREQUESTREPLY DHCPACK/DHCPNAKRELEASE DHCPRELEASEINFORMATION-REQUEST DHCPINFORMDECLINE DHCPDECLINECONFIRM N/ARECONFIGURE DHCPFORCERENEWRELAY-FORW, RELAY-REPLY N/A

  • Protocols in Telecommunication Networks 90M.

    S

    c

    .

    I

    n

    f

    o

    r

    m

    a

    t

    i

    o

    n

    a

    n

    d

    C

    o

    m

    m

    u

    n

    i

    c

    a

    t

    i

    o

    n

    T

    e

    c

    h

    n

    o

    l

    o

    g

    i

    e

    s Stateful Address Autoconfiguration DHCPv6 scenarios & messages

    RelayDHCP client

    RelayDHCP client

    DHCP server

    DHCP client DHCP server

    Solicit, Advertise, Request, Confirm, Renew, Rebind, Replay, Release, Decline, Reconfigure, Information-Request

    Relay-Forward, Relay-Replay