**통신하기 전 반드시 필요한 ARP 프로토콜**
ARP 프로토콜
ARP가 하는 일
ARP 프로토콜의 구조
- 4byte * 7층
- 2계층에서 사용하는 프로토콜의 타입 (대부분의 경우는 이더넷 프로토콜(0001)이다.) 4byte
- 출발지의 프로토콜의 타입(대부분의 경우는 IPv4(0800)이다.) 4byte
- 맥주소의 길이 (06) 2byte
- 프로토콜의 길이 (04) 2byte
- opcode 어떻게 동작하는지 나타내는 코드 (000x) 4byte
- 출발지 MAC주소 6byte → 출발지 IP주소 4byte → 목적지 MAC주소 6byte → 목적지 IP주소 4byte
ARP 프로토콜의 통신 과정
IP주소로 MAC주소를 알아오는 과정
- A → C 로 보내는 상황 (목적지 MAC 주소를 모름)
ARP테이블
나와 통신했던 컴퓨터들
- 통신했던 컴퓨터들의 주소는 ARP테이블에 남는다.
- 일정 시간이 지나면 사라짐
ARP
- ARP(Address Resolution Protocol)란 IP 주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜
- 통신하기 전 반드시 필요한 ARP프로토콜
- 김동준 Q. ARP의 역할은 무엇인가요?
- A 같은 네트워크대역에서도 통신시 IP주소와 MAC주소가 모두 필요한데, IP만 알고 MAC주소는 모를 경우에도 IP주소만으로 통신이 가능하게 해준다.
- 김진호 ARP 프로토콜의 요청부터 응답까지의 과정을 설명해보세요
- A
- 출발지 디바이스에서 ARP프로토콜에 2계층의 이더넷 프로토콜을 붙여 내보낸다. 이때 도착지 맥주소를 모르기때문에 ARP프로토콜에 맥주소는 0으로 이더넷 프로토콜에는 1로 채워 보낸다 (1로 다 채우면 브로드캐스트 통신을 한다는 의미이다)
- 같은 대역 내 통신을 담당하는 2계층 장비인 스위치가 패킷을 받는다 2계층 장비이기 때문에 이더넷 프로토콜만 해석해서 브로드캐스트인것을 확인하고 자신과 연결된 모든 디바이스에 통신을 보낸다
- 통신을 받은 디바이스들은 디캡슐레이션을 하는데 이때 arp프로토콜에 적혀있는 도착지 ip주소를 보고 자신이 아니라면 패킷을 버린다
- 김준형 Q. 이 다음을 설명하시오
- A
- ip주소가 자신이라면 해당 arp프로토콜의 opcode를 0002(응답)으로 바꾸로 출발지 맥주소에 자신의 맥주소를 적고 도착지 맥주소에 요청을 보낸 디바이스의 주소를 적어 보낸다 (ip주소도 마찬가지)
- 응답 arp를 받은 스위치는 맥주소가 특정되어 있기 때문에 해당 디바이스에게만 포워딩한다
- 응답을 받은 디바이스는 응답 준 디바이스의 맥주소를 ip주소와 매핑하여 ARP 테이블에 캐싱한다 (캐싱이기 때문에 일정시간이 지나면 없어진다)
- 고병진 ARP 캐시 테이블 이란 무엇인가???
- A 나와 통신했던 장비의 IP 주소와 MAC 주소를 1 : 1 매핑하여 저장하는 곳
- 송진주 Q. ARP 프로토콜의 구조에서 Opcode (Operation code)는 무엇을 의미하나요?
- A 현재 ARP 프로토콜로 상대방의 MAC주소를 요청 중인지 또는 요청에 대한 응답 중인지 상태를 나타냅니다.