본문 바로가기

VMIX

VMIX SRT 프로토콜 외부망 전송 사용방법

반응형

SRT 전송 은 일반 인터넷을 통해 고화질 라이브 비디오와 오디오를 안전하고 끊김 없이 주고받기 위해 개발된 오픈 소스 비디오 전송 기술

0. 개요

프로덕션 현장(국내, 극동아시아, 동남아 등 해외)의 PGM을 SRT 전송을 사용하여 실시간으로 서울 방송실에 전송하는 방식을 구현하려고 합니다. 전에는 현지에 라이브 프로덕션을 위해 모든 인원이 출장을 가는 형태였고, 현지 컨트롤룸의 네트워크 내부망을 이용하여 송출팀에 SRT전송하여는 방식이었습니다. 현지에서도 SRT 전송을 내부망으로 사용한 이유는 추가 SDI 인코더, 디코더가 필요없어 비용, 이동, NDI에 보다 낮은 네트워크 대역폭(RTMP 타겟 비트레이트 적용) 등 프로덕션 효율성을 높일 수 있어 '내부망을 이용한 SRT 전송'환경을 구성했습니다. 

왜 NDI를 사용하지 않고 내부망 SRT를 사용한 이유
1. 1G 네트워크 환경
2. Full NDI의 네트워크 대역폭 120~140Mbps
3. 유튜브 4k 환경 타겟 비트레이트 10~40Mbps
4. SRT 유튜브 타겟 비트레이트 40Mbps로 설정
5. SRT가 Full NDI에 대비 약 1/3 수준, 1G 네트워크 환경에 대역폭 절약

SRT 전송을 이용하여 서울에 방송실을 만든다면 출장팀을 인원과 장비를 줄일 수 있으며 여러 장점이 있다고 판단됩니다.

방송실 운영 장점
1. 출장팀 인원 비행기, 숙박·식 비용 절약
2. 방송실 고정·안정·유연성 높아짐
3. 동시에 여러 프로젝트 라이브방송 가능 : 예) 방송실 1곳 + 현지팀1 + 현지팀2

방송실 운영 단점
1. 방송실, 현지 팀의 소통 솔루션
2. VMIX SRT 장시간 프로덕션의 안정성 검증을 위한 테스트 필요

AJA와 LIVE U등  알려진 VMIX SRT를 

1. VMIX SRT 설정

구분 위치 SRT 모드 포트포워딩 장·단점
표준 방송실 Listener 필요 장점 : 현장의 실시간 피드를 방송실로 타겟하여 보내기 때문에
          보안성이 높고 한 번의 설정을 고정적으로 사용함
단점 : 현장의 실시간 피드를 여로곳에 공유 어려움
현장 Caller 불필요
비표준 방송실 Caller 불필요 장점 : 현장의 실시간 피드를 여러 곳에 공유하기 편함
단점 : 현장마다 포트포워딩 설정 필요(네트워크 엔지니어 필요)
          보안에 취약함(호스트, 포트 정보 노출시)
현장 Listener 필요

현장에 송출팀(방송실 세팅)이 포함되어있을때는 내부망(인트라넷) 네트워크를 이용하여 비표준 방식으로 PGM을 생성하는 장비에서 SRT Listener의 포트를 설정하고 PD, 생방송 오퍼레이터, 기타 인력들이 Caller로 받아가서 생방송을 진행하였습니다. 내부망이었기때문에 포트포워딩도 필요없이 VMIX에서 아주 간단하게 SRT 설정으로 효율적으로 생방송을 진행하였습니다.

앞으로 고정된 방송실을 이용한다면 보안성, 설정 편의성, 현장에 네트워크 인력이 불필요한 환경을 만들어 프로덕션의 여러 차원에서 효율적으로 운영할 수 있다고 판단하고 있습니다.

우선 표준 VMIX SRT의 표준 방식 부터 설명하겠습니다.

 

 

 

 

 

a. Enable SRT : 체크박스 활성화
b. 방송실 Type : Listener 선택
c. Port : 포트포워딩에 사용할 포트 번호(10000번때 추천, 보안)
d. Latency 
    1) 국내 : 200~400ms
    2) 해외 : 1000~2000ms
e. Passphrase : 암호역활 양쪽 모두 같아야함
                           10자리 이상 79자 이하 작성
f. Key Length : 양쪽과 같아야 함
g. Quality : 송출하는 곳에 타겟하는 비트레이트 설

 

 

 

