[TIL] Web 기초 #1

2004 단어 webTILTIL

생활코딩 WEB2-Home Server 강의를 듣고 홈서버 구축에 쓸만한 팁을 정리했습니다.

환경

우리가 사용하는 인터넷은 라우터(공유기)를 통해 WAN(Wide Area Network)와 LAN(Local Area Network)가 연결되어 있다.

WAN(인터넷)   <->   공유기    <->   LAN(데스크탑, 노트북, 스마트폰 등)
           외부IP          내부IP
           

이렇게 하나의 IP주소로 여러 개의 기기가 인터넷에 접속하는 구조는 기기마다 부여해야할 IP의 수가 부족한 IPv4 체계에서 기인한다.
공유기는 ISP(인터넷 사업자)에게서 할당받은 공인IP(Public IP, 우리가 아는 일반적인 IP)로 인터넷에 연결하고, 공유기에 연결된 디바이스에 사설IP(Private IP)를 할당한다.

NAT

기기에서 공유기를 통해 외부 서버에 요청을 보낸 후, 다시 응답을 받으려면 공유기가 LAN에서 어떤 기기로 응답을 전송해야 하는지 주고 받는 정보에 기록해두어야 한다. 공유기는 이런 방식의 통신을 하기 위한 NAT(Network Address Translation) 기능이 기본적으로 탑재되어 있다.

포트와 포트포워딩

컴퓨터는 데이터가 오가는 통로를 0~65535개의 논리적 통로(포트)로 구분하여 통신한다.

포트 중 0~1023번은 잘 알려진 포트로, 22번(SSH) / 80번(HTTP) / 443번(HTTPS) 등이 있다.

즉, HTTP는 80번 포트를 통해 데이터가 오간다는 것이다.

포트 포워딩은 공유기의 공인IP:(OO포트)로 들어온 정보를 LAN에 연결되어 있는 사설IP:(XX포트)로 전달하는 기술이다.

공유기가 있는 환경에서 웹서버 운영 시에는 포트 포워딩이 반드시 필요하다.

포트 포워딩은 라우터에 접속하여 설정(라우터마다 다름)이 가능하다.

유동/고정 IP와 DHCP, DDNS

IP주소 할당을 요청하는 기기에 고정 IP를 부여하면 IP주소가 금방 동나거나, IP주소가 충돌하는 일이 발생할 수 있다. 따라서 일반적으로 ISP는 고정 IP를 이용하는 서비스에 추가 비용을 요구하고, 기업/기관 같은 특정한 주체가 고정 IP를 이용하는 경우가 많다..

DHCP는 이런 문제를 보완하기 위해 동적으로 IP주소를 임대하고, IP가 사용되고 있는지 갱신하고, 사용되지 않으면 회수하는 규약이다.

라우터에는 DHCP 서버가, 기기에는 DHCP 클라이언트가 내장되어 있어 이를 통해 유동 IP를 이용할 수 있다. 공유기에도 사설 IP를 동적으로 할당하는 DHCP 서버가 내장되어 있다.


문제는 웹서버 구축 시, 유동 IP로 인해 IP주소가 변경된다면, 서버에 접속할 수 없게 된다는 점이다.

따라서 유동 IP를 사용하는 경우, DDNS를 이용하여 DNS(도메인 네임과 IP를 변환하는 시스템)을 실시간으로 갱신하는 방법을 활용하기도 한다..

좋은 웹페이지 즐겨찾기