2021/02/12 - [똥 싸기/네트워크] - 예시로 보는 ARP 개념 및 동작방식

 

예시로 보는 ARP 개념 및 동작방식

최초로 통신 할 때(이더넷 환경), 목적지 MAC주소를 알아내기 위한 프로토콜이 ARP이다. 예시로 알아보자. 위와 같은 네트워크 구성에서, R1 -> R2 PING 통신하려고 한다. R1이 핑 요청 패킷을 R2로 보내

kujung.tistory.com

 

위 글의 심화 버젼이다.

 

 

Proxy ARP

Proxy는 영어로 대신해준다는 뜻이다. ARP를 대신해준다는 의미이다.

 

위 구성에서 내가 만약 PC1의 IP를 10.10.10.2/24로 잘못 설정을 하고 PC2 IP (10.10.10.3)로 PING을 한다면 도달할 수 있을까?

 

 

정답은 라우터에 프록시 ARP 기능이 켜져있으면 가능하다. 이다.

 

 

 

 

 

전 게시물에서 배웠었다.

 

이더넷 환경에서 최초 PING 시도시, 상대 MAC 주소를 알기 위해 ARP요청 프레임(브로드캐스트)을 보낸다고.

ARP요청을 수신한 PC2와 R1은 목적지 IP를 보고 자신의 IP가 아니므로 프레임을 버리게 된다.

(PC2는 25비트 대역이므로 목적지 IP와 자신의 IP가 같아도 네트워크 대역이 달라 프레임을 버린다.)

 

길게 설명할 것도 없다. ARP는 동일한 네트워크 대역에서만 영향이 미친다. 그것은 진리.

 

 

 

 

 

하지만 Proxy ARP라는 기능이 있다.

 

라우터 자신이 알고있는(라우팅 테이블등..) IP 대역에 대한 ARP라면, ARP 응답으로 자신의 MAC 주소를 알려준다.

즉, R1은 목적지 IP(10.10.10.3)를 라우팅 테이블(커넥티드 라우팅)로써 알고 있기 때문에 자신의 MAC 주소를 적어 ARP 응답 프레임을 보낸다.

 

 

 

목적지 MAC주소를 확보했기에 PC1는 PING 패킷을 보낼 준비가 되었다.

 

PING 통신시, 프레임에 목적지 MAC주소가 라우터이기 때문에 라우터를 거쳐 PC2와 통신 할 것이다.

 

 

 

또한 다음과 같은 경우도 있을 수 있다.

 

게이트웨이를 잘못 넣은경우 이다.

이번에는 PC1 -> PC3 PING 통신을 하려고 하는데, 실수로 게이트웨이 IP를 100.100.100.100으로 넣었다.

 

위와 같은 상황에서도 Proxy ARP기능이 켜져있다면 통신 가능하다.

R1은 목적지 IP 10.10.10.130을 라우팅 테이블로 알고 있고, Proxy ARP 기능이 켜져있기 때문에 ARP 요청에 대해 자신의 MAC 주소를 적어 ARP 응답 프레임을 보낸다.

 

PC1은 PC3 (10.10.10.130)으로 PING 패킷을 보낼 준비를 마쳤다.

이런 식으로 PING 통신이 이루어 질 것이다.

 

 

 

Proxy ARP는 하나의 라우터로 여러 네트워크 대역의 도달성 확보가 가능하며, 라우팅 테이블 엔트리를 줄일 수 있는 장점이 있다.

 

단점으로는 보안에 취약하다.  ARP요청에 대해 다른 MAC주소를 전달하는 ARP spoopfing 공격과 기법이 동일하다.

단점이 명확하기 때문에 실무에서 쓰일지는 모르겠다. 쓰이는 것을 본적은 없다.

 

 

 

질문해주세요><

+ Recent posts