2. 포트포워딩 가이

 방송 현장에서 원격 송출, 원격 제어, 외부 접속을 다루다 보면 반드시 마주치는 작업입니다. 문제는 라우터 제조사마다 메뉴 이름이 다르다는 것입니다. ipTIME, TP-Link, ASUS, 넷기어, 통신사 공유기가 모두 다른 용어를 씁니다. 그래서 "특정 장비 설정법"을 외우면 새 장비 앞에서 다시 막힙니다. 여러 라우터가 공유하는 원리를 먼저 잡고, 그 위에 제조사별 차이를 얹는 방식으로 구성했습니다. 

포트포워딩이란

공인 IP = 건물 주소 (예: 서울시 중구 ○○로 123)
포트 번호 = 호수 (예: 302호)

우리 사무실에는 회선이 하나뿐이고 공인 IP도 보통 하나입니다. 그런데 그 안에는 PC, 노트북, 스위처, 카메라, NAS 등 수십 대가 있습니다. 건물 주소는 하나인데 안에 사무실이 여러 개인 상황입니다.

나갈 때는 문제가 없습니다. 내부 PC가 웹사이트에 접속하면, 라우터는 "누가 어디로 나갔는지"를 표에 적어둡니다. 응답이 돌아오면 그 표를 보고 원래 PC에게 정확히 전달합니다. 이 표를 NAT 세션 테이블이라고 합니다. 내가 먼저 나갔기 때문에 돌아오는 길을 라우터가 알고 있는 겁니다.

a. 들어올 때가 문제입니다. 반대로 외부에서 먼저 우리 쪽으로 접속을 시도하면 상황이 다릅니다.

외부 → "49.x.x.x 의 10002번 포트로 접속할게요" 라우터 → "안에 기기가 30대인데... 누구한테 주라는 거지?" → 버림

라우터는 아무 정보가 없으니 그냥 패킷을 폐기합니다. 차단이 아니라 판단 불가입니다.

b. 그래서 미리 등록해둡니다.
"10002번 포트로 들어오는 요청은 → 192.168.0.50 장비에게 전달할 것"

이 규칙을 라우터에 미리 등록해두는 것이 포트포워딩입니다. 건물 안내 데스크에 "302호로 오는 손님은 3층 왼쪽 사무실로 안내해주세요"라고 적어두는 것과 같습니다.

왜 필요한가

c. 방송 현장에서의 용도

상황 포워딩 대상
SRT 원격 수신 (현장 > 본사) VMIX Listener PC
외부에서 방송실 PC 원격 제어 RDP / AnyDesk 서버
외부에서 네트워크 장비 관리 Omada 컨트롤러 등
외부에서 녹화본 접근 NAS
인터컴 / 토크백 서버 해당 서버

d. 핵심 판단 기준

"우리 쪽이 기다리는 입장인가, 찾아가는 입장인가"

기다리는 쪽(서버 역할)에만 포트포워딩이 필요합니다. 찾아가는 쪽(클라이언트 역할)은 아무 설정도 필요 없습니다.
SRT를 예로 들면 이렇습니다.

모드 역할 포트포워딩
Listener 포트를 열고 기다림 필요
Caller 상대에게 접속 시도 불필요

e. ★실무에서 가장 중요한 판단★(중요)

통제 가능한 쪽을 "기다리는 쪽"으로 만들어라.

현장은 우리가 통제할 수 없는 경우는 호텔, 카지노, 이벤트홀의 공용 인터넷은 관리자 권한을 받을 수 없고, CGNAT라 공인 IP도 없으며, 방화벽 정책도 알 수 없습니다. 만약 통제할 수있는 WAN을 받더라도 어떠한 변수가 있을지 모릅니다. 반면 본사는 우리가 통제합니다. 한 번 설정해두면 어느 현장에서든 그대로 씁니다.

[현장] Caller ───── 아웃바운드만 ─────▶ [본사] Listener
설정 불필요                                                             포워딩 1회

반대로 설계하면 출장 갈 때마다 현지 IT 담당자를 찾아 공유기 설정을 부탁해야 합니다. 실무에서 이건 거의 불가능합니다. 구조 설계가 절반입니다. 설정 화면을 열기 전에 이것부터 정하세요.

f. ★사전조사★(중요)

1) 공인 IP를 누가 갖고 있는가? : 라우터의 WAN IP를 확인합니다. 보통 상태 / Status / 시스템 정보 메뉴에 있습니다.

