Network

[Network] ARP (Address Resolution Protocol)

김듀니 2021. 8. 15. 23:40
728x90

ARP(Address Resolution Protocol)는

데이터를 전송받는 목적지 컴퓨터의 IP 주소를 이용하여 MAC 주소를 찾기 위한 프로토콜이다. 

 

이더넷 프레임을 전송하려면 목적지 컴퓨터의 MAC 주소를 지정해야 하는데, 이때 출발지 컴퓨터가 목적지 주소를 모르면 MAC 주소를 알아내기 위해 네트워크에 브로드캐스트를 한다. 이것을 ‘ARP 요청(request)’이라고 한다.

 

이 요청에 대해 지정된 IP 주소를 가지고 있지 않은 컴퓨터는 응답하지 않지만, 지정된 IP 주소를 가진 컴퓨터는 MAC 주소를 응답으로 보냅니다. 이것을 ‘ARP 응답(reply)’이라고 합니다. 

 

이것으로 출발지 컴퓨터는 MAC 주소를 얻고 이더넷 프레임을 만들 수 있다.

 

출발지 컴퓨터에서는 MAC 주소를 얻은 후, MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관한다. 이 정보를 ‘ARP 테이블(table)’이라고 한다. 이후 데이터 통신은 자신의 컴퓨터에 보관된 ARP 테이블을 참고하여 전송된다.

 


하지만 IP 주소가 변경되면 해당 MAC 주소도 함께 변경되므로 제대로 통신할 수 없다. 그래서 ARP 테이블에서는 보존 기간을 ARP 캐시로 지정하고 일정 시간이 지나면 삭제하고 다시 ARP 요청을 해야한다.


윈도에서 ARP 캐시의 내용을 확인하려면 arp -a 명령어를 사용하고 ARP 캐시를 강제로 삭제하려면 arp -d 명령어를 사용한다.

- <모두의 네트워크> (미즈구치 카츠야 지음, 이승룡 옮김) 중에서

728x90