IT/Network

[ARP와 ARP Table 및 Cache] - 1. ARP란

착한아줌마 2024. 2. 16. 16:54
반응형

 

 

 

 

네트워크에서 꽃인 Ping,

 

 

그 Ping이 되는 과정에서 중요한 프로토콜 중 하나가 ARP 인데요.

 

 

ARP와 관련해서 ARP, ARP Table, ARP Cache에 대해서 써보겠습니다.

 

 

 

 

첫번째로 ARP란 무엇인지, 왜 쓰는지, 어떻게 동작하는지 등

 

 

간략하게 알아봅니다.

 

 

 

 


 



1. 개요



ARP (Address Resolution Protocol)

 

ARP는 네트워크에서 사용되는 프로토콜로, 주어진 IP 주소를 해당 네트워크에서 사용되는 물리적인 MAC 주소로 매핑하는 역할을 수행합니다.

 


ARP Cache

 

ARP Cache는 ARP 통신을 통해 얻은 IP 주소와 MAC 주소의 매핑 정보를 일시적으로 저장하는 공간입니다.


ARP Cache의 필요성과 기능을 이해하면 네트워크에서의 효율적인 통신을 위한 기초가 마련됩니다.

 

 

 

 

 


2. ARP 기본 개념

 


ARP는 IP 주소를 해당 장치의 물리적인 MAC 주소로 매핑하여 데이터 전송을 가능케 한다고 하는데,

 

IP와 MAC 주소는 뭐고, 또 어떤 관계가 있을까요.

 

 

IP 주소 (Internet Protocol Address)

 네트워크 상에서 장치들이 식별되는 주소입니다.
 IP 주소는 논리적인 주소로, 인터넷에서 데이터를 라우팅하고 전송하는 데 사용됩니다.

 

 

MAC 주소 (Media Access Control Address)

 네트워크 인터페이스 카드(NIC)에 부여된 물리적인 주소로, 각 장치를 고유하게 식별합니다.
 MAC 주소는 데이터 링크 계층에서 사용되며, 로컬 네트워크에서 패킷을 전송하는 데 필요합니다. 

 

 


쉽게 말해서 우편물에 비유하자면 주소와 우편번호 같은 관계입니다.


주소(IP)도 우편번호(MAC)도 모두 어느 특정 공간을 가르키고 주소(IP)로 검색해서 우편번호(MAC)를 알아낼 수 있죠.

 

그래서 실제로 다른 통신을 위해서는 IP 주소 뿐만 아니라 MAC 주소도 알아야 합니다.
 
 

 


결론적으로

 

ARP는 네트워크 장치 간에 통신하는 경우

 

필요한  IP 주소에 대한 MAC 주소를 알고 싶을 때 사용한다고 보시면 됩니다.

 

 

 

 


3. ARP 통신 과정

 


ARP Request와 ARP Reply의 과정


ARP 통신은 ARP Request와 ARP Reply 메시지를 통해 이루어집니다.


ARP Request

 

송신자 장치(A)가 목표 장치(B)의 IP 주소에 대한 MAC 주소를 알아내기 위해 ARP Request 메시지를 보냅니다.

 

ARP Request를 보내는 것도 통신의 일종이라고 볼 수 있는데 MAC주소가 필요하지 않나 생각할 수 있는데요.

 

 

그래서 ARP Request는 브로드캐스트의 형태로 보내게 됩니다.

 

브로드캐스트는 같은 도메인 내에 모든 장치에게 모두 보내는 패킷을 가리켜 말합니다.

 

누구인지 알지 못하니 그냥 모두에게 보낸다고 보시면 됩니다.

 

그래서 네트워크 상의 모든 장치가 해당 메시지를 수신하게 됩니다.

 

그러나 특정 상황에서는 유니캐스트로 전송될 수도 있습니다.

 

특정 상황에 대해 추가로 알아보실 분은 아래를 펼치시기 바랍니다.

 

더보기

- Proxy ARP 사용


네트워크에서 Proxy ARP가 사용되는 경우, ARP Request는 브로드캐스트 대신에 특정 장치에게 유니캐스트로 전송될 수 있습니다.
Proxy ARP는 라우터나 다른 장치가 목적지의 MAC 주소를 대신하여 응답하는 방식으로 동작하며, 이때 ARP Request가 해당 장치에 직접 전송됩니다.

 


- 이전 통신 결과를 기반


ARP 캐시에 기록된 정보를 사용하여 ARP Request를 유니캐스트로 전송할 수 있습니다.
예를 들어, 송신자가 이전에 특정 목적지와 통신한 적이 있고, 그 결과가 ARP 캐시에 저장되어 있다면 ARP Request는 브로드캐스트가 아닌 해당 목적지에게 직접 전송될 수 있습니다.

 

** 유니캐스트로 ARP Request를 전송하는 경우, 브로드캐스트보다 효율적인 통신이 가능하며, 특히 큰 네트워크에서 불필요한 부하를 줄일 수 있습니다.
하지만 이는 상황에 따라 다르며, 일반적으로 ARP는 브로드캐스트 방식을 사용하는 것이 보편적입니다.

 

ARP Reply

 

목표 장치(B)는 ARP Request를 받으면 자신의 MAC 주소(xx:xx:xx:xx:xx:xx)를 포함한 ARP Reply 메시지를 송신자에게 직접 전송합니다.

 

ARP Request에서 답변을 보내야할 A의 MAC 주소로 패킷을 받아서 이미 알고있기에 A에게 직접 전송할 수 있습니다.

 

 

ARP 캐시의 업데이트 방법


ARP 통신을 통해 얻은 정보(IP 주소와 MAC 주소의 매핑 정보)는 ARP Cache에 저장되며, 이 캐시는 일정 기간 동안 유효합니다.


이 캐시는 향후 통신에서 중복된 ARP 통신을 방지하여 효율적인 데이터 전송을 도와줍니다.