WAN IP 대역 의미
1.x 49.x 211.x 등 공인 IP — 이 장비가 최상단
192.168.x.x 사설 IP — 위에 다른 라우터가 있음
172.16~31.x.x 사설 IP — 위에 다른 라우터가 있음
10.x.x.x 사설 IP — 위에 다른 라우터가 있음
100.64~127.x.x CGNAT — 포트포워딩 불가

2) 이중 NAT인가? : 라우터가 두 대 겹쳐 있으면 관문이 두 개입니다. 한 쪽만 열면 나머지에서 막힙니다.

[통신사 공유기] ─── [우리 라우터] ─── [PC]
   공인 IP                  192.168.x.x
   ↑ 여기도 열어야 함

해결책 (우선순위 순)

  1. 통신사 장비를 브리지 모드로 — 우리 라우터가 직접 공인 IP를 받음 (추천)
  2. 통신사 장비에서 우리 라우터를 DMZ로 지정 — 이중 포워딩 생략 (난이도 : 중간)
  3. 양쪽에 각각 포워딩 — 동작은 하지만 관리·추적이 번거로움 (난이도 : 어려움)

라우터 대 라우터 구간에서는 2번도 실용적입니다. 다만 PC를 직접 DMZ에 두는 것은 피하세요.

3) CGNAT가 아닌가? : WAN IP가 100.64.x.x 대역이면 통신사가 공인 IP를 여러 가입자에게 공유하고 있는 상태입니다. 포트포워딩 자체가 불가능합니다.

 

  1. 통신사에 고정 IP 상품 신청
  2. 또는 클라우드 릴레이 서버 경유 (양쪽 모두 아웃바운드만 사용)

4) 주소가 고정되어 있는가?

① 공인 IP (외부 주소)
유동 IP면 어느 날 갑자기 바뀝니다. 방송 당일 아침에 접속이 안 되는 상황이 실제로 발생합니다.

  1. 고정 IP 상품 신청 (권장)
  2. 또는 DDNS 설정 후 도메인 배포


② 내부 IP (대상 장비 주소)
포워딩 규칙은 특정 내부 IP를 가리킵니다. DHCP로 주소가 바뀌면 규칙이 엉뚱한 기기를 가리키게 됩니다.

  1. 라우터에서 DHCP 예약 (MAC 기준, 권장)
  2. 또는 PC에서 고정 IP 직접 입력
방송용 장비는 예외 없이 IP를 고정하세요.

G. 제조사 무관 공통 5요소

1) 모든 라우터는 같은 값을 사용합니다 : 화면 디자인과 메뉴 이름은 제각각이지만, 실제로 넣는 값은 어디서나 이 5가지입니다.

구분 항목 내용
1 외부 포트 인터넷에서 들어올 때 쓰는 번호
2 내부 IP 전달받을 장비의 주소
3 내부 포트 그 장비에서 실제로 대기 중인 번호
4 프로토콜 TCP / UDP / 둘 다
5 활성 규칙 켜기

이것만 알면 처음 보는 장비도 헤매지 않습니다. 화면에서 이 5개를 찾으면 됩니다.

외부 포트와 내부 포트는 다르게 설정할 수도 있지만, 특별한 이유가 없다면 같게 두세요. 문제 추적이 훨씬 쉽습니다.

2) 메뉴 이름 대응표

제조사 메뉴 경로
ipTIME 고급 설정 → NAT/라우터 관리 → 포트포워드 설정
TP-Link (Omada) Settings → Transmission → NAT → Port Forwarding
TP-Link (일반) 고급 → NAT 전달 → 가상 서버 (Virtual Servers)
ASUS 고급 설정 → WAN → 포트 포워딩
NETGEAR 고급 → 고급 설정 → 포트 포워딩 / 포트 트리거
Linksys Security / Apps & Gaming → Single Port Forwarding
MikroTik IP → Firewall → NAT → dstnat
통신사 공유기 대개 NAT 설정 또는 포트포워딩

대부분 고급 설정 안에 있습니다. 기본 메뉴에는 잘 노출되지 않습니다.

3) 프로토콜 : 여기서 제일 많이 틀립니다.

용도 프로토콜
SRT UDP
RTMP TCP
원격 데스크톱(RDP) TCP
웹 관리 페이지 TCP
NDI TCP + UDP

SRT는 UDP입니다. 많은 라우터가 기본값을 TCP나 "TCP/UDP"로 두고 있어서, 그대로 저장하면 동작하지 않습니다. 모를 때는 "둘 다" 열면 되지만, 필요한 것만 여는 편이 보안상 좋습니다.

