‼️ARP/RARP 의 이해

SUUUI·2025년 5월 7일

네트워크

목록 보기
7/8
post-thumbnail

네트워크 통신에서 주소 변환은 중요한 역할을 한다. IP 주소와 MAC 주소 간의 변환을 담당하는 ARP와 RARP에 대해 알아보자.

ARP(Address Resolution Protocol)

ARP는 논리적 주소인 IP 주소를 물리적 주소인 MAC 주소로 변환하는 프로토콜이다. OSI 모델중 네트워크 계층에 해당되는 프로토콜이며 컴퓨터가 데이터를 전송하려면 목적지의 MAC 주소를 알아야 하는데, 일반적으로 IP 주소만 알고 있기 때문에 ARP가 필요하다.

‼️MAC 주소는 함부로 노출되서는 안된다. MAC 주소는 고유한 하드웨어 식별자로, 누군가 나의 MAC 주소를 알게 되면 네트워크 내에서 나의 장치를 지속적으로 추적할 수 있다. 특히 Wi-Fi 연결 시 주변 기기를 스캔할 때 MAC 주소가 브로드캐스트되어 물리적 위치 추적에 악용될 수 있다.
또한 MAC주소를 알면 이를 복제하여 마치 나인것처럼 속여서 네트워크 우회를 해커 쪽에게 넘겨지게 할 수 있다. 이를 스푸핑 이라고 한다.

✅ARP 동작 과정

  1. 데이터 전송 시작점:

상위 계층(응용, 전송, 네트워크 계층)에서 데이터가 내려온다.
네트워크 계층에서 IP 패킷이 형성되어 있고, 목적지 IP 주소가 결정된 상태다.

  1. ARP 작동 시점:

데이터 링크 계층으로 데이터가 내려왔을 때, 프레임에 MAC 주소를 넣어야 한다.
이때 목적지 MAC 주소를 알아내기 위해 ARP가 작동한다.

  1. 목적지 확인:

먼저 목적지 IP 주소가 같은 네트워크(서브넷)에 있는지 확인한다.
같은 네트워크면 목적지 장치의 MAC 주소를 찾고, 다른 네트워크면 라우터(게이트웨이)의 MAC 주소를 찾는다.

  1. ARP 캐시 확인:

먼저 ARP 캐시 테이블을 확인한다.
캐시에 목적지 IP에 대한 MAC 주소가 있으면 바로 사용한다.
없으면 ARP 요청을 브로드캐스트한다.

  1. ARP 요청 브로드캐스트:

송신자는 목적지 IP 주소를 포함한 ARP 요청 패킷을 생성한다.
이 요청은 MAC 주소 FF:FF:FF:FF:FF(브로드캐스트)로 전송된다.
네트워크의 모든 장치가 이 요청을 수신한다.

  1. ARP 응답:

요청 패킷의 목적지 IP 주소를 가진 장치만 응답한다.
응답 패킷에는 자신의 IP 주소와 MAC 주소가 포함된다.
응답은 브로드캐스트가 아닌 요청자에게만 유니캐스트로 전송된다.

  1. ARP 캐시 업데이트:

송신자는 응답에 포함된 IP 주소와 MAC 주소 매핑을 ARP 캐시에 저장한다.
이후 같은 목적지로 통신할 때 이 정보를 재사용한다.

  1. 데이터 전송 완료:

이제 MAC 주소를 알았으므로 데이터 링크 계층 프레임을 완성할 수 있다.
목적지 MAC 주소, 출발지 MAC 주소, 그리고 상위 계층에서 온 데이터를 포함하여 프레임을 구성한다.
완성된 프레임이 물리 계층을 통해 전송된다.

‼️ARP 캐시

ARP 캐시는 IP 주소와 MAC 주소 매핑을 저장하는 임시 데이터베이스다. 이를 통해 동일한 목적지로 반복 전송 시 ARP 요청을 다시 보내지 않아도 된다. 저장된 항목은 일정 시간 후 만료되어 네트워크 변경 사항이 반영될 수 있다.

RARP(Reverse Address Resolution Protocol)

RARP는 ARP의 반대 기능을 수행한다. 물리적 주소인 MAC 주소를 논리적 주소인 IP 주소로 변환한다. 주로 하드디스크가 없는 워크스테이션처럼 자신의 IP 주소를 모르는 장치가 부팅 시 사용한다.
현재는 DHCP가 더 많은 기능을 제공하므로 거의 사용되지 않는다

✅RARP 동작 과정

  1. 시작점 - 물리 계층:

부팅 장치는 자신의 MAC 주소만 알고 있다.
IP 주소를 알아내기 위해 RARP 사용한다.

  1. RARP 요청:

장치는 자신의 MAC 주소를 포함한 RARP 요청을 브로드캐스트한다.
"내 MAC 주소는 이거야, 내 IP 주소가 뭐야?"라고 네트워크에 물어보는 것과 같다.

  1. RARP 서버 처리:

RARP 서버가 요청을 받는다.
서버는 MAC-IP 매핑 테이블에서 해당 MAC 주소의 IP 주소를 찾는다.

  1. RARP 응답:

서버는 찾은 IP 주소를 요청 장치에게 직접 응답한다.
"너의 IP 주소는 이거야"라고 알려주는 것과 같다.

  1. IP 구성:

장치는 받은 IP 주소로 네트워크 인터페이스를 구성한다.
이제 IP 기반 통신이 가능해진다.

ARP vs RARP 비교

특성ARPRARP
목적IP 주소 → MAC 주소 변환MAC 주소 → IP 주소 변환
사용 시점데이터 전송 전부팅 시
서버 필요 여부서버 불필요RARP 서버 필요
현재 사용광범위하게 사용됨DHCP 등으로 대체됨
프로토콜 계층데이터 링크 ~ 네트워크 계층데이터 링크 ~ 네트워크 계층
profile
간단한 개발 기록

0개의 댓글