ARP란? 같은 네트워크 내에서 상대의 MAC주소와 IP를 알아내는 명령어입니다.
일반적으로 같은 네트워크 안에 대상 기기의 IP주소를 알 수 있는 방법은 공유기에 접속해서 접속된 아이피와 어떤 장비인지 확인할 수 있지만 공유기 같은 라우터에 접속할 수 없는 경우라면 어떻게 해야 할까요?
이럴 때 그 역할을 하는 프로토콜이 바로 **ARP(Address Resolution Protocol)**입니다.
쉽게 말하면:
“같은 네트워크 안에서 누가 어디에 있는지 주소를 물어보는 과정”
우선 전제로 arp명령은 PC와 통신한 이력이 없다면 같은 네트워크에 있는 컴퓨터라도 찾을 수 없습니다.
1. ARP란 무엇인가?
ARP(Address Resolution Protocol)는
👉 IP 주소를 MAC 주소로 바꿔주는 프로토콜입니다.
IP 주소는 ‘논리 주소’이고
MAC 주소는 ‘물리 주소’입니다.
LAN 내부 통신은 실제로 MAC 주소 기반으로 이루어지기 때문에
같은 네트워크 안에서 상대를 찾기 위해서는
반드시 MAC 주소를 알아야 합니다.
2. 왜 ARP가 필요할까?
예를 들어,
PC의 IP가 192.168.10.10이고
프린터의 IP가 192.168.10.50이라고 가정해봅시다.
PC가 프린터로 데이터를 보내기 위해서는
IP 주소뿐 아니라 MAC 주소도 알아야 합니다.
하지만 PC는 처음에는 “프린터의 MAC 주소”를 모르죠.
그래서 PC는 네트워크에 이렇게 물어봅니다:
“192.168.10.50 이 누구인가요? MAC 주소 좀 알려주세요!”

위 그림은 공유기에서 확인해본 리스트와 arp로 확인한 리스트를 비교해 봤습니다.
3. ARP가 실제로 동작하는 과정
✔ 1단계: ARP 요청(Request)
PC가 브로드캐스트로 전체 네트워크에 묻습니다:
192.168.1.50 누구세요? MAC 주소 알려주세요!
이건 전체 네트워크에 공개적으로 보내는 질문입니다.
✔ 2단계: ARP 응답(Reply)
프린터가 대답합니다:
192.168.1.50 여기요! 제 MAC 주소는 AA:BB:CC:DD:EE:FF 입니다.
✔ 3단계: 통신 시작
PC는 응답받은 MAC 주소를 이용해
프린터와 정상적으로 통신할 수 있습니다.
4. ARP 캐시(Cache)란?
PC는 매번 물어보면 비효율적이기 때문에
한 번 알아낸 MAC 주소는 ARP 캐시에 저장합니다.
Windows에서 확인하면 이렇게 보입니다:
arp -a
캐시를 저장해두면
다음 통신은 훨씬 빠르게 이루어집니다.
5. ARP 문제가 생기면 어떤 현상이 나타날까?
ARP는 기본 프로토콜이라
문제가 생기면 네트워크 오류가 갑작스럽게 발생할 수 있습니다.
대표적인 증상:
- 같은 네트워크인데 통신이 안 됨
- 특정 장비만 Ping이 안 됨
- 프린터만 접속이 안 되는 현상
- IP는 정상인데 연결이 불안정
이런 문제는 대부분 ARP 캐시 오류나 MAC 주소 충돌 때문입니다.
✔ 해결 방법
arp -d *
→ ARP 캐시 전체 삭제
(캐시는 다시 자동 학습됩니다)
6. ARP 관련 명령어
✔ Windows
arp -a → 현재 캐시 확인
arp -d * → 캐시 전체 삭제
✔ Linux / Mac
arp -a
sudo ip -s -s neigh flush all
✿ 마무리
ARP는 초보자가 잘 모르지만
네트워크 구조를 이해하는 데 정말 중요한 개념입니다.
정리하면:
- ARP는 IP 주소를 MAC 주소로 바꿔주는 역할
- 같은 네트워크에서 상대를 찾기 위해 반드시 필요
- 처음에는 브로드캐스트로 물어보고, 응답하면 MAC 저장
- ARP 캐시 오류가 발생하면 통신이 끊기는 원인이 됨
- 명령어로 쉽게 확인하고 초기화할 수 있음
모르기 때문에 많이 사용하지는 않지만 기억하면 사용하기 좋은 명령어입니다.
실제 업무에서도 많이 사용하시길 기대해보면서 글을 마무리 하겠습니다.