Technical Document

기술문서

산업 기술 문서 백과

포트포워딩이란? NAT 원리와 원격 모니터링 접속 설정

요약
포트포워딩(Port Forwarding)은 공유기(라우터)의 공인 IP 특정 포트로 들어온 외부 접속을 내부 사설 IP 장치의 지정한 포트로 넘겨 주는 NAT 설정입니다.
사설 IP를 쓰는 모니터링 서버·게이트웨이·데이터로거에 사무실이나 외부에서 접속하려 할 때 가장 먼저 검토하는 방법입니다.
이 글에서는 NAT와 포트 번호(0~65535)의 개념, 공인IP:포트 → 사설IP:포트 변환 예시, 설정 순서를 정리합니다.
또한 Modbus TCP(502번)처럼 인증이 없는 산업용 프로토콜 포트를 인터넷에 직접 열면 안 되는 이유와 VPN·클라우드 중계 같은 대안도 함께 다룹니다.

공장 안에 모니터링 PC를 설치하고 내부망에서는 잘 보이는데, 본사나 휴대폰에서는 접속이 안 된다는 문의가 많습니다. 원인은 대부분 같습니다. 모니터링 PC는 192.168.0.x 같은 사설 IP를 쓰고 있어서 인터넷 쪽에서는 이 장치를 직접 찾아갈 방법이 없기 때문입니다.

이때 공유기에 "이 포트로 들어온 요청은 저 장치로 보내라"는 규칙을 하나 넣어 주면 외부 접속이 가능해집니다. 이것이 포트포워딩입니다. 설정은 몇 분이면 끝나지만, 어떤 포트를 어떤 장치에 열었는지에 따라 보안 위험이 크게 달라지므로 원리와 주의점을 함께 알아 두는 것이 좋습니다.


1. 포트포워딩이란?

포트포워딩은 공유기나 방화벽이 외부에서 들어온 패킷의 목적지 주소와 포트를 미리 정한 내부 장치의 주소와 포트로 바꿔 전달하는 기능입니다. 공유기 메뉴에서는 "포트포워드", "가상 서버(Virtual Server)", "NAT 규칙" 등의 이름으로 표시됩니다.

포트포워딩이 필요한 이유는 공인 IP와 사설 IP의 구조 때문입니다. 인터넷 회선 하나에는 보통 공인 IP가 한 개 배정되고, 그 뒤의 PC·센서 게이트웨이·IP 카메라는 공유기가 나눠 준 사설 IP를 씁니다. 공인 IP와 사설 IP의 차이, 유동 IP와 고정 IP의 구분은 공인IP vs 사설IP 글에 정리되어 있습니다.


2. NAT와 포트는 어떻게 동작할까?

2-1. NAT(Network Address Translation, 네트워크 주소 변환)

NAT는 사설 IP와 공인 IP 사이에서 주소를 바꿔 주는 기술입니다. 사설 IP 대역은 RFC 1918에서 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 세 가지로 정해져 있으며, 이 주소는 인터넷에서 라우팅되지 않습니다.

일반 공유기는 포트 번호까지 함께 바꾸는 NAPT(Network Address Port Translation) 방식을 씁니다. 내부 장치가 밖으로 나갈 때는 공유기가 변환 기록을 자동으로 만들어 두기 때문에 응답이 정상적으로 돌아옵니다. 반대로 외부에서 먼저 들어오는 요청은 변환 기록이 없어서 공유기가 어느 장치로 보낼지 모르고 버립니다. 포트포워딩은 이 "들어오는 방향"의 변환 규칙을 사람이 직접 정해 주는 것입니다.

2-2. 포트(Port) 번호

포트는 한 장치 안에서 어떤 프로그램(서비스)이 통신을 받을지 구분하는 0~65535 사이의 번호입니다. IP 주소가 건물 주소라면 포트는 호수에 해당합니다. TCP와 UDP는 포트를 따로 쓰므로, 포트포워딩 규칙을 만들 때도 프로토콜을 함께 지정합니다. TCP와 UDP의 차이는 TCP vs UDP 차이 (산업 IoT 관점) 글을 참고하면 됩니다.

구분 (IANA 기준) 범위 설명
시스템 포트 (System Ports) 0~1023 HTTP, HTTPS, SSH, Modbus TCP 같은 표준 서비스
사용자 포트 (User Ports) 1024~49151 MQTT, 원격 데스크톱 등 등록된 응용 서비스
동적·사설 포트 (Dynamic/Private) 49152~65535 등록되지 않으며 통신할 때 임시로 쓰는 포트

현장 모니터링 시스템에서 자주 만나는 포트는 아래와 같습니다. 장비 설정에 따라 바꿀 수 있으므로 실제 값은 장비 설정 화면에서 확인합니다.

