ARP

1

network

목록 보기
14/39

네트워크 계층의 프로토콜 - ARP (Address Resolution Protocol)


1. ARP란?

  • 정의: Address Resolution Protocol (ARP)IP 주소를 이용해 MAC 주소를 알아내는 프로토콜.
  • 역할: 동일 네트워크 내에서 통신 시, 송수신 대상의 IP 주소는 알고 있지만 MAC 주소를 모를 경우, 이를 해결.

2. ARP 동작 과정

2.1. 시나리오
  • 호스트 A가 네트워크 상에서 호스트 B에 패킷을 전송하려는 상황을 가정:
    • IP 주소는 알고 있지만, MAC 주소를 모름.
2.2. ARP 요청 (ARP Request)
  • 브로드캐스트 방식으로 네트워크에 메시지를 전송:
    • "IP 주소 X의 MAC 주소를 알고 있는 호스트는 응답해주세요!"
2.3. ARP 응답 (ARP Reply)
  • 요청 메시지를 수신한 호스트 B는 자신의 MAC 주소를 포함한 유니캐스트 응답 메시지를 호스트 A에게 전송.
2.4. ARP 테이블 갱신
  • 호스트 A는 응답 메시지를 받아, ARP 테이블에 호스트 B의 IP와 MAC 주소를 기록.
  • 이후 동일 호스트와의 통신 시, ARP 요청을 반복하지 않음.

3. ARP 패킷 형식

3.1. 주요 필드
  1. 오퍼레이션 코드 (Operation Code):

    • 요청 메시지: 1
    • 응답 메시지: 2
  2. 송신지 하드웨어 주소 (Sender Hardware Address):

    • 요청을 보낸 호스트의 MAC 주소.
  3. 수신지 하드웨어 주소 (Target Hardware Address):

    • 요청 메시지에서는 비워짐, 응답 메시지에서 사용.
  4. 송신지 프로토콜 주소 (Sender Protocol Address):

    • 요청을 보낸 호스트의 IP 주소.
  5. 수신지 프로토콜 주소 (Target Protocol Address):

    • 요청 대상 호스트의 IP 주소.

4. ARP 테이블

4.1. 정의
  • IP 주소와 MAC 주소의 매핑 정보를 기록한 데이터베이스.
  • ARP 요청과 응답으로 얻은 정보를 캐싱.
4.2. 특징
  • 자동 갱신: 일정 시간이 지나면 기록 삭제.
  • 수동 확인 및 관리:
    • Windows: arp -a 명령어 사용.
    • Mac/Linux: arp -a 명령어 사용.

5. 다른 네트워크와의 ARP 사용

5.1. 동일 네트워크와 다른 네트워크의 차이
  • 동일 네트워크: ARP로 직접 MAC 주소를 확인.
  • 다른 네트워크: 라우터를 통해 ARP 수행.
5.2. 동작 예시
  1. 호스트 A → 라우터 A:

    • 라우터의 MAC 주소를 알아내기 위해 ARP 요청 수행.
  2. 라우터 A → 라우터 B:

    • 라우터 간에도 ARP 요청을 통해 상대방의 MAC 주소 확인.
  3. 라우터 B → 호스트 B:

    • 호스트 B의 MAC 주소를 알아내기 위해 ARP 요청 수행.
5.3. 요약
  • ARP는 네트워크별로 독립적으로 수행되며, 이를 통해 IP 주소를 기반으로 최종적으로 MAC 주소를 확인.

6. ARP 프로토콜 요약

  • ARP는 IP 주소로 MAC 주소를 알아내는 필수 프로토콜.
  • 동일 네트워크 내에서 동작하며, 요청과 응답 과정을 통해 정보를 교환.
  • 기록된 ARP 테이블을 활용해 네트워크 성능을 최적화.
  • 다른 네트워크와 통신 시에는 라우터를 통해 ARP가 단계적으로 수행.

이로써 네트워크 계층의 주요 프로토콜인 IP와 ARP를 정리했습니다. 다음 강의에서는 라우팅 프로토콜과 관련된 내용으로 이어가겠습니다. 감사합니다!

0개의 댓글