본문 바로가기

OSI 7계층/[LAYER 3] 네트워크 계층

네트워크 통신과정(feat. ARP vs Routing)

안녕하세욧! 런잇메이트입니다.

그동안 약 2달간 우리는 통신과정에서 필요한 기본적인 내용에 대해서 다루었습니다.

케이블, MAC주소, IP주소, ARP테이블, Routing 등이 있습니다.

이번에는 이 모든것을 종합하여 기본적인 네트워크 통신에 대해서 다루어 보고

마지막에는 ARP와 Routing이 어떻게 다른 것인지 확인해 보도록 하겠습니다.

 

1. 너에게 닿기를...

네트워크를 쉽게 상대방에게 우편을 보낸다고 생각하면 되요

 

1) 길고긴밤을 보내던 AA는 DD에게 편지를 보내고 싶었습니다..

그러나 AA는 DD에게 직접 편지를 전달할 수 없었죠

여기서 AA, DD는 MAC주소로 생각하시면 됩니다.

 


 

2) DD에게 직접 편지를 전달 할 수 없었던 AA는 걱정이 되었습니다. 하지만!! 걱정할 필요가 없죠

우리에게 우체국이 있듯이 AA에게는 Default gateway라는 녀석이 있거든요!


 

3) AA는 편지를 작성하여 우체국에 전달합니다.

우리동네에 우체국이 어디쯤에 있는지는 다들 아시죠? 마찬가지로 네트워크에서도 같은 네트워크에 속해있는 장비들 끼리는

서로의 MAC주소를 알고 있습니다.

이게 전에 배운 ARP 통신으로 인해 가능한 것이죠

출발지 MAC : AA:::::AA, 목적지 MAC : EE:::::EE, 출발지 IP : 1.1.1.2, 목적지 IP : 4.4.4.2

 

4) AA의 편지를 전달받은 우체국! 즉 Default Gateway 장비는 이 편지가 어디로 전달이 되어야하는지

IP주소(실제 DD의 IP 주소)를 보고 어느 지역의 우체국으로 전달을 해야할지 판단합니다 .

이러한 과정이 Routing Table을 보고 어느 장비에 전달할지 선택하는 과정인 것이

출발지 MAC : EE:::::GG, 목적지 MAC : HH:::::HH, 출발지 IP : 1.1.1.2, 목적지 IP : 4.4.4.2

 

L3 #1 : 목적지 IP주소가 4.4.4.2이네!?! 그럼 3.3.3.2에게 전달해야 겠다!!

 

L3 #1 : 목적지 IP주소가 3.3.3.2이니까! 목적지 MAC은 L3#2의 MAC주소로 써야 겠다

 

---------------------------------------------------------------------------------------------

여기서 잠깐!! 너무 순식간에 지나가 버렸죠?

뭣이 방금 지나간겨? 하시고 계시죠?

1)에서 우리의 네트워크장비(컴퓨터, 핸드폰, 전자기기)등은 각각 고유의 MAC주소를 갖고 있다라는 것을 알 수 있습니다.

 

2)에서 Default Gateway는 같은 네트워크 이외의 곳으로 통신하려할 때 이용되는 관문이라는 것을 알 수 있습니다.

 

3)에서 ARP 통신을 이용해 같은 네트워크끼리 서로의 MAC주소를 확인하는 과정을 볼 수 있었죠

 

4)에서 Routing Table을 통해서 IP통신이 어떻게 이루어 지는지 확인 할 수 있었습니다.


여러분! 이거 모두 전에 배운거 다 아시죠?

---------------------------------------------------------------------------------------------

 

 

 

5) AA의 편지가 AA의 동네 우체국에서 DD의 동네 우체국까지 전달 되었습니다.

이 모든 것이 ARP Table과 Routing Table 덕분이죠!

AA의 편지를 전달 받은 DD 동네 우체국은 목적지가 DD의 IP주소인 것을 확인하고 DD에게 편지를 전달하기 위해 목적지에 DD의 MAC주소를 기입합니다.(ARP Table사용)

출발지 MAC :HH::::II , 목적지 MAC : DD::::DD, 출발지 IP : 1.1.1.2, 목적지 IP : 4.4.4.2

 


 L4 #2 : 흠 이건 우리 네트워크에 있는 아이로군!!


 


 

L4 #2 : DD에게 보내주어야 하니 DD의 MAC주소를 써야겠군

 

6) 최종 편지를 전달 받은 DD는 자신이 받은 편지를 보고 이 편지가 자신에게 온것이 맞는지 확인합니다.

목적지 MAC도 DD의 MAC주소이고, IP주소도 DD의 IP주소이네요!!

AA로 부터 DD는 편지를 받아서 기쁘네요! 이제 답장을 써볼까요?

답장은 어떻게 써야하는지 여러분도 하실 수 있으시겠죠? 편지를 받은 과정의 역으로 생각해보시면 쉬우실 거에요!

 

DD : 목적지 IP주소가 내 IP주소가 맞네!! 나한테 온 것이군!!

 

DD : AA가 뭐라고 보낸 거지? 한번 봐볼까?

 

2. Round1 ARP VS Routing

오늘의 주제인 ARP 와 Routing은 어떻게 다른 것일 까요? 한번 명확히 짚어 보겠습니다. 비교를 해보면!

우선 ARP는 MAC주소를 IP주소와  매칭을 시켜주는 역할을 합니다. 이 IP주소가 이 MAC주소를 갖고있다!!

Routing은 이 IP주소와 통신하기 위해 어떤 IP와 통신을 하여야하는지 매칭을 시켜주는 역할을 합니다.

하지만 IP주소와 통신하기 위해서는 결국 ARP를 통해 IP주소와 MAC주소를 매칭시켜 전달하여야 합니다.

즉 Routing을 하기 위해선 ARP통신이 꼭 필요한 것이죠!!

Routing Table을 확인하고 다음 장비에게 패킷을 넘겨주어야 할 때 ARP를 통해서 해당 장비의 MAC주소를 알아내고 목적지 MAC주소를 갱신합니다.

따라서 네트워크 통신시에 패킷이 전달 될 때마다 MAC주소는 계속해서 바뀌게 됩니다.

하지만 IP주소는 통신하고자 하는 대상의 최종 목적지 주소 IP는... 흠....

어렵죠? 쉽게 생각해보면 택배를 시켰을 때 최종 배송지는 우리집주소이지만 중간중간 집하장을 거치게 되며 집하장에서 각종 코드들이 존재합니다.

이를 MAC주소라 생각하지면 되고 최종배송지 주소는 IP주소가 됩니다.

최종 배송지까지 전달하기 위해 계속해서 다음 집하장으로 택배를 넘기는 과정이 진행됩니다.

따라서 각각의 코드는 변하지만 최종 배송지 주소는 변하지 않는 것이죠!!

아래 그림이 도움이 될 거에요

 


이처럼 ARP와 Routing은 네트워크 통신을 위해 필수불가결한 존재이자 통신을 위한 협업관계를 이루고 있습니다.

따라서 이 둘을 비교하기 보다는 각각의 역할을 이해하고 통신과정에서 어떻게 사용이 되는지를 이해하는 것이 정답인것 같습니다!

 

그럼 오늘도 긴글 읽으시느라 수고하셨습니다. 좋은하루 되세요!!