서비스 기본 포트 외부 공개 판단
HTTP (웹 화면) TCP 80 암호화가 없으므로 HTTPS로 대체 권장
HTTPS (웹 화면) TCP 443 로그인·인증서 관리 전제로 공개 가능
Modbus TCP TCP 502 인증·암호화가 없어 직접 공개 금지
MQTT / MQTT over TLS TCP 1883 / 8883 공개가 필요하면 8883(TLS)+인증 사용
SSH TCP 22 키 인증·접속 IP 제한 없이는 공개 금지
원격 데스크톱 (RDP) TCP 3389 무차별 대입 공격 대상, VPN 뒤에 두는 것을 권장

3. 포트포워딩으로 원격 모니터링에 접속하는 원리는?

예시 상황으로 원리를 살펴보겠습니다. 공장 인터넷 회선의 공인 IP는 203.0.113.10이고, 모니터링 서버는 공유기 아래 사설 IP 192.168.0.50에서 웹 화면을 8080번 포트로 제공한다고 가정합니다(203.0.113.x는 문서 예시용 주소입니다).

공유기에 "외부 TCP 18080 → 내부 192.168.0.50:8080" 규칙을 넣으면, 외부에서는 브라우저에 http://203.0.113.10:18080 을 입력해 접속합니다. 패킷이 지나가는 과정은 아래와 같습니다.

단계 출발지 목적지 설명
① 요청 도착 198.51.100.7:51234 203.0.113.10:18080 외부 사용자의 요청이 공유기 공인 IP에 도착
② 목적지 변환 198.51.100.7:51234 192.168.0.50:8080 포트포워딩 규칙에 따라 목적지를 내부 서버로 변경
③ 응답 출발 192.168.0.50:8080 198.51.100.7:51234 서버가 응답을 공유기로 보냄
④ 출발지 변환 203.0.113.10:18080 198.51.100.7:51234 공유기가 출발지를 공인 IP로 바꿔 외부로 전달

같은 공인 IP 하나로 여러 장치를 열 때는 외부 포트를 다르게 나눕니다. 예를 들어 외부 18080은 모니터링 서버(192.168.0.50:8080), 외부 18081은 두 번째 게이트웨이(192.168.0.51:80)로 보내는 식입니다. 외부 포트 하나에는 내부 장치 하나만 연결할 수 있습니다.


4. 포트포워딩은 어떤 순서로 설정할까?

  1. 내부 장치 IP 고정 : 대상 장치에 고정 IP를 직접 넣거나, 공유기의 DHCP 고정 할당(MAC 주소 예약)을 사용합니다. IP가 바뀌면 규칙이 엉뚱한 장치를 가리키게 됩니다.
  2. 서비스 포트 확인 : 내부망에서 http://192.168.0.50:8080 처럼 먼저 접속해 서비스가 정상인지 확인합니다.
  3. 공인 IP 확인 : 공유기 상태 화면의 WAN(인터넷) 주소가 공인 IP인지 확인합니다. 10.x, 172.16~31.x, 192.168.x, 100.64~127.x로 시작하면 앞단에 다른 NAT가 있다는 뜻입니다.
  4. 포트포워딩 규칙 등록 : 프로토콜(TCP/UDP), 외부 포트, 내부 IP, 내부 포트를 입력합니다. 가능하면 외부 포트는 기본값이 아닌 번호를 씁니다.
  5. 방화벽 허용 : 대상 PC의 OS 방화벽(예: Windows 방화벽)에서 해당 포트의 인바운드를 허용합니다. 가능하면 접속을 허용할 출발지 IP도 제한합니다.
  6. 외부에서 시험 : 같은 공유기 아래에서 공인 IP로 접속하면 공유기 기종에 따라 실패할 수 있으므로, 휴대폰 데이터망처럼 실제 외부 회선에서 시험합니다.
  7. 기록 남기기 : 연 포트, 대상 장치, 목적, 담당자, 날짜를 문서로 남깁니다. 나중에 열린 포트를 정리할 때 근거가 됩니다.

유동 IP 회선이라면 공인 IP가 바뀔 수 있으므로 DDNS(Dynamic DNS)로 도메인 이름을 연결해 두거나 통신사에 고정 IP를 신청합니다.


5. 포트포워딩과 VPN·클라우드 중계는 어떻게 다를까?

원격 모니터링 접속 방법은 포트포워딩만 있는 것이 아닙니다. 현장 규모와 보안 요구 수준에 따라 아래 방식 중에서 고릅니다.

