네트워크

RARP와 GARP의 개념과 동작원리

다시 보는 2023. 10. 19. 13:47
728x90

Reverse ARP

RARP는 ARP 앞에 Reverse를 붙인 것처럼 ARP와 반대로 동작하는 프로토콜입니다.

즉 MAC으로 IP를 얻어오는 동작, 즉 MAC주소를 IP에 매핑시킵니다.

(정보처리기사 시험에서 ARP와 RARP를 필답형으로 자주 물어봅니다.)

 

요즘은 DHCP 등의 프로토콜을 사용하기 때문에 보통 자동으로 IP가 할당됩니다.

하지만 거의 40년 전인 1984년에 생산된 워크스테이션에는 디스크가 없었습니다. 

따라서 IP주소를 저장할 수 없는 이런 컴퓨터들이 IP주소를 얻기 위해 제안된 프로토콜이 바로 RARP 입니다.

즉 오래된 기술이고, 일반인들은 거의 접하기 힘든 프로토콜입니다.

 

RARP는 별도의 RARP 서버가 필요합니다. 이 서버는 동일한 물리적 네트워크에 속해 있어야 합니다.

또한 라우터가 이 RARP를 처리하지 못하기 때문에 서브넷 마다 RARP 서버를 설치해야 합니다. 


GARP (Gratuitous ARP)

Gratuitous는 한국말로 하면 '무료의', '불필요한' 이라는 뜻을 가집니다.

gratuitous service는 무료봉사 라는 뜻이죠.

 

GARP의 맥락에서도 마찬가지로 '무료 ARP'라는 해석이 적합합니다.

그럼 뭐가 무료라는 것이냐?

 

이 GARP는 무료로 자신의 정보(IP, MAC)를 알려줍니다.

아무런 대가 없이 다른 호스트들에게 정보를 제공한다고 이해하시면 됩니다.

 


일반적으로 네트워크 장치가 부팅 시 자신의 MAC 주소와 IP 주소를 다른 호스트에게 알리기 위해 GARP를 사용합니다.
GARP 패킷은 일반적인 ARP 패킷과 유사하지만 목적지 IP 주소와 출발지 IP 주소가 동일합니다.
GARP의 주요 용도는 네트워크 상의 모든 호스트에게 자신의 존재를 알리는 것이며, 

이를 통해 IP 충돌을 방지하고 네트워크 환경을 업데이트하는 데 도움을 줍니다.

또한 IP 주소를 갱신하거나 네트워크 장치의 상태를 알리는 데 사용됩니다.


잡담

ARP의 갱신 주기가 벤더 사마다 다릅니다. cisco의 경우 4시간인데, 다른 벤더사는 훨씬 더 길기도 합니다.

그래서 테이블이 갱신되지 않아 통신 장애가 발생할 수 있습니다.

아래는 회사 선배님께 들은 실제 사례입니다.

 

테스트를 위해 스위치에 임시로 연결한 장비 A에 할당된 아이피가 있었는데, 해당 장치가 제거된 후 새로 연결된 방화벽 B에 같은 아이피가 할당되었습니다. 

하지만 ARP가 갱신되지 않아 A의 맥 주소로 설정된 패킷들은 이미 A가 네트워크에 존재하지 않았기 때문에,  플러딩으로 B에 흘러들어갔고, B는 해당 패킷들을 전부 DROP 시켜버렸습니다. 

그래서 B의 아이피를 변경하면 통신은 정상적으로 이루어집니다.

하지만 이때 B에서 GARP를 발생시키면 ARP가 갱신되기 때문에 통신이 복구될 수 있습니다.

728x90