24 votes

Pourquoi IPv6 permet-il une interface unique avec plusieurs adresses ?

"Une interface unique peut également avoir plusieurs adresses IPv6 de n'importe quel type (unicast, anycast, et multicast) ou portée" ---- forme citée RFC 4291

Récemment, j'ai rencontré cette question au cours de l'expérience que j'ai menée. J'ai parcouru le RFC 4291, sans indice...

Voici la brève introduction de mon expérience :
Il y a deux hôtes, et j'ai deux adresses IPv6 qui leur sont respectivement attribuées. Ensuite, j'ai testé la connectivité entre les deux hôtes. J'utilise la commande "ping6 ipv6_addr". Mais il s'avère qu'il est impossible d'atteindre les deux adresses de l'hôte pair avec la commande ping6.

Plus perspicace avec des exemples*(les deux commandes s'exécutent sur l'hôte A, avec linux kenel 2.6.32)* :
ping6 addr_b_1 --- ça marche
ping6 addr_b_2 --- n'a pas réussi à passer

Il y a deux questions dont je veux discuter avec vous les gars :
1. pourquoi le protocole ipv6 devrait-il permettre ce genre de mécanisme, une interface unique avec plusieurs adresses ?
2. Pourquoi ne puis-je pas accéder aux deux adresses de l'hôte a, en même temps. (ce qui aurait dû être le cas. La sélection d'adresse par défaut pour IPv6 est définie dans la RFC 3484)

Merci les gars !

45voto

Celada Points 12082

Les premières piles IPv4 ne prenaient pas en charge plus d'une adresse IP par interface. Des améliorations ultérieures ont permis d'activer les adresses "secondaires". Cette fonctionnalité s'est avérée très utile dans la pratique, et les concepteurs d'IPv6 ont choisi de l'intégrer dans la norme afin que vous puissiez toujours compter sur cette possibilité.

Les concepteurs de l'IPv6 ne se sont pas contentés de le rendre obligatoire. Ils en ont fait une partie importante du protocole IPv6. Chaque interface IPv6 possède une adresse IP locale de liaison. Si l'interface est également capable de communiquer sur un réseau plus large (tel qu'Internet), elle possède également une adresse globale. Cela fait au moins deux adresses. Et si l'hôte est derrière une connexion Internet multihomed, il a probablement encore plus d'adresses. Les adresses IP multiples par interface n'ont pas été envisagées après coup dans IPv6 comme dans IPv4.

Vous mentionnez des inconvénients, mais sauf mauvaise configuration, je ne vois pas de problème dans cette situation. (Vous pourriez peut-être préciser votre configuration et expliquer pourquoi une adresse IP fonctionne mais pas l'autre ; cependant, je vous garantis que vous avez une erreur quelconque qui en est la cause).

D'un autre côté, pensez aux avantages :

  • Les appareils peuvent se découvrir mutuellement sur le réseau local à l'aide des adresses locales de liaison, même si aucune infrastructure réseau (c'est-à-dire un routeur) n'est disponible. Plus tard, si un routeur est ajouté et que des adresses de portée globale deviennent disponibles, ces adresses augmentent le jeu d'adresses, elles ne remplacent pas les adresses locales de liaison ; les communications existantes utilisant les adresses locales de liaison ne sont donc pas perturbées.
  • Lorsqu'une connexion Internet est abandonnée, ajoutée ou remplacée, une adresse IP du jeu peut être retirée ou ajoutée sans affecter les autres. Grâce à l'état "déprogrammé", cela permet une renumérotation gracieuse d'une adresse IP à une autre, l'interface supportant les deux pendant un certain temps.

De plus, gardez à l'esprit que presque toutes les piles IPv4 supportent aussi les adresses multiples par interface, ce n'est donc pas une grande différence entre v4 et v6. Seules les très vieilles piles v4 ne le supportent pas. La différence réside dans le fait que la v6 dispose de méthodes de gestion automatique de l'ensemble des adresses, ce qui n'est pas le cas de la v4.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X