ARP( Address Resolution Protocol )란?
- ARP( Address Resolution Protocol)이란 IP주소를 이용해 내부망 PC들의 MAC주소를 조회하는 프로토콜입니다.
ARP 과정
- 1. 송신하려는 메시지의 목적지 IP주소에 대응하는 MAC주소를 알아내기 위해 ARP 브로드 캐스팅을 합니다.
- 2. 내부망의 PC들은 ARP 패킷을 확인하여 자신의 IP주소와 동일하다면 자신의 MAC주소를 포함하여 응답합니다.
- 3. 응답받은 PC는 MAC주소를 확인하여 목적지 MAC주소를 셋팅하여 메시지를 송신합니다. 그리고 MAC주소를 ARP 테이블에 저장하여 이후 목적지 IP주소를 대상으로 데이터를 송신할 때 재사용합니다.
ARP 테이블이란?
- 메시지를 송신할 때마다 MAC주소를 알아 내기 위해 ARP를 사용하는 것은 네트워크 트래픽의 낭비입니다. ARP를 통해 알아낸 MAC주소를 IP주소와 맵핑하여 일정 시간동안 로컬 PC의 ARP 테이블에 저장하여 재사용합니다.
- windows의 cmd창에서 arp -a 명령어를 통해 arp 테이블에 저장된 IP주소와 MAC주소를 조회할 수 있습니다.
RARP( Reverse Address Resolution Protocol )
- RARP( Reverse Address Resolution Protocol )란 MAC주소를 이용해 내부망의 IP주소를 조회하는 프로토콜입니다.
ARP 스푸핑( Spoofing )
- 동일한 네트워크 망에 있는 해커가 GARP( gratuitous ARP )를 이용해 라우터에게 공격 대상의 IP주소와 자신의 MAC주소를 맵핑하여 송신하고, 공격자에게는 게이트 웨이 IP주소와 자신의 MAC주소를 맵핑하여 송신합니다. 그러면 위 이미지에서와 같이 공격 대상자는 외부망에 메시지를 송신할 때마다 해커의 PC를 거치게 되고 모든 외부에서 해당 공격 대상자의 PC로 들어오는 메시지에 대해서 해커의 PC를 거치게 됩니다.
- 위와 같은 공격이 가능한 이유는 ARP는 자체적으로 IP주소와 MAC주소를 검증하는 기능이 없기 때문입니다.
GARP( gratuitous ARP )
- GARP( gratuitous ARP )는 ARP 테이블 갱신 및 IP 주소 충돌 감지를 하기위해 사용되는 프로토콜입니다.
'네트워크' 카테고리의 다른 글
TCP의 흐름 제어, 오류 제어, 혼잡 제어란? (0) | 2023.02.20 |
---|---|
TCP의 3-way-handshake와 4-way-handshake란? (0) | 2023.02.15 |
DNS( Domain Name System ) 이란? (0) | 2023.01.28 |
STMP, POP3, IMAP 이란? (0) | 2022.12.06 |
TCP 블로킹 소켓 ( Blocking Socket ) 과 넌블로킹 소켓 ( Nonblocking Socket ) 의 차이점 (0) | 2022.10.02 |