방식 원리 장점 주의점
포트포워딩 공유기가 외부 포트를 내부 장치로 전달 추가 장비·비용 없이 바로 구성 서비스가 인터넷 전체에 노출됨
VPN 인증된 사용자만 암호화 터널로 내부망 접속 내부 서비스 포트를 외부에 열지 않음 VPN 장비 자체의 보안 업데이트 필요
클라우드 중계 (아웃바운드) 현장 장치가 서버로 먼저 데이터를 보냄 (예: MQTT over TLS) 인바운드 포트를 열 필요가 없고 유동 IP·이중 NAT에서도 동작 클라우드 서비스 의존, 회사 데이터 반출 정책 확인 필요
원격 지원 도구 중계 서버를 통한 화면 공유 임시 점검에 간편 상시 모니터링용으로는 부적합, 계정 관리 필요

웹 화면만 보는 단순한 구성이라면 HTTPS 포트포워딩도 쓸 수 있지만, 제어 기능이 있거나 여러 장비를 관리하는 현장이라면 VPN이나 아웃바운드 방식이 더 안전합니다. 통신 구간 암호화의 원리는 SSL/TLS 데이터 암호화 프로토콜 글에 정리되어 있습니다.


6. 포트포워딩할 때 보안상 주의할 점은?

포트포워딩으로 연 포트는 회사 직원뿐 아니라 인터넷의 누구나 접근을 시도할 수 있습니다. 인터넷에서는 열린 포트를 찾는 자동 스캔이 상시로 이뤄지므로 "주소를 아는 사람만 들어온다"는 생각은 통하지 않습니다.

특히 Modbus TCP(TCP 502)는 프로토콜 자체에 인증과 암호화가 없어서, 포트에 접근할 수 있으면 누구나 레지스터를 읽고 장비에 따라 값을 쓸 수도 있습니다. PLC, 센서 게이트웨이의 502번 포트를 포트포워딩으로 직접 여는 것은 피해야 합니다. Modbus TCP의 구조는 Modbus TCP 산업용 통신 프로토콜 글을 참고하면 됩니다.

점검 항목 권장 기준
공개 대상 모니터링 웹 서버 하나만 공개, 센서·PLC·게이트웨이는 직접 공개하지 않음
프로토콜 HTTP 대신 HTTPS, MQTT 1883 대신 8883(TLS)
계정 초기 비밀번호 변경, 사용자별 계정, 퇴사자 계정 즉시 삭제
출발지 제한 본사·협력사 고정 IP만 허용하도록 방화벽 규칙 설정
DMZ·UPnP DMZ(모든 포트 전달)와 UPnP 자동 포트 열기는 끄기
업데이트 공유기 펌웨어와 서버 OS·웹 서버 보안 패치 정기 적용
정기 점검 분기마다 포트포워딩 목록과 접속 로그를 확인하고 쓰지 않는 규칙 삭제

외부 포트 번호를 기본값과 다르게 바꾸면 무작위 접속 시도가 다소 줄어들지만, 포트 스캔으로 금방 찾아지므로 보안 대책이 되지는 않습니다. 인증, 암호화, 출발지 제한이 실제 보호 수단입니다.


7. 포트포워딩을 했는데 접속이 안 될 때 점검할 것은?

  • 이중 NAT : 통신사 모뎀(공유기 기능 포함) 뒤에 사내 공유기가 또 있는 구조입니다. 사내 공유기 WAN 주소가 사설 IP로 보이면 앞단 장비에도 포트포워딩을 하거나 앞단을 브리지 모드로 바꿔야 합니다.
  • CGNAT(통신사 NAT) : WAN 주소가 100.64.0.0/10 대역이면 통신사가 공인 IP를 여러 가입자와 나눠 쓰는 구조여서 포트포워딩으로 해결할 수 없습니다. 고정 IP 상품이나 아웃바운드 방식을 검토합니다. LTE 라우터 회선에서 자주 나타납니다.
  • 대상 장치 방화벽 : 공유기 규칙은 맞는데 PC 방화벽이 인바운드를 막는 경우가 많습니다.
  • 내부 IP 변경 : 정전 후 DHCP로 다른 IP를 받아 규칙이 엉뚱한 장치를 가리키는 경우입니다.
  • 공인 IP 변경 : 유동 IP 회선에서 공인 IP가 바뀌었는데 이전 주소로 접속하는 경우입니다. DDNS를 사용합니다.
  • 내부망에서 시험 : 같은 공유기 아래에서 공인 IP로 접속하면 헤어핀 NAT(NAT Loopback)를 지원하지 않는 공유기에서는 실패합니다. 외부 회선에서 다시 시험합니다.

8. 관련 산업용어

