네트워크 (7) | 라우팅 테이블

Jihun Kim·2021년 10월 22일
0

네트워크

목록 보기
7/13
post-thumbnail

라우팅 테이블

패킷을 어디로 보내야 하는지에 대한 설정이 되어 있는 테이블
👉 "지도"와 같다고 생각할 수 있다.

  • CMD 창에서 아래의 명령어로 확인이 가능하다.
netstat -r
  • 라우팅 테이블에 적혀 있는 네트워크 대역만 찾아갈 수 있다.
    👉 이 때문에 기본값 '0.0.0.0'이 있다.

  • 다른 네트워크 대역을 찾아가는 경로에 대한 지도라고 보면 된다.

게이트 웨이

  • IP 설정시 기본 게이트 웨이를 설정하는데, 모르는 네트워크와 통신해야 하는 경우 '게이트 웨이'를 이용해 나갈 수 있도록 하는 것이다.
    👉 '라우터' 장비를 설정하는 것이 '라우팅 테이블' 설정의 주된 작업이다.

다른 네트워크와의 통신 과정

가령, A가 B와 통신하려고 할 때 '라우팅 테이블'에 B의 IP 주소가 작성되어 있어야 통신이 가능한데 아래와 같이 적혀 있다고 가정해 보자.

A의 IP 주소는 "192.168.10.1"이다.

# B의 네트워크 대역 "192.168.20.0/24"로 가려면 "192.168.10.1"로 가라는 뜻이다.
192.168.20.0/24 -> 192.168.10.1

그러면 A는 아래와 같이 프로토콜을 작성한다.

이더넷 + IPv4 + ICMP 요청

이 때 목적지 MAC 주소는 IP가 "192.168.20.0/24"인 B의 맥주소가 아니라 IP가 "192.168.10.1"인 C의 맥주소가 된다.

최종 목적지가 b라고 해도 이더넷은 '가까운 곳'과 통신하는 데 사용하는 것이기 때문에 C를 거쳐가므로 C의 맥주소가 들어가야 한다.

  • C의 IP 주소 "192.168.10.1"은 A와 같은 네트워크 대역이며 "게이트웨이"이다.(게이트 웨이는 공유기의 IP주소이다.)
    👉 즉, 이더넷 프로토콜을 작성할 때는 게이트 웨이의 맥주소가 들어가게 되는 것이다.

패킷의 전송 과정은 다음과 같다.
1. "스위치"로 이동: 2계층 이더넷 프로토콜을 확인하고 해당하는 맥주소로 보낸다.
2. 공유기는 2계층 열어보고 자신한테 온 것이 맞는지 확인하고, 3계층을 열어 목적지 IP 주소를 확인한다.
3. 그러면 공유기도 자신의 라우팅 테이블을 확인한다.
👉 가령 "192.168.30.0/24"로 가야 한다고 해보자.
4. 해당하는 라우터로 보내기 전 '이더넷 프로토콜'을 다시 만든다.(이미 이더넷을 열어 봤기 때문에 내용을 바꾸어 다시 캡슐화 한다.)
👉 목적지 맥주소와 출발지 맥주소를 변경한다.
👉 즉, 30번 대 네트워크 대역과 통신할 수 있도록 이더넷 프로토콜을 만드는 것이다.
5. 패킷이 30번 대 네트워크로 도착하면 라우터는 3계층 장비이므로 3계층까지 열어본다.
👉 목적지 맥주소를 확인하고
👉 목적지 IP 주소를 확인한 후, 자신의 라우팅 테이블을 확인한다.
6. 여기서도 다시 이더넷 프로토콜을 캡슐화 한다.
👉 이더넷 프로토콜은 네트워크 대역이 바뀔 때마다 새로 작성하게 된다.
7. 이 과정을 반복하며 목적지 IP에 도착할 경우 ICMP 요청까지 확인하게 된다.
👉 그러면 ICMP '응답'인 0번으로 변경하여 다시 캡슐화 하고 패킷이 A로 돌아가게 되는 것이다.

profile
쿄쿄

0개의 댓글