Résumé

  • RFC 3041 répondait à un problème de confidentialité circonscrit : un identifiant d’interface dérivé de la couche liaison pouvait rester visible dans les adresses après le passage d’un appareil à un nouveau préfixe réseau.
  • Les adresses temporaires pouvaient compliquer un rapprochement direct fondé sur les adresses, mais elles ne masquaient ni le préfixe, ni les identifiants applicatifs, et ne rendaient pas l’hôte anonyme.

L’autoconfiguration sans état d’IPv6 (SLAAC) permettait à un hôte de former une adresse à partir d’informations locales et d’un préfixe annoncé par un routeur. Dans l’architecture examinée par RFC 3041, le préfixe indiquait la position réseau ; un identifiant d’interface complétait l’adresse. Les premiers identifiants pouvaient dériver d’un identifiant IEEE ou de couche liaison. Si cette valeur restait constante, le préfixe changeait l’adresse sans effacer une composante reconnaissable.

Cette continuité importait parce que l’adresse circule dans l’en-tête IP. Le contenu pouvait être chiffré alors que l’adresse source visible aidait encore un observateur à rapprocher plusieurs transactions. Un ordinateur portable pouvait apparaître sur différents réseaux avec des préfixes distincts et conserver pourtant, dans ses adresses, un identifiant suggérant une continuité. RFC 3041 décrivait un risque de corrélation, pas la preuve qu’un observateur avait identifié une personne ni même que tous les appareils employaient la même méthode de génération.

La proposition ne remplaçait pas SLAAC par un autre système d’adressage. Elle ajoutait des adresses temporaires de portée globale à côté des adresses ordinaires. Pour les connexions sortantes, un hôte pouvait privilégier une adresse source temporaire. Une adresse stable pouvait rester utile pour recevoir des connexions, figurer dans le DNS ou fournir aux administrateurs et aux applications un repère prévisible. Ce modèle à deux adresses faisait du choix de la source son pivot opérationnel : l’usage sortant orienté vers la confidentialité et la joignabilité entrante stable répondaient à deux besoins distincts.

RFC 3041 décrivait des identifiants d’interface aléatoires issus d’un état historique évolutif, puis les utilisait pour construire des adresses temporaires à partir des préfixes annoncés. Les valeurs par défaut suggérées étaient une durée de préférence d’un jour et une durée de validité d’une semaine, sous réserve de la politique de l’utilisateur ou de l’implémentation et des durées du préfixe. Une nouvelle adresse pouvait être générée avant la dépréciation de l’ancienne. Une adresse dépréciée pouvait rester valide pour une connexion existante, tandis que les nouvelles connexions devaient utiliser une adresse préférée.

La rotation consistait donc à gérer des états qui se chevauchent, pas à changer de source à chaque paquet.

La conception visait une clé de rapprochement précise : la réutilisation de la même composante d’adresse entre des transactions distinctes. Elle ne supprimait pas le préfixe réseau, qui pouvait encore révéler une topologie ou regrouper l’activité par lieu. Elle ne changeait pas non plus les noms DNS, les cookies, les comptes, le comportement des applications, le calendrier du trafic ni d’autres identifiants. Un serveur pouvait toujours reconnaître un compte connecté ; un observateur en chemin pouvait comparer les profils de trafic.

Une adresse temporaire pouvait également être révélée par une communication et rester utilisable pendant sa période de validité. Réduire la réutilisation des adresses ne signifie pas garantir l’anonymat.

La séparation entre adresses temporaires et stables avait aussi un coût. La rotation complique l’attribution dans les traces de paquets, les listes de contrôle d’accès, les attentes de DNS inverse, le dépannage et certaines connexions longues. Une application peut avoir besoin d’une destination stable, tandis qu’un administrateur peut préférer des journaux prévisibles. RFC 3041 laissait donc aux applications, aux implémentations et aux administrateurs de confiance une marge pour influer sur l’usage des adresses temporaires. Le réseau ne prenait pas cette décision pour chaque application.

L’histoire qui suit n’affirme pas que les détails de 2001 restent actuels. RFC 4941 a remplacé RFC 3041 en 2007, puis RFC 8981 a remplacé RFC 4941 en 2021. La lignée actuelle conserve la génération d’adresses temporaires tout en révisant les algorithmes et les recommandations. RFC 7217 et RFC 8064 portent sur un choix proche mais distinct : des identifiants stables qui n’exposent pas directement un identifiant matériel. Une adresse temporaire change dans le temps ; un identifiant stable opaque peut varier d’un réseau à l’autre tout en restant stable dans un même réseau.

La question durable de RFC 3041 n’était pas « Peut-on rendre privées les adresses IPv6 ? » Elle était plus précise : quand le préfixe réseau change, qu’est-ce qui, dans l’adresse, continue de rendre l’activité rapprochable, et qui décide de l’adresse source présentée par une application ? Les adresses temporaires réduisaient une fenêtre d’observation. Elles ne réglaient ni l’identité, ni la joignabilité, ni toutes les autres manières de relier un appareil à ses activités.

Sources