ARP1.jpg

MAC주소는 통신을 위한 주소 중 하나이다.

데이터 링크 계층에서 네트워크 인터페이스에 할당되어 있으며, 모든 통신 기기의 고유한 물리주소이다.

  1. 송신자는 목적지의 물리주소가 필요하다.
    1. 물리주소 요청을 위한 ARP요청 패킷을 브로드캐스트로 전송한다.
      1. 요청 패킷에는 수신자의 답장을 위한 송신자의 물리주소, 논리주소와 수신자의 논리주소를 포함한다.
  2. 모든 호스트와 라우터는 ARP 요청 패킷을 수신한 후 해당되는 수신자만 답장 패킷(ARP Reply)을 유니캐스트로 전송한다.
    1. 답장 패킷에는 수신자 자신의 논리주소와 물리주소를 넣어 전송한다.

<aside> 💡 브로드캐스트: 수신자가 특정되어 있지 않거나, 네트워크의 모든 서버에게 정보를 알려야 할 때 모두에게 전송하는 방식 유니캐스트: 송신자와 수신자의 MAC 주소를 모두 알고 있을 때 1:1 통신하는 방식

</aside>

조금 더 상세한 과정

A B
IP 10.0.0.1/24 10.0.0.2/24
MAC 00:11:BB:00:00:AA 00:11:BB:00:00:BB
  1. A가 같은 네트워크 대역에 ARP요청을 브로드캐스트 한다.
    1. 현재 A가 알고있는 B의 정보는 IP주소와 기본으로 설정된 MAC주소가 있다.
    2. 스위치를 거치면서 A의 MAC주소가 없었으면 MAC Table에 저장한다.
      1. 이후 A에게 ARP요청이 들어오면 MAC Table에서 꺼내서 알려준다.
  2. 만약 스위치에 B의 MAC주소가 저장되어있지 않다면 ARP요청은 B까지 전달된다.
  3. ARP을 받은 B는 본인 IP가 맞는지 확인한 후 MAC주소를 포함해 알려준다.
    1. 이때 스위치에도 B의 MAC주소가 저장된다.
A B
IP 10.0.0.1/24 20.0.0.1/24
MAC 00:11:BB:00:00:AA 00:11:BB:00:00:00
라우터
A(MAC) 00:00:00:00:RR:00
B(MAC) 00:00:00:00:RR:01
  1. A가 B의 IP를 ARP요청으로 브로드캐스트 한다.
    1. 라우터와 B의 MAC주소를 default로 세팅한다. (FF:FF:FF:FF:FF:FF)