주소 해석 프로토콜

첫 번째 네트워크 레벨 프로토콜은 주소 해석 프로토콜(ARP)입니다. ARP는 인터넷 주소를 근거리 통신망의 고유 하드웨어 주소로 동적으로 변환합니다.

ARP의 작동 방식을 설명하기 위해 두 개의 노드, XY를 고려하십시오. 노드 XY와 통신하려 하고 XY가 다른 근거리 통신망(LAN)에 있는 경우, XY는 IP 주소를 사용하여 브릿지, 라우터 또는 게이트웨이를 통해 통신합니다. LAN 내에서 노드는 하위 레벨 하드웨어 주소를 이용하여 통신합니다.

동일한 LAN의 동일한 세그먼트에 있는 노드는 ARP를 사용하여 기타 노드의 하드웨어 주소를 판별합니다. 먼저 노드 XY의 하드웨어 주소에 대한 ARP 요청을 브로드캐스트합니다. ARP 요청은 XIP 및 하드웨어 주소와 YIP 주소를 포함합니다. YARP 요청을 수신하면 X에 대한 항목을 ARP 캐시(IP 주소에서 하드웨어 주소로 빠르게 맵핑하는 데 사용됨)에 넣은 다음 YIP 및 하드웨어 주소가 포함된 ARP 응답으로 X에 직접 응답합니다. 노드 XYARP 응답을 수신하면 Y에 대한 항목을 ARP 캐시에 배치합니다.

ARP 캐시 항목이 Y에 대한 X에 존재하면 노드 XARP로 다시 재정렬하지 않고도 Y에 패킷을 직접 전송할 수 있습니다(Y에 대한 ARP 캐시 항목이 삭제되지 않은 경우 Y에 접속하기 위해 ARP를 다시 사용함).

대부분의 프로토콜과 다르게 ARP 패킷에는 고정된 형식의 헤더가 없습니다. 그 대신 다음과 같은 다양한 네트워크 기술에 유용하도록 메시지가 설계됩니다.

  • 이더넷 LAN 어댑터(이더넷 및 802.3 프로토콜 모두 지원)
  • 토큰 링 네트워크 어댑터
  • 광 분산 데이터 인터페이스(FDDI) 네트워크 어댑터

그러나 SLIP(Serial Line Interface Protocol) 또는 직렬 광 채널 변환기(SOC)는 지점간 연결이기 때문에 ARP는 해당 주소를 변환하지 않습니다.

커널은 변환 테이블을 유지하며 사용자나 애플리케이션은 ARP를 직접 사용할 수 없습니다. 애플리케이션이 인터넷 패킷을 인터페이스 드라이버 중 하나에 전송할 때 드라이버는 해당 주소 맵핑을 요청합니다. 맵핑이 테이블에 없는 경우, ARP 브로드캐스트 패킷은 요청하는 인터페이스 드라이버를 통해 근거리 통신망의 호스트로 전송됩니다.

ARP 맵핑 테이블의 항목은 20분 후에 삭제되고 미완료 항목은 3분 후에 삭제됩니다. ARP 맵핑 테이블에서 항목이 영구적으로 되도록 하려면 pub 매개변수와 함께 arp 명령을 사용하십시오.

arp -s 802.3 host2 0:dd:0:a:8s:0 pub

ARP를 지원하는 호스트가 ARP 요청 패킷을 수신할 때 호스트는 요청하는 시스템의 IP 및 하드웨어 주소를 기록해 두고 필요에 따라 맵핑 테이블을 갱신합니다. 수신 호스트 IP 주소가 요청된 주소와 일치하지 않으면 호스트는 요청 패킷을 삭제합니다. IP 주소가 일치하면 수신 호스트는 패킷을 요청 시스템에 전송합니다. 요청 시스템은 새로운 맵핑을 저장하고 이를 사용하여 유사한 보류 인터넷 패킷을 전송합니다.