MAC주소는 통신을 위한 주소 중 하나이다.
데이터 링크 계층에서 네트워크 인터페이스에 할당되어 있으며, 모든 통신 기기의 고유한 물리주소이다.
- 송신자는 목적지의 물리주소가 필요하다.
- 물리주소 요청을 위한 ARP요청 패킷을 브로드캐스트로 전송한다.
- 요청 패킷에는 수신자의 답장을 위한 송신자의 물리주소, 논리주소와 수신자의 논리주소를 포함한다.
- 모든 호스트와 라우터는 ARP 요청 패킷을 수신한 후 해당되는 수신자만 답장 패킷(ARP Reply)을 유니캐스트로 전송한다.
- 답장 패킷에는 수신자 자신의 논리주소와 물리주소를 넣어 전송한다.
<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 |
- A가 같은 네트워크 대역에 ARP요청을 브로드캐스트 한다.
- 현재 A가 알고있는 B의 정보는 IP주소와 기본으로 설정된 MAC주소가 있다.
- 스위치를 거치면서 A의 MAC주소가 없었으면 MAC Table에 저장한다.
- 이후 A에게 ARP요청이 들어오면 MAC Table에서 꺼내서 알려준다.
- 만약 스위치에 B의 MAC주소가 저장되어있지 않다면 ARP요청은 B까지 전달된다.
- ARP을 받은 B는 본인 IP가 맞는지 확인한 후 MAC주소를 포함해 알려준다.
- 이때 스위치에도 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 |
- A가 B의 IP를 ARP요청으로 브로드캐스트 한다.
- 라우터와 B의 MAC주소를 default로 세팅한다. (FF:FF:FF:FF:FF:FF)