[컴퓨터 네트워크] ICMPv6

신현식·2022년 10월 15일
1

컴퓨터 네트워크

목록 보기
11/34
post-custom-banner

✔ IPv4에서는 ICMP, ARP 등이 데이터링크 레이어에서 따로 분리되어 있었는데 IPv4에서는 데이터링크 레이어에서 type필드를 보고 IPv4인지, ARP인지 확인한다. 그후 protocol필드를 보고 ICMP인지, TCP/UDP인지 확인한다. IPv6에서는 ARP라는 프로토콜이 IPv6에 같이 들어간다.

📌ICMPv6

  • 이 새 버전은 버전 4와 동일한 전략과 목적을 따른다. ICMPv6는 IPv6에 더 적합하도록 수정되었다. 또한 버전 4에서 독립적이었던 일부 프로토콜은 이제 ICMPv6(Internetworking Control Message Protocol)의 일부이다.
    Neighbor discovery message는 ARP와 비슷하다.

📌Error reporting

  • ICMP에서 거의다 있던것들을 그대로 가졌왔는데 Packet too big만 새롭게 등장하였다.

  • Packet too big: IP packet이 MTU보다 크다는것을 의미한다. IPv4에서는 중간에 fragmentation을 진행해서 보내는데 IPv6에서는 없기 때문에 source 호스트에서만 fragmentation이 가능하다.

💡 Path MTU Discovery protocol

  • 송신 및 수신 네트워크의 MTU가 아니라, 전송 중에 지나는 여러 네트워크 중 최소가 되는 MTU (최대전송단위, 최대길이) 즉, 양단간 경로에서 거치는 서로다른 MTU를 갖는 여러 네트워크 중 최소 MTU 값을 말한다.
    발신지에서 큰 크기의 IP 패킷을 DF(Don't Fragment) 플래그를 설정한 채 전송하는 중에, 만약 라우터 연결 데이터링크가 수용하기에 더 큰 패킷이면 이를 거부하게 되며 이를 다시 더 작은 크기로 재전송해야 한다.
  • 데이터를 보낼때마다 path MTU탐색을 진행하면 너무 비효율적이기 때문에 네트워크마다 어떤 요구사항을 준다. 최소한 하나의 네트워크의 MTU는 최소한 1500byte보다 크게 해달라고 한다. 만약에 path MTU 탐색을 안한다고 했을때 1500byte로 보내면 데이터그램이 discard될 상황이 발생하지 않는다. 이더넷 프레임의 information size의 최대 크기가 1500 byte이다.
  • ICMPv6에서는 중간의 라우터에서 fragmentation이 없기 때문에 필수로 있어야 한다.

📌IPv6 NDP (Neighbor Discovery Protocol)의 목적

✔ IPv6의 핵심적인 프로토콜로써, 로컬 네트워크 내 이웃 노드, 주소 등의 정보를 탐색하기 위한 프로토콜이다.
✔ Neighbor Solicitation(NS) 및 Neighbor Advertisement(NA, NS요청에 대한 응답) 메세지: ARP가 없는 IPv6의 개념에서 호스트를 찾기위해 사용된다.

  • Address Resolution (AR, 주소 결정): 상대방의 IP주소 대한 이웃 노드의 데이터링크 주소(MAC주소)를 알기 위함
  • Neighbor Unreachability Detection (NUD, 이웃접근 불가능 검사): 이웃 노드들이 아직 존재 하는지 계속적으로 알아보는 기능
  • Duplicate Address Detection (DAD, 중복 주소 검출): IPv6 주소의 중복 여부를 알기 위함이다. 이웃에게 solicitation 메세지(퀴리와 비슷한 의미)를 보내는데 Source 주소는 unspecified로 한다. 만약 이 주소를 사용하는 있는 노드는 받은 퀴리 메시지가 unspecified이기에 목적지로 사용할 수 없으니 멀티캐스트로 보낸다. 이 주소는 본인이 사용하고있으니 쓰지 말라고 알려주는 것이다.
profile
전공 소개
post-custom-banner

2개의 댓글

comment-user-thumbnail
2022년 10월 15일

좋네요

1개의 답글