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)  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"