네트워크/네트워크

프로토콜 - ARP(Address Resolution Protocol)

본클라쓰 2009. 5. 1. 13:04

 

ARP(Address Resolution protocol)은 RFC 826에 정의된 필수 TCP/IP 표준이다.

 

ARP는 TCP/IP 기반 소프트웨어에서 사용하는 IP 주소를 LAN 하드웨어에서 사용하는 미디어 액세스 제어 주소로 확인한다. ARP는 동일한 실제 네트워크에 있는 호스트에 다음 프로토콜 서비스를 제공한다.

 

  • 미디어 액세스 제어 주소는 "IP 주소로 구성된 장치의 미디어 액세스 제어 주소는?" 과 같은 형식의 네트워크 브로드 캐스트 요청을 사용하여 얻을 수 있다.
  • ARP 요청의 응답을 받으면 ARP 응답의 송신자와 원래 ARP 요청자가 모두 상대방의 IP 주소와 미디어 액세스 제어 주소를 나중에 참조하기 위해 ARP 캐시라는 로컬 테이블 항목으로 기록한다.

 

 

LAN에서 사용하기 위해 만들어진 하드웨어에는 제조업체에서 장치 내부에 프로그래밍한 고유 주소가 있다. 이더넷 및 토큰링 LAN 하드웨어에서 이 주소를 미디어 액세스 제어 주소라고 한다.

 

각 미디어 액세스 제어 주소는 네트워크 어댑터와 같은 각 실제 하드웨어 장치의 ROM에 프로그래밍된 6바이트 숫자로 실제 네트워크 내에 있는 장치를 식별한다. 미디어 액세스 제어 주소는 일반적으로 16진수로 표시된다.(예: 00-AA-00-3F-89-AA).

 

미디어 액세스 제어 주소의 권한 및 등록은 IEEE(Institute of Electrical and Electronics Engineers)의 감독을 받는다. 현재 IEEE는 각 제조업체에 대해 미디어 액세스 제어 주소의 처음 3바이트를 고유한 숫자로 등록하고 지정한다. 그런 다음 각 제조업체는 개별 네트워크 어댑터에 미디어 액세스 제어 주소의 마지막 3바이트를 지정한다.

 

 

 

 

ARP가 로컬 트래픽의 미디어 액세스 제어 주소를 확인하는 방법

 

 

자료 및 사진 출처 : http://technet.microsoft.com/ko-kr/library/cc758357(v=ws.10).aspx

 

 

호스트 A와 B는 동일한 실제 네트워크에 있다. 호스트 A의 IP 주소는 10.0.0.99로 지정되어 있고 호스트 B의 IP 주소는 10.0.0.100으로 지정되어 있다.

 

호스트 A가 호스트 B와 통신하려고 시도할 때는 다음과 같은 단계로 호스트 B의 IP 주소(10.0.0.100)를 호스트 B의 하드웨어 지정 미디어 액세스 제어 주소로 확인한다.

 

  1. 호스트 A의 라이팅 테이블을 기반으로 로컬 ARP 캐시에서 호스트 B의 하드웨어 주소와 일치하는 주소를 검사한다.
  2. 만약, 발견하지 못하면 "10.0.0.100의 하드웨어 주소는? 이라는 질문이 포함된 ARP 요청 프레임을 로컬 네트워크의 모든 호스트에게 브로드 캐스트한다. 이 때 ARP 요청에는 호스트 A의 하드웨어 및 소프트웨어 주소가 모두 포함된다.
  3. 호스트 B는 ARP 요청의 IP 주소와 자신의 IP 주소가 일치함을 확인하고 로컬 ARP 캐시에 호스트 A의 하드웨어/소프트웨어 주소 매핑을 추가한다.
  4. 호스트 B는 자신의 하드웨어 주소가 포함된 ARP 응답 메시지를 직접 호스트 A로 돌려 보낸다.
  5. 호스트 A가 호스트 B로부터 ARP 응답 메시지를 받으면 ARP 캐시를 호스트 B의 하드웨어/소프트웨어 주소 매핑으로 업데이트 한다.

 

 

 

ARP 캐시

 

브로드캐스트 수를 최소화하기 위해 ARP는 IP 주소 및 미디어 액세스 제어 주소 매핑에 대한 캐시를 나중에 사용할 수 있도록 유지한다. ARP 캐시에는 동적 항목과 정적 항목이 모두 포함될 수 있다. 동적 항목은 시간이 지나면 자동으로 추가되고 제거된다. 정적 항목은 컴퓨터를 다시 시작할 때까지 캐시에 남아 있는다.

 

각 동적 ARP 캐시 항목의 수명은 10분이다. 캐시에 새로 추가된 항목에는 시간이 기록된다. 항목이 추가된 지 2분 안에 다시 사용되지 않으면 만료되어 ARP 캐시에서 제거된다. 항목이 사용되면 2분의 수명을 추가로 받을 수 있다. 항목을 계속 사용하면 최대 수명인 10분 내에서 2분의 수명을 추가로 받을 수 있다.

 

arp 명령을 사용하여 ARP 캐시를 볼 수 있다. ARP 캐시를 보려면 명령 프롬프트에서 arp -a를 입력한다. arp 명령줄 옵션을 보려면 명령 프롬프트에 arp /?를 입력한다.