Objectifs de certification
CCNA 200-301
1.8 Configurer et vérifier l’adressage et les préfixes IPv6
1.9 Comparer les types d’adresses IPv6
- 1.9.a Global unicast
- 1.9.b Unique local
- 1.9.c Link local
- 1.9.d Anycast
- 1.9.e Multicast
- 1.9.f Modified EUI 64
1.10 Vérifier les paramètres IP des OS clients (Windows, Mac OS, Linux)
Les adresses IPv6 Unicast
Parmi les adresses IPv6 Unicast, on trouve plusieurs classes réservées à certains usages.
- Node-Local
::1/128
: adresse de bouclage - Link-Local
fe80::/10
: adresse obligatoire et indispensable au bon fonctionnement du protocole - Global Unicast
2000::/3
: adresse publique - Unique Local
fc00::/7
(c’est le préfixefd00::/8
qui est utilisé : adresse privée (aléatoire))
Une adresse Anycast ne se distingue pas d’une adresse Unicast ; ce terme “Anycast” désigne une adresse de livraison qui atteindra sa destination par une technique de routage au plus proche ou au plus efficient.
On remarquera : Unspecified ::/128
: route non spécifiée, et Default Route ::/0
: route par défaut.
1. Adresse IPv6 Unicast de bouclage (::1/128
)
On distinguera la notion d’interface de bouclage et de celle d’adresse de bouclage (loopback).
L’interface lo
ne dispose pas d’adresse IPv6 Link-Local : elle ne peut d’ailleurs communiquer qu’avec elle-même.
En IPv6, le bouclage indispensable aux systèmes d’exploitation est adressé par une seule adresse spéciale ::1/128
.
Microsoft Windows [Version 10.0.16299.309]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\user>netsh interface ipv6 show address
Interface 1: Loopback Pseudo-Interface 1
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Other Preferred infinite infinite ::1
(...)
2. Adressage IPv6 Link-Local Unicast
2.1. Adresses IPv6 Link-Local (fe80::/10
)
Une adresse Link-Local est une adresse qui ne porte que sur le lien (L2) et qui n’est jamais transféré par les routeurs. Elle sert à joindre les voisins sur un même lien. Toutes les interfaces IPv6 disposent d’une adresse Link-Local.
Ses 10 premiers bits sont codés en 1111111010
pour donner en hexadécimal un bloc fe80::/10
.
2.2. Caractéristiques d’une adresse IPv6 Link-Local
- Une adresse Link-Local est obligatoire sur chaque interface activée en IPv6.
- Elle est générée automatiquement et elle est censée être unique sur le lien.
- On la reconnaît par son préfixe
fe80::/10
ou ses dix premiers bits à1111111010
. - Cette destination est purement locale sur la liaison de l’interface. Les routeurs IPv6 ne transfèrent pas cette destination.
- Leurs durées de vie Valid Lifetime et Preferd Lifetime sont infinies.
- Configurées sur les interfaces leur masque est obligatoirement
/64
.
2.3. Reconnaître une adresse IPv6 Link-local
Dans cette sortie, on reconnaît quatre interfaces, chacune avec une adresse IPv6 Link-Local, hors l’interface de loopback.
- Interface 13: Teredo Tunneling Pseudo-Interface:
fe80::1010:1e8f:3f57:fe54%13
- Interface 12: Ethernet0 :
fe80::a973:10e1:e029:d1bb%12
- Interface 4: Bluetooth Network Connection :
fe80::68c0:6c2e:fe7c:4c9b%4
Microsoft Windows [Version 10.0.16299.309]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\user>netsh interface ipv6 show address
Interface 1: Loopback Pseudo-Interface 1
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Other Preferred infinite infinite ::1
Interface 13: Teredo Tunneling Pseudo-Interface
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Public Preferred infinite infinite 2001:0:9d38:6abd:1010:1e8f:3f57:fe54
Other Preferred infinite infinite fe80::1010:1e8f:3f57:fe54%13
Interface 12: Ethernet0
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:4b3::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:4b3:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:4b3:b937:ea7c:7175:5743
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:1ded::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:1ded:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:1ded:b937:ea7c:7175:5743
Public Preferred infinite infinite fd8f:cafe:1ab:0:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s fd8f:cafe:1ab:0:b937:ea7c:7175:5743
Other Preferred infinite infinite fe80::a973:10e1:e029:d1bb%12
Interface 4: Bluetooth Network Connection
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Other Deprecated infinite infinite fe80::68c0:6c2e:fe7c:4c9b%4
2.4. Utilité d’une adresse IPv6 Link-Local
Quel est leur usage ? On peut les comparer légèrement aux adresses APIPA IPv4 169.254.0.0/16
.
Mais Neighbor Discovery (ND) indispensable au fonctionnement d’IPv6, DHCPv6 (à des fins de gestion), les protocoles de routage utilisent aussi ces adresses. Leur usage est devenu un standard. On peut aussi les utiliser pour héberger un service local ou pour faire du diagnostic ICMPv6.
Attention, une interface ne peut pas fonctionner sans disposer d’une telle adresse Link-Local ! Elle est indispensable au fonctionnement ultérieur d’IPv6 sur la connexion : découverte de routes, de routeurs, de serveurs de nom ou DHCPv6. Chaque interface activée en IPv6 doit disposer de ce type d’interface.
2.5. Portée d’une adresse IPv6 Link-Local
Aussi, on remarquera le modulo %
suivi du chiffre X. Cette valeur identifie dans Windows l’interface associée à l’adresse. En effet, sur un ordinateur ou sur un routeur disposant de plusieurs interfaces, on trouvera le même bloc IPv6 fe80::/64
utilisé par plusieurs interfaces qui ne transfèrent pas ce trafic. Elles sont nécessairement associées par les systèmes avec leur interface de sortie.
3. Adressage IPv6 Global Unicast (2000::/3
)
3.1. Adresses IPv6 Global Unicast
On pourrait identifier plusieurs adresses Global Unicast sur les interfaces, soit l’équivalent de nos adresses IPv4 publiques. On les définira plus précisément comme des destinations publiées sur l’Internet. Les routeurs transfèrent le trafic vers ces destinations. Elles sont donc “globalement routables”.
3.2. Format des adresses Global Unicast
Le format des adresses IPv6 Global Unicast est défini dans les RFC 3587 et RFC 3177 :
- Le “global routing prefix” est la partie de l’adresse assignée à un site (c’est-à-dire un ensemble de sous-réseaux et de liens). Ces numéros sont attribués par les RIRs et les ISPs. Il a une longueur par défaut de 48 bits.
- Le “subnet ID” est l’identifieant du sous-réseau dans le site. Il est géré par les administrateurs du site. Il a une longueur de 16 bits portant le masque de sous-réseau à 64 bits.
- L’“Interface ID” identifie l’interface dans le sous-réseau. C’est élément de 64 bits qui est configuré de différentes manières.
3.3. Caractéristiques des adresses IPv6 Global Unicast
Le bloc 2000::/3
est reservé à cet usage. On identifie ces adresses par une valeur comprise entre 0x2000
à 0x3FFF
sur les 4 premiers hexas de l’adresse.
Avec un tel masque, c’est 1/8 de l’espace IPv6 qui a été réservé à un usage public. En réalité la seconde moitié du bloc (3000::/4
) est réservée par l’IANA de telle sorte que seul le bloc 2000::/4
soit utilisé. Concrètement, toute adresse commençant par son premier hexa à 2
est une adrese global Unicast.
Les quatre premier bits d’une adresse IPv6 Global unicast sont toujours 0001
. De manière plus “legacy”, on peut affirmer que les trois derniers bits du premier “mot” d’une adresse IPv6 Global Unicast sont tout à zéro (000
).
3.4. Attribution des adresses IPv6 Global Unicast
IPv6 Global Unicast Address Assignments
Blocs réservés dans 2000::/3
-
2d00:0000::/8
IANA 1999-07-01 RESERVED -
2e00:0000::/7
IANA 1999-07-01 RESERVED -
2001:0000::/23
IANA 1999-07-01 whois.iana.or ALLOCATED-
2001:0000::/23
is reserved for IETF Protocol Assignments RFC2928. 2001:0000::/32
is reserved for TEREDO RFC4380.-
2001:1::1/128
is reserved for Port Control Protocol Anycast RFC7723. -
2001:2::/48
is reserved for Benchmarking RFC5180 [RFC Errata 1752]. -
2001:3::/32
is reserved for AMT RFC7450. -
2001:4:112::/48
is reserved for AS112-v6 RFC7535. -
2001:5::/32
is reserved for EID Space for LISP RFC7954. -
2001:10::/28
is deprecated (previously ORCHID) RFC4843. -
2001:20::/28
is reserved for ORCHIDv2 RFC7343. 2001:db8::/32
is reserved for Documentation RFC3849.
-
2002:0000::/16
is reserved for 6to4 RFC3056.3000:0000::/4
IANA 1999-07-01 RESERVED-
3ffe::/16
IANA 2008-04 RESERVED-
3ffe:831f::/32
was used for Teredo in some old but widely distributed networking stacks. This usage is deprecated in favor of2001::/32
, which was allocated for the purpose in RFC4380.3ffe::/16
and5f00::/8
were used for the 6bone but were returned. [RFC5156]
-
Blocs routables par RIRs
AFRINIC
2001:4200::/23
2c00:0000::/12
APNIC
2001:0200::/23
2001:0e00::/23
2001:0c00::/23
2001:4400::/23
2001:8000::/19
2001:a000::/20
2001:b000::/20
2400:0000::/12
ARIN
2001:0400::/23
2001:1800::/23
2001:4800::/23
2600:0000::/12
2610:0000::/23
2620:0000::/23
LACNIC
2001:1200::/23
2800:0000::/12
RIPE-NCC
2001:0600::/23
2001:0800::/23
2001:0a00::/23
2001:1400::/23
2001:1600::/23
2001:1a00::/23
2001:1c00::/22
2001:2000::/20
2001:3000::/21
2001:3800::/22
2001:3c00::/22
2001:4000::/23
2001:4600::/23
2001:4a00::/23
2001:4c00::/23
2001:5000::/20
2003:0000::/18
2a00:0000::/12
3.5. Comment reconnaître les adresses IPv6 Global Unicast ?
Voici une sortie focalisée sur l’interface Ethernet0
d’un ordinateur Windows :
Microsoft Windows [Version 10.0.16299.309]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\user>netsh interface ipv6 show address
(...)
Interface 12: Ethernet0
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:4b3::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:4b3:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:4b3:b937:ea7c:7175:5743
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:1ded::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:1ded:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:1ded:b937:ea7c:7175:5743
Public Preferred infinite infinite fd8f:cafe:1ab:0:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s fd8f:cafe:1ab:0:b937:ea7c:7175:5743
Other Preferred infinite infinite fe80::a973:10e1:e029:d1bb%12
(...)
On remarquera ici trois adresses IPv6 Global Unicast dans le bloc 2001:db8:f4:4b3::/64
:
2001:db8:f4:4b3::d4d
2001:db8:f4:4b3:a973:10e1:e029:d1bb
2001:db8:f4:4b3:b937:ea7c:7175:5743
et trois autres dans le bloc :
2001:db8:f4:1ded::d4d
2001:db8:f4:1ded:a973:10e1:e029:d1bb
2001:db8:f4:1ded:b937:ea7c:7175:5743
On reconnaîtra le préfixe de documentation 2001:db8::/32
qui a été adapté pour des raisons de vie privée de la connexion réelle qui sert à l’illustration.
Pour chaque bloc, la première adresse a été attribuée de manière arbitraire par un service DHCPv6. Les deux suivantes sont des adresses dont l’identifiant d’interface a été généré aléatoirement.
Si l’on s’attarde sur les deux dernières adresses générées manifestement de manière aléatoire, elles disposent de durées de vie limitées. L’une, la “publique”, sert de destination venant de l’Internet (activez et mettez à jour vos pare-feu IPv6); l’autre, l’adresse temporaire sert toujours comme adresse d’origine du trafic de l’interface pour le trafic à destination de l’Internet. Dans ce cas, l’adresse attribuée par DHCPv6 ne peut servir que comme adresse de destination. Je l’ai implémentée ici à des fins de gestion (résolution dynamique de noms).
4. Adressage IPv6 Unique Local (FC00::/7
)
4.1. Adresses IPv6 Unique Local
L’adressage IPv6 Unique Local est défini dans le RFC 4193, Unique Local IPv6 Unicast Address.
On identifiera un autre type d’adresses : Unique Local Address (ULA). Comparables aux adresses privées IPv4 RFC1918 10.0.0.0/8
, 172.16.0.0/12
et 192.168.0.0/16
dans le sens où elles ne sont pas “globalement routables”, elles ne connaissent pas de destination sur l’Internet. On les reconnaît par leur préfixe FD00::/8
dont les 40 bits suivants ont été générés aléatoirement pour compléter un préfixe /48
.
Cet adressage privé IPv6 est censé être unique afin d’éviter un chevauchement d’adresses identiques à chaque extrémité d’une connexion VPN par exemple.
4.2. Caractéristiques des adresses IPv6 Unique Local
- Elles ne connaissent pas de destination dans l’Internet public.
- Elle utilisent un préfixe qui est globalement unique (on dira avec une haute probabilité d’unicité).
- Ce préfixe est bien connu :
FC00::/7
maisFD00::/8
notamment afin de faciliter le filtrage aux limites des sites. - Elle permettent aux sites privés de s’interconnecter entre eux en réduisant la probabilité de conflits sur des blocs d’adresses non uniques qui se chevauchent.
- En cas de fuite DNS, il y a peu de risque de conflit avec d’autres adresses.
4.3. Utilité des adresses IPv6 Unique Local
Quel pourrait être leur usage au XXIème siècle avec un adressage global IPv6 aussi large ?
D’abord, elles sont recommandées par le RFC7084 “Basic Requirements for IPv6 Customer Edge Routers”.
On peut les utiliser pour identifier des destinations privées entre des sites distants entre Paris et Lille, entre Bruxelles et Londres ou entre le bâtiment de la rue du commerce et celui du Boulevard du Nord … à travers des connexions dédiées ou Internet sécurisées par IPSEC …. En deux mots, faciliter le routage privé.
4.4. Format des adresses IPv6 Unique Local
Les adresses IPv6 Unique Local sont créées sur base d’un identifiant global généré de manière pseudo-aléatoire en fonction du temps (NTP) et de l’identifiant unique EUI-64 concaténés pour créer une clé SHA-1 et générer une valeur de 160 bits dont les 40 derniers bits significatifs remplissent le champs “Global ID”.
Où :
- Prefix :
FC00::/7
ou1111110
sur les 7 premiers bits identifie le préfixedes adresses IPv6 Unique Local. - L : Valeur à
1
pour un préfixe “localement” assigné (0
est réservé à un usage futur, jamais ?). Le préfixe devient de factoFD00::/8
où les 8 premiers bits de l’adresse sont11111101
- Global ID : 40-bit “Global ID” identifiant global généré de manière pseudo-aléatoire pour créer un préfixe unique de site. Il complète un
/48
de préfixe de site. - Subnet ID : 16-bit “Subnet ID” comme identifiant du sous-réseau dans le site.
- Interface ID : 64-bit “Interface ID” qui identifie l’interface dans le sous-réseau.
4.5. Comment reconnaître des adresses IPv6 Unique Local ?
Voici une sortie focalisée sur l’interface Ethernet0 d’un ordinateur Windows :
Microsoft Windows [Version 10.0.16299.309]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\user>netsh interface ipv6 show address
(...)
Interface 12: Ethernet0
Addr Type DAD State Valid Life Pref. Life Address
--------- ----------- ---------- ---------- ------------------------
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:4b3::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:4b3:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:4b3:b937:ea7c:7175:5743
Dhcp Preferred 10d12h15m6s 3d22h11m28s 2001:db8:f4:1ded::d4d
Public Preferred 10d12h15m7s 3d22h11m29s 2001:db8:f4:1ded:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s 2001:db8:f4:1ded:b937:ea7c:7175:5743
Public Preferred infinite infinite fd8f:cafe:1ab:0:a973:10e1:e029:d1bb
Temporary Preferred 6d23h55m39s 23h47m26s fd8f:cafe:1ab:0:b937:ea7c:7175:5743
Other Preferred infinite infinite fe80::a973:10e1:e029:d1bb%12
(...)
Dans notre exemple, on trouve deux adresses IPv6 Unique Local autoconfigurées.
fd8f:cafe:1ab:0:a973:10e1:e029:d1bb
fd8f:cafe:1ab:0:b937:ea7c:7175:5743
On constate que le préfixe attribué est fd8f:cafe:1ab::/64
qui, s’il n’a manifestement pas été généré de manière aléatoire selon le RFC 4193 car il a été choisi, est supposé “globalement unique”.
4.6. Développement du RFC 4193
Le RFC 4193 développe plusieurs considérations sur les adresse Unique Local
- Comment les allouer.
- Considérations sur leur usage :
- dans le routage
- sur les routeurs de bordure de site,
- en DNS,
- dans le support des applications,
- dans l’usage de VPN,
- des lignes directrices pour une communication au sein d’un site.