김 컴퓨터


ARP (Address Resolution Protocol) 기초

ARP (주소 결정 프로토콜)네트워크 계층(3계층)의 IP 주소데이터 링크 계층(2계층)의 MAC 주소로 변환하는 데 사용되는 핵심 프로토콜입니다.

라우터와 스위치 같은 네트워크 장비들은 실제로 데이터를 전송할 때 IP 주소가 아닌 MAC 주소를 사용해야 하기 때문에, ARP가 이 변환 과정을 담당합니다.


1. ARP의 작동 원리: 브로드캐스트와 유니캐스트

ARP는 같은 근거리 통신망(LAN) 내에서 작동하며, 주로 두 단계로 주소를 결정합니다.

  1. ARP 요청 (ARP Request) - 브로드캐스트:

    • 송신 호스트(A)가 "IP 주소 X.Y.Z.W를 가진 장치의 MAC 주소를 알려달라"는 요청 패킷을 브로드캐스트(동일 LAN 내 전체 전송)로 네트워크에 뿌립니다.
    • 이 요청 패킷에는 송신 호스트 A의 IP 주소와 MAC 주소가 포함되어 있습니다.
  2. ARP 응답 (ARP Reply) - 유니캐스트:

    • 네트워크 내의 모든 장치가 이 요청을 수신하지만, 요청된 IP 주소(X.Y.Z.W)를 가진 수신 호스트(B)만이 응답합니다.
    • 수신 호스트 B는 자신의 MAC 주소를 포함한 응답 패킷을 송신 호스트 A에게 유니캐스트(A에게만 1:1 전송)로 보냅니다.
  3. ARP 테이블 업데이트:

    • 송신 호스트 A는 수신 호스트 B의 IP와 MAC 주소 쌍을 ARP 테이블(Cache)에 저장하여 다음번 통신 시에는 요청 과정 없이 빠르게 사용할 수 있도록 합니다.

2. ARP 테이블 (ARP Cache)

ARP 테이블은 IP 주소와 MAC 주소의 매핑 정보를 임시로 저장하는 캐시 메모리입니다.


3. RARP (Reverse ARP)와의 비교

ARP는 IP 주소 $\rightarrow$ MAC 주소를 결정하는 반면, RARP (Reverse ARP)는 반대로 MAC 주소 $\rightarrow$ IP 주소를 결정하는 데 사용됩니다. (현재는 DHCP(Dynamic Host Configuration Protocol)가 이 역할을 주로 대체합니다.)


4. ARP의 보안 문제

ARP는 통신 상대방의 진위 여부를 확인하지 않는 단순한 프로토콜입니다. 이 취약점은 ARP 스푸핑(Spoofing) 공격에 이용될 수 있습니다.