Search
Duplicate
🌐

netpractice를 위한 네트워크 통신 기초 - 2. WAN 통신

간단소개
netpractice를 위한 네트워크 통신 기초 - 2. WAN 통신
팔만코딩경 컨트리뷰터
ContributorNotionAccount
주제 / 분류
Network
Scrap
태그
network
9 more properties

개요

이전 글에서는 동일 네트워크 내에서의 통신 과정인 LAN 통신에 대해서 알아봤다.
이번에는 서로 다른 네트워크의 통신 과정을 알아보자.

WAN (Wide Area Network)

서로 다른 네트워크가 연결된 것을 말한다.
즉, 서로 다른 LAN이 연결된 것이다.
LAN이 하나의 네트워크라면, WAN은 각각의 서로 다른 네트워크들이 연결된 것이다. (여러 개의 LAN을 연결한 것이다)

Router

서로 다른 네트워크를 연결하기 위한 장비이다.
Router는 여러 개의 네트워크와 연결되며, 각각 연결된 곳을 인터페이스(interface)라고 부른다.
Router는 인터페이스로 각각의 네트워크를 구분한다.
각 인터페이스는 무조건 서로 다른 네트워크이어야 한다.
즉, 각 인터페이스는 서로 다른 네트워크 ID(IP 주소)를 가져야 한다.
실제 Router에서는, 범위가 겹치는 네트워크 IP 주소를 인터페이스에 설정할 경우, 설정이 되지 않는다. (error 발생)
Router는 패킷을 받으면, 패킷의 목적지 IP 주소를 확인 후, 해당 IP 주소가 속하는 인터페이스로 패킷을 전달한다.
만약, 목적지 IP 주소가 속하는 인터페이스가 없는 경우, 라우팅 테이블(Routing Table)을 참고하여 알맞는 인터페이스로 패킷을 전달한다.
Ex) netpractice Level 4
현재 Router는 3개의 인터페이스를 가지고 있다.
인터페이스 R1, R2, R3가 전부 서로 다른 네트워크이어야 한다.
인터페이스 R2의 네트워크 범위 = 112.231.114.0 ~ 112.231.114.127
인터페이스 R3의 네트워크 범위 = 112.231.114.192 ~ 112.231.114.255
인터페이스 R1에 IP를 설정해주어야 하는데, client A의 IP가 고정되어 있으므로, 해당 IP와 같은 네트워크로 설정 해줘야한다.
또한, 인터페이스 R2, R3와 겹치지 않는 네트워크이어야 한다.
따라서, 인터페이스 R1에서 사용 가능한 네트워크 범위 = 112.231.114.128 ~ 112.231.114.191
인터페이스 R1에 112.231.114.128/29 네트워크를 할당하여 사용하면
네트워크 범위 = 112.231.114.128 ~ 112.231.114.135
장비에 할당 가능한 네트워크 범위 = 112.231.114.129 ~ 112.231.114.134
Router의 모든 인터페이스의 네트워크가 겹치지 않고, Client A, B에도 적절한 IP를 할당했으므로 통신 가능.

라우팅 테이블 (Routing Table)

