2013년 9월 29일 일요일

Neighbor Discovery

Neighbor Discovery Processes



  • Router discovery : Router Solicitation, Router Adverstisement

  • Prefix discovery : Distinguish onlink vs off link

  • Parameter discovery : additional operational parms

  • Address auto configuration : DHCP

  • Address resolution : Neighbor Solicitation, Neighbor Advertisement

  • Next-hop determination

  • Neighbor unreachability detection

  • Duplicate address detection

  • Redirect function : Better next hop


Neighbor Discovery Messages



  • Router Solicitation (133)

  • Router Advertisement (134)

  • Neighbor Solicitation (135)

  • Neighbor Advertisement (136)

  • Redirect (137)


All are accomplished by ICMP messages

Summary of ND Message and Options



  • Router Solicitation

    • Source Link-Layer Address



  • Router Advertisement

    • Source Link-Layer Address

    • Prefix Information

    • MTU

    • Advertisement Interval

    • Home Agent Information

    • Router Information



  • Neighbor Solicitation

    • Source Link-Layer Address



  • Neighbor Advertisement

    • Target Link-Layer Address



  • Redirect

    • Redirected Header

    • Target Link-Layer Address




Neighbor Discovery Processes



  • Address resolution (including duplicate address detection)

  • Router discovery (including prefix and parameter discovery)

  • Neighbor unreachability detection

  • Redirect function


Address Resolution Process



  • An exchange of NS and NA messages to resolve the link-layer address of the next-hop address

    • Multicast Neighbor Solicitation message

    • Unicast Neighbor Advertisement message



  • Both hosts update their neighbor caches

  • Unicast traffic can now be sent


Address Resolution Message


Host A - MAC: 00-10-5A-AA-20-A2 / IP : FE80::210:5AFF:FEAA:20A2

Host B - MAC: 00-60-97-02-6E-A5 / IP: FE80::260:97FF:FE02:6EA5


  1. Multicast Neighbor Solicitation
    Ethernet Header
    Destination MAC is 33-33-FF-02-6E-A5 (Ethernet Multicast Address)
    IPv6 Header
    Source Address is FE80::210:5AFF:FEAA:20A2
    Destination Address is FF02::1:FF02:6EA5 (Solited-node Address)
    Hop limit is 255
    Neighbor Solicitation Header
    Target Address is FE80::260:97FF:FE02:6EA5
    Neighbor Discovery Option
    Source Link-Layer Address is 00-10-5A-AA-20-A2


  2. Unicast Neighbor Advertisement
    Ethernet Header
    Destination MAC is 00-10-5A-AA-20-A2
    IPv6 Header
    Source Address is FE80::260:97FF:FE02:6EA5
    Destination Address is FE80::210:5AFF:FEAA:20A2
    Hop limit is 255
    Neighbor Solicitation Header
    Target Address is FE80::260:97FF:FE02:6EA5
    Neighbor Discovery Option
    Source Link-Layer Address is 00-60-97-02-6E-A5



Neighbor Unreachability Detection



  • A neighboring node is reachable if:

    • There has been a recent confirmation that IPv6 packets sent were received and processed by the neighboring node



  • Detects whether the first hop to the destination is reachable

  • Reachability is determined by:

    • Receipt of a Neighbor Advertisement message in response to a unicast Neighbor Solicitation message

    • Upper layer protocol indicators




Neighbor Unreachability States


Neighbor Unreachability States

from IPv6 Addressing (TechRef)

Duplicate Adddress Detection


Host A - Tentative IP: FEC0::2:260:8FF:FE52:F9D8

Host B - MAC: 00-60-08-52-F9-D8 / IP: FEC0::2:260:8FF:FE52:F9D8


  1. Multicast Neighbor Solicitation message
    Ethernet Header
    Dest MAC is 33-33-FF-52-F9-D8 (Ethernet Multicast Address)
    IPv6 Header
    Source Address is :: (Unspecified address)
    Destination Address is FF02::1:FF52:F9D8 (Solited-node Address)
    Hop limit is 255
    Neighbor Solicitation Header
    Target Address is FEC0::2:260:8FF:FE52:F9D8


  2. Multicast Neighbor Advertisement message
    Ethernet Header
    Destination MAC is 33-33-00-00-00-01 (Ethernet Multicast Address)
    IPv6 Header
    Source Address is FEC0::2:260:8FF:FE52:F9D8
    Destination Address is FF02::1 (All-nodes multicast address)
    Hop limit is 255
    Neighbor Advertisement Header
    Target Address is FEC0::2:260:8FF:FE52:F9D8
    Neighbor Discovery Option
    Target Link-Layer Address is 00-60-08-52-F9-D8



Router Discovery



  • Nodes discover the set of routers on the local link

  • IPv6 router discovery also provides:

    • Default value of Hop Limit field

    • Use of stateful address protocol

    • Reachability and retransmission timers

    • Network prefixes for the link

    • MTU of the local link

    • IPv6 mobility information

    • Routes




Router Discovery Message


Host A - MAC: 00-B0-D0-E9-41-43 / IP: none
Router - MAC: 00-10-FF-D6-58-C0 / IP: FE80::210:FFFF:FED6:58C0


  1. Multicast Router Solicitation Message
    Ethernet Header
    Destination MAC is 33-33-00-00-00-02 (Ethernet Multicast Address)
    IPv6 Header
    Source Address is :: (Unspecified address)
    Destination Address is FF02::2 (All node Multicast Address)
    Hop limit is 255
    Router Solicitation Header


  2. Multicast Router Advertisement Message
    Ethernet Header
    Destination MAC is 33-33-00-00-00-01 (Ethernet Multicast Address)
    IPv6 Header
    Source Address is FE80::210:FFFF:FED6:58C0
    Destination Address is FF02::1 (All node Multicast Address)
    Hop limit is 255
    Router Advertisement Header
    Current Hop Limit, Flags,
    Router Lifetime,
    Reachable and Retransmission Timers
    Neighbor Discovery Options
    Source Link-Layer Address is 00-10-FF-D6-58-C0
    MTU is 1500
    Prefix Information is for FEC0:0:0:F282::/64



Ref.

1. Neighbor Discovery

2. TCP/IP Fundamentals for microsoft windows

3. IPv6 Addressing

4. IPv6 Neighbor Discovery