A mesma identidade IKEv2 en dous iPhone? Van conectando por quendas
Un perfil copiado a dous dispositivos dá á pasarela un só peer en lugar de dous. Observe como a táboa de peers se enche e se baleira, e despois emita un valor por dispositivo.
Dous teléfonos, un perfil e un patrón que parece sobrenatural ata que alguén mira a pasarela. Un dispositivo mantén o túnel, o segundo conéctase e o primeiro pérdelo en cuestión de segundos. O primeiro reconéctase e o segundo cae. Cúlpase ao aforro de batería, ao roaming Wi-Fi e ao NAT do operador, mentres que a causa real está nun campo de texto que se copiou xunto con todo o demais. IKEv2 identifica un peer por un nome, e ambos os teléfonos presentan o mesmo.
A identidade é a clave baixo a que o servidor te garda
Dentro dun intercambio IKEv2 cada parte declara quen é: o iniciador envía un identificador local, o respondedor responde co seu e ademais comproba a identidade que o iniciador afirmou contra a política. A pasarela garda o seu estado por identidade en lugar de por dispositivo, porque un dispositivo non é algo que poida ver. Por iso dous teléfonos cun identificador chegan como un só peer, e o segundo intercambio ten que sobrescribir o primeiro. O problema só aparece mentres ambos están en uso, e por iso unha proba cun só teléfono nunca o reproduce.
Nada disto é un fallo do cliente. O cliente enviou exactamente o que o perfil lle dixo que enviase.
Como se ve a colisión desde a pasarela
Mire a lista de peers mentres ambos os teléfonos están espertos e en uso. Unha colisión mostra unha soa entrada cuxo enderezo cambia a medida que os teléfonos se alternan, e o contador de sesións activas nunca chega a dous. O desmontaxe baixo demanda ten outro aspecto, e distinguilos require unha observación en lugar dunha teoría.
| Observation | Shared identity | Idle teardown |
|---|---|---|
| Peer entries while both are awake | One, with a changing address | One per phone, or none |
| What triggers the drop | The other device connecting | Time without traffic |
| What restores it | The other device disconnecting | Any app needing the tunnel |
Anote ambos os eventos con marcas de tempo mentres ocorre. Unha caída que coincide coa conexión do outro terminal apunta ao identificador, e unha caída que chega un intervalo de inactividade despois do último paquete apunta a un temporizador.
De onde veñen os duplicados
Exportar unha configuración que funciona e editar só o enderezo do servidor produce un segundo ficheiro coa identidade do primeiro aínda dentro. Ese é o camiño habitual cara a este fallo, e adoita ocorrer ao incorporar un grupo pequeno con présa.
Os nomes dos campos fan que sexa fácil pasalo por alto. O identificador remoto nomea a pasarela que o teléfono espera, e copialo é correcto. O identificador local nomea este terminal ante a pasarela, e copiar ese valor é todo o problema.
Emita un valor por dispositivo
Use algo único para o terminal e estable durante toda a súa vida, como o identificador do dispositivo do inventario ou un valor que o seu sistema de xestión xere para cada alta. Unha etiqueta de departamento, un nome de conta de servizo compartida ou o enderezo de correo do usuario colisionan en canto esa persoa ten un segundo dispositivo.
Xere a carga útil por dispositivo en lugar de distribuír un só ficheiro. Rexistre que valor pertence a que terminal, para que unha substitución non restaure o perfil antigo e devolva o teléfono novo directamente á mesma colisión.
Comprobe tamén o lado do servidor. Unha pasarela que asigna a identidade a un enderezo de túnel fixo aínda pode colisionar cando dous identificadores distintos reciben a mesma asignación, así que confirme que o grupo ten espazo e que as asignacións non están fixadas por usuario.
Verifique con ambos os teléfonos espertos
Conecte o primeiro, chegue a un recurso privado, despois conecte o segundo e deixe ambos inactivos un minuto. As dúas sesións deberían persistir e a lista de peers debería mostrar dúas identidades. Despois bloquee e desbloquee cada teléfono para confirmar que o caso de inactividade segue comportándose ben.
Se unha soa sesión segue caendo unha vez ao día sen que nada máis se conecte, a identidade xa non é o sospeitoso. Pase aos temporizadores de inactividade e aos límites de sesión do servidor en lugar de editar o perfil outra vez.