Je suis en IPv6-only + DNS64/NAT64 sur les LANs depuis des années et je n'ai jamais remarqué ce souci. Côté mobile, chez Bouygues, c'est la même config: aucun souci.
Je peux penser à deux choses (dont certaines ont été mentionnées plus haut):
- les annonces RA trop fréquentes. Sur le VLAN wifi, j'annonce des RA toutes les 5 minutes (car parfois ils se perdent, vu que c'est du multicast) -> aucun souci d'autonomie sur deux iPhones différents.
- des timers de connection tracking (firewall ou NAT64 ou NAT44) trop faibles, qui obligent le téléphone à ré-établir sa connexion TCP pour les notifications au lieu de la garder ouverte pendant longtemps. Apple n'expose à priori pas encore ces endpoints en v6, donc chez moi ca passe par le NAT64 -> aucun souci non plus chez moi.
Sur iPhone, la gestion des NS/RA est assez bien faite : c'est le chip wifi qui fait le processing et qui ne réveille le CPU que si nécessaire. Il me semble qu'il peut même répondre aux NS sans réveiller le CPU, mais je ne suis plus sûr d'où j'ai vu ca.
Oui, Free fait utiliser le 464XLAT, qui doit être géré localement. En théorie, ça induit des calculs supplémentaires localement pour la traduction des adresses. En pratique, je crois me souvenir avoir lu que l'impact est vraiment négligeable au point de ne pas être mesurable
Il y a deux facons de gérer le CLAT sur iOS:
- du "bump in the API" où le système va générer automatiquement un socket v6 lorsqu'une application veut se connecter à une destination v4-only,
- un CLAT (ajouté relativement récemment) pour les applications v4-only qui manipulent les sockets directement, sans passer par la surcouche de gestion des sockets iOS (CFNetwork? Je sais plus).
Dans le premier cas, il n'y aura pas d'overhead car le traffic est directement v6 : pas besoin de passer par le CLAT pour faire une translation supplémentaire.
Dans le 2e, il y a potentiellement un impact si le device fait beaucoup de traffic v4. Si c'est super faible, c'est l'épaisseur du trait.
À mon sens, le problème de notre ami K-L est ailleurs.
Peux-tu vérifier tes timers RA, router et address lifetime ?
EDIT: pour donner une idée de quand je dis "aucun souci": un iPhone 8 vieillot tient ~1,5 jours sur une charge, un iPhone 10 tient ~2 jours. On est pas des méga utilisateurs non plus, mais je bosse avec le mien, tout de même.
J'ajouterai que background app refresh est désactivé sur les deux. J'ai pas encore vraiement compris à quoi ca sert (tout fonctionne normalement sans que je manque de notifications) mais par contre, ca fait une différence d'autonomie assez incroyable.