IPv6는 제공자가 프록시, 방화벽, TLS 또는 애플리케이션이 완료할 수 없는 AAAA 경로를 선택할 때 콜백을 중단시킵니다.
셀프 호스팅 홈 서버 스택에서는 브라우저가 IPv4를 통해 앱을 로드하는 반면 OAuth 제공자, 웹훅 발신자, 모바일 네트워크 또는 외부 API가 반환 요청에 IPv6를 선택할 수 있습니다. 깔끔한 테스트 방법은 동일한 콜백 호스트 이름에 대해 A 및 AAAA 레코드를 비교하고, 리버스 프록시 및 애플리케이션 로그를 관찰하며, 무작위로 리디렉션 URL을 변경하는 대신 실패하는 주소 패밀리만 제거하거나 수정하는 것입니다.
정확한 콜백 URL과 실패 단계를 기록하세요
애플리케이션에서 생성된 콜백 URL과 외부 제공자에 등록된 리디렉션 URI를 복사하세요. 네트워크 테스트 전에 스킴, 호스트 이름, 포트, 경로, 후행 슬래시, 대소문자를 비교하세요.
콜백 디버깅 가이드는 OAuth 리디렉션이 정확한 URI 일치를 요구한다는 점을 강조합니다. 기본 서비스가 도달 가능하더라도 말입니다. IPv6는 요청이 홈 서버에 도달하기 전에 발생하는 제공자 측 불일치를 설명하지 못합니다.
증상을 분류하세요: 제공자가 URI를 거부하는지, 브라우저가 시간 초과하는지, 프록시가 502를 반환하는지, TLS가 실패하는지, 또는 앱이 콜백을 받지만 잘못된 다음 URL을 생성하는지 여부입니다. 이는 첫 번째 테스트가 제공자 구성, DNS, 전송, 프록시 또는 애플리케이션 설정 중 어디에 속하는지 결정합니다.
콜백 호스트 이름에 대한 A 및 AAAA 응답을 비교하세요
공용 리졸버에서 콜백 호스트 이름을 쿼리하고 모든 A 및 AAAA 주소를 기록하세요. 그런 다음 해당 주소를 WAN IPv4, 위임된 IPv6 접두사, 터널 엔드포인트 또는 실제 애플리케이션을 제공하는 리버스 프록시 주소와 비교하세요.
셀프 호스팅 OAuth 사례는 리디렉션 URI 불일치와 시간 초과를 별개의 오류로 설명합니다. 올바른 콜백 문자열도 DNS가 제공자를 도달 불가능한 주소로 안내하면 실패할 수 있습니다.
호스트 이름에 활성 프록시 경로에 속하지 않는 AAAA 레코드가 있으면 일시적으로 제거하고 콜백을 반복하세요. 실패가 사라지면 테스트를 통해 IPv6 도달 가능성을 분리한 것이므로 전체 IPv6 경로가 확인될 때까지 레코드를 게시하지 마세요.
IPv4와 IPv6로 콜백 호스트를 별도로 테스트하세요
외부 듀얼 스택 시스템에서 동일한 콜백 호스트 이름과 경로에 대해 하나는 IPv4, 다른 하나는 IPv6를 강제로 요청하세요. DNS 해석, TCP 연결, TLS 핸드셰이크, HTTP 상태, 응답 헤더 및 총 시간을 기록하세요.
Cloudflare의 듀얼 스택 클라이언트 동작 설명은 한 클라이언트 집단에는 서비스가 정상으로 보이지만 다른 집단은 다른 주소 패밀리나 변환 경로에 도달하는 이유를 보여줍니다.
IPv4가 성공하고 IPv6가 TLS 전에 시간 초과하면 라우터 광고, 위임된 접두사, 방화벽 규칙, 프록시 바인딩 및 반환 라우팅을 점검하세요. 둘 다 연결되지만 IPv6만 잘못된 애플리케이션 리디렉션을 생성하면 진단을 전달된 헤더와 앱 URL 생성으로 옮기세요.
리버스 프록시가 IPv6에서 수신 및 라우팅하는지 확인하세요
공용 프록시가 DNS에 광고된 IPv6 주소와 포트에서 수신하는지 확인하세요. 그런 다음 일치하는 가상 호스트, 인증서, 경로 및 백엔드 매핑이 작동하는 IPv4 수신기와 동일한지 검증하세요.
공용 n8n 지원 사례는 외부 콜백 주소가 제공자가 실제로 도달하는 URL 및 프록시 환경과 일치하지 않을 때 셀프 호스팅 애플리케이션이 사용할 수 없는 콜백을 생성하는 방법을 보여줍니다.
프록시 액세스 및 오류 로그를 보면서 강제 IPv6 콜백을 하나 보내세요. 로그 항목이 없으면 요청이 프록시 전에 중단된 것이고, 액세스 항목에 404 또는 잘못된 호스트가 있으면 가상 호스트 라우팅 문제이며, 502 또는 시간 초과는 프록시-백엔드 경로 문제입니다.
전달된 헤더와 애플리케이션 URL 설정을 확인하세요
리버스 프록시 뒤에서는 애플리케이션이 신뢰할 수 있는 전달 헤더나 명시적 환경 변수에서 공용 스킴, 호스트 및 포트를 필요로 할 수 있습니다. 없으면 내부 호스트 이름, HTTP 콜백, 사설 IPv6 주소 또는 컨테이너 포트를 생성할 수 있습니다.
애플리케이션에 표시된 콜백 URL과 프록시 및 백엔드에서 받은 요청 헤더를 비교하세요. IPv6 연결 자체가 호스트를 변경한다고 가정하지 마세요; 실제 차이는 IPv6 가상 호스트가 IPv4에서 사용되는 동일한 전달 규칙을 생략하는 것일 수 있습니다.
한 번에 하나씩 수정하세요: 공용 기본 URL, 신뢰할 수 있는 프록시 범위, 전달된 호스트, 전달된 프로토콜 또는 수신기 매핑. 각 변경 후 제공자 흐름을 재테스트하고 공용 애플리케이션 주소가 실제로 변경되지 않는 한 제공자에 등록된 정확한 콜백 URL은 변경하지 마세요.
완전한 외부 테스트를 기반으로 IPv6를 유지하거나 제거하세요
콜백 호스트 이름이 올바르게 해석되고, 공용 주소에 도달 가능하며, 리버스 프록시가 올바른 인증서와 호스트를 제공하고, 백엔드가 요청을 받고, 애플리케이션이 워크플로를 완료할 때 IPv6가 준비된 것입니다.
ZimaSpace의 직접 IPv6 홈 서버 도달 가능성 설명은 더 넓은 보안 경계를 제공합니다: 전역 라우팅 가능한 주소가 명시적 방화벽 및 프록시 제어의 필요성을 제거하지 않습니다.
스택이 준비되지 않았다면 콜백 호스트 이름의 AAAA 레코드를 제거하거나 작동하는 터널 또는 프록시에서 IPv6를 종료하고 깨진 직접 경로를 게시하지 마세요. 동일한 LAN 내부가 아닌 외부 IPv6 네트워크에서 테스트한 후에만 다시 활성화하세요.
지원 및 팁
더 읽어보기

How to Reduce Plex Database Contention on a Busy Docker Host
A Plex configuration guide for busy hosts that treats the database as local application state and reduces I/O contention without inventing a shared DB...

How to Prevent Duplicate Plex Scans and Imports
A prevention guide for duplicate Plex scans and imports that removes overlapping triggers instead of disabling library updates entirely.

How to Recover Plex After Its App-Data Volume Fills Up
A recovery ladder for full Plex app-data volumes that protects the database first and avoids deleting unknown files just to make the service start.

