ND, NDP   Neighbor Discovery, Neighbor Discovery Protocol   이웃 발견, 이웃 탐색 프로토콜

(2021-10-31)

IPv6 ND, IPv6 NDP, DAD, Duplicate Address Detection, 중복 주소 검출


1. 이웃 발견/탐색 (Neighbor Discovery)           ☞ Discovery Protocol(탐색 프로토콜) 참조

  ㅇ 주변(인접) 노드들을 발견/탐색/변경검출/유지하기 위한 정보를 요청하거나 제공하는 기능


2. IPv6 NDP (Neighbor Discovery Protocol, NDP, 인접 탐색 프로토콜)IPv6의 핵심적인 프로토콜로써, 
     - 로컬 네트워크 내 이웃 노드, 주소 등의 정보를 탐색하기 위한 프로토콜

  ㅇ 표준 : RFC 2461 (Neighbor Discovery for IPv6, 1998년)


3. IPv6 NDP의 용도

  ㅇ (DHCPv6 서버,라우터로부터의 정보 취득)
     - 동일 링크(네트워크) 상에 있는 라우터를 찾음 (IRDP)
     - 자신이 속한 링크네트워크 파라미터(IP Prefix, MTU 등)를 알려주거나 알기위함

  ㅇ (기존 ARP와의 유사 기능 수행)
     - 동일 링크 상의 노드들의 데이터링크계층 주소(MAC주소)를 알기 위함
     - 동일 링크 상의 노드들의 데이터링크계층 주소(MAC주소)의 변동사항을 검출하기 위함
     - 이웃 노드들의 생존 여부를 알기 위함

  ㅇ (주소 자동 설정을 하기 위함)
     - IPv6 주소 자동 설정을 수행하기 위함 (Address Autoconfiguration)
     - IPv6 주소 자동 생성시에 충돌(중복 IP 주소 등) 여부를 알기 위함

  ㅇ (최적의 다음 홉을 하기 위함)
     - 최적의 다음 홉(Next Hop)을 알기 위함

  ※ [참고]
     - 기존의 IPv4에서는, ARP 등 다양한 프로토콜들에 의해 각기 개별적으로 구현시켰으나,
     - IPv6에서는, NDP 기능으로 모두 통합시키고 향상 시킴


4. IPv6 NDP에 쓰이는 5개 메세지

  ㅇ NS 및 NA 메세지 (라우터 포함 호스트 상호간)
     - 주요 기능 
        . Address Resolution (AR, 주소 결정)
           .. 이웃 노드데이터링크 주소를 알기 위함
        . Neighbor Unreachability Detection (NUD, 이웃접근 불가능 검사)
           .. 이웃 노드들이 살아있는지 죽어있는지 계속적으로 알아보는 기능
        . Duplicate Address Detection (DAD, 중복 주소 검출)
           .. IPv6 주소의 중복 여부를 알기 위함 (DAD)

     - NS (Neighbor Solicitation, 이웃 간청) : ICMPv6 type 135
        . Address Resolution (AR, 주소 결정)
        . Neighbor Unreachability Detection (NUD, 이웃접근 불가능 검사)
        . Duplicate Address Detection (DAD, 중복 주소 검출)

     - NA(Neighbor Advertisement, 이웃 알림) : ICMPv6 type 136
        . NS 메세지에 대한 응답을 위함
        . 또한, 자신의 데이터링크 주소가 바뀌었음을 주변에 알리기 위함

  ㅇ RS 및 RA 메세지 (라우터 <-> 호스트)
     - 주요 기능
        . 동일 링크 상의 라우터들을 찾기 위함
        . 디폴트 라우터의 결정
        . 라우터 자신이 속한 링크네트워크 파라미터(IP Prefix,MTU 등)를 알려주기 위함

     - RS (Router Solicitation, 라우터 간청)  : ICMPv4 type 10, ICMPv6 type 133
        . 호스트라우터에게 RA 메세지를 요청하기 위함
        . 이때의 멀티캐스트 주소는,
           .. (IPv4 멀티캐스트 주소)  224.0.0.2 (모든 라우터에 해당)
           .. (IPv6 멀티캐스트 주소)  FF02::2 (모든 라우터에 해당)
 
     - RA (Router Advertisement, 라우터 알림) : ICMPv4 type 9, ICMPv6 type 134
        . 라우터는 주기적으로 RA방송 또는, RS 요청에 대한 RA 응답을 함
        . RA 메세지라우터의 해당 링크에 대한 정보(Prefix,MTU,디폴트라우터 등)를 담게됨
        . 이때의 멀티캐스트 주소는,
           .. (IPv4 멀티캐스트 주소)  224.0.0.1 (모든 호스트에 해당)
           .. (IPv6 멀티캐스트 주소)  FF02::1 (모든 호스트에 해당)

  ㅇ Redirect (재지정) (라우터 -> 호스트) : ICMPv6 type 137
     - 잘못 설정된 디폴트 라우터를 올바르게 알려주기 위함
        . 동일 로컬 네트워크에 여러 라우터가 있을 경우에,
        . 더 효율적다음 홉으로 가는 라우터를 알려줌


5. IPv6 NDP 메세지에서 옵션 타입IPv6 NDP 메세지 상에는 0 이상의 다음과 같은 옵션들을 가질 수 있음

     - Option type 1 : Source Link Layer Address
     - Option type 2 : Target Link Layer Address
     - Option type 3 : Prefix Information
     - Option type 4 : Redirected Header
     - Option type 5 : MTU

ICMPv6
   1. ICMPv6   2. 목적지 도달 불가   3. Packet Too Big (IPv6)   4. 에코 요청,에코 응답   5. 이웃 탐색(ND)   6. 이웃 간청(NS),이웃 알림(NA)   7. 멀티캐스트 주소 학습(MLD)  


"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"