웹 서버에 대해 알아가는 과정 (1/2)
개요
나는 백엔드 개발자가 되기 위해 네트워크를 공부하기 시작하였고, 네트워크 동작의 전체적인 흐름을 파악하기위해서, 내 컴퓨터에 서버를 설치하려 한다. 서버를 설치함으로써 세계의 모든 사람들이 내 컴퓨터에 접속하고, 나의 서비스를 제공받을 수 있을 것이다!
수 많은 서비스들은 네트워크를 통해 제공되고 있다. 서비스는 서버에서 제공되며, 서버는 컴퓨터에서 동작한다. 나는 서버를 내 컴퓨터에 설치함으로써, 다음 목차의 내용을 학습할 것이다.
목차
- Router 또는 공유기
- Public VS private IP Adress
- Network Address Translation
- Port forwarding
- Dynamic VS Static IP address
- Dynamic DNS
공유기 또는 Router
우리의 컴퓨터와 다른 컴퓨터가 서로 서비스를 제공하고, 제공받기 위해서는 서로의 IP 주소가 필요하다. 즉 인터넷을 하기위해서는 IP 주소가 필요하다.
IP 주소는 통신사(LG, KT , SKT)가 제공하는 하나의 회선을 컴퓨터에 연결하여 하나의 IP 주소를 받을 수 있다.
하지만 우리는 여러개의 스마트폰, 컴퓨터에 인터넷을 하나의 회선을 통해 인터넷에 연결하고 있다.
위와 같은 일을 해주는 네트워크 장치가 공유기, 영어로는 Router이다!!
공유기는 세계와 우리 집 네트워크의 중계자 일도 해준다.
다시말해, 세계에 연결되어 있는 네트워크 WAN(World Area Network)와 내 집에 연결되어 있는 네트워크, 다른 말로 지역 네트워크 LAN(Local Area Network)의 중간에 존재하여, World와 Local이 서로 통신할 수 있도록 도와준다.
Public VS private IP Adressd
누구나 접속할 수 있는 Public IP Address는 WAN와 연결되어 있고,
함부로 접근할 수 없는 Private IP Address는 LAN에 연결되어 있다.
나의 컴퓨터나 스마트폰은 Private IP Address를 가지고 있고,
공유기는 중계자의 일을 해야하기 때문에 public과 private IP 둘 다 가지고 있다.
공유기의 private IP는 특별히 Gateway address 또는 Router adress라고 부른다.
Network Address Translation
나의 컴퓨터는 Private IP 주소를 가지고 있기 때문에 외부의 인터넷에서는 나의 컴퓨터에 함부로 접근할 수 없다.
그렇다면 외부 네트워크와 연결되어 있는 컴퓨터는 나의 컴퓨터와 통신을 하지 못하는 걸까?
당연히 통신할 수 있고, 통신하기 위한 기술이 바로 NAT(Network Address Translation)이다. (* 공유기가 NAT기술을 사용한다.)
이름에서 유추할 수 있다시피 IP 주소를 번역하는 기술이다.
- Private IP에서 Public IP로 ==> LAN에 에서 WAN로 통신할 때
- Public IP에서 Private IP로 ==> WAN에 에서 LAN로 통신할 때
(물론 IP를 번역하는 일 말고도, IP를 기록했다가 나중에 써먹는 일도 해야한다.)
위와 같은 과정이 있어야지, Private IP를 가진 나의 컴퓨터와 외부 컴퓨터가 서로 통신이 가능해진다!