본문으로 건너뛰기

네트워크 구성 — 게이트웨이 배치 가이드

게이트웨이는 2 개의 NIC 로 PLC 망과 WAN 을 물리적으로 분리하도록 설계되어 있습니다. 어플라이언스 / 산업용 PC 의 표준 구성.

NIC 역할 (2026.05+)
  • LAN1 = PLC (eth1 / enp1s0 등) — 단일 PLC 또는 switch 뒤 다중 PLC
  • LAN2 = WAN (eth2 / enp2s0 등) — 인터넷 / 플랫폼 / OTA
  • wlan0 / wwan0 / tun0 / usb0 — WiFi / GSM / VPN / 관리 USB-Ethernet

NIC 이름 매핑은 /etc/kopens/app.propertiesedge.net.lan1.iface 등으로 박스마다 조정 가능 (install.sh 시 LAN1_IFACE=enp1s0 ... bash install.sh env 로 override). 화면 모니터링 카드 표시 전용 — IP 설정 자체는 OS NetworkManager / netplan 책임. install.sh 는 nmcli static IP 설정도 옵션 수행 (LAN1_IP=192.168.100.10/24 LAN2_IP=192.168.0.10/24 ... bash install.sh).


1. 표준 토폴로지

┌──────────────────────┐ ┌─────────────┐
│ 상위 플랫폼 / 클라우드 │ ◀─── HTTPS / MQTT ─── │ 게이트웨이 │
│ (PlantPulse / SCADA) │ └─────────────┘
└──────────────────────┘ enp1s0 │ enp2s0
│ │
┌───────────────┘ └────────────┐
│ │
WAN (외부) PLC 망 (내부)
│ │
│ ┌───┴────────────┐
│ │ │
PLC₁ PLC₂ PLC₃
(Modbus / S7 / OPCUA)
NIC이름 (Fedora 38 기본)역할기본 게이트웨이?
NIC 1enp1s0WAN — 외부 인터넷 / 상위 플랫폼 / NTP✅ Yes
NIC 2enp2s0PLC 망 — 사설 IP, PLC 와의 통신 전용❌ No (ipv4.never-default yes)

2. 권장 IP 설계 (예시)

영역CIDR용도
WANDHCP 또는 사내망 / 192.168.0.0/24게이트웨이 외부 IP — 사무실 네트워크
PLC 망192.168.100.0/24PLC 전용 사설망 — WAN 과 격리
게이트웨이 자체WAN: 192.168.0.50 / PLC: 192.168.100.10
PLC192.168.100.20–254라인별 / 셀별

3. 시나리오별 구성

3.1 단순 구성 — 사내망 1 개

PLC 가 사내망에 직접 붙어있고 별도 PLC 서브넷이 없는 경우. NIC 2 개 다 같은 망에 둘 필요 없음:

  • enp1s0 (WAN) 만 사용 — DHCP 또는 STATIC
  • enp2s0 미사용 (또는 link down)

2026.05+ 설치에서는 install.sh 실행 시 LAN2_IFACE 를 생략하거나, 설치 후 OS NetworkManager 에서 미사용 NIC 를 down 상태로 두면 됩니다. legacy native setup.sh 는 2번 NIC prompt 가 남아 있을 수 있으므로 구형 박스에서만 set-2.sh 비활성화를 검토하세요.

3.2 표준 분리 구성 — WAN + PLC 망 (권장)

1. 표준 토폴로지 그대로. 보안 측면에서 PLC 망을 외부 인터넷과 완전 격리 가능 — 게이트웨이가 두 망 사이의 유일한 다리. PLC 가 인터넷에서 보이지 않음.

3.3 3 NIC — WAN + PLC + 관리

대형 사이트. setup.sh 에 추가 단계 (set-usb-mgnt.sh 가 코멘트 처리되어 있음 — 활성화 가능):

  • enp1s0 (WAN) — 외부
  • enp2s0 (PLC) — 사설 PLC 망
  • enp3s0 또는 USB-Ethernet (관리) — 별도 진단 / 점검용 채널 (사내 IT)

홈 카드 관리 포트 가 이 NIC 의 IP 를 표시.

3.4 클라우드 / VM 1 NIC

VM 환경에서 NIC 가 1 개만 있는 경우 — 모든 통신이 같은 가상 네트워크. NIC 분리는 호스트 OS 에서 vSwitch / VLAN 으로 처리.


4. 외부에서 게이트웨이로 접근하기

배포 후 외부 (사무실 PC, 모바일) 에서 게이트웨이의 웹 UI 에 접속하려면:

시나리오방법
같은 사내망 안https://<게이트웨이-WAN-IP>/ui/main 로 직접
사외 → 사내망VPN 접속 후 위와 동일
사외 → 인터넷 (위험)방화벽 NAT 포워딩 + REST API 인증 필수 + HTTPS

게이트웨이 v1 REST 는 X-API-Key / Bearer 인증을 사용합니다. 그래도 인터넷 직접 노출은 권장하지 않습니다. 사외 접근은 VPN 또는 mTLS/API gateway 같은 추가 보호 계층을 둔 뒤 허용하세요.


5. 방화벽 — 노출 포트

install.sh 가 컨테이너 모드에 필요한 포트를 firewall 에 등록합니다. legacy native 의 상세 포트 표는 (legacy) H/W 전체 설치 5.1 절에 남아 있습니다.

핵심: 80 / 443 (웹 UI) + 1880 (Node-RED) + 12000 / 12443 (OPC-UA) + 1883 / 8883 (MQTT, 사용 시).

운영 환경에서 외부 접근 불필요 한 포트는 방화벽으로 막거나 WAN NIC 에서만 차단 (firewall-cmd --remove-port).


6. 네트워크 검증

설치 직후 또는 PLC 추가 직전에 네트워크 도달성 확인:

# 1) WAN — 외부 ping
ping -c 3 8.8.8.8
# 2) WAN — DNS
nslookup google.com
# 3) WAN — 플랫폼 / 다운로드
curl -I https://product.kopens.io/plantpulse-edge/install.sh

# 4) PLC 망 — 인터페이스 활성
ip a show enp2s0
# 5) PLC 망 — PLC 도달
ping -c 3 192.168.100.20 # 첫 PLC IP

# 6) PLC 포트 도달 (Modbus 502 예시)
nc -vz 192.168.100.20 502
# Connection succeeded ... 면 정상

# 7) 게이트웨이 자체 시스템 헬스 (컨테이너 모드)
sudo bash /opt/kopens/install/bin/status.sh
curl -ks https://127.0.0.1/api/v1/system/health | python3 -m json.tool

7. 자주 빠지는 함정

증상원인 / 해결
WAN 은 되는데 PLC 가 ping 안 됨NIC 2번 IP / 마스크 / PLC 측 게이트웨이 설정. ip route 로 라우팅 확인
PLC 망에서 인터넷 새는 듯enp2s0ipv4.never-default yes 가 빠짐. nmcli con modify enp2s0 ipv4.never-default yes
게이트웨이 외부 IP 변경됨 (DHCP)외부 SCADA 가 IP 로 접근 중이면 끊김 — STATIC 권장
두 NIC 가 서로 라우트 됨 (브리지)NIC 2 의 ipv4.method, ipv6.method 검사. 브리지 모드 풀기
PLC 측 알람 응답이 느림PLC 망 NIC 의 keepalive / 패킷 사이즈 점검. tcpdump -i enp2s0 host <PLC-IP>
OPC-UA 외부 클라이언트 연결 거부방화벽 12000 차단 / 인증서 신뢰 안 됨. firewall-cmd --list-portsOPC-UA 보안 확인

8. 더 알아보기