https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi
위의 강의를 듣고 정리한 내용입니다
ARP 프로토콜
같은 네트워크 대역에서 통신을 하기 위해 필요한 MAC 주소를
IP 주소를 이용해서 알아오는 프로토콜이다
->통신하기 전 필요한 프로토콜이다
ARP가 하는 일
- 같은 네트워크 대역에서 통신을 하더라도 데이터를 보내기 위해서는 7계층부터 캡슐화를 통해 데이터를 보내기 때문에 IP 주소와 MAC 주소가 모두 필요하다
- 이때 IP 주소는 알고 MAC 주소는 모르더라도 ARP를 통해 통신이 가능하다
- 보안상 중요한 프로토콜이다
ARP 프로토콜의 구조
- 28bytes로 구성되어 있다
Hardware type | Protocol type | |
Haraware Address Length |
Protocol Address Length |
Opcode |
Source Hardware Address (Continued) | ||
Source Hardware Address | Source Protocol Address | |
Source Protocol Address | Destination Hardware Address | |
Destination Hardware Address | ||
Destination Hardware Address |
Source Hardware Address : 출발지의 물리적인 주소를 말한다
-> 출발지의 MAC 주소를 나타낸다 6bytes를 할당한다
Source Protocol Address : IPv4 주소를 가리킨다
-> 4bytes를 할당한다
Destination Hardware Address : 목적지의 MAC 주소와 목적지의 IP 주소가 들어있다
이더넷 프로토콜 : 목적지 주소가 먼저 온다 //가장 자주 볼 2계층 프로토콜이다
나머지 프로토콜 : 출발지 주소가 먼저온다
Opcode: Operation Code
어떤 것이 동작하는지 나타내는 코드이다
-> ARP 프로토콜로 요청을 하는지 요청에 대한 응답을 하는지 나타내는 코드이다
요청 = 01, 응답 = 02로 세팅한다
ARP 프로토콜의 통신 과정
컴퓨터 A, B, C, D가 통신한다고 가정
A 컴퓨터가 상대 컴퓨터에게 이더넷 프로토콜로 ARP요청을 할 때
목적지 MAC 주소를 모르는 상태이다
ARP 요청
00 01 | 08 00 | |
06 | 04 | 00 01(요청) |
aa aa aa aa | ||
aa aa | c0 a8 | |
00 0a | 00 00 | |
00 00 00 00 | ||
c0 a8 00 1e |
-> 목적지의 주소를 모르기 때문에 0으로 비워두었다
이더넷 캡슐화
FF FF FF FF | |
FF FF | aa aa |
aa aa aa aa | |
08 06 |
->MAC 주소를 FF로 채운다(2진수로는 1) -> 브로드캐스트
->같은 네트워크 대역에 있는 모든 컴퓨터에 전송한다 //도착지를 모르기 때문이다
전송받은 장비는 2계층을 확인후 3계층인 ARP 요청을 확인한다
-> 본인과 목적지 IP 주소가 일치하지 않으면 패킷을 버리고, 일치하면 버리지 않는다
일치한 컴퓨터 = C 컴퓨터는 ARP 응답을 보낸다
ARP 응답
00 01 | 08 00 | |
06 | 04 | 00 02(응답) |
cc cc cc cc | ||
cc cc | c0 a8 | |
00 1e | aa aa | |
aa aa aa aa | ||
c0 a8 00 0a |
이더넷
aa aa aa aa | |
aa aa | cc cc |
cc cc cc cc | |
08 06 |
-> 목적지 주소를 알고있기 때문에 브로드 캐스트를 할 필요 없다
응답 후 ARP 캐시 테이블에
상대방의 MAC 주소를 저장한다
ARP 테이블
- 통신했던 컴퓨터들의 주소는 ARP 테이블에 남는다
- CMD 창에 arp –a를 입력하면 조회가능하다
- 시간이 지나면 캐시는 사라진다
'CS지식 > 네트워크' 카테고리의 다른 글
TIL 정리_123(IP 프로토콜 구조) (0) | 2022.07.20 |
---|---|
TIL 정리_122(ARP & IP 프로토콜) (0) | 2022.07.18 |
TIL 정리_120(네트워크 3계층_2) (0) | 2022.07.13 |
TIL 정리_119(네트워크 3계층) (0) | 2022.07.11 |
TIL 정리_118(네트워크 2계층) (0) | 2022.07.09 |