Quando regras PAC baseadas em tempo escolhem um proxy
Uma regra de tempo num PAC escolhe um proxy quando o encaminhamento é avaliado. Ela não promete mover uma conexão existente para uma saída nova num segundo exato.
Você pode escrever uma regra PAC que devolve um proxy pela manhã e outro mais tarde. Mas não pode inferir dessa regra que toda conexão existente do navegador troca de saída ao meio-dia.
Funções como timeRange() participam de uma decisão de encaminhamento. Não são um agendador em segundo plano que fecha túneis, migra sockets ou pede a um provedor de proxy que gire o seu IP público.
Mantenha três eventos separados:
- O navegador avalia o PAC e obtém uma rota.
- O cliente estabelece ou reutiliza uma conexão segundo as suas regras de rede.
- O serviço escolhido seleciona o endereço público para a sua conexão seguinte.
A condição de tempo diz diretamente respeito ao primeiro evento. Um download já ativo ou uma conexão duradoura é outra questão. O cache do cliente e a reutilização de conexões também significam que «o script contém uma verificação de relógio» não é prova suficiente de um calendário de troca preciso.
Se uma tarefa precisa de uma saída nova por sessão, pedido ou janela de tempo, use uma interface concebida para esse requisito e verifique o seu comportamento documentado. Um PAC pode escolher entre endpoints, mas não define o que esses endpoints fazem com os seus próprios endereços de saída.
O encaminhamento baseado em tempo pode continuar a ser útil para uma política de rede intencional. Descreva-o como escolha de uma rota no momento da avaliação, não como mecanismo garantido de rotação de IP.