IPv6, question sur les blocs

Fermé
aspiownyou Messages postés 7 Date d'inscription mercredi 25 juillet 2012 Statut Membre Dernière intervention 23 septembre 2022 - Modifié le 11 avril 2022 à 12:31
brupala Messages postés 110276 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 29 septembre 2024 - 11 avril 2022 à 20:03
Bien le bonjour,
J'étudie l'IPv6 et vu que c'est vraiment différent de l'IPv4 je suis un peu perdu. Prenons l'adresse IPv6 2001:0620:0000:0000:0211:24FF:FE80:C12C, d'après ce que j'ai compris on a 8 blocs, chaque bloc est un groupe de 2 octets qui font chacun 8 octets. L'écriture est en hexadécimale mais la question que je me pose est de savoir si chaque bloc de 2 octets est la valeur de chaque octet écrit côte à côte?
Est ce que le bloc 2001 est en réalité un octet qui fait 32 bits et un autre qui en fait 1 écrit côte à côte?
Est ce que en réalité 24FF est en réalité un octet qui fait 36 bits et un autre qui en fait 255 écrit côte à côte?

En vous remerciant à l'avance de vos réponses.



Configuration: Windows / Chrome 100.0.4896.75

4 réponses

T3chN0g3n Messages postés 5035 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 27 septembre 2024 1 121
Modifié le 11 avril 2022 à 13:52
Bonjour,

Je pense que vous vous mélangez les pinceaux ... Un octet c'est fixe et ça fait 8 bits, ici chaque "blocs" est un mot de 16 bits (correspondant effectivement à deux octets) comportant 4 hexas (Un hexa est codé sur 4 bits). Pour un total de 128 bits.

Si je reprend votre exemple en binaire:
2001 c'est 0010 0000 0000 0001
24FF c'est 0010 0100 1111 1111

Est-ce que c'est plus claire ?

Vous pouvez trouver des cours détaillés sur le net, par exemple: http://tvaira.free.fr/bts-sn/reseaux/cours/cours-ipv6.pdf

Cdlt.
1
aspiownyou Messages postés 7 Date d'inscription mercredi 25 juillet 2012 Statut Membre Dernière intervention 23 septembre 2022
11 avril 2022 à 13:57
Oui effectivement mon raisonnement n'était pas bon car comme dans mon cours on parle d'un bloc qui est composé de 2 octets j'ai donc cru qu'il fallait raisonner en octets. Merci pour ta réponse et tes éclaircissements :)
0
brupala Messages postés 110276 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 29 septembre 2024 13 790
Modifié le 11 avril 2022 à 14:02
Salut,
ça ne change pas d'ipv4:
ipv4 c'est des adresses de 32 bits et ipv6 des adresses de 128 bits
en ipv4 le séparateur c'est . et en ipv6 c'est :
ipv4 sépare les octets et ipv6 sépare les blocs de 16 bits.
Chaque bloc comme tu dis représente 16 bits de l'adresse donc 2 octets.
Comme on ne veut pas écrire tout ce qui est à zéro, on est dispensé d'écrire les bits à zéro au début de chaque bloc de 16, voire tout le bloc si il n'a que des bits à zéro, dans ce cas on met ::
exemple localhost ::1 n'a que le dernier bit à 1.
dans ton exemple :0620: s'écrit :620: mais pas :62:
:0211: s'écrit :211:
:0000:0000: s'écrit ::
Mais dans :fe80: on doit écrire le zéro, sinon ça vaudrait dire :0fe8:
on n'a le droit de mettre qu'une seule fois ::
par exemple 2001::211::41 est interdit on doit écrire 2001::211:0000:0000:41 sinon ça pourrait être aussi 2001::211:0000:41 de la même façon, ce qui est différent.

pour ta question,
un octets qui fait 32 bits ? un octet c'est toujours 8 bits, 16 bits c'est 2 octets .et 4 bits c'est un chiffre hexadécimal, donc un octet, c'est 2 chiffres hexa ou entre 1 et 3 en décimal
donc 16 bits, c'est toujours 4 chiffres hexa et entre 1 et 5 chiffres décimal (0000 à ffff) et 1 à 65535
2001 c'est un octet de valeur 0010 0000 (32) suivi d'un octet de valeur 0000 0001 (1)
24FF c'est un octet de valeur 0010 0100 (36) suivi d'un octet de valeur 1111 1111 (255)
2001:24ff en ipv4 aurait été écrit 32.1.36.255

https://www.commentcamarche.net/informatique/technologies/24919-code-binaire-principe-codage-regles-symboles/
0
aspiownyou Messages postés 7 Date d'inscription mercredi 25 juillet 2012 Statut Membre Dernière intervention 23 septembre 2022
Modifié le 11 avril 2022 à 19:18
Merci pour vos réponses, je vais profiter de ce post pour poser d'autres questions sur l'IPv6.
J'ai fait un ipconfig pour connaître mon adresse IPv6 et je tombe sur fe80::5961:4623:e2e9:6164%10
Je n'ai aucun problème pour ce qui concerne l'écriture simplifiée d'une adresse IPv6 par contre que représente %10? S'agit il de la notation CIDR? Si c'est le cas on est pas censé l'écrire sous cette forme /10? A moins que cela change en IPv6 ou alors c'est juste Windows qui décide de l'écrire de cette manière?
0
brupala Messages postés 110276 Date d'inscription lundi 16 juillet 2001 Statut Membre Dernière intervention 29 septembre 2024 13 790
11 avril 2022 à 20:03
Bonne question,
beaucoup doivent se la poser, mais ne demandent pas.
Non aucun rapport avec l'adresse elle même ton %10 désigne juste la connexion réseau
Ce 10 doit être celui dans netsh interface ip show interface ou netsh interface ipv6 show interface
C'est une erreur de conception de ipv6, je trouve, c'est dû au fait que toutes les adresses lien local ont le même préfixe fe80::/64 donc il faut autre chose pour choisir une interface, d'où ce % machin, c'est cou*llon.
C'est pareil sous linux où on doit rajouter le nom de l'interface pour un ping sur une adresse lien local.
Si on avait prévu en fin du préfixe un petit champ dans le tas des 50 et quelques bits à zéro inutiles pour en choisir, on va dire 16 pour être large qui représenteraient l'interface locale, il n'y aurait pas besoin de ce bazar étrange.
0