문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 ARP (문단 편집) === 개요 === {{{+1 '''A'''ddress '''R'''esolution '''P'''rotocol}}} OSI 7 Layer에서 Layer 3에 위치한 프로토콜이며, [[MAC 주소]]와 [[IP 주소]]를 서로 연결하는 용도로 사용한다. 사실 이 내용은 일반 사용자 레벨에서는 거의 볼 일이 없는 내용이다. 하지만 ARP는 의외로 중요한 역할을 하는데, LAN 환경에서는 [[MAC#s-4|MAC 주소]]를 기반으로 통신하기 때문이다. ARP는 IP 주소를 기반으로 MAC 주소를 알아오는 역할을 한다. 실제로 Wireshark를 이용하여 패킷을 잡아보면 출발지 주소가 자기 랜카드의 MAC 주소, 도착지 주소는 브로드캐스트(255.255.255.255)이다. 예시로 192.168.0.0/24 환경에서 자신의 IP는 192.168.0.2이고, 192.168.0.10의 IP 주소를 가진 PC의 MAC 주소를 알려고 할 때 Info 부분에 "Who has 192.168.0.10? Tell 192.168.0.2"라고 써 있는 것을 볼 수 있다. 이런 식으로 얻어온 ARP 정보는 ARP 테이블에 올라가는데, [[Microsoft Windows]]에서는 명령 프롬프트에 arp -a를 입력하면 볼 수 있다. [[파일:attachment/arp.png]] ARP 테이블은 캐시 개념이라 일정 시간이 지나면 사라진다. 바로 ARP를 초기화 할 수 있는데, 명령 프롬프트에서 arp -d를 입력하거나 랜 케이블을 분리했다 다시 연결해 주면 ARP 테이블이 초기화된다. 잘 보면 현재 환경은 IP 주소가 172.16.119.0/24의 사설 IP 환경인데, 현재 VMware Host-only 네트워크라 게이트웨이가 없다. 하지만 실제 로컬 네트워크 환경에서는 게이트웨이마저 ARP 테이블에 동적으로 올라와 있게 되는데, 이로 인해 발생할 수 있는 상황이 [[ARP spoofing]]. 자세한 것은 해당 항목을 참고해 보자. [[파일:attachment/arp1.png]] 실제로 ARP 패킷을 캡처한 모습이다, WireShark의 Info란을 보면 'who has'로 시작해서 'tell ~'로 끝나는 내용과, '~is at ~'라는 내용을 가진 패킷이 있는데, 'who was'로 시작해서 'tell ~~'로 끝나는 내용이 담긴 패킷은 ARP의 Request 패킷이다, 'who has 192.168.50.1? tell 192.168.50.2'라는 Request 패킷이 있다면, 이는 '192.168.50.1'가 누군지 안다면 '192.168.50.2'으로 MAC 주소를 보내달라는 뜻으로 해석이 가능하며, '~is at ~' 내용의 Reply(Response) 패킷은 '192.168.50.1 is at AA:AA:AA:AA:AA:AA'라는 내용이 있다면 '네가 물어본 192.168.50.1의 MAC 주소는 AA:AA:AA:AA:AA:AA야'라는 내용으로 해석이 가능하다. --사실 프로토콜 관련 문서는 [[HTTP]]와 [[SSL]] 등을 제외하고는 한글 문서/강좌가 저조한 편이라 구글링과 번역기가 필수이다--저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기