ARP
ARP (Address Resolution Protocol)
- 이더넷 프레임을 만들기 위해서는 출발지 MAC 주소와 목적지 MAC 주소가 필요하다.
- 이더넷에서 상대방의 MAC주소를 알아내기 위해 사용하는 프로토콜이 ARP이다.
ARP 동작 방식
목적지 MAC 주소 | 출발지 MAC 주소 | 출발지 IP 주소 | 목적지 IP 주소 | 데이터 |
---|---|---|---|---|
? | 0000.0000.0001 | 1.1.1.1 | 1.1.1.2 | 1010.. |
- 이처럼 R1입장에서 R2의 IP주소를 알지만 MAC 주소를 모를때 MAC 주소를 알아내기 위해 사용한다.
목적지 MAC 주소 | 출발지 MAC 주소 | 출발지 IP 주소 | 목적지 IP 주소 | 데이터 |
---|---|---|---|---|
FFFF.FFFF.FFFF | 0000.0000.0001 | 1.1.1.1 | 1.1.1.2 | ARP 요청 |
- 위의 표와 같이 R1은 목적지 MAC주소를 브로드캐스트 주소로 설정한 ARP 요청 프레임을 전송한다.
- ARP 요청 내용은 ‘IP 주소가 1.1.1.2 인 장비의 MAC 주소가 무엇인가?’ 라는 내용에 해당된다.
목적지 MAC 주소 | 출발지 MAC 주소 | 출발지 IP 주소 | 목적지 IP 주소 | 데이터 |
---|---|---|---|---|
0000.0000.0001 | 0000.0000.0002 | 1.1.1.2 | 1.1.1.1 | ARP 응답 |
- ARP 응답을 수신한 R1은 이제 목적지 IP 주소 1.1.1.2의 MAC주소를 알게 된다.
- 이때 R1 과 R2는 상대방의 IP주소와 MAC 주소에 대한 ARP 결과를 ARP 테이블에 저장한다.
목적지 MAC 주소 | 출발지 MAC 주소 | 출발지 IP 주소 | 목적지 IP 주소 | 데이터 |
---|---|---|---|---|
0000.0000.0002 | 0000.0000.0001 | 1.1.1.1 | 1.1.1.2 | 1010… |
- 이와 같이 R2의 MAC주소와 IP주소를 알게된 R1은 완전한 이더넷 프레임을 만들 수 있다.
트랜스패런트 브리징
- 이더넷 스위치는 MAC주소 테이블을 참조하여 이더넷 프레임을 목적지 방향으로 전송한다.
- 이때 MAC 주소 테이블을 만들고, 유지하며, MAC 주소 테이블을 참조하여 프레임을 전송하는 것을
트랜스패런트 브리징(transparent bridging)
이라고 한다. - ‘사용자가 의식하지 못하게 자동으로 동작한다’ 는 의미로 사용된다.
트런스패런트 브리징 절차
러닝(learning)
- MAC 주소 테이블에 해당 출발지 MAC주소가 없으면 출발지 MAC 주소와 수신 포트번호를 기록한다.
플러딩 (flooding)
- 목적지 MAC 주소가 브로드캐스트 주소이거나, MAC 주소 테이블에 없는 유니캐스트(unknown unicast) 또는 멀티캐스트 주소이면 수신 포트를 제외하고 동일한 VLAN에 속하는 모든 포트로 다 전송한다.
- MAC 주소 테이블이 가득찰 경우에도 플러딩 한다.
- 이처럼, 악의적으로 MAC 주소 테이블을 채우는 공격을 MAC 플러딩 공격이라고 한다.
포워딩 (forwarding)
- 목적지 주소가 MAC 주소 테이블에 존재 시, 해당 목적지 MAC 주소를 가진 유니캐스트 프레임을 수신하면 목적지 포트로 프레임을 전송한다.
에이징 (Aging)
- 학습한 MAC 주소에 항상 300초 타이머를 동작 시킨다.
- 동일 출발지 MAC 주소를 가진 프레임을 수신할 때마다 타이머를 초기화하고, 정해진 시간 동안 해당 프레임의 활동이 없으면 MAC 주소 테이블에서 제거한다.
필터링 (Filtering)
- MAC 주소 테이블상에 출발지/목적지 MAC 주소가 동일한 포트에 소속되어 있으면 해당 프레임을 차단한다.
- 다시말해 collision domain 일 경우 다리(bridge)를 끊는다.
3줄 요약
-
상대방의 IP를 알때 MAC주소를 알아내기 위한 프로토콜은 ARP
-
상대방의 MAC을 알고 IP를 모를때 알아내기 위한 프로토콜은 RARP
-
사용자가 의식 못하게 동작하지만 나는 아는 트랜스패런트 브리징
댓글남기기