[네트워크] ARP

Woonil·2025년 12월 18일

컴퓨터 네트워크

목록 보기
11/11

ARP(Address Resolution Protocol, ARP): 네트워크 상에서 논리적 IP 주소(32비트)를 물리적 네트워크 주소인 MAC 주소(48비트)로 대응(bind)시키기 위해 사용되는 주소 변환 프로토콜이다.

RARP
역주소 변환 프로토콜로 MAC주소를 IP주소로 변환한다.

  • ARP 헤더

[출처: geeksforgeeks]

구성설명
Hardware Type대부분 이더넷이므로, 이더넷의 타입 번호인 0x01이 들어간다.
Protocol Type대부분 IPv4이므로, IP의 타입 번호인 0x0800이 들어간다.
Hardware LengthMAC 주소의 길이(6byte)
Protocol LengthIPv4인 경우 4byte
Opcode(Operation Code)요청=1, 응답=2

동일한 이더넷에 속한 호스트 A, B에 대해서 ARP 과정을 살펴보자.

  • 과정
    1. A는 /etc/hosts 파일 검색을 통해 B의 IP 주소를 찾는다.
    2. B의 주소에서 넷마스크를 사용해 네트워크 주소를 알아내어 네트워크 대역이 로컬 영역인지 아닌지를 확인한다.
    3. 외부 영역이면 게이트웨이의 MAC을, 로컬 영역이면 ARP 캐시 테이블에서 B의 MAC을 찾는다.
    4. 3에서 B의 MAC이 없다면 ARP request broadcast packet을 보낸다.
    5. 모든 host는 해당 패킷을 수신하여 request IP와 자신의 IP를 비교한다.
    6. 5의 비교 결과 일치하는 host만이 자신의 MAC 정보를 실어 unicast respond한다.
    7. A는 자신의 ARP 캐시 테이블을 업데이트한다.

    ARP 캐시 테이블
    통신했던 host들의 주소가 남으며, 사용자가 수동으로 등록을 하지 않는 한 일정 시간이 지나면 삭제된다. arp -a 명령어로 확인할 수 있다.

profile
프론트 개발과 클라우드 환경에 관심이 많습니다:)

0개의 댓글