StrongSwan (como respondente) seleciona uma conexão configurada (seção conn em ipsec.conf
) para cada intenção de troca de chave do iniciador de entrada.
Em que momentos o strongSwan escolhe uma configuração de conexão? Ele restringe as conexões possíveis uma a uma com base no conhecimento reunido até agora?
Por exemplo, em uma troca IKEv2, o primeiro pacote ainda não contém o identificador (“rightid”), mas conexões com keyexchange=ikev1
já estão fora de questão.
A primeira resposta (caso não haja cookies envolvidos) já deve indicar os algoritmos selecionados para o IKE SA, então alguma conexão deve ser selecionada. Como o strongSwan poderia fazer isso naquele momento?
Uma configuração preliminar é selecionada com base nos endereços IP ( esquerda|direita ) e na versão IKE. A melhor correspondência (ou a primeira, se várias configurações corresponderem igualmente bem) é usada até que as identidades na troca IKE_AUTH estejam disponíveis.
Usando as identidades, ocorrerá uma troca para uma conexão diferente com base nos valores em left|rightid (e novamente na versão IKE). Todas as conexões correspondentes são candidatas (melhor correspondência primeiro) que podem ser alteradas posteriormente, por exemplo, com base nas rodadas de autenticação e restrições como rightca ou rightgroups .