⚪ARP란

  • Address Resolution Protocol을 의미함
  • IP주소를 MAC주소로 대응시키기 위해 사용되는 프로토콜
  • IP주소와 MAC 주소를 일대일 대응하여 정리한 테이블을 ARP Table이라고 함




⚪ARP패킷 구조

다운로드 (1)

   
1) Hardware Type - 16bit로 ARP가 수행되고 있는 네트워크 유형을 정의- 이더넷인 경우 값은 1로 설정됨
2) Protocol Type - 16bit로 상위 프로토콜을 정의- 상위 프로토콜이 IP일경우 0x0800으로 설정됨
3) Hardware Length - 8bit로 물리주소의 길이를 바이트 단위로 정의- 이더넷인 경우 6으로 설정
4) Protocol Length - 8bit로 논리주소의 길이를 바이트단위로 정의- 이더넷인 경우 4로 설정
5) Operation - 16bit로 패킷의 유형을 정의- ARP Request : 1, ARP Reply : 2
6) Sender Hardware Address - 송신자의 물리주소를 나타내는 필드- 이더넷의 경우 이필드는 6byte값
7) Sender IP Address - 송신자의 논리주소를 나타내는 필드- IP프로토콜인 경우 4byte값
8) Target Hardware Address - 목적지 시스템의 물리주소를 정의- 이더넷의 경우 6byte값- ARP Request인 경우 송신자는 목적지 시스템의 물리주소를 알 수 없어, 모두 0으로 설정
9) Target IP Address - 목적지 시스템의 논리주소를 정의- IP 프로토콜의 경우 4byte값




⚪ARP 과정

[기본 개념]

- 송신자는 목적지 MAC주소가 필요하므로, MAC주소 요청을 위한 ARP요청 패킷을 브로드캐스트로 전송
(목적지의 물리주소를 모르므로 브로드캐스트를 함)
(요청 패킷에는 본인 주소가 포함되어 있음)

- 모든 호스트와 라우터는 송신자가 보낸 ARP 요청 패킷을 수신함

- 해당되는 수신자만 자신의 논리주소와 물리주소를 넣어 응답 패킷을 유니캐스트로 전송

다운로드 (2)

  1. 송신자는 목적지 IP Address를 지정해 패킷 송신

  2. IP 프로토콜이 ARP 프로토콜에게 ARP Request 메시지를 생성하도록 요청
    = ARP 요청 메시지 (송신자 물리주소, 송신자 IP주소, 00-00-00-00-00, 수신자 IP주소)

  3. 메시지는 2계층으로 전달되고 이더넷 프레임으로 Encapsulation 됨
    = 송신자 물리주소를 발신지 주소, 수신자 물리주소를 브로드캐스트 주소로 지정

  4. 모든 호스트와 라우터는 프레임을 수신 후 자신의 ARP 프로토콜에게 전달

다운로드 (3)

  1. 목적지 IP Address가 일치하는 시스템은 자신의 물리주소를 포함하고 있는 ARP Reply 메시지를 보냄
    = 자신의 물리주소를 포함하는 응답 메시지

  2. 최초 송신 측은 지정한 IP Address에 대응하는 물리주소를 획득
    cf) ARP 요청은 브로드캐스트, ARP 응답은 유니캐스트

카테고리:

업데이트:

댓글남기기