g. 설정 절차(실습)

  • ① 대상 장비의 내부 IP 확인 및 고정 : 라우터에서 DHCP 예약을 걸거나 PC에 고정 IP를 입력합니다.
  • ②대상 장비에서 서비스 실행 : vMix Listener라면 스트림을 시작해야 포트가 실제로 열립니다. 서비스가 꺼져 있으면 포워딩이 완벽해도 아무것도 안 됩니다.
CMD > netstat -an | findstr 10002 
"여기에 나오지 않으면 서비스부터 확인하세요"
<서비스가 가동될때>
<서비스가 가동되지 않을때>
  • ③ 대상 장비의 내부 IP 확인 및 고정 : 라우터에서 DHCP 예약을 걸거나 PC에 고정 IP를 입력합니다.
Windows Defender 방화벽 → 고급 설정 → [인바운드 규칙] → 새 규칙 → 포트 → UDP → 10002 (또는 10000-10005) → 연결 허용 → 도메인 · 개인 · 공용 모두 체크 → 이름 지정 후 완료
<예시 사진 : 포트는 사용자가 원하는 포트를 사용하시기 바랍니다>
<영역 세팅 사진>

자주 하는 실수 두 가지

  1. 아웃바운드 규칙을 만드는 것. Windows는 아웃바운드를 기본 허용하므로 아무 효과가 없습니다. 반드시 인바운드입니다
  2. 프로필 누락. 사무실 네트워크가 "공용"으로 잡혀 있는 경우가 많습니다

생성 후 속성 → 영역(Scope) 탭이 "모든 IP 주소"인지도 확인하세요.

  • ④ 라우터에 포워딩 규칙 등록 : 'g. 1)' 에서 5번 속성을 체웁니다.
  • ⑤ 이중 NAT라면 상위 장비에도 반복

h. 검증 : 순서를 지켜야 합니다 : 건너뛰면 어디가 문제인지 영원히 알 수 없습니다.

1단계 : 같은 내부망에서 내부 IP로 SRT 출력상태 보

  • 라우터를 거치지 않는 조건에서 서비스와 방화벽만 먼저 검증하는 단계입니다. 아직 포트포워딩과는 무관합니다.
  • 같은 내부망에 있는 다른 PC에서, 접속 주소에 공인 IP가 아니라 대상 장비의 내부 IP를 넣고 붙여봅니다.
SRT 예시 : 대상 PC를 Listener로 실행 다른 PC의 vMix에서 SRT (Caller) Hostname → 192.168.0.50 ← 내부 IP Port → 10002 RDP 예시 : 원격 데스크톱 연결 → 192.168.0.50

 

  • 성공 → 서비스와 방화벽 정상. 다음 단계로
  • 실패 → 방화벽 또는 서비스 문제. 여기서 해결하고 진행
한 대의 PC 안에서 Listener와 Caller를 동시에 띄우는 방법도 되기는 하지만, 랜 구간과 방화벽을 거치지 않아 검증 강도가 약합니다. 가능하면 다른 PC에서 시도하세요.

이 단계를 통과하면 이후 문제는 전부 라우터 영역으로 좁혀집니다.

2단계 : 외부 회선에서 공인 IP로 접속

  • 성공 → 완료
  • 실패 → 'i'항에 문제 해결로
'가장 흔한 실수' 내부에서 공인 IP 테스트 : 같은 내부망에서 공인 IP로 자기 자신을 부르는 테스트는 실패합니다. 포트포워딩이 완벽해도 안 됩니다.

이유: NAT 루프백 (헤어핀 NAT)

패킷이 내부망 → 라우터 → 다시 내부망으로 되돌아와야 하는데, 국내 통신사 공유기와 보급형 라우터 대부분은 UDP 헤어핀을 지원하지 않습니다. 즉, 이 방법으로는 검증 자체가 불가능합니다. 설정이 맞는지 틀린지 알 수 없습니다.

올바른 테스트 방법 : 노트북을 휴대폰 LTE 테더링에 연결한 뒤 공인 IP로 접속합니다. 이것이 실제 외부 조건과 동일합니다.

⚠️ 테더링 시 노트북의 Wi-Fi를 반드시 끄세요. 사무실 Wi-Fi에 붙어 있으면 또 헤어핀 문제로 실패합니다.

i. 문제 해결 — 계층별 절개법 : 안 될 때는 경로를 반으로 잘라가며 좁힙니다. 위에서부터 하나씩 확인하세요.

