« IPv6 » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 145 : | Ligne 145 : | ||
= Types d'adresses IPv6 = | = Types d'adresses IPv6 = | ||
IPv6 dispose des types d'adresses suivants : | IPv6 dispose des types d'adresses suivants : | ||
| | ||
Ligne 152 : | Ligne 152 : | ||
**Utilisée pour des machines connectées entre elles sans passer par un routeur. C'est un lien entre hôtes utilisant le même réseau Ethernet (switch, câble réseau, FibreOptique). Elles ne passent pas les routeurs et ne sont pas routables sur Internet. | **Utilisée pour des machines connectées entre elles sans passer par un routeur. C'est un lien entre hôtes utilisant le même réseau Ethernet (switch, câble réseau, FibreOptique). Elles ne passent pas les routeurs et ne sont pas routables sur Internet. | ||
*unicast globale | *unicast globale | ||
**Est routable sur Internet (pas de NAT sur IPv6!) : tout le monde peut en avoir une. Comme une adresse publique en IPv4. | **Est routable sur Internet (pas de NAT sur IPv6!) : tout le monde peut en avoir une. Comme une adresse publique en IPv4. | ||
*unicast de site local (déprécié): | *unicast de site local (déprécié): | ||
**Liaison entre machines appartenant à une seule et même structure ou sur le même site géographique. La communication entre hôtes ne passe par aucun routeur externe à la structure. Cette adresse est unique sur le site local, n'est utilisable que sur celui-ci et n'est pas routable sur Internet (mais elle passe les routeurs du site). S'applique à par exemple à : une entreprise avec tous ses locaux au même endroit, une filiale d'une entreprise, une association, un particulier... Mais pas à : Deux filiales d'une même entreprise (même sur le même site géographique), une entreprise sur deux sites différents... NetId différent. | **Liaison entre machines appartenant à une seule et même structure ou sur le même site géographique. La communication entre hôtes ne passe par aucun routeur externe à la structure. Cette adresse est unique sur le site local, n'est utilisable que sur celui-ci et n'est pas routable sur Internet (mais elle passe les routeurs du site). S'applique à par exemple à : une entreprise avec tous ses locaux au même endroit, une filiale d'une entreprise, une association, un particulier... Mais pas à : Deux filiales d'une même entreprise (même sur le même site géographique), une entreprise sur deux sites différents... NetId différent. | ||
*unicast unique locale | *unicast unique locale | ||
**Comme du "RFC1918++" : Le but est d'imiter les adresses IPv4 privées, de permettre à tout le monde tester IPv6 en interne, et d'éviter que le rachat d'une structure par une autre n'impose la renumérotation des réseaux grâce à un tirage aléatoire. | **Comme du "RFC1918++" : Le but est d'imiter les adresses IPv4 privées, de permettre à tout le monde tester IPv6 en interne, et d'éviter que le rachat d'une structure par une autre n'impose la renumérotation des réseaux grâce à un tirage aléatoire. | ||
*multicast | *multicast | ||
**Associée à un groupe d'hôtes. Tout le groupe est destinataire. Exemple : Neighbor Discovery, IPTV (diffusion d'un contenu identique à beaucoup d'abonnés en même temps). | **Associée à un groupe d'hôtes. Tout le groupe est destinataire. Exemple : Neighbor Discovery, IPTV (diffusion d'un contenu identique à beaucoup d'abonnés en même temps). | ||
*anycast | *anycast | ||
**Adresse associée à un groupe d'hôtes. Un seul de ce groupe d'hôte doit répondre. Exemple : Envoi d'une requête DHCP ou DNS : le premier serveur dispo me répond. | **Adresse associée à un groupe d'hôtes. Un seul de ce groupe d'hôte doit répondre. Exemple : Envoi d'une requête DHCP ou DNS : le premier serveur dispo me répond. | ||
Une adresse unicast est associée à un seul hôte, et est unique sur le lien, le site ou globalement. Rappel : le broadcast n'existe plus en IPv6. | Une adresse unicast est associée à un seul hôte, et est unique sur le lien, le site ou globalement. Rappel : le broadcast n'existe plus en IPv6. | ||
Bien entendu, une seule interface réseau aura plusieurs adresses IPv6 différentes : | Bien entendu, une seule interface réseau aura plusieurs adresses IPv6 différentes : | ||
*Une adresse unicast de lien local ("link local adress") | *Une adresse unicast de lien local ("link local adress") | ||
Ligne 171 : | Ligne 171 : | ||
*Une loopback | *Une loopback | ||
| = Auto-Configuration de l'adresse de lien local = | ||
Un ordinateur même non configuré dispose d'une adresse de lien local : celle-ci est autoconfigurée. On en a une sans rien faire et on peut l'utiliser pour contacter des machines du réseau! | |||
La SLAAC (StateLess Address Auto Configuration) Permet de s'assurer que les adresses sur le même lien peuvent communiquer ensemble, et que les adresses de lien local sont uniques. | |||
Comment faire communiquer deux machines dans un même sous-réseau? | |||
Pré-Requis: | |||
*Être dans le même sous-réseau | |||
*Disposer du même masque de sous-réseau | |||
*Pas besoin de gateway | |||
Un préfixe IPv6 est dédié aux adresses de lien local : fe80::/10 (Le /10 signifie que les caractères qui suivent les 10 premiers seront des 0; c'est la même idée qu'en IPv4).<br/> Comment générer une adresse unique? | |||
*En se basant sur quelque chose qui est déjà unique ! | |||
*En utilisant une fonction de dérivation qui est déjà unique | |||
*En contrôlant la non-duplication | |||
Pour assurer l'unicité de la link-local, on utilise l'adresse MAC, qui est unique et disponible sur toutes les cartes réseau. | |||
*Seul le HostID doit être généré | |||
*On a déjà le NetID (fe80::/10) | |||
*On a déjà les 64 premiers bits | |||
*Il nous en reste 64 à générer | |||
Fonctionnement de la SLAAC pour une link-local address: | |||
*Mettre le préfixe fe80::/64 | |||
*Prendre l'adresse MAC | |||
**La couper en deux | |||
**Ajouter FFFE au milieu | |||
**Inverser le 7e bit | |||
**Résultat : "EUI-64 modifié" | |||
*Concaténer le préfixe et l'EUI-64 modifié | |||
Exemple: | |||
Adresse MAC : f8:16:54:20:6b:8d | |||
*Je mets fffe au milieu: f816:54ff:fe20:6b8d | |||
*Je fais le complément du 7e bit : fa16:54ff:fe20:6b8d | |||
*EUI-64 modifié : fa16:54ff:fe20:6b8d | |||
*Adresse IPv6 de lien local : FE80::fa16:54ff:fe20:6b8d | |||
NB : Ce n'est pas la seule méthode, on peut aussi utiliser un chiffre au hasard et faire une vérification de non-duplication, comme c'est le cas sur Linux | |||
= Intérêt des adresses IPv6 Multicast = | |||
Une adresse Multicast correspond à un groupe de machine. Une interface étant configurée avec une adresse multicast recevra tous les paquets envoyés à cette adresse multicast. | |||
== Identifier une adresse mutlicast == | |||
Elle commence par FF: | |||
*FF00 -> Réservé | |||
*FF01 -> Adresse Multicast de la machine locale (Peu utile, sauf à échanger avec un processus interne de la machine locale) | |||
*FF02 -> Adresse Mutlticast de lien local (toutes les machines du lien local recevront les paquets) | |||
*FF05 -> Adresse Multicast de site local (Pareil pour toutes les machines du site local) | |||
*FF0E -> Adresse Multicast globale (Pareil mais pour tout Internet) | |||
Une liste est disponible : [https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml] | |||
Adresses Multicast importantes: | |||
*ff02::1 : toutes les machines du lien local | |||
*ff02::2 : tous les routeurs du lien local | |||
*ff02::101 : tous les serveurs NTP du lien local | |||
*ff05::3 : tous les serveurs dhcp du site local | |||
Pour <u>toute adresse</u> IPv6 configurée: | |||
*FF02::1:FF<span style="background-color:#e74c3c">UV:WXYZ</span> | |||
**C'est une adresse IPv6 multicast dérivée de l'adresse IPv6 | |||
**<span style="background-color:#c0392b">UVWXYZ</span> correspond aux 24 derniers bits de l'adresse IPv6 | |||
**Cette adresse multicast est utilisée pour Neighbor Discovery (ND) et Duplicate Address Detection (DAD) | |||
| Si j'ai 3 adresses IPv6 configurées, j'aurais 3 adresses multicast automatiquement générées. L'intérêt et de ne plus demander de configuration manuelle : je pourrais travailler avec lde l'autoconfiguration et des adresses multicast; multicast tient d'ailleurs lieu de broadcast. Tout ça fonctionne grâce à SLAAC, ND et DAD. | ||
| Je peux utiliser <code>ip maddr show dev enp0s31f</code>6 pour voir mes adresses MAC et mes adresses de multicast IPv6 correspondantes. J'ai plusieurs adresses MAC configurées par IPv6 (sur Linux en tout cas) : IPv6 "fabrique" des adresses MAC correspondant aux adresses IPv6 (tous types d'adresses : unicast, lien local...). Par exemple l'adresse mac "33:33:00:00:00:01" correspond à l'adresse de multicast "ff02::1" : un message envoyé à ff02::1 aura pour destinataire Ethernet 33:33:00:00:00:01. | ||
| Un exemple de la commande <code>ip maddr show dev enp0s31f</code>6 sur mon PC: | ||
<div style="background:#eeeeee; border:1px solid #cccccc; padding:5px 10px"> | |||
2: enp0s31f6<br/> link 01:00:5e:00:00:01<br/> link 33:33:00:00:00:01<br/> link 33:33:ff:7b:5f:64<br/> link 01:00:5e:00:00:fb<br/> link 33:33:ff:bc:1b:d2<br/> link 33:33:ff:e4:8f:c8<br/> link 33:33:00:00:00:fb<br/> inet 224.0.0.251<br/> inet 224.0.0.1<br/> inet6 ff02::fb<br/> inet6 ff02::1:ffe4:8fc8<br/> inet6 ff02::1:ffbc:1bd2<br/> inet6 ff02::1:ff7b:5f64<br/> inet6 ff02::1 users 2<br/> inet6 ff01::1 | |||
</div> | |||
On voit qu'IPv6 a aussi un impact sur Ethernet : TCP/UDP ne sont pas les seuls protocoles à avoir été pris en compte. |
Version du 4 novembre 2018 à 21:56
Introduction au protocole IPv6
Remplaçant d'IPv4, il est essentiel de le connaître pour l'avenir.
NB : IPv6 est également détaillé dans Cisco
Rappel Historique
En 1993, le web a commencé à exploser : sites web d'entreprise et accès internet deviennent essentiels. Le problème était alors que l'espace d'adressage IPv4 à rapidement commencé à se réduire.Des blocs d'adresses IPv4 trop conséquents ont été fournis aux structures. On a alors créé des solutions de contournement:
- CIDR abolition des classes, découpage en blocs de taille variable plus précis... Avant cela on fournissait soit des bloc de 256 adresses soit des blocs de 16 millions ! Aujourd'hui les tailles sont adaptées aux besoins réels.
- En 1996, la RFC1918 concernant les adresses privées et le NAT est apparue pour gérer l'urgence.
Mais ce ne sont que des solutions de contournement. Elles sont temporaire et ont des contraintes (plus de communication bout-à-bout, limite de 65000 ports pour le NAT). Une solution globale est nécessaire : IPv6.
L'organisation
L'ICANN (Internet Corporation for Internet Assigned Names and Numbers) est une autorité de régulation sur Internet, qui gère les noms DNS et les adresses IP.
L'IANA (Internet Assigned Numbers Authority) régule les adresses IP, ainsi que d'autres ressources de numérotation (ports TCP/UDP, OID SNMP, etc... Elle découpe les adresses IPv4 en 256 blocs /8 et les affecte aux RIR.
Un RIR (Regional Internet Registry) effectue la gestion régionale des adresses. Elle affecte les blocsq d'adresses aux LIR. La liste des RIR est dispo dans la partie Cisco
Les LIR (Local Internet Registry) Fournissent les adresses à des clients finaux : par exemple chez ceux inscrits chez RIPE NCC on a entre autres : Orange, Free, SFR, OVH, Oxalide, Online, Renater, Renault SAS France, RTE France, etc...
Le 03/02/2011 : L'IANA a confié ses 5 derniers blocs /8 aux 5 RIR : "EndGame"
Le 15/04/2011 : L'APNIC a annoncé avoir commencé l'attribution du dernier /8 en sa possession
Le 14/09/2012 : Le RIPE NCC a annoncé la même chose.
Le 25/09/2015 : L'ARIN n'as plus d'adresses IPv4, trop de demandes en attente par rapport au nombre disponible.
Les règles d'attribution du RIPE NCC aux LIR des blocs IPv4 ont été durcies lors du EndGame, par exemple:
- Utiliser au moins 25% de l'attribution immédiatement
- Utiliser au moins 50% au bout d'un an
- La réservation d'adresses est interdite
- La taille d'une réservation ne se justifie que par le nombre d'appareils nécsessitant une adresse IPv4
- Les technologies permettant d'économiser l'utilisation d'adresses sont encouragées.
La consommation d'adresses après EndGame s'est fortement stabilisée.
Les problèmes d'adressage ont été détectés dès 1993; la fin des spécifications IPv6 a eu lieu dès 1998. Et pourtant seuls 8% des utilisateurs de Google passaient par IPv6 en 2015.
En fonction des pays, IPv6 n'est pas forcément fiable ou rapide à l'utilisation, comme en France ou en Allemagne (contrairement à la Belgique ou aux USA, par exemple.
En juillet 2016:
- France : 11.24% d'adoption
- Belgique : 44%
- USA : 29%
- Allemagne : 23.51%
Différences et points communs avec IPv4
IPv6 est moins bien maîtrisé par les administrateurs s&r. Beaucoup ont l'habitude d'IPv4, mais très peu avec IPv6; il est très peu déployé. On a pourtant beaucoup de points communs :
- Même principe d'encapsulation
- On a toujours adresse source et destination
- On a un routeur par défaut
- On a un MTU
- On a un en-tête.
Mais aussi des différences:
- Un adressage sur 128 bits
- Auto-configuration avec la SLAAC
- Suppression du broadcast et de l'ARP remplacés par multicast et Neighbor Discovery
- Adresse de lien local
- Header de taille fixe qui rend plus simple le code du routeur, et celui-ci est plus performant
- ICMPv6, bien plus important qu'ICMPv4
- Pas de NAT!
- Meilleur support d'IPSec (même si il n'est pas obligatoire)
Point important, on a pas de séparation claire des couches dans le modèle TCP/IP:
- TCP a été légèrement adapté pour IPv6, tout comme UDP
- Ethernet a été légèrement adapté pour IPv6
Bases sur l'adressage IPv6
Les adresses sur 128 bits sont 4 fois plus longues qu'en IPv4; mais ce n'est que la taille de l'adresse : ça ne veut pas dire qu'il n'y a que 4 fois plus d'adresses. En IPv4 on a 4 294 967 296 adresses; en IPv6 on en a 2¹²⁸, soit 3.4*10³⁸, soit BEAUCOUP. On pourrait donner 67 milliard de milliard d'adresses par mm carré de la surface terrestre.
Une adresse IPv6:
- Sur 128 bits donc,
- Découpée en 8 mots de 16 bits
- Qui sont séparés par des :
- Chaque mot est représenté en hexadécimal
Exemples : 2001:0660:3004:4000:0000:0000:0010:0053, fe80:000:000:000:76d0:2bff:fe98:42d7. 2001 est un mot, 0660 un autre mot... Ici, 2001 n'est pas "deux mille un", mais "deux zéro zéro un", puisqu'on est en hexa.
- Un mot codé sur 16 bits contient 4 caractères, et un caractère (de 0 à F) est codé sur 4 bits.
- Attention:
- 10 n'est pas la suite de 09, puisque 1016 == 1610 (10 en hexa est la suite de F)
- 0916 == 0910, en revanche.
C'est difficile au début, parce que l'on est habitué à la base 10 (en Europe en tout cas), où l'on peut compter sur ses doigts. Mais avec de la pratique, cela devient une habitude.
Raccourcir les adresses
- On peut supprimer les 0 en tête de champ (ou en tête de mot, mot == champ)
- Si un champ est composé que de 0, on en laisse un
- Attention, on enlève pas les 0 en fin de champ ! Comme en décimal, 416 != 4016
- On peut remplacer les champs remplis de 0 consécutifs en les remplaçant par "::", une seule fois par adresse, en général au début
- 2001:0:0:4000:0:010:53 devient 2001::4000:0:010:53...
- ...mais pas 2001::4000::010:53
- Sinon on ne sait pas combien de champs à 0 ont été supprimés par :: !
Network ID et Host ID
Une adresse IPv6 de 8 mots de 128 bits est découpée en deux parties :
- 4 mots pour le Network ID, la partie réseau sue 64 bits.
- 4 mots pour le Host ID, 64 bits aussi appellés identifiant de l'hôte.
Le plus petit réseau possible en IPv6 est un /64 (pas de /65 ou plus possible !), même pour les particuliers. Un tel réseau permettrait de faire chez soi un réseau plus grand que tout Internet IPv4 !
Network ID
Première partie de l'adressage. L'adresse réseau est forcément notée au format CIDR (X:Y:Z::/NN), et tous les zéros qui suivent sont remplacés par ::. Exemples:
- 2001:660::/32 : RENATER
- 2001:660:3004::/48 : IRCAM
- 2620:0:860::/46 : Wikipédia
On voit ici que ces réseaux ne sont par arrivés au /64, ce qui leur laisse de la place pour faire des sous-réseaux. Ici L'IRCAM, qui appartient à RENATER, lui a demandé un sous-réseau (Le réseau IRCAM est un sous-réseau de celui de RENATER). Ces 64 premiers bits sont tout l'espace que l'on a pour faire des réseaux et des sous-réseaux; les 64 autres seront forcément réservés aux hôtes.
Boucle Locale
La loopback IPv4 était dans /8 (un gros gâchis). La loopback IPv6 est ::1/128. On voit qu'elle ne contient qu'une seule adresse.
À Noter
- Un client final dispose d'un réseau de taille X;
- Cette taille X devra être un multiple de 4:
- Le masque sera identique pour toutes les adresses
- Personne ne disposera du même numéro de masque
- En gros, ça permet de tomber à la coupure entre deux champs
- Par exemple le réseau de Wikipédia, 2620:0:860::/46, qui est non multiple de 4, a pour première adresse 2620:0:860:: et pour dernière adresse 2620:0:0863:ffff:ffff:ffff:ffff:ffff. On est obligé de faire un calcul mental pour connaître la dernière adresse.
- Le réseau de l'IRCAM, 2001:660:3004::/48 commence avec 2001:660:3004:: et finit avec 2001:660:3004:ffff:ffff:ffff:ffff:ffff. On voit que les champs du NetID ne changent pas.
Types d'adresses IPv6
IPv6 dispose des types d'adresses suivants :
- Unicast de lien local
- Utilisée pour des machines connectées entre elles sans passer par un routeur. C'est un lien entre hôtes utilisant le même réseau Ethernet (switch, câble réseau, FibreOptique). Elles ne passent pas les routeurs et ne sont pas routables sur Internet.
- unicast globale
- Est routable sur Internet (pas de NAT sur IPv6!) : tout le monde peut en avoir une. Comme une adresse publique en IPv4.
- unicast de site local (déprécié):
- Liaison entre machines appartenant à une seule et même structure ou sur le même site géographique. La communication entre hôtes ne passe par aucun routeur externe à la structure. Cette adresse est unique sur le site local, n'est utilisable que sur celui-ci et n'est pas routable sur Internet (mais elle passe les routeurs du site). S'applique à par exemple à : une entreprise avec tous ses locaux au même endroit, une filiale d'une entreprise, une association, un particulier... Mais pas à : Deux filiales d'une même entreprise (même sur le même site géographique), une entreprise sur deux sites différents... NetId différent.
- unicast unique locale
- Comme du "RFC1918++" : Le but est d'imiter les adresses IPv4 privées, de permettre à tout le monde tester IPv6 en interne, et d'éviter que le rachat d'une structure par une autre n'impose la renumérotation des réseaux grâce à un tirage aléatoire.
- multicast
- Associée à un groupe d'hôtes. Tout le groupe est destinataire. Exemple : Neighbor Discovery, IPTV (diffusion d'un contenu identique à beaucoup d'abonnés en même temps).
- anycast
- Adresse associée à un groupe d'hôtes. Un seul de ce groupe d'hôte doit répondre. Exemple : Envoi d'une requête DHCP ou DNS : le premier serveur dispo me répond.
Une adresse unicast est associée à un seul hôte, et est unique sur le lien, le site ou globalement. Rappel : le broadcast n'existe plus en IPv6.
Bien entendu, une seule interface réseau aura plusieurs adresses IPv6 différentes :
- Une adresse unicast de lien local ("link local adress")
- Une adresse unicast globale
- Et peut-être une adresse unicast de site local
- Une loopback
Auto-Configuration de l'adresse de lien local
Un ordinateur même non configuré dispose d'une adresse de lien local : celle-ci est autoconfigurée. On en a une sans rien faire et on peut l'utiliser pour contacter des machines du réseau!
La SLAAC (StateLess Address Auto Configuration) Permet de s'assurer que les adresses sur le même lien peuvent communiquer ensemble, et que les adresses de lien local sont uniques.
Comment faire communiquer deux machines dans un même sous-réseau?
Pré-Requis:
- Être dans le même sous-réseau
- Disposer du même masque de sous-réseau
- Pas besoin de gateway
Un préfixe IPv6 est dédié aux adresses de lien local : fe80::/10 (Le /10 signifie que les caractères qui suivent les 10 premiers seront des 0; c'est la même idée qu'en IPv4).
Comment générer une adresse unique?
- En se basant sur quelque chose qui est déjà unique !
- En utilisant une fonction de dérivation qui est déjà unique
- En contrôlant la non-duplication
Pour assurer l'unicité de la link-local, on utilise l'adresse MAC, qui est unique et disponible sur toutes les cartes réseau.
- Seul le HostID doit être généré
- On a déjà le NetID (fe80::/10)
- On a déjà les 64 premiers bits
- Il nous en reste 64 à générer
Fonctionnement de la SLAAC pour une link-local address:
- Mettre le préfixe fe80::/64
- Prendre l'adresse MAC
- La couper en deux
- Ajouter FFFE au milieu
- Inverser le 7e bit
- Résultat : "EUI-64 modifié"
- Concaténer le préfixe et l'EUI-64 modifié
Exemple:
Adresse MAC : f8:16:54:20:6b:8d
- Je mets fffe au milieu: f816:54ff:fe20:6b8d
- Je fais le complément du 7e bit : fa16:54ff:fe20:6b8d
- EUI-64 modifié : fa16:54ff:fe20:6b8d
- Adresse IPv6 de lien local : FE80::fa16:54ff:fe20:6b8d
NB : Ce n'est pas la seule méthode, on peut aussi utiliser un chiffre au hasard et faire une vérification de non-duplication, comme c'est le cas sur Linux
Intérêt des adresses IPv6 Multicast
Une adresse Multicast correspond à un groupe de machine. Une interface étant configurée avec une adresse multicast recevra tous les paquets envoyés à cette adresse multicast.
Identifier une adresse mutlicast
Elle commence par FF:
- FF00 -> Réservé
- FF01 -> Adresse Multicast de la machine locale (Peu utile, sauf à échanger avec un processus interne de la machine locale)
- FF02 -> Adresse Mutlticast de lien local (toutes les machines du lien local recevront les paquets)
- FF05 -> Adresse Multicast de site local (Pareil pour toutes les machines du site local)
- FF0E -> Adresse Multicast globale (Pareil mais pour tout Internet)
Une liste est disponible : https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml
Adresses Multicast importantes:
- ff02::1 : toutes les machines du lien local
- ff02::2 : tous les routeurs du lien local
- ff02::101 : tous les serveurs NTP du lien local
- ff05::3 : tous les serveurs dhcp du site local
Pour toute adresse IPv6 configurée:
- FF02::1:FFUV:WXYZ
- C'est une adresse IPv6 multicast dérivée de l'adresse IPv6
- UVWXYZ correspond aux 24 derniers bits de l'adresse IPv6
- Cette adresse multicast est utilisée pour Neighbor Discovery (ND) et Duplicate Address Detection (DAD)
Si j'ai 3 adresses IPv6 configurées, j'aurais 3 adresses multicast automatiquement générées. L'intérêt et de ne plus demander de configuration manuelle : je pourrais travailler avec lde l'autoconfiguration et des adresses multicast; multicast tient d'ailleurs lieu de broadcast. Tout ça fonctionne grâce à SLAAC, ND et DAD.
Je peux utiliser ip maddr show dev enp0s31f
6 pour voir mes adresses MAC et mes adresses de multicast IPv6 correspondantes. J'ai plusieurs adresses MAC configurées par IPv6 (sur Linux en tout cas) : IPv6 "fabrique" des adresses MAC correspondant aux adresses IPv6 (tous types d'adresses : unicast, lien local...). Par exemple l'adresse mac "33:33:00:00:00:01" correspond à l'adresse de multicast "ff02::1" : un message envoyé à ff02::1 aura pour destinataire Ethernet 33:33:00:00:00:01.
Un exemple de la commande ip maddr show dev enp0s31f
6 sur mon PC:
2: enp0s31f6
link 01:00:5e:00:00:01
link 33:33:00:00:00:01
link 33:33:ff:7b:5f:64
link 01:00:5e:00:00:fb
link 33:33:ff:bc:1b:d2
link 33:33:ff:e4:8f:c8
link 33:33:00:00:00:fb
inet 224.0.0.251
inet 224.0.0.1
inet6 ff02::fb
inet6 ff02::1:ffe4:8fc8
inet6 ff02::1:ffbc:1bd2
inet6 ff02::1:ff7b:5f64
inet6 ff02::1 users 2
inet6 ff01::1
On voit qu'IPv6 a aussi un impact sur Ethernet : TCP/UDP ne sont pas les seuls protocoles à avoir été pris en compte.