(Chrome/Edge) PNA 정책으로 인한 로컬 네트워크 접근 차단
개요
Chrome 및 Edge 141 버전 이상에서는 PNA(Private Network Access) 정책이 강화되어, 퍼블릭 도메인(인터넷)에서 사설망(내부망) 자원에 접근하려는 웹 애플리케이션은 브라우저의 사전 인증 요청(Preflight) 및 권한 검사를 통과해야 합니다.
Kollus 플레이어는 로컬 네트워크 장치와 통신하는 구조를 사용하므로, 이 정책이 적용된 브라우저 환경에서는 플레이어 호출 및 전체 화면 기능 사용 시 다음과 같은 문제가 발생할 수 있습니다.
- 브라우저 권한 요청 팝업이 표시되며, 차단 시 플레이어가 동작하지 않음
- 플레이어가 아예 로드되지 않거나 CORS/PNA 오류가 발생함
iframe내에서 플레이어 호출 시 내부망 자원 요청이 차단됨
해결 방법
방법 1: 브라우저 권한 팝업 허용 (일반 사용자)
브라우저가 로컬 네트워크 접근 권한을 요청하는 팝업을 표시하면 반드시 [허용]을 클릭해야 합니다. 한 번 허용하면 동일 사이트에서 추가 팝업이 표시되지 않으며, 권한은 사이트 단위로 저장됩니다.
- Chrome/Edge 145 이상: 권한 요청 항목이 '기기에 있는 앱'으로 표시됩니다. 이 경우 [허용]을 클릭한 후 페이지를 새로고침하세요.
- Chrome/Edge 141 이상 (145 미만): 권한 요청 항목이 '로컬 네트워크 액세스'로 표시됩니다. 이 경우 [허용]을 클릭한 후 페이지를 새로고침하세요.
- 브라우저 주소창에 아래 주소를 입력한 후 [Enter]를 누르세요.
- Chrome:
chrome://settings/content/localNetwork - Edge:
edge://settings/content/localNetwork
- Chrome:
- 차단 목록에서 해당 사이트를 찾아 [허용]으로 변경하세요.
- 페이지를 새로고침하세요.
방법 2: 브라우저 플래그 설정 변경 (고급 사용자)
PNA 정책 검사를 비활성화하면 권한 팝업 없이 로컬 네트워크에 접근할 수 있습니다.
이 방법은 브라우저 내부 실험 기능(flags)을 수정하며, 브라우저 업데이트 시 설정이 초기화될 수 있습니다. 개인 PC 환경에서만 사용하고, 보안 정책이 있는 기업 환경에서는 IT 관리자에게 문의하세요.
Chrome 141 이상 설정
- Chrome 주소창에
chrome://flags/#local-network-access-check를 입력하고 [Enter]를 누르세요. - Local Network Access Checks 항목을 찾아 드롭다운에서 [Disabled]를 선택합니다.
- 페이지 하단의 [다시 시작] 버튼을 클릭하여 브라우저를 재시작하세요.
Edge 142 이상 설정
Edge는 141 버전까지 PNA 정책이 기본적으로 비활성화되어 있으나, Edge 142 버전부터 기본 활성화될 예정입니다.
- Edge 주소창에
edge://flags/#local-network-access-check를 입력하고 [Enter]를 누르세요. - Local Network Access Checks 항목을 찾아 드롭다운에서 [Disabled]를 선택합니다.
- 페이지 하단의 [다시 시작] 버튼을 클릭하여 브라우저를 재시작하세요.
방법 3: iframe 속성 설정 (개발자)
이 방법은 Kollus 플레이어를 iframe으로 직접 삽입하여 서비스를 개발하는 담당자를 위한 안내입니다.
퍼블릭 도메인에서 사설망 자원을 요청하는 iframe의 경우, allow 속성에 local-network-access 및 loopback-network 권한을 명시해야 합니다.
이 속성이 없으면 Chrome/Edge 141 이상에서 내부망 자원 요청이 차단됩니다.
<iframe src="https://v.kr.kollus.com/s?jwt=..."
allow="encrypted-media; local-network-access; loopback-network"
allowfullscreen
webkitallowfullscreen
mozallowfullscreen>
</iframe>
각 속성의 역할은 다음과 같습니다.
| 속성 | 설명 |
|---|---|
local-network-access | Chrome/Edge에서 iframe이 사설망(내부망) 리소스에 접근하도록 허용 |
loopback-network | 루프백(localhost) 네트워크 접근 허용 |
encrypted-media | DRM 및 보호 콘텐츠 재생 허용 |
| 전체 화면 기능 허용 |