Network

Part 4. Router

cwchoiit 2023. 10. 2. 16:28
728x90
반응형
SMALL
728x90
반응형
SMALL

Router(Gateway)는 우리말로 공유기를 의미하고 이제 공유기를 공부해 보자.

공유기를 공부하기 위해 다음 그림을 살펴보자.

가운데 누가 봐도 공유기처럼 생긴 그림이 공유기다. 이 공유기는 통신사와 계약을 해서 네트워크를 하나 받으면 네트워크는 전 세계 모두와 통신할 수 있는 공용 IP가 하나 생기는데 그 IP는 그림에서 59.29.14.178이다.

 

그렇다면 만약 인터넷을 사용할 기기가 여러 대 있다면 기기 수만큼 통신사와 계약해야 할까? 그것도 방법이 될 수 있지만 그것은 비효율적이다. 그래서 공유기를 사용한다. 공유기는 큰 범주에서 WAN, LAN 두 개로 나뉘는데 WAN은 Wide Area Network의 약자로, 전 세계 누구와도 통신이 가능한 네트워크다. LAN은 Local Area Network의 약자로, 지역적으로만 통신이 가능한 네트워크다. LAN은 무선과 유선이 동시에 존재할 수 있는데 그림과 같이 핸드폰은 선 없이 무선으로 네트워크가 연결되어 있고 이를 보통 와이파이라고 칭한다. 

 

공유기 또한 IP가 존재한다. 공유기 IP를 그림에서는 192.168.0.1로 설정했다. 그리고 공유기의 IP를 Gateway address 또는 Router address라고 표현한다. 공유기의 IP 역시 사설 IP로 외부에서는 접근이 불가능하다.

 

전 세계 어디에서나 접근이 가능한 IP를 공용 IP 또는 public IP address라고 하는데 그림에서는 59.29.14.178이다.

그리고 그림에서 192.168.0.1 192.168.0.2 192.168.0.3 192.168.0.4와 같은 IP를 사설 IP 또는 private IP address라고 한다.

저들은 저 지역, 즉 같은 공유기를 사용하고 있는 한 별다른 문제없이 서로 통신이 가능하게 된다.

 

private IP address는 이미 사전에 범위가 지정되어 있는데 그 범위는 다음과 같다.

10.0.0.0 - 10.255.255.255  16,777,216개
172.16.0.0 - 172.31.255.255 1,048,576개
192.168.0.0 - 192.168.255.255 65536개

위 테이블처럼 사설 IP의 주소 체계는 이미 번호가 정해져 있고 내가 누군가에게 IP가 뭐예요?라고 물어봤을 때 누군가가 192.168.0.5요!라고 하면 바로 '아 이 사람 나한테 사설 IP를 알려준 거구나?'라고 생각할 수 있다.

 

10. 체계는 큰 범위의 주소 체계고 순서대로 192. 체계가 작은 네트워크를 구성할 때 사용되는 주소 체계다.

 

공유기가 있으면 브라우저에 공유기 IP를 쳐보면 공유기에 접속할 수 있는 화면이 띄워진다.

위 화면에 접속 정보를 입력해서 접속하면 이 공유기가 할당받은 public IP를 알아낼 수 있지만 더 좋은 방법은 브라우저에 "내 IP"라고 검색했을 때 나오는 IP로도 확인 가능하다. 이는 왜 가능할까? 당연히 외부에서 나와 통신할 수 있는 유일한 IP를 내가 가지고 있으면 외부에서 나에게 응답해 주는 IP 또한 그 IP일 테니까.

 

 

 

NAT (Network Address Translation)

이제 특정 공유기와 연결된 기기가 공유기 내에 존재하지 않는 기기 또는 서버에 접속한다고 생각해 보자. 즉, 집에서 네이버를 검색했을 때 네이버로부터 응답을 받는 과정을 살펴보는 것이다.

 

우선 위 그림에서 192.168.0.3이라는 주소를 가지는 호스트가 브라우저에 '네이버'를 검색했다고 가정하면 우선은 외부와 통신이 가능한 유일한 네트워크는 공유기에 WAN으로 연결된 네트워크이기 때문에 공유기를 거쳐야 한다. 공유기한테 먼저 요청이 전해지면 공유기는 여기서 첫 번째 판단을 한다. '이 주소가 내 지역(공유기에 연결된 기기들)에 있는 기기인가?' 그렇지 않기 때문에 공유기는 외부와 통신이 가능한 네트워크인 59.29.14.178을 통해 나의 요청을 보낸다. 당연히 이 과정 중에 생략된 많은 부분이 있지만 (예를 들면, 호스트가 네이버가 가진 IP를 알아내는 과정, 네이버에 요청한 기기를 공유기가 기록, 요청한 기기의 주소를 외부 IP 주소로 변경 등) 큰 그림을 볼 때 공유기가 외부와 통신이 가능한 네트워크를 통해 나의 요청을 해당 주소로 보내면 그 주소가 응답해서 다시 59.29.14.178을 통해 응답을 보내고 그 응답을 받은 공유기는 돌려주어야 할 주소 192.168.0.3을 찾아 마침내 응답을 하게 된다. 이러한 일련의 과정을 클라이언트 기반의 NAT라고 한다. 

 

이러한 과정을 통해 우리는 요청에 대한 응답을 받고 외부 호스트와 통신을 할 수 있게 된다. 

728x90
반응형
LIST

'Network' 카테고리의 다른 글

Part 6. Dynamic VS Static IP address  (0) 2023.10.02
Part 5. Port forwarding  (0) 2023.10.02
Part 3. DNS Server 동작 원리  (0) 2023.10.02
Part 2. hosts file  (0) 2023.10.02
Part 1. DNS / DNS Server  (0) 2023.10.02