■ NAPT
IP 주소와 포트 번호를 함께 바꿔 공인 IP 하나를 여러 내부 장치가 나눠 쓰게 하는 NAT 방식입니다. 일반 공유기의 기본 동작입니다.

■ DDNS (Dynamic DNS)
공인 IP가 바뀔 때마다 도메인 이름에 새 주소를 자동으로 연결해 주는 서비스입니다. 유동 IP 회선에서 원격 접속 주소를 고정하는 데 씁니다.

■ DMZ (Demilitarized Zone)
공유기에서는 지정한 내부 장치 하나로 모든 외부 포트를 전달하는 기능을 말합니다. 해당 장치가 인터넷에 사실상 그대로 노출됩니다.

■ UPnP (Universal Plug and Play)
내부 장치가 공유기에 포트포워딩 규칙을 스스로 만들어 달라고 요청하는 기능입니다. 관리자가 모르는 포트가 열릴 수 있어 산업 현장에서는 끄는 것이 좋습니다.

■ 헤어핀 NAT (NAT Loopback)
내부 장치가 자기 공유기의 공인 IP로 접속했을 때 다시 내부 장치로 돌려 보내 주는 기능입니다. 지원 여부는 공유기마다 다릅니다.


9. 자주 묻는 질문

Q. 포트포워딩하면 해킹 위험이 있나요?
네, 연 포트의 서비스가 인터넷 전체에 노출됩니다. 위험의 크기는 어떤 서비스를 열었는지와 인증·암호화·출발지 제한을 적용했는지에 따라 달라집니다.

Q. Modbus TCP 502 포트를 외부에 열어도 되나요?
아니요, 직접 열지 않는 것이 원칙입니다. Modbus TCP는 인증과 암호화가 없으므로 원격으로 데이터가 필요하면 VPN을 거치거나 모니터링 서버에서 수집한 데이터를 HTTPS 화면으로 보여 주는 방식을 씁니다.

Q. 유동 IP에서도 포트포워딩을 쓸 수 있나요?
네, 쓸 수 있습니다. 다만 공인 IP가 바뀌면 접속 주소도 바뀌므로 DDNS로 도메인을 연결하거나 고정 IP를 신청하는 것이 좋습니다.

Q. LTE 라우터에서 포트포워딩이 안 되는 이유는?
대부분 통신사 CGNAT 때문입니다. 라우터 WAN 주소가 사설 IP나 100.64.x.x로 보이면 공인 IP가 아니어서, 고정 공인 IP 상품을 쓰거나 현장 장치가 서버로 먼저 접속하는 아웃바운드 방식으로 구성해야 합니다.

Q. 외부 포트와 내부 포트를 다르게 써도 되나요?
네, 됩니다. 외부 18080을 내부 8080으로 연결하는 것처럼 번호를 다르게 지정할 수 있고, 같은 공인 IP로 여러 장치를 열 때는 외부 포트를 서로 다르게 나눠야 합니다.

Q. 포트포워딩과 DMZ 중 무엇을 써야 하나요?
포트포워딩을 씁니다. DMZ는 장치의 모든 포트를 외부에 여는 것과 같아서, 필요한 포트만 지정하는 포트포워딩보다 노출 범위가 훨씬 넓습니다.


10. 마무리

포트포워딩은 공유기가 공인 IP의 특정 포트로 들어온 요청을 사설 IP 장치로 넘겨 주는 NAT 규칙이며, 사설망에 있는 모니터링 서버에 외부에서 접속하게 해 주는 가장 간단한 방법입니다. 설정은 내부 IP 고정, 서비스 확인, 규칙 등록, 방화벽 허용, 외부 회선 시험 순서로 진행합니다. 꼭 기억할 점은 Modbus TCP·SSH·RDP처럼 장비를 직접 다루는 포트는 인터넷에 열지 않고, 공개가 필요하면 HTTPS 웹 화면 하나만 인증과 출발지 제한을 걸어 여는 것입니다. 현장이 커지거나 제어 기능이 포함되면 VPN이나 아웃바운드 방식으로 바꾸는 것을 검토합니다.

참고 기준 : IETF RFC 1918 (Address Allocation for Private Internets, 1996), IETF RFC 3022 (Traditional IP Network Address Translator, 2001), IETF RFC 6335 (포트 번호 할당 절차, 2011), IETF RFC 6598 (Shared Address Space 100.64.0.0/10, 2012), IANA Service Name and Transport Protocol Port Number Registry


태그 : 포트포워딩, 포트포워드, NAT, NAPT, 포트번호, 공인IP, 사설IP, 원격모니터링, 원격접속, DDNS, CGNAT, 이중NAT, ModbusTCP, VPN, 공유기설정, 네트워크보안