//구글콘솔 광고 추가가
728x90
반응형
IP 주소로 MAC 주소 알아내기 : ARP

 

 

ARP(Address Resolution Protocol)
: 매우 매우 중요한 프로토콜!!
< ARP >
- IP 주소를 통해 MAC 주소를 알아내는 프로토콜.
  >> 동일 네트워크 내에 있는 송수신 대상의 IP 주소를 통해 MAC 주소를 알아낼 수 있음.
- ARP 동작 (동작 과정을 이해하는 게 중요!)
1. ARP 요청.
2. ARP 응답.
3. ARP 테이블 갱신.

ex.
상황 ) 
동일한 네트워크에 속한 호스트 A,B. / 호스트 A는 호스트 B의 IP주소는 알지만 MAC주소는 모름. / 이 상황에서 호스트 B의 MAC 주소를 알아내는 과정.

1. ARP 요청 메시지를 보냄. (ARP Request)
- 호스트 A : 브로드캐스트 메시지 전송.
- 이 브로트케스트 메시지 = ARP 요청이라는 ARP 패킷. (ex. 나 땡땡이랑 통신하고 싶은데 주소가 뭐예요!! 하고 소리 지르는 것과 같음.)

2. ARP 응답(ARP Reply)
- 호스트 B : 자신의 MAC 주소를 담은 유니캐스트 메시지를 A에게 전송. / 호스트 B외에 나머지 호스트는 자신의 IP주소가 아니므로 무시.
- 이 유니캐스트 메시지 = ARP 응답 이라는 ARP 패킷. (ex. 접니다! 제 MAC 주소는 뭐뭐뭐예요!)
 >> 이 메시지를 수신한 A와 B는 MAC 주소를 알게 됨. 
ARP 패킷이란?
- ARP 요청, ARP 응답 과정에서는 송수신되는 패킷.
  >> 오퍼레이션 코드(Opcode; Operation Code) - ARP 요청의 경우 1, ARP 응답의 경우 2.
  >> 송신지 하드웨어 주소(Sender Hardware Address) 수신지 하드웨어 주소(Target Hardware Address)에는 MAC주소가 명시됨. 
  >> 송신지 프로토콜 주소(Sender Protocol Address)와 수신지 프로토콜 주소(Target Protocol Address)에는 IP 주소가 명시됨.
3. ARP 테이블 갱신( 테이블에 IP 주소와 맵핑된 MAC 주소를 기록해 둠)
- ARP 테이블(ARP Table) : ARP 요청 - 응답을 통해 알게 된 IP 주소와 MAC 주소의 연관 관계.
  >> ARP 테이블 항목은 일정 시간이 지나면 삭제, 임의 삭제도 가능.
  >> ARP 테이블에 등록된 호스트에 대해선 ARP 요청을 보낼 필요 없음. 

통신하고자 하는 호스트 A와 B가 서로 다른 네트워크에 속해 있을 경우, ARP는 네트워크 별로 수행됨.
728x90
반응형

+ Recent posts