순서 확인 대상 확인 방법
1 서비스가 실행 중인 netstat -an | findstr [포트]
2 PC 방화벽 내부망에서 내부 IP로 접속
3 하위 라우터 하위 라우터 WAN IP로 접속
4 상위 라우터 외부 회선에서 공인 IP로 접속

각 단계에서 처음 실패하는 지점이 원인입니다.

h-1. 연결이 안 될 때 체크리스트

  • 서비스가 실제로 실행 중인가 (netstat 확인)
  • 프로토콜이 맞는가 — SRT는 UDP
  • 방화벽이 인바운드 규칙인가, 프로필 3개 모두 체크했는가
  • 대상 장비 IP가 고정되어 있는가
  • 라우터에서 적용/저장 버튼을 눌렀는가
  • 이중 NAT 구조인가 — 양쪽 모두 설정했는가
  • 내부망에서 공인 IP로 테스트하고 있지 않은가
  • 공인 IP를 최근 값으로 쓰고 있는가 (유동 IP면 바뀌었을 수 있음)
  • 접속 주소에 오타는 없는가 — 점 . 대신 쉼표 , 입력이 실제로 발생합니다
  • 멀티 WAN이라면 올바른 회선(Interface)을 지정했는가
  • VLAN 환경이라면 게이트웨이 ACL에서 막히지 않는가

h-2. 간헐적으로 끊길 때

 

  • 유동 IP라 주소가 바뀌지 않았는가 → 고정 IP 또는 DDNS
  • DHCP로 내부 IP가 바뀌지 않았는가 → 고정 필요
  • 대역폭이 충분한가
  • 라우터 세션 테이블이 가득 차지 않았는가

h-3. 진단에 쓰는 CMD 명령어

ipconfig # 내부 IP 확인 (Windows)
netstat -an | findstr [포트] # 서비스 대기 여부
ping [주소] # 도달 및 RTT 확인
tracert [주소] # 경로 확인
주의
: ping이 안 되어도 포워딩은 정상일 수 있습니다. 많은 라우터가 ICMP 응답을 차단합니다. ping 실패를 근거로 판단하지 마세요.

i. 보안과 운영

1. 원칙

  • 필요한 포트만, 필요한 기간만. 포트를 여는 것은 건물 외벽에 문을 하나 뚫는 일입니다. 이벤트가 끝나면 규칙을 비활성화하는 습관을 들이세요.
  • 흔한 포트는 피하세요. 22, 3389, 8080 같은 번호는 자동화된 스캔 봇의 1차 표적입니다. 외부 포트를 비표준 번호로 바꾸는 것만으로도 스캔 대상에서 상당 부분 벗어납니다.
  • 서비스 자체 인증을 반드시 켜세요. SRT라면 Passphrase, 원격 접속이라면 강한 비밀번호를 씁니다. 포트포워딩 자체에는 인증 기능이 없습니다. 문을 열어줄 뿐, 신원 확인은 안 합니다.
  • DMZ는 최후의 수단입니다. 해당 장비의 모든 포트가 노출됩니다. 라우터 대 라우터 구간에서는 실용적이지만, PC를 직접 DMZ에 두지 마세요.

2. 운영 문서

포트 번호 / 프로토콜 / 대상 장비 / 용도 / 설정일 / 담당자 / 만료 예정일

포워딩 규칙은 시간이 지나면 아무도 이유를 모르는 구멍이 됩니다. 아래 항목을 관리 대장에 남기세요.

i-1. 포워딩이 근본적으로 어려울 때 : 다음 상황이면 포워딩 대신 다른 방법을 검토하세요.

  • CGNAT라 공인 IP가 없음
  • 현장 네트워크 권한이 없음 (호텔, 카지노 등)
  • 매번 다른 장소에서 접속해야 함

1. 대안

클라우드 릴레이 중간 서버 경유. 양쪽 모두 아웃바운드만 사용
VPN 본사–현장 터널 구성. 오버헤드 있음
Tailscale 등 메시 VPN 설정이 간단하고 NAT를 자동으로 통과

 

반응형

'VMIX' 카테고리의 다른 글

Vmix GT Designer 사용법(1)  (0) 2022.12.07
VMIX 모니터링 환경 만들기  (0) 2021.12.15
VMIX 오디오 믹서 사용  (1) 2021.12.13
VMIX 음향 플러그인  (0) 2021.12.10
VMIX 자막 사용법  (0) 2021.11.29