사설 IP와 공인 IP, 그리고 포트 포워딩의 개념
인터넷이 가능한 IP는 흔히 공인 IP라고 부른다. 공인 IP는 전 세계에서 고유한 값으로, 인터넷에 직접 연결되는 모든 장비는 반드시 하나의 공인 IP를 할당받아야 한다. 그러나 이 공인 IP는 수량이 한정되어 있으며, 모든 장비에 고유한 공인 IP를 부여하는 것은 현실적으로 어렵다.
그래서 등장한 것이 바로 사설 IP이다. 10.x.x.x, 172.16.x.x ~ 172.31.x.x, 192.168.x.x 대역은 사설 IP 주소로, 이는 인터넷 상에서 사용되지 않고, 내부 네트워크에서만 사용된다. 기업이나 가정에서 흔히 사용하는 공유기는 이 사설 IP 대역을 기반으로 네트워크를 구성한다.
공유기의 핵심 역할은 사설 네트워크를 구축하는 데 있다. 예를 들어, 가정이나 사무실에서 공유기에 여러 기기가 연결되면, 각각의 기기에는 사설 IP가 자동으로 할당된다. 이때 외부 인터넷에 접근하려면, 반드시 공유기를 거쳐야 하며, 공유기는 하나의 공인 IP를 가지고 외부와 통신한다. 대부분의 경우 192.168.x.x 대역이 사용된다.

포트 포워딩이 필요한 이유
예를 들어, 컴퓨터 1에서 웹서버를 열고 80번 포트(HTTP)를 통해 외부 접속을 받으려고 한다고 가정해보자. 이 컴퓨터는 192.168.0.2 같은 사설 IP를 가지고 있을 것이며, 외부에서는 이를 직접 알 수 없다. 왜냐하면 사설 IP는 공통적으로 사용되는 주소라서 전 세계 어디에서나 동일한 값으로 존재할 수 있기 때문이다. 즉, 192.168.0.2는 특정한 하나의 기기를 지칭할 수 없다.
따라서 외부에서 접근할 때는 공유기가 가지고 있는 공인 IP, 예를 들어 12.34.56.78을 사용해야 한다. 그렇다면, 브라우저에 http://12.34.56.78:80이라고 입력하면 컴퓨터 1의 웹서버에 접속이 될까? 결론부터 말하자면 연결되지 않는다.
그 이유는 공유기가 외부에서 들어오는 80번 포트 요청이 어떤 내부 장비(컴퓨터 1, 2, 혹은 3)로 향해야 하는지 알 수 없기 때문이다. 이처럼 공유기는 공인 IP를 통해 들어온 요청에 대해 목적지를 판단하지 못하기 때문에 명시적으로 포트 포워딩 설정을 해줘야 한다.

포트 포워딩이란?
**포트 포워딩(Port Forwarding)**이란, 공유기에 들어온 특정 포트 요청을 내부 네트워크의 특정 장비로 전달하라고 설정하는 것이다. 다시 말해, 공유기에게 "공인 IP의 80번 포트로 들어오는 요청은 컴퓨터 1의 192.168.0.2:80으로 보내라"는 지시를 내리는 것이다.
이 설정을 해두면 외부 사용자가 http://12.34.56.78:80으로 접속했을 때, 공유기는 해당 요청을 자동으로 컴퓨터 1의 웹서버로 연결해준다. 이로써 사설 IP를 가진 장비도 외부에서 접근 가능한 서버처럼 동작할 수 있게 된다.
포트 포워딩 설정 방법
포트 포워딩은 대부분의 공유기 설정 페이지에서 제공되며, 설정 방법은 제조사마다 다르다. 공유기의 관리자 페이지에 접속한 뒤, '포트 포워딩' 혹은 '가상 서버' 항목을 찾아 해당 포트와 내부 IP를 지정하면 된다. 예를 들어, HTTP 서버는 포트 80, FTP 서버는 포트 21 등을 지정할 수 있다.

'개인공부 > 네트워크' 카테고리의 다른 글
| XDR (1) | 2025.04.30 |
|---|---|
| 바이너리 전송 방식 vs 텍스트 전송 방식 (0) | 2025.04.30 |
| TCP/IP 의 송수신 원리 한눈에 (0) | 2025.01.28 |
| epoll 의 EAGAIN (0) | 2025.01.23 |
| epoll 의 Edge-Triggered 방식 (0) | 2025.01.23 |