O IPv6 está a interromper um callback quando o fornecedor seleciona um caminho AAAA que o seu proxy, firewall, TLS ou aplicação não consegue completar.
Numa stack de servidor doméstico auto-hospedado, um navegador pode carregar a aplicação via IPv4 enquanto um fornecedor OAuth, remetente de webhook, rede móvel ou API externa escolhe IPv6 para o pedido de retorno. O teste limpo é comparar o mesmo hostname do callback sobre registos A e AAAA, observar os logs do proxy reverso e da aplicação, e remover ou reparar apenas a família de endereços que falha em vez de alterar URLs de redirecionamento aleatoriamente.
Registe o URL Exato do Callback e a Fase da Falha
Copie o URL do callback gerado pela aplicação e o URI de redirecionamento registado com o fornecedor externo. Compare o esquema, hostname, porta, caminho, barra final e maiúsculas/minúsculas antes de testar a rede.
Um guia de depuração de callbacks enfatiza que os redirecionamentos OAuth requerem correspondência exata do URI de redirecionamento mesmo quando o serviço subjacente é acessível. O IPv6 não pode explicar uma incompatibilidade do lado do fornecedor que ocorre antes de qualquer pedido chegar ao seu servidor doméstico.
Classifique o sintoma: o fornecedor rejeita o URI, o navegador expira, o proxy retorna 502, o TLS falha, ou a aplicação recebe o callback mas gera o URL seguinte errado. Isto determina se o primeiro teste pertence à configuração do fornecedor, DNS, transporte, proxy ou definições da aplicação.
Compare as Respostas A e AAAA para o Hostname do Callback
Consulte o hostname do callback num resolvedor público e registe todos os endereços A e AAAA. Depois compare esses endereços com o IPv4 WAN, prefixo IPv6 delegado, ponto final do túnel ou endereço do proxy reverso que realmente serve a aplicação.
Um caso OAuth auto-hospedado descreve incompatibilidade do URI de redirecionamento e timeout como erros distintos. Uma string de callback correta pode ainda falhar quando o DNS direciona o fornecedor para um endereço inacessível.
Se o hostname tiver um registo AAAA que não pertence ao caminho ativo do proxy, remova-o temporariamente e repita o callback. Se a falha desaparecer, o teste isolou a acessibilidade IPv6; não deixe o registo publicado até que o caminho IPv6 completo seja verificado.
Teste o Host do Callback Separadamente em IPv4 e IPv6
De um sistema externo dual-stack, force um pedido via IPv4 e outro via IPv6 para o mesmo hostname e caminho do callback. Registe a resolução DNS, ligação TCP, handshake TLS, estado HTTP, cabeçalhos de resposta e tempo total.
A explicação da Cloudflare sobre comportamento de cliente dual-stack mostra porque um serviço pode parecer saudável para uma população de clientes enquanto outra alcança uma família de endereços ou caminho de tradução diferente.
Se o IPv4 tiver sucesso e o IPv6 expirar antes do TLS, inspecione o anúncio do router, prefixo delegado, regras de firewall, ligação do proxy e roteamento de retorno. Se ambos conectarem mas só o IPv6 produzir o redirecionamento errado da aplicação, mova o diagnóstico para cabeçalhos encaminhados e geração do URL da aplicação.
Verifique se o Proxy Reverso Escuta e Roteia em IPv6
Confirme que o proxy público escuta no endereço IPv6 e porta anunciados no DNS. Depois verifique se o host virtual correspondente, certificado, rota e mapeamento do backend são idênticos ao ouvinte IPv4 funcional.
Um caso público de suporte n8n mostra como uma aplicação auto-hospedada pode gerar um callback inutilizável quando o endereço de callback externo não corresponde ao URL e ambiente do proxy que o fornecedor realmente alcança.
Envie um callback IPv6 forçado enquanto observa os logs de acesso e erro do proxy. Nenhuma entrada de log significa que o pedido parou antes do proxy; uma entrada de acesso com 404 ou host errado aponta para roteamento do host virtual; um 502 ou timeout aponta para o caminho proxy-para-backend.
Verifique os Cabeçalhos Encaminhados e as Definições do URL da Aplicação
Por trás de um proxy reverso, a aplicação pode precisar do esquema público, host e porta a partir de cabeçalhos encaminhados confiáveis ou variáveis de ambiente explícitas. Sem eles, pode gerar um hostname interno, callback HTTP, endereço IPv6 privado ou porta do contentor.
Compare o URL do callback exibido pela aplicação com os cabeçalhos do pedido recebidos no proxy e backend. Não presuma que a ligação IPv6 em si altera o host; a verdadeira diferença pode ser que o host virtual IPv6 omite as mesmas regras de encaminhamento usadas pelo IPv4.
Aplique uma correção de cada vez: URL base pública, intervalo de proxy confiável, host encaminhado, protocolo encaminhado ou mapeamento do ouvinte. Reteste o fluxo do fornecedor após cada alteração e mantenha o URL exato do callback registado no fornecedor inalterado a menos que o endereço público da aplicação realmente mude.
Mantenha ou Remova o IPv6 com Base no Teste Externo Completo
O IPv6 está pronto apenas quando o hostname do callback resolve corretamente, o endereço público é acessível, o proxy reverso serve o certificado e host corretos, o backend recebe o pedido e a aplicação completa o fluxo de trabalho.
A explicação da ZimaSpace sobre acessibilidade direta de servidor doméstico via IPv6 fornece o limite de segurança mais amplo: endereçamento globalmente roteável não elimina a necessidade de controlos explícitos de firewall e proxy.
Se a stack não estiver pronta, remova o registo AAAA do hostname do callback ou termine o IPv6 num túnel ou proxy funcional em vez de publicar um caminho direto quebrado. Reative-o apenas após testar a partir de uma rede IPv6 externa, não apenas dentro da mesma LAN.
Suporte e Dicas
Mais para Ler

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.

