![]() |
Licence Creative Commons by-nc-nd
(Paternité, pas d'utilisation commerciale, pas de modification) |
IPv6 CARE, "IPv6 Compliant Automatic Runtime Environment", est une boite à outils dédiée à la migration des programmes vers IPv6.
En utilisant un mécanisme avancé de détection des appels de fonctions réseau effectués par les programmes lorsqu'ils s'exécutent, l'outil permet de :
L'utilisation est très simple, il suffit de préfixer les commandes habituelles, par exemple
ipv6_care patch /etc/init.d/mysql start
Cette commande lance le service mysql avec le mode 'patch' activé de manière à le rendre compatible IPv6 (N.B. : les versions récentes de mysql sont maintenant compatibles IPv6).
On trouvera une démonstration concernant le mode 'patch' et le cas de mysql (serveur et client).
En mode 'check', le rapport généré indique, pour chaque problème détecté :
De plus il génère un fichier traçant les appels de fonctions relatifs au réseau.
IPv6 CARE fonctionne avec une très grande majorité des programmes. Plus précisément, il s'agit des programmes liés à la librairie standard C partagée, c'est à dire :
IPv6 CARE a été testé sur des systèmes Linux, FreeBSD et Open Solaris.
Il doit pouvoir fonctionner sur d'autres systèmes de type UNIX, la condition principale étant que ceux-ci disposent d'un mécanisme de chargement dynamique de librairie partagée (variable d'environnement LD_PRELOAD).
Ce programme a été développé initialement dans le cadre du projet de grille de calcul EGEE, qui devait rendre son middleware (gLite) compatible IPv6. Il a ensuite été repris par son concepteur, puis par l'équipe de recherche 'Drakkar' du Laboratoire d'Informatique de Grenoble (LIG).
Certains paramètres peuvent empêcher le chargement de IPv6 CARE à l'exécution d'un programme donné :
Le mode 'patch' a quelques limitations spécifiques :
Concernant le mode 'check', la principale difficulté concerne les langages "interprétés" (dans le sens général où ils ne sont pas compilés en langage machine). Dans ce cas, l'outil se place entre l'interpréteur et la librairie C. De ce fait, IPv6 CARE va diagnostiquer le comportement de l'interpréteur et non pas directement celui du script. Ceci rend le diagnostique généré plus difficile à comprendre.
Consulter la documentation pour plus d'informations sur ces limitations.
Ce logiciel n'a pas encore été intégré à une distribution.
Dans la version actuelle, ce logiciel fonctionne sous Linux, OpenSolaris et FreeBSD.
De manière à limiter les problèmes de portabilité, IPv6 CARE a été développé de manière à limiter au maximum ses dépendances. Celles-ci sont donc très bas niveau (librairie standard C, etc.) et ne devraient pas poser de problèmes.
En ce qui concerne le paquet source de IPv6 CARE, il se suffit donc à lui-même.
Pour le développement, le gestionnaire de version git et les "autotools" sont utilisés.
Aucun à ma connaissance.
Ce logiciel est développé dans le cadre de l'équipe DRAKKAR du LIG, par moi-même. En cas de requête de nouvelle fonctionnalité demandant un travail important, d'autres personnes pourraient être impliquées.
Ce logiciel est open source et a été diffusé sur Sourceforge pour améliorer sa diffusion et permettre une maintenance continue. D'autre part, le logiciel étant maintenant mature, il demande peu de maintenance.
Pour une éventuelle contribution, merci de contacter l'auteur de cette fiche.