패킷의 목적지 IP가 현재 가지고 있는 인터페이스 중 속하는 곳이 없을 경우, 그 다음으로 패킷을 전달하기 위해 참고하는 테이블이다.
즉, 패킷의 목적지 IP가 자신이 모르는 네트워크인 경우 참고하는 테이블이다.
라우팅 테이블의 형식은 아래와 같다.
[목적지 네트워크] [next-hop IP]
Ex) [192.168.0.0/24] [10.0.0.1] 인 경우, 패킷의 목적지 IP가 192.168.0.0/24에 속하면 10.0.0.1로 패킷을 전달한다는 뜻이다.
라우팅 테이블에는 default route 라는 특별한 경로가 있을 수 있다.
default route란, 목적지 네트워크가 0.0.0.0/0인 경로를 말한다.
0.0.0.0/0의 뜻은, 모든 네트워크를 말한다.
[0.0.0.0/0] [10.0.0.1] = 모든 네트워크에 대해 전부 10.0.0.1에게 전달한다.
인터페이스의 네트워크를 제외한 다른 모든 네트워크에 대해 10.0.0.1로 전달한다.
아래 PC의 ip 설정에서 기본 게이트웨이의 뜻은 [0.0.0.0/0] [192.168.1.1] 과 같다.
192.168.1.1은 PC와 연결된 Router(공유기)의 IP이다.
PC의 인터페이스 네크워크(192.168.1.0/24)를 제외한 다른 네트워크에 대해서는 전부 공유기로 전달한다.
만약, 패킷의 목적지 IP가 자신의 인터페이스에도 속하지 않고, 라우팅 테이블에도 없는 경우에는 패킷을 버린다. (Discard)
Ex) netpractice Level 5
Router 인터페이스의 IP를 참고하여, client A와 B의 인터페이스에 알맞는 IP를 넣어주자.
각 client에서 라우팅 테이블을 설정해주자.
client는 모르는 네트워크에 대해 라우터로 전달하도록 설정한다.
client A = [0.0.0.0/0] [92.141.106.126]
client B = [0.0.0.0/0] [138.127.147.254]
설정을 마치고 client A → client B 통신 과정을 생각해보자
client A
목적지 IP가 client B(138.127.147.253)인 패킷을 만든다.
138.127.147.253는 자신과 다른 네트워크이므로, default route를 참고하여 92.141.106.126(Router)로 패킷을 보낸다.
Router
client A로 부터 받은 패킷의 목적지 IP를 확인한다.
목적지 IP(138.127.147.253)가 인터페이스 R2에 속하므로, 해당 인터페이스로 패킷을 전달한다.
client B
라우터로부터 패킷을 전달 받는다.
client B → client A의 통신 과정은 직접 생각해보자!

라우팅 테이블 우선순위

패킷의 목적지 IP가 라우팅 테이블에 있는 경로 중 여러 경로에 속할 경우, 우선 순위에 따라 특정 경로를 선택한다.
Ex)
패킷의 목적지 IP = 146.165.73.2
라우팅 테이블 경로1 = [146.165.73.0/28] [146.165.73.61]
라우팅 테이블 경로2 = [0.0.0.0/0] [163.41.250.1]
패킷의 목적지 IP = 라우팅 테이블의 두 경로에 전부 속한다.
Router는 두 경로 중 Subnet mask가 더 높은 경로를 우선으로 선택한다. (Longest Match Rule)
Ex) netpractice Level 8
Ex) 인터넷 → client D로 패킷 전송
Router R1은, 인터넷으로부터 목적지 IP = client D(146.165.73.2)인 패킷을 전달받는다.
Router R1은, 패킷의 목적지 IP가 속한 인터페이스가 존재하는지 확인한다.
패킷의 목적지 IP가 속한 인터페이스가 없으므로, 라우팅 테이블을 참조한다.
Router R1은, 라우팅 테이블을 2개 가지고 있다.
Router R1에서, 목적지 IP = client D(146.165.73.2)인 패킷을 받은 경우, 라우팅 테이블 우선순위에 따라 첫 번째 경로가 선택된다.
따라서, 해당 패킷을 146.165.73.61(Router R2)로 전달하게된다.
Router R2는, 전달 받은 패킷의 목적지 IP를 확인 후, 목적지 IP가 속한 인터페이스 R23으로 패킷을 보낸다.
client D에서 패킷을 받는다.

마무리

이번 글에서는 서로 다른 네트워크간 통신하는 방법과, Router 동작 과정에 대해 알아봤다.
또한 라우팅 테이블이 어떻게 쓰이는지도 알아봤다.
패킷이 출발지부터 목적지까지 다른 네트워크를 어떻게 거치면서 경로를 찾아가는지도 알아봤다.
Subnet mask를 이용하여 네트워크를 나누고, 나눠진 각각의 네트워크들에 대해 경로를 잘 설정해주면 끝.
지금까지 공부한 내용들을 종합하면 netpractice를 잘 풀 수 있을 것이다!