ipv6
TRANSCRIPT
Thomas Moegli
๏ Protocole IPv4 (Internet Protocol version 4)
๏ Développé au début des années 1980
๏ RFC 760 (Janvier 1980) rendu obsolète par la RFC 791 (Septembre 1981)
IPv4
3
Thomas Moegli
00001010 00000001 00000001 0000000110 1 1 1
10. 1. 1. 1
๏ Adresses de 32 bits représentés en notation décimale
๏ Permet 4.29 milliards d’adresses
IPv4 Structure
4
1er octet 2ème octet 3ème octet 4ème octet
Version IHL Type of Service Total Length
Identification Flags Fragment Offset
Time to Live Protocol Header Checksum
Source Address
Destination Address
PaddingOptions
Thomas Moegli
๏ 4.29 milliards d’adresses, permet un ratio 1:1 par rapport à la population mondiale
๏ Comment était Internet dans les années 1981 ?
๏ Pas de WWW, pas de terminaux mobiles et la plupart des personnes ne connaissent pratiquement pas Internet
๏ Principalement des mainframes
IPv4 IPv4 en 1981
5
IPv4IPv4 a été standardisée en 1981, proposant 4.29 milliards d’adresses IP (2
32) pour une population de 4.41
milliards de personnes.
Thomas Moegli
๏ 1990 : Introduction du World Wide Web
๏ Tout le monde pouvait avoir accès à Internet
๏ Les tables Internet ont donc rapidement grossies - 20’000 routes en 1994
๏ IETF a rapidement réalisé que l’espace d’adressage IPv4 serait insuffisante
IPv4 Débuts d’Internet
6
Thomas Moegli
๏ Défini au milieu des années 70’, IPv4 montre quelques limitations qui ne sont pas trop étonnantes au vu du développement de la téléinformatique durant cette période.
๏ En particulier, IPv4 a quelques faiblesses relatives dans les aspects suivants:
๏ Taille du champ d'adresse insuffisante au vu de la forte croissance du nombre de réseaux et de stations. C’est aujourd’hui le problème majeur d’IPv4.
๏ La taille des tables de routage des routeurs qui ont la vision globale d’Internet ne peut pas croître indéfiniment. Un système d'adressage encore plus hiérarchisé est
nécessaire.
๏ Absence de support de différentes qualités de service, par exemple pour les applications en temps réel. (Ce problème est déjà sérieusement considéré dans le cas
IPv4).
๏ Sécurité insuffisante contre les attaques informatiques.
๏ Routage « relativement lent » en raison de la complexité de l'en-tête IPv4.
IPv6 Faiblesses d’IPv4
7
Thomas Moegli
๏ Le 31 janvier 2011, IANA a alloué les derniers réseaux /8 IPv4 aux RIRs
๏ Les RIRs ont très peu, si ce n’est plus aucune adresse IP disponible
๏ Plusieurs FAI sont sévèrement limitées et ne peuvent plus recevoir de nouveaux blocs
IPv6 Manque d’adresses IPv4
8
Situation actuelle ou estimée Novembre 2014
2015
2012
2011
20192014
Remarque : APNIC et RIPE possèdent encore des adresses allouables mais sont très restrictives pour l’attribution de nouveaux blocs
Thomas Moegli
๏ Solutions à court terme
๏ NAT (Network Address Translation)
๏ Adressage privé
๏ CIDR (Classless Inter-Domain Routing)
๏ Solutions à long terme
๏ IPv6
IPv6 Manque d’adresses IPv4 : Solutions
9
Réseau personnel192.168.1.0/24
(RFC 1918)
Réseau FAIAdressage publique
InternetAdressage publique
NAT
Adressage privé :10.0.0.0/8172.16.0.0/12192.168.0.0/16
Classe AClasse BClasse CClasse D
Thomas Moegli
๏ IPv6 n’est pas un « nouveau » protocole
๏ Il a été développée depuis les années 1990
๏ Correction de beaucoup de problèmes liées à IPv4
๏ Adressage sur 128 bits, permettant un espace d’adressage beaucoup plus grande
๏ Environ 340 sextillons d’adresses
Introduction à IPv6
10
340 sextillons = 340 * 1036 = 340’282’366’920’938’463’374’607’431’768’211’456 adresses
Version Traffic Class Flow Label
Payload Length
Source Address
Next Header Hop Limit
Destination Address
128 bits
128 bits
Thomas Moegli
๏ Le nombre d’adresses disponibles permet d’attribuer plus de 10 quintillions (1018) par personne !
๏ Chaque grain de sable de la Terre pourrait obtenir une adresse et il resterait des adresses non allouées !
๏ Le monde d’Internet change constamment, de nouveaux services sont proposés…
๏ Vidéo à la demande
๏ Internet partout
๏ …et de plus en plus d’objets sont connectés
๏ Téléphones portables, tablettes, montres …
๏ Objets connectés (Internet des objets)
๏ …
Introduction à IPv6
11
Thomas Moegli
๏ Cisco définit le terme Internet of Everything (IoE) ainsi : Rassembler la population, les processus, les données, et les objets et les connecter entre eux
๏ Cisco estime qu’il y aura plus de 50 milliards de périphériques connectés (montres, tablettes, smartphones, …) en 2020 Source : The Internet of Things de Dave Evans
IPv6 Internet of Everything
12
Thomas Moegli
๏ NAT était utilisé pour aider les postes placés en adressage privé à se connecter vers l’extérieur et fonctionne pour la plupart des applications dont la connexion est initiée par le client
๏ Toutefois, NAT pose des problèmes avec certains réseaux comme les réseaux Peer-to-Peer et l’accès aux réseaux internes.
๏ L’utilisation de NAT pour cacher les réseaux IPv6 est sujet à débat
๏ IETF continue d’indiquer que NAT n’est pas une fonctionnalité de sécurité.
IPv6 IPv6 et NAT
13
Réseau personnel192.168.1.0/24
(RFC 1918)
Réseau FAIAdressage publique
InternetAdressage publique
NAT
Thomas Moegli
๏ Les bénéfices apportés par IPv6 sont :
๏ Espace d’adressage plus grand
๏ Stateless autoconfiguration
๏ Connectivité End-to-End sans nécessité d’adressage privé ou NAT
๏ Meilleur support de la mobilité
๏ Réseaux Peer-to-Peer plus faciles à créer et gérer
๏ Meilleur gestion de la QoS, permettant la simplification et la robustesse de services VoIP
Introduction à IPv6 Bénéfices de IPv6
14
Thomas Moegli
๏ Réseaux IPv6 actifs
๏ Etat au 7 juin 2015
IPv6 Etat du déploiement
15
Source : RIPE NCC (v6asns.ripe.net/v/6
Thomas Moegli
๏ Nombre d’utilisateurs qui utilisent Google sous Ipv6
๏ Etat au 7 juin 2015
IPv6 Etat du déploiement
16
Source : Google IPv6 (http://www.google.com/intl/en/ipv6/statistics.html#tab=ipv6-adoption)
Thomas Moegli
๏ Nombre d’AS IPv4 et IPv6 actifs sur le réseau Internet
IPv6 Etat du déploiement
17
Source : CAIDA (http://www.caida.org/research/topology/as_core_network/2014/)
Thomas Moegli
๏ IPv4 et IPv6 peuvent coexister ensemble pour faciliter la transition
๏ Dual-stack : Les périphériques peuvent fonctionner la pile IPv4 et IPv6
๏ Les entreprises et les FAIs doivent supporter les deux piles, ce qui permet de faciliter la transition
Transition vers IPv6
18
R1
IPv4IPv6
IPv4IPv6
IPv4IPv6
IPv4IPv6
IPv4 IPv6
Thomas Moegli
๏ Les sites qui disposent d’un dual-stack IPv4 et IPv6 disposent donc de deux adresses, une pour IPv4 et une pour IPv6
๏ Quelle adresse utiliser ?
๏ Pour l’utilisation d’applications sur IPv6, il est nécessaire que les utilisateurs obtiennent des performances identiques à IPv4.
Transition vers IPv6 Happy Eyeballs
20
IPv4
IPv6?
www.monsite.com
Thomas Moegli
Transition vers IPv6 Happy Eyeballs
21
www.monsite.com
GET HTTP/1.1 www.monsite.com
Enregistrement DNS de type A ?www.monsite.com
Se connecter sur31.67.30.10
Enregistrement DNS de type AAAA ?www.monsite.com
Se connecter sur2a03:2880:f016:401:a782:b002:01:1
Thomas Moegli
๏ Recherche en priorité via IPv6 puis IPv4
๏ Au final, cela dépend de la gestion par le système d’exploitation et de l’application
Transition vers IPv6 Happy Eyeballs : Vue d’ensemble
22
t
Recherche IPv4 et tentative de connexion
300 ms
Demande d’utilisateur :www.monsite.com
Recherche IPv6 et tentative de connexion
Réception et affichagePremier arrivé, premier servi
Thomas Moegli
๏ Tunneling
๏ Encapsulation de paquets IPv6 dans des paquets IPv4
๏ NAT64
๏ Translation entre réseau IPv4 et réseau IPv6
Transition vers IPv6
23
Réseau IPv6 uniquement Réseau IPv6 uniquement
R2R1
Réseau IPv4 uniquementTunnel
Dual StackDual Stack
Réseau IPv4 uniquement Réseau IPv6 uniquementNAT64
Thomas Moegli
๏ Sur Internet, une adresse sert à deux fonctions distinctes
๏ IdentificationUtilisé pendant une connexion pour reconnaître son interlocuteur. Se fait dans les en-têtes TCP ou avec IPsec.
๏ LocalisationPermet de trouver un intermédiaire qui saura délivrer les paquetsSe découpe en deux parties : localisation globale (identifie le réseau) et localisation locale (distinguer les machines d’un même réseau)
๏ Sous IPv4, l’adresse IP mélange les deux fonctions
๏ Conséquences : mobilité restreinte ou protocoles supplémentaires mis en œuvre pour remédier aux faiblesses d’IP (par ex. Mobile IP)
๏ Etudes initiales pour IPv6 : Proposition de séparer les deux fonctions
๏ Etudes en cours, proposition actuellement rejetée…
๏ Plan d’adressage hiérarchique
๏ Identification : l’adresse identifie une machine ou une interface ?
๏ Contrairement à IPv4 qui n’associe généralement qu’une seule adresse à une interface, une interface possède plusieurs adresses IPv6
Adressage IPv6
25
Thomas Moegli
๏ Problème majeur d’IPv4 : Croissance des tables de routage
๏ Due à une mauvaise agrégation des adresses dans les tables
๏ Solution apportée mais insuffisante : CIDR
๏ En 2000, la progression linéaire a cessé à cause
๏ Baisse du coût des liaisons longues distances, permettant du multi-homing (en cas de panne d’un opérateur, le trafic peut transiter sur un autre)
๏ Manque d’adresses IPv4 qui force les opérateurs à allouer des préfixes de plus en plus long.
Adressage IPv6 Structuration des adresses et agrégation
26
30/01/2010
22
B ) Structuration des adresses et agrégation
Un des problèmes majeurs d'IPv4 est la croissance incontrôlée des tables de routage. Ce phénomène est
dû à une mauvaise agrégation des adresses dans les tables. Il faudrait être capable de router des
ensembles de réseaux identifiés par un seul descripteur. CIDR apporte une amélioration, mais celle-ci est
insuffisante en pratique : les adresses IPv4 sont trop courtes pour permettre une bonne structuration, et il
faut surtout assumer le coût du passé avec les adresses déjà allouées.
Attribuer une adresse à un équipement est un processus complexe, basé sur un compromis entre la facilité
d'attribution et la facilité de gestion. Idéalement, pour minimiser la taille de routage, le réseau devrait
avoir une topologie en arbre, cela rendrait l'adressage hiérarchique très efficace. Dans la réalité pour des
raisons économiques, techniques, géographiques ou de performances, le réseau est beaucoup plus
complexe et peut être vu comme un graphe. Il faut introduire des exceptions dans les tables de routages
pour refléter cette topologie. On voit que pour avoir l'adressage le plus efficace possible, il faut dans ce
graphe trouver la représentation arborescente qui génère le moins d'exceptions possibles. Or s'il était
possible aujourd'hui de trouver une représentation valide, elle ne le sera pas nécessairement demain. En
conséquence, la définition du plan d'adressage doit être la plus souple possible pour permettre une
évolution de nature imprévisible.
D'autant plus que l'agrégation pour IPv4 ne semble plus aussi efficace. La figure suivante donne l'évolution
de table de routage dans le cœur de l'Internet, c'est-à-dire dans les réseaux des opérateurs où aucune
route par défaut n'est définie.
Thomas Moegli
๏ Forme binaire (mots de 16 bits) 0010000000000001 0000100100011000 1111111111111000 0000000000000000 0000000000000000
0001001000110100 0000000010010000 1010101111001101
๏ Forme préférée : Chaque bloc est converti en hexadécimal et délimité par des « : » 2001:0918:fff8:0000:0000:1234:0090:abcd
๏ Deux types de simplifications peuvent être appliquées (Forme compressée)
๏ Suppression des zéros dans chaque bloc (s’ils ne sont pas précédés d’un chiffre différent de 0) 2001:918:fff8:0:0:1234:90:abcd
๏ Compression d’une séquence continue de 0 dans la chaîne et remplacement par « :: » 2001:918:fff8::1234:90:abcdCette compression ne peut s’effectuer qu’une seule fois
Notation
27
Thomas Moegli
๏ Autre exemple
๏ Forme préférée : FEDC:0000:0000:0040:09A3:0000:ABCD:210F
๏ Forme compressée : FEDC::40:9A3:0:ABCD:210F
Notation
28
Thomas Moegli
๏ Vérification rapide – Une adresse IPv6 doit respecter :
๏ 8 blocs de 4 chiffres hexadécimauxTotal : 32 chiffres hexadécimaux
๏ Blocs séparés par des « : »
๏ Les zéros du bloc peuvent être supprimés s’ils ne sont pas précédés d’un autre nombre différent de 0
๏ Un « :: » peut compresser une suite de blocs contiguës formés uniquement de 0
๏ Un « :: » ne peut apparaître qu’une seule fois dans une adresse
๏ Les nombres hexadécimaux ne sont pas sensibles à la casse
Notation
29
Thomas Moegli
๏ Problème avec les URL
๏ L’écriture d’une URL avec adresse IPv6 crée une ambiguïté avec la notation pour désigner un port spécifique http://2001:1234:12::1:8000/
๏ Le RFC 2732 propose d’inclure l’adresse IPv6 entre « [] » http://[2001:1234:12::1]:8000/
๏ Préférer utiliser les FQDN
Notation
30
Thomas Moegli
๏ Partie de l’adresse où les bits ont une valeur fixe ou définissent la partie correspondant au sous-réseau ou la route
๏ Les sous-réseaux IPv6 utilisent la notation ipv6-address/prefix-length
๏ Notation CIDR
๏ Similaire à IPv4 mais avec des longueurs de préfixes jusqu’à 128
๏ Pas de masque de sous-réseau à notation avec points.
๏ Exemples
๏ 2001:918:fff8::/48 pour une route ou un résumé
๏ 2001:918:fff8:ff0::/64 pour un sous-réseau
๏ 2001:918:fff8:ffa::/126 pour un sous-réseau
๏ 2001:918:fff8:fff::1/128 désigne un nœud ou l’adresse de loop-back
Préfixes IPv6
31
Thomas Moegli
Types d’adresses
32
Adresses IPv6
Multicast AnycastUnicast
Assigned Solicited Node
Global Unicast Link-Local Loopback Non spécifié Unique Local Mapping
IPv4
::1/128 ::/128 FC00::/7 ::/80FE80::/102000::/3
Thomas Moegli
๏ Définis par plusieurs RFC
๏ Architecture définie par RFC4291 (Février 2006) qui rend obscolète les RFC3513 et RFC2373
๏ Types d’adresses
๏ Unicast : One to One
๏ Actif : Global, Link local, Unique Local (ULA), Special (unspecified/loopback), Transition (Mapping IPv4/6to4)
๏ Déprécié : Site Local, Transition (compatible IPv4)
๏ Anycast : One to Nearest
๏ Multicast : One to Many
๏ Pas de broadcast
๏ Réservé
Type d’adresses
33
Thomas Moegli
๏ Unicast
๏ Adresse d’une interface unique
๏ Transmission de type One-to-One
๏ Anycast
๏ Adresse d’un ensemble d’interfaces
๏ Transmission à l’interface considérée comme la plus proche (d’après une métrique définie)
๏ Transmission de type One-to-Nearest
๏ Multicast
๏ Adresse d’un ensemble d’interfaces
๏ Transmission de type One-to-Many
๏ Pas d’adresses de broadcast
๏ Remplacé par des adresses multicast « All-Nodes » (FF02::1) de portée Lien-local
Type d’adresses
34
Thomas Moegli
๏ Types d’adresses spécifiques définies par la RFC3513 et caractérisés par leur préfixe
Type d’adresses
35
Type de route Valeur Référence
0000::/8 Réservé pour la transition et loopback RFC 3513
0100::/8 Réservé RFC 3513
0200::/7 Réservé (ex NSAP) RFC 4048
0400::/6 Réservé (ex IPX) RFC 3513
0800::/5 Réservé RFC 3513
1000::/4 Réservé RFC 3513
2000::/3 Unicast Global RFC 3513
4000::/3 Réservé RFC 3513
6000::/3 Réservé RFC 3513
Thomas Moegli
Type d’adresses
36
Type de route Valeur Référence
8000::/8 Réservé RFC 3513
A000::/3 Réservé RFC 3513
C000::/3 Réservé RFC 3513
E000::/4 Réservé RFC 3513
F000::/5 Réservé RFC 3513
F800::/6 Réservé RFC 3513
FC00::/7 Unique Local Unicast RFC 4193
FE00::/9 Réservé RFC 3513
FE80::/10 Lien-local RFC 3513
FEC0::/10 Réservé RFC 3879
FF00::/8 Multicast RFC 3513
Thomas Moegli
Adresses Global Unicast (GUA)
38
Adresses IPv6
Multicast AnycastUnicast
Assigned Solicited Node
Global Unicast Link-Local Loopback Non spécifié Unique Local Mapping
IPv4
::1/128 ::/128 FC00::/7 ::/80FE80::/102000::/3
Thomas Moegli
๏ Adresse IPv6 Source
๏ Toujours une adresse Unicast (Link-local ou GUA)
๏ Adresse IPv6 Destination
๏ Unicast, Multicast, ou Anycast
Adresses Global Unicast (GUA) Adresses sources et destination
39
Thomas Moegli
๏ Caractéristiques
๏ 2000::/3
๏ De 2000::/64 à 3FFF:FFF:FFF:FFF::/64
๏ Représente 1/8 de l’espace d’adressage IPv6
๏ Sauf en de rares circonstances, tous les utilisateurs disposeront d’une adresse GUA
๏ Un hôte (une interface) peut potentiellement posséder plusieurs adresses IPv6 du même ou différents réseaux
Adresses Global Unicast (GUA)
40
Subnet IDGlobal Routing Prefix Interface ID
001 1er hextet : 0010 0000 0000 00000011 1111 1111 1111 : 3FFF
: 2000
Global Unicast
Thomas Moegli
๏ Préfixe : équivalent à la partie réseau d’une adresse IPv4
๏ Longueur de préfixe : équivalent au masque de sous-réseau en IPv4
๏ Interface ID : équivalent à la partie hôte d’une adresse IPv4
Adresses Global Unicast (GUA) Terminologie
41
Thomas Moegli
Partie sous-réseau
Partie hôtePartie réseau
Var.
32 bits
Var.
๏ Pour une adresse IPv4
๏ Possède une longueur de 32 bits
๏ La longueur de la partie réseau est déterminée par la classe
๏ Il est possible d’utiliser les bits de la partie hôte pour effectuer du sous-réseau (longueur variable
Adresses Global Unicast (GUA) Structure
42
Thomas Moegli
Adresses Global Unicast (GUA) Structure
43
๏ Pour une adresse IPv6
๏ Possède une longueur de 128 bits
๏ Le champ Interface ID permet 18’446’744’073’709’551’616 périphériques par sous-réseau
๏ Le champ Subnet ID est de longueur fixe et permet 65’536 sous-réseaux
Interface IDGlobal Routing Prefix
128 bits
Subnet ID
16 bits
/48 /64
48 bits
Thomas Moegli
๏ Règle 3-1-4
๏ Les trois premiers hextets représentent le préfixe de l’adresse globale (généralement fourni par l’ISP)
๏ L’hextet suivant (1) représente l’identifiant du sous-réseau
๏ Les 4 derniers hextets représentent l’identifiant de l’interface réseau
๏ Exemple :
Adresses Global Unicast (GUA) Structure
44
2001:0DB8:CAFE:0001:0000:0000:0000:0100/64
2001:0DB8:CAFE:1::100/64
Global Routing Prefix Subnet ID Interface ID
Thomas Moegli
๏ Le subnetting en IPv6 est beaucoup plus simple qu’en IPv4
๏ Il suffit de savoir compter en hexadécimal
Adresses Global Unicast (GUA) Subnetting IPv6
45
2001:0DB8:CAFE:0001::/64
Interface IDGlobal Routing Prefix Subnet ID
16 bits
/48 /64
2001:0DB8:CAFE:0002::/642001:0DB8:CAFE:0003::/64
2001:0DB8:CAFE:000A::/64
Thomas Moegli
๏ Il est possible (mais hautement déconseillé) d’utiliser une partie des bits du champ Interface ID pour étendre le sous-réseau (comme en IPv4)
๏ Seule exception : pour des réseaux d’infrastructure (liens routeur-à-routeur, routeur-à-switch, etc…
Adresses Global Unicast (GUA) Subnetting IPv6
46
Thomas Moegli
๏ Sur IPv4, il était conseillé d’utiliser un masque /30 pour les liens Point-to-Point afin d’économiser les adresses disponibles
๏ Un masque /30 n’offre que deux adresses hôtes utilisables
๏ Sur IPv6, le masque à utiliser pour n’avoir que deux hôtes est /127. Toutefois, la raison invoquée pour IPv4 n’est plus valable sous IPv6.
๏ Il est conseillé néanmoins d’utiliser un préfixe /127 sur les liens Point-to-Point
๏ RFC 6164 : Using 127-bit IPv6 Prefixes on Inter-Router Links
๏ Attaques Ping-Pong
๏ Vulnérabilité Neighbor Cache Exhaustion
๏ Il est conseillé d’utiliser un sous-réseau /64 pour chaque sous-réseau /127 nécessaire
Adresses Global Unicast (GUA) Subnetting IPv6 : Liens Point-à-Point
47
R2R1
Thomas Moegli
๏ Pour chaque lien /127 à allouer, on utiliser un sous-réseau /64 entier
Adresses Global Unicast (GUA) Subnetting IPv6 : Liens Point-à-Point
48
R2R1
Interface ID (1 bit)
Global Routing Prefix Subnet ID
/48 /127
000
2001:0DB8:CAFE:F001::/64 2001:0DB8:CAFE:F001::0/1272001:0DB8:CAFE:F001::1/127
2001:0DB8:CAFE:F002::/64 2001:0DB8:CAFE:F002::0/1272001:0DB8:CAFE:F002::1/127
Thomas Moegli
Interface ID (1 bit)
Global Routing Prefix Subnet ID
/48 /127
101
2001:0DB8:CAFE:F001::/64 2001:0DB8:CAFE:F001::A/1272001:0DB8:CAFE:F001::B/127
2001:0DB8:CAFE:F002::/64 2001:0DB8:CAFE:F002::A/1272001:0DB8:CAFE:F002::B/127
๏ Pour chaque lien /127 à allouer, on utiliser un sous-réseau /64 entier
๏ Pour éviter les confusions, il est préférable d’utiliser d’autres suffixes au lieu de 0 et 1
Adresses Global Unicast (GUA) Subnetting IPv6 : Liens Point-à-Point
49
R2R1
Thomas Moegli
๏ Le subnetting IPv4 est utilisé principalement pour conserver de l’espace d’adressage IPv4
๏ Outils : VLSM
๏ Réseaux /30 pour les liaisons Point-to-Point
๏ Le subnetting sous IPv6 n’est pas nécessaire vu l’abondance d’adresses IPv6
๏ Développer un plan d’adressage IPv6 permet de faciliter la gestion des adresses IPv6
๏ NANOG BCOP : OPv6 Subnetting
๏ Cisco : IPv6 Address Guide
๏ RIPE NCC : Preparing an IPv6 Addressing Plan - RIPE Network
Adresses Global Unicast (GUA) Plan d’adressage IPv6
50
Thomas Moegli
Subnet ID
/64
Interface ID
/32
/23RIR
Préfixe FAI
Préfixe Site /48
Global Routing Prefix
Préfixe possible pour les particuliers /56
๏ Ces longueurs sont le minimum pour l’allocation
๏ La longueur du préfixe peut être raccourcie si justifiée
Adresses Global Unicast (GUA) Allocation des adresses IPv6
51
Thomas Moegli
๏ Espace d’adressage : Provider Independent (PI)
๏ Assigné directement par le RIR
๏ Si le client change de fournisseur FAI, le préfixe IPv6 attribué ne change pas
๏ Espace d’adressage : Provider Aggregatable (PA)
๏ Espace assigné par un FAI à un client
๏ Lorsque le client change de FAI, il obtient un nouvel espace d’adressage
Allocation des adresses IPv6 Adresses PI et PA
52
Subnet ID
/64
Interface ID
/32Préfixe RIR (PI)
Préfixe ISP (PA) /48
Global Routing Prefix
Thomas Moegli
Adresse Global Unicast
Manuel Dynamique
Statique + EUI 64
Statique IPv6Unnumbered SLAAC DHCPv6
StatefulStateless
SLAAC + DHCPv6 DHCPv6 - PD
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
53
Thomas Moegli
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
54
R1 :1
2001:DB8:CAFE:3::/64
WANS0/0/0
:100
:100
Gi0/0
Gi0/1
2001:DB8:CAFE:1::/64
2001:DB8:CAFE:2::/64
R1(config)# interface GigabitEthernet0/0 R1(config-if)# ipv6 address 2001:db8:cafe:1::1/64 R1(config-if)# no shutdown
R1(config)# interface GigabitEthernet0/1 R1(config-if)# ipv6 address 2001:db8:cafe:2::1/64 R1(config-if)# no shutdown
R1(config)# interface Serial0/0/0 R1(config-if)# ipv6 address 2001:db8:cafe:3::1/64 R1(config-if)# no shutdown
Thomas Moegli
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
55
R1 :1
2001:DB8:CAFE:3::/64
WANS0/0/0
:100
:100
Gi0/0
Gi0/1
2001:DB8:CAFE:1::/64
2001:DB8:CAFE:2::/64
R1# show running-config … interface GigabitEthernet0/0 no ip address duplex auto speed auto ipv6 address 2001:DB8:CAFE:1::1/64
Vérification de la configuration
Ne pas confondre ! Pas d’adresse IPv4 configurée
Thomas Moegli
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
56
R1 :1
2001:DB8:CAFE:3::/64
WANS0/0/0
:100
:100
Gi0/0
Gi0/1
2001:DB8:CAFE:1::/64
2001:DB8:CAFE:2::/64
R1# show ipv6 interface brief … GigabitEthernet0/0 [up/up] FE80::FE99:47FF:FE75:C3E0 2001:DB8:CAFE:1::1/64 …
Vérification de la configuration
Adresse Link-local UnicastAdresse Global Unicast
๏ L’adresse de Link-local est automatiquement configurée pour chaque interface
Thomas Moegli
Option General-Prefix
๏ Permet d’assigner un raccourci ou alias à un préfixe IPv6
๏ Commande :
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
57
Router(config)# ipv6 general-prefix prefix-name
Router(config)# ipv6 general-prefix MyGUA 2001:db8:cafe::/48
Router(config)# interface GigabitEthernet0/0 Router(config-if)# ipv6 address MyGUA 0:0:0:88::1/64 Router(config-if)# no shutdown Router(config)# interface GigabitEthernet0/1 Router(config-if)# ipv6 address MyGUA 0:0:0:99::1/64 Router(config-if)# no shutdown
Router# show ipv6 interface brief GigabitEthernet0/0 [up/up] FE80::7EAD:74FF:FECC:5380 2001:DB8:CAFE:88::1 GigabitEthernet0/1 [up/up] FE80::7EAD:74FF:FECC:5381 2001:DB8:CAFE:99::1
Thomas Moegli
๏ Cette commande facilite le changement du préfixe si nécessaire
๏ L’exemple ci-dessous présente la situation si le client reçoit un nouveau préfixe (par ex. changement de FAI)
Configuration d’une adresse GUA Configuration d’une adresse statique GUA
58
Router(config)# no ipv6 general-prefix MyGUA 2001:db8:cafe::/48 Router(config)# ipv6 general-prefix MyGUA 2001:db8:beef::/48
Router# show ipv6 interface brief GigabitEthernet0/0 [up/up] FE80::7EAD:74FF:FECC:5380 2001:DB8:BEEF:88::1 GigabitEthernet0/1 [up/up] FE80::7EAD:74FF:FECC:5381 2001:DB8:BEEF:99::1
Thomas Moegli
Adresse Global Unicast
Manuel Dynamique
Statique + EUI 64
Statique IPv6Unnumbered SLAAC DHCPv6
StatefulStateless
SLAAC + DHCPv6 DHCPv6 - PD
Configuration d’une adresse GUA Configuration d’une adresse statique GUA + EUI 64
59
Thomas Moegli
๏ Utilise l’adresse MAC (convertie au format EUI-64) pour le champ d’interface (Interface ID) de 64 bits
๏ Une adresse EUI-64 se compose de :
๏ Adresse MAC (sur 48 bits)
๏ 16 bits (FF-FE)
๏ Un bit U/L (Universal/Local)
Configuration d’une adresse GUA Configuration d’une adresse statique GUA + EUI 64
60
R1
Gi0/1
2001:DB8:CAFE:99::/64
Router(config)# interface GigabitEthernet 0/1 Router(config-if)# ipv6 address 2001:db8:cafe:99::/64 eui-64
Thomas Moegli
0300 E96B D4 80
0300 E96B D4 80FF FE
MAC (24 bits)OUI (24 bits)
030000 0010 E96B D4 80FF FE
Bit U/L
0302 E96B D4 80FF FE
Format EUI-64 (Extended Unique Identifier)
๏ Adresse MAC (48 bits) :
๏ Partie OUI, identifiant du constructeur (24 bits)
๏ Partie MAC, identifiant de l’interface (24 bits)
๏ Entre ces deux parties, on place les caractères hexadécimaux FF-FE (64 bits)
๏ Pourquoi FF-FE ? Selon l’IEEE, il s’agit d’une valeur réservée que les fabricants d’équipement ne peuvent ajouter dans une
adresse MAC
๏ Le bit U/L est le 3ème bit du deuxième hexset (7ème bit)
๏ Ce bit est placé à 0 s’il s’agit d’une adresse globale assignée par l’IEEE (Universal)
๏ Ce bit est placé à 1 s’il s’agit d’une adresse crée localement (par ex. adresse pour une interface virtuelle ou adresse MAC configurée manuellement par l’administrateur)
Configuration d’une adresse GUA Configuration d’une adresse statique GUA + EUI 64
61
Thomas Moegli
Configuration d’une adresse GUA Configuration d’une adresse statique GUA + EUI 64
62
R1(config)# interface GigabitEthernet 0/1 R1(config-if)# ipv6 address 2001:db8:cafe:99::/64 eui-64
R1# show interface GigabitEthernet 0/1 GigabitEthernet0/1 is up, line protocol is up Hardware is AmdFE, address is 0003.6be9.d480 (bia 0003.6be9.d480) …
R1# show ipv6 interface GigabitEthernet 0/1 GigabitEthernet0/1 is up, line protocol is up IPv6 is enabled, link-local address is FE80::203:6BFF:FEE9:D480 Global unicast address(es): 2001:db8:cafe:99:203:6BFF:FEE9:D480 subnet is 2001:DB8:CAFE:99::/64
Thomas Moegli
Adresse Global Unicast
Manuel Dynamique
Statique + EUI 64
Statique IPv6Unnumbered SLAAC DHCPv6
StatefulStateless
SLAAC + DHCPv6 DHCPv6 - PD
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
63
Thomas Moegli
ICMPv6
๏ Protocole utilisé pour l’allocation d’adressage automatique
๏ Equivalent à DHCPv4
๏ RFC liés
๏ RFC 4443 : ICMPv6 for IPv6 Specification
๏ RFC 4861 : Neighbor Discovery for IPv6
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
64
Thomas Moegli
Messages ICMPv6 utilisés par la fonction Neighbor Discovery :
๏ Router Solicitation Message
๏ Router Advertisement Message
๏ Utilisé pour l’allocation d’adresses dynamiques
๏ Neighbor Solicitation Message
๏ Neighbor Advertisement Message
๏ Utilisé avec la résolution d’adresse (IPv4 ARP) et avec DAD
๏ Redirect Message
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
65
MessagesRouter-Device
MessagesDevice-Device
Thomas Moegli
๏ Le message ICMPv6 Router Advertisement (RA) envoyé depuis le routeur propose aux périphériques IPv6 de le contacter pour recevoir une configuration IPv6.
๏ Message envoyé périodiquement par le routeur IPv6
๏ … ou lorsque le routeur reçoit un message Router Solicitation envoyé par un client qui désire
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
66
Serveur DHCPv6
ICMPv6 Router Advertisement
Serveur DHCPv6
A tous les routeurs IPv6, j’ai besoin d’une configuration
IPv6
Voici une configuration IPv6 possible
ICMPv6 Router Advertisement
ICMPv6 Router Solicitation
Je ne suis finalement pas utile !
Thomas Moegli
๏ Message Router Advertisement (RA) ๏ Les messages RA sont envoyés par le routeur IPv6
๏ Sur les routeurs Cisco, l’activation des envois se fait par la commande
๏ La commande active le transfert des paquets IPv6 (Forwarding)
๏ La commande active également le routage dynamique IPv6
๏ Les routeurs peuvent être configurés avec une adresse IPv6 sans forcément effectuer du routage
๏ Si la commande unicast- routing n’est pas configurée, les routes statiques IPv6 peuvent être configurés mais le routeur ne transfère que les paquets générés localement, il ne transmet pas les paquets qui transitent pas lui
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
67
Router(config)# ipv6 unicast-routing
ipv6 unicast-routing
Thomas Moegli
Configuration d’une adresse GUA Adresses GUA dynamique : Vue d’ensemble (SLAAC et DHCPv6)
68
Serveur DHCPv6
Router(config)# ipv6 unicast-routing
ICMPv6RA
Option 1 : SLAAC - sans DHCPv6 (par défaut sur les routeurs Cisco)
Le routeur envoie le préfixe, la longueur du préfixe et la passerelle par défaut
Option 2 : SLAAC + Stateless DHCPv6 for DNS address
Le routeur envoie certaines informations mais pour obtenir les autres comme les adresses DNS, le client devrait s’adresser au serveur DHCPv6 (toutefois, les informations DNS peuvent être incluses dans le message RA)
Option 3 : DHCPv6 (par défaut sur les routeurs Cisco) Le routeur envoie le préfixe, la longueur du préfixe et la passerelle par défaut
Thomas Moegli
Adresses Link-local
70
Adresses IPv6
Multicast AnycastUnicast
Assigned Solicited Node
Global Unicast Link-Local Loopback Non spécifié Unique Local Mapping
IPv4
::1/128 ::/128 FC00::/7 ::/80FE80::/102000::/3
Thomas Moegli
๏ Adresse IPv6 Source
๏ Toujours une adresse Unicast du même réseau (Link-local)
๏ Adresse IPv6 Destination
๏ Unicast, Multicast, ou Anycast
Adresses Link-local Adresses source et destination
71
Thomas Moegli
54 bits restants/64
Interface IDxx xxxx
1111 1110 10 1er hextet : 1111 1110 1000 0000 : FE801111 1110 1011 1111 : FEBF
10 premiers bits
๏ Caractéristiques
๏ FE80::/10
๏ De FE80::/16 à FEBF::/16
๏ Terminologie
๏ Link : segment de réseau défini
๏ Link-local : portée limitée uniquement au segment réseau
Adresses Link-local Caractéristiques
72
Link-local
Thomas Moegli
๏ Utilisé pour communiquer avec les autres périphériques sur le même sous-réseau
๏ N’est pas routable
๏ Les adresses ne doivent être uniques que sur le lien
๏ Ces adresses ne sont pas incluses dans la table de routage
๏ Tout périphérique IPv6 possède au moins une adresse de lien-local
Adresses Link-local Link-local : Définition
73
Communications Link-local
Thomas Moegli
๏ Mac OS / Linux :
Adresses Link-local Exemple : Linux/Mac OS et Windows
74
moeglith$ ifconfig en0 en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether 78:31:c1:bf:ed:c8 inet6 fe80::7a31:c1ff:febf:edc8 %en0 prefixlen 64 scopeid 0x4 inet 192.168.0.12 netmask 0xffffff00 broadcast 192.168.0.255 nd6 options=1<PERFORMNUD> media: autoselect status: active
๏ Windows :
PC> ipconfig Windows IP Configuration Ethernet adapter Local Area Connection Connection-specifix DNS Suffix : Link-local IPv6 Address........: fe80::50a5:8a35:a5bb:66e1 IPv4 Address...................: 192.168.1.101 Subnet Mask....................: 255.255.255.0 Default Gateway................: 192.168.1.1
๏ IPv6 est par défaut activé sur les systèmes d’exploitation Windows, Linux, Mac OS
๏ Attention : attaques DoS et MitM possibles !
๏ Du moment qu’il possède une adresse IPv6, le périphérique peut communiquer directement avec le routeur
Thomas Moegli
๏ L’adresse de lien-local est utilisée comme adresse IPv6 par défaut avant que le périphérique ne reçoive une adresse dynamique (SLAAC ou DHCPv6)
๏ L’adresse de lien-local du routeur reçue via les messages RA est utilisée comme passerelle par défaut
๏ Les routeurs échangent leurs informations de routage en utilisant des adresses de lien-local
๏ Les routeurs utilisent l’adresse de lien-local comme adresse de Next-Hop dans la table de routage
Adresses Link-local Utilisation
75
Messages de Protocoles de routage
ICMPv6 Router Solicitation
De : Link-localA : Multicast
De : Link-local ou adresse non-spécifiéeA : Multicast
ICMPv6 Router Advertisement
De : Link-localA : Multicast
Thomas Moegli
Les adresses Link-local sont crées :
๏ Automatiquement :
๏ Préfixe FE80 - 10 premiers bits
๏ Identifiant de l’interface
๏ EUI-64 (Routeurs Cisco)
๏ 64 bits aléatoires (plusieurs systèmes d’exploitation comme Windows)
๏ Statique (configuration manuelle)
๏ Ne doit se faire que lorsque l’administrateur doit se souvenir de l’adresse d’un périphérique particulier
Adresses Link-local Configuration d’une adresse Link-local manuelle
76
54 bits restants/64
Interface ID1111 1110 10xx xxxx
FE80::Interface ID
10 premiers bits
Thomas Moegli
๏ Bien que le préfixe FE80 indique qu’il s’agit d’une adresse link-local, il est nécessaire de le préciser avec le mot-clé link-local
๏ Comme la portée de l’adresse est limitée au lien, il est possible de configurer la même adresse IPv6 sur plusieurs interfaces différentes à la condition que ces interfaces soient situés sur des réseaux différents.
Adresses Link-local Configuration d’une adresse Link-local manuelle
77
R1(config)# interface GigabitEthernet 0/1 R1(config-if)# ipv6 address fe80::1 link-local
R1(config)# interface GigabitEthernet 0/2 R1(config-if)# ipv6 address fe80::1 link-local
R1(config)# interface Serial 0/0/0 R1(config-if)# ipv6 address fe80::1 link-local
S0/0/0G0/2
G0/1
FE80::1
FE80::1
FE80::1
link-local
Thomas Moegli
๏ Comme la portée de l’adresse est limitée au lien, il est possible de configurer la même adresse IPv6 sur plusieurs interfaces différentes à la condition que ces interfaces soient situés sur des réseaux différents.
๏ Toutefois, sur le même lien, il est nécessaire que les adresses soient différentes
๏ Généralement, les hôtes ont leur adresse link-local automatiquement générée
Adresses Link-local Configuration d’une adresse Link-local manuelle
78
S0/0/0G0/2
G0/1
FE80::1
FE80::1
FE80::1
R1 S0/0/0FE80::2
R2
FE80::10
FE80::10
Thomas Moegli
๏ Commande
Adresses Link-local Vérification d’une adresse Link-local manuelle
79
R1# show ipv6 interface brief GigabitEthernet0/0 [up/up] FE80::FE99:47FF:FE75:C3E0 2001:DB8:CAFE:1::1 …
Router# show ipv6 interface brief
๏ Commande
R1# show ipv6 interface GigabitEthernet 0/0 GigabitEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::FE99:47FF:FE75:C3E0 Global unicast address(es) : 2001:DB8:CAFE:1::1, subnet is 2001:DB8:CAFE:1::/64 …
Router# show ipv6 interface interface-id
Thomas Moegli
๏ Les adresses link-local sont automatiquement crées si une adresse GUA n’est configurée sur l’interface
๏ La commande d’interface Router(config-if)# ipv6 enable permet de :
๏ Créer automatiquement sur une interface donnée une adresse link-local si aucune adresse GUA ou aucune
adresse link-locale statique n’est configurée sur cette interface
๏ Maintenir une adresse link-local si l’adresse GUA est supprimée
Adresses Link-local
Commande ipv6 enable
80
R1(config)# interface GigabitEthernet 0/0 R1(config-if)# ipv6 enable R1(config-if)# end
R1# show ipv6 interface brief GigabitEthernet0/1 [up/up] FE80::FE99:47FF:FE75:C3E0 R1#
Router(config-if)# ipv6 enable
Thomas Moegli
๏ Comme plusieurs interfaces possèdent la même adresse IPv6, il est nécessaire d’indiquer l’interface de sortie :
Adresses Link-local
Commande ping
81
S0/0/0G0/1FE80::1 FE80::1
R1 S0/0/0FE80::2
R2FE80::10
?
R1# ping FE80::2 Output Interface: Serial0/0/0
Thomas Moegli
Les adresses link-local sont utilisés comme adresses de Next-hop
Adresses Link-local Table de routage IPv6 et adresses Link-local
82
R1# show ipv6 route ospf O 2001:DB8:CAFE:2::/64 [110/657] via FE80::2, Serial0/0/0 O 2001:DB8:CAFE:3::/64 [110/1304] via FE80::2, Serial0/0/0 O 2001:DB8:CAFE:A002::/64 [110/1294] via FE80::2, Serial0/0/0 R1#
Messages de Protocoles de routage
De : Link-localA : Multicast
๏ Les protocoles de routage IPv6 comme OSPFv3 et EIGRP forment une adjacence et échangent les messages avec leur voisin en utilisant leur adresse link-local comme adresse source.
Thomas Moegli
Adresses IPv6
Multicast AnycastUnicast
Assigned Solicited Node
Global Unicast Link-Local Loopback Non spécifié Unique Local Mapping
IPv4
::1/128 ::/128 FC00::/7 ::/80FE80::/102000::/3
FF00::/8 FF02::1:FF00:0000/104
Adresses Multicast
84
Thomas Moegli
๏ Utilisé par un périphérique pour envoyer un paquet à plusieurs destinations simultanément (One-to-Many)
๏ Equivalent à la plage d’adresses 224.0.0.0/4 pour IPv4
๏ 2 types d’adresses multicast :
๏ Assigned
๏ Solicited-Node
Adresses Multicast Utilité
85
Thomas Moegli
๏ Caractéristiques
๏ Préfixe : FF08::/8
Adresses Multicast Caractéristiques
86
Multicast
Group ID1111 1111
112 bits8 bits
Flag
4 bits
Scope
4 bits
/16
Thomas Moegli
๏ Le champ Scope est un champ de 4 bits utilisé pour définir la portée des paquets Multicast
๏ Valeurs possibles (liste partielle) :
๏ 0 : Reservé
๏ 1 : Portée Interface-local
๏ 2 : Portée Link-local
๏ 5 : Portée Site-Local
๏ 8 : Portée Organization-Local
๏ E : Portée globale
Adresses Multicast Champ Scope
87
E : Global
8 : Organization-local
2 : Link-local
Internet
1 : Interface-local
5 : Site-local
Group ID1111 1111
112 bits8 bits
Flag
4 bits
Scope
4 bits
/16
Thomas Moegli
๏ Champ Flag
๏ 0 : Permanent, adresse multicast connue et assignée par l’IANA ๏ Inclut les adresses multicast Assigned et Solicited-Node
๏ 1 : Adresse multicast non permanente, assignée dynamiquement
๏ Exemple : Adresse FF18::CAFE:1234, utilisé pour une application multicast avec une portée Organizational
Adresses Multicast Champ Flag
88
Group ID1111 1111
112 bits8 bits
Flag
4 bits
Scope
4 bits
/16
Thomas Moegli
๏ RFC 2375 : IPv6 Multicast Address Assignments
๏ Définit les assignations initiaux pour les adresses multicast IPv6 avec un identifiant global
๏ Exemple : FF02::1 (All Nodes), FF02::2 (All Routers), …
๏ Référence pour les adresses multicast assignées :
๏ (IANA) IPv6 Multicast Address Space Registry - http://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml
Adresses Multicast Adresses Multicast IPv6 : Assigned
89
Thomas Moegli
Adresses Multicast Adresses Multicast IPv6 : Assigned avec portée Link-
90
Group ID1111 1111
112 bits8 bits
Flag0000
4 bits
Scope
4 bits
/16Flag = 0 (Assigned Multicast)Scope = 2 (Link-local Scope)
Prefix Flag Scope Predefined Group ID Compressed Format Description (IPv6 assumed)
FF 0 2 0:0:0:0:0:0:1 FF02::1 All Devices
FF 0 2 0:0:0:0:0:0:2 FF02::2 All Routers
FF 0 2 0:0:0:0:0:0:5 FF02::5 OSPF Routers
FF 0 2 0:0:0:0:0:0:6 FF02::6 OSPF DR Routers
FF 0 2 0:0:0:0:0:0:9 FF02::9 RIP Routers
FF 0 2 0:0:0:0:0:0:A FF02::A EIGRP Routers
FF 0 2 0:0:0:0:0:1:2 FF02::1:2 Serveurs DHCP / Agents relay
Thomas Moegli
Adresses Multicast Adresses Multicast IPv6 : Assigned avec portée Site-
91
Group ID1111 1111
112 bits8 bits
Flag0000
4 bits
Scope
4 bits
/16Flag = 0 (Assigned Multicast)Scope = 5 (Link-local Scope)
Prefix Flag Scope Predefined Group ID Compressed Format Description (IPv6 assumed)
FF 0 5 0:0:0:0:0:0:2 FF05::2 All Routers
FF 0 5 0:0:0:0:0:1:3 FF05::1:3 All DHCP Servers
๏ Utilisé pour les communications au sein d’un site, routé au sein du site
๏ Le routage multicast IPv6 doit être activé sur les routeurs :
๏ Router(config)# ipv6 multicast-routingRouter(config)# ipv6 multicast-routing
Thomas Moegli
๏ FF02::1 : All IPv6 Devices
๏ Tous les périphériques Ipv6, le routeur inclus, appartiennent à ce groupe
๏ Chaque périphérique IPv6 écoute et prend en considération les
paquets à destination de cette adresse multicast
๏ Similaire à un paquet broadcast sous IPv4 ?
๏ Non, car ces paquets sont liés à une adresse MAC de couche 2 ce qui est plus efficace
Adresses Multicast Adresse Multicast Assigned : « All IPv6 Devices »
92
Reste du paquet IPv6FF02::1 FE80::1
Adresse de destination IPv6
Adresse de source IPv6
Router(config)# ipv6 unicast-routing
ICMPv6 Router Advertisement
ICMPv6 : Router Advertisement
Thomas Moegli
Router(config)# ipv6 unicast-routing
ICMPv6 Router Solicitation
Reste du paquet IPv6FF02::2 FE80::12:3456:7890:ABCD
Adresse de destination IPv6
Adresse de source IPv6
๏ FF02::2 - All IPv6 Routers
๏ Tous les routeurs IPv6 du même sous-réseau
๏ Utilisé par les périphériques pour communiquer avec un routeur IPv6
Adresses Multicast Adresse Multicast Assigned : « All IPv6 Devices »
93
ICMPv6 : Router Solicitation
Thomas Moegli
FF02 - « 2 » signifie portée Link-local
Adresses Multicast Vérification des adresses Multicast jointes par le routeur
94
R1# show ipv6 interface GigabitEthernet 0/0 GigabitEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::1 Global unicast address(es): 2001:DB8:CAFE:1::1, subnet is 2001:DB8:CAFE:1::/64 Joined group address(es): FF02::1 FF02::2 FF02::5 FF02::6 FF02::1:FF00:1 …
All-IPv6 DevicesAll-IPv6 Routers (indique que le routage IPv6 est activé)OSPFv3 All OSPF Routers (similaire à 224.0.0.5)OSPFv3 All DR Routers (similaire à 224.0.0.6)Adresse multicast Solicited-node
Thomas Moegli
Mapping d’adresse IP à adresse de couche 2 (MAC)
๏ Sous IPv4 :
๏ Utilisation du protocole ARP
๏ Sous IPv6
๏ Utilisation du protocole ICMPv6 ๏ Message Neighbor Solicitation
๏ Message Neighbor Advertisement
๏ Les périphériques stockent le mappage dans leur cache
Adresses Multicast Résolution d’adresse
95
ARP RequestARP Reply
Connaissant l’adresse IP, quel est
l’adresse MAC ?
ARP Cache
Ce message s’adresse à moi. Voici mon adresse
MAC.
Connaissant l’adresse IPv6, quel est l’adresse MAC ?
Neighbor Cache
ICMPv6Neighbor Solicitation
Ce message s’adresse à moi. Voici mon adresse
MAC.ICMPv6
Neighbor Advertisement 1
2
3
12
3
IPv4
IPv6
Thomas Moegli
๏ Requêtes IPv4 ARP
๏ Adresse MAC de destination : Adresse Broadcast de couche 2
๏ Le paquet doit être reçu par la carte réseau puis traité au niveau de la couche 3 pour examiner l’adresse IPv4 cible
Adresses Multicast Avantages du multicast Solicited-Node
96
Message ARP avec adresse IPv4 cible
Ethernet Message ARP
Adresse destination
Broadcast
๏ Requêtes IPv6
๏ Adresse IPv6 de destination : Solicited-Node Multicast
๏ Adresse MAC de destination : Adresse Multicast de couche 2
ICMPv6 NS avec adresse IPv6 cible
Ethernet ICMPv6 NS
Adresse destination
MulticastAdresse destination
Multicast Solicited-Node
IPv6
Ethernet Broadcast passé à la couche supérieure
Ethernet Multicast filtré par la carte réseau
Thomas Moegli
๏ ICMPv6 NS : Adresse IPv6 cible (GUA de PC2)
๏ Adresse IPv6 de destination : Adresse multicast Solicited-Node
๏ Adresse MAC de destination : Adresse multicast de couche 2
Adresses Multicast Exemple : Solicited-Node
97
ICMPv6Neighbor Solicitation
Adresse MAC :00-1B-24-04-A2-1E
Adresse MAC :00-21-9B-D9-C6-44
2001:DB8:CAFE:1::100/642001:DB8:CAFE:1::200/64FF02::1:FF00:200 (Solicited Node Multicast)
PC1> ping 2001:DB8:CAFE:1::200
Neighbor Cache :
PC 1PC 2
1
2
3
Adresse IPv6 cible :
2001:DB8:CAFE:1::200
ICMPv6 Neighbor Solicitation
Adresse destination
FF02::1:FF00:200
IPv6
Destination MAC
33-33-FF-00-02-00
Ethernet
2001:DB8:CAFE:1::200 =00-1B-24-04-A2-1E 5
ICMPv6Neighbor Advertisement
4
Thomas Moegli
SLAAC : Stateless Address Autoconfiguration
99
Adresse Global Unicast
Manuel Dynamique
Statique + EUI 64
Statique IPv6Unnumbered SLAAC DHCPv6
StatefulStateless
SLAAC + DHCPv6 DHCPv6 - PD
Thomas Moegli
๏ Décrit dans la RFC 4443
๏ Plus robuste que ICMP pour IPv4
๏ Contient de nouvelles fonctionnalités et améliorations
๏ Inclut la fonction ICMPv6 Neighbor Discovery (RFC 4861) - utilisé dans l’allocation d’adresse dynamique
Adressage SLAAC Protocole ICMPv6
100
Thomas Moegli
Messages ICMPv6 utilisés par la fonction Neighbor Discovery :
๏ Router Solicitation Message
๏ Router Advertisement Message
๏ Utilisé pour l’allocation d’adresses dynamiques
๏ Neighbor Solicitation Message
๏ Neighbor Advertisement Message
๏ Utilisé avec la résolution d’adresse (IPv4 ARP) et avec DAD
๏ Redirect Message
Adressage SLAAC ICMPv6 : Neighbor Discovery
101
MessagesRouter-Device
MessagesDevice-Device
Thomas Moegli
๏ Le message ICMPv6 Router Advertisement (RA) envoyé depuis le routeur propose aux périphériques IPv6 de le contacter pour recevoir une configuration IPv6.
๏ Message envoyé périodiquement par le routeur IPv6
๏ … ou lorsque le routeur reçoit un message Router Solicitation envoyé par un client qui désire
Adressage SLAAC ICMPv6 : Message Router Advertisement
102
Serveur DHCPv6
ICMPv6 Router Advertisement
Serveur DHCPv6
A tous les routeurs IPv6, j’ai besoin d’une configuration
IPv6
Voici une configuration IPv6 possible
ICMPv6 Router Advertisement
ICMPv6 Router Solicitation
Je ne suis finalement pas utile !
Thomas Moegli
๏ Message Router Advertisement (RA) ๏ Les messages RA sont envoyés par le routeur IPv6
๏ Sur les routeurs Cisco, l’activation des envois se fait par la commande
๏ La commande active le transfert des paquets IPv6 (Forwarding)
๏ La commande active également le routage dynamique IPv6
๏ Les routeurs peuvent être configurés avec une adresse IPv6 sans forcément effectuer du routage
๏ Si la commande unicast- routing n’est pas configurée, les routes statiques IPv6 peuvent être configurés mais le routeur ne transfère que les paquets générés localement, il ne transmet pas les paquets qui transitent pas lui
Adressage SLAAC ICMPv6 : Message Router Advertisement
103
Router(config)# ipv6 unicast-routing
ipv6 unicast-routing
Thomas Moegli
Adressage SLAAC ICMPv6 : Message Router Advertisement
104
Serveur DHCPv6
Router(config)# ipv6 unicast-routing
ICMPv6RA
Option 1 : SLAAC - sans DHCPv6 (par défaut sur les routeurs Cisco)
Le routeur envoie le préfixe, la longueur du préfixe et la passerelle par défaut
Option 2 : SLAAC + Stateless DHCPv6 for DNS address
Le routeur envoie certaines informations mais pour obtenir les autres comme les adresses DNS, le client devrait s’adresser au serveur DHCPv6 (toutefois, les informations DNS peuvent être incluses dans le message RA)
Option 3 : DHCPv6 Toutes ou une partie des informations sont apprises par le serveur DHCP (dépend de la valeur de l’option du message)
Option 1 et 2 : Stateless Address Autoconfiguration
Le serveur DHCPv6 ne maintient pas l’état des adresses
Option 3 : Stateful Address Configuration Les adresses sont reçues du serveur DHCPv6
Thomas Moegli
Options du message RA
๏ L’option proposée par le message RA dépend de plusieurs flags
๏ Flag « O » (Other Configuration Flag) :
๏ Par défaut, ce flag a pour valeur 0
๏ Si le flag est configuré à la valeur 1, cela indique que le client peut utiliser certaines informations du routeur mais que les autres informations doivent être récupérées sur un serveur DHCPv6.
๏ Flag « M » (Managed Configuration Flag)
๏ Par défaut, ce flag a pour valeur 0
๏ Si le flag est configuré à la valeur 1, le client doit récupérer toutes les informations d’un serveur DHCPv6, sauf
l’adresse de passerelle par défaut
Adressage SLAAC ICMPv6 : Message Router Advertisement
105
Serveur DHCPv6
Thomas Moegli
Adressage SLAAC ICMPv6 : Message Router Advertisement
106
Serveur DHCPv6
OptionOther Configuration « O » Flag
Managed Configuration « M » Flag
Option 1 : SLAAC - Sans DHCPv6 (par défaut sur les routeurs Cisco) 0 0Option 2 : SLAAC - Avec DHCPv6 pour l’adresse DNS 1 0Option 3 : DHCPv6 uniquement (seul l’adresse IPv6 du routeur est utilisé comme passerelle par défaut) 0 1
Thomas Moegli
๏ SLAAC (Stateless Address Autoconfiguration)
๏ Autorise un périphérique à créer sa propre adresse IPv6 GUA sans les services d’un serveur DHCPv6.
๏ Le client récupère le préfixe depuis le message RA émis du routeur
๏ Pour la partie Interface ID :
๏ Elle peut être générée avec EUI-64
๏ Elle peut être générée avec une valeur aléatoire de 64 bits
๏ SLAAC ne nécessite pas de serveur DHCPv6
Adressage SLAAC
107
ICMPv6 Router AdvertisementPréfixe et autres informations
Router(config)# ipv6 unicast-routing
2001:DB8:CAFE:1::/64
Je connais le préfixe depuis le message RA.
Je dois juste configurer la partie Interface ID.
Thomas Moegli
๏ Les messages ICMPv6 RA suggèrent à l’hôte comment recevoir l’adresse automatiquement
๏ L’hôte peut toutefois décider d’ignorer les messages RA
๏ Cette option doit être configurée sur le périphérique.
๏ Elle est disponible sur la plupart des systèmes d’exploitation
๏ Toutefois, les hôtes ne peuvent ignorer l’adresse de la passerelle (adresse source du message RA) excepté si l’adresse de passerelle est configurée manuellement.
Adressage SLAAC Ignorer le message RA
108
ICMPv6 Router AdvertisementPréfixe et autres informations
2001:DB8:CAFE:1::/64
Thomas Moegli
Adressage SLAAC Contenu d’un message RA
109
RA
SLAAC Option 1 - Message RADe : FF02::1 (All-IPv6 Devices)A : FE80::1 (Adresse link-local)Préfixe : 2001:DB8:CAFE1::Longueur préfixe : /64
2001:DB8:CAFE:1::/64
Adresse MAC :00-19-D2-8C-E0-4C
Préfixe : 2001:DB8:CAFE1::Longueur préfixe : /64GW : FE80::1Global Unicast Address : 2001:DB8:CAFE:1: + Interface ID
Processus EUI-64 ou valeur aléatoire sur 64 bits
1
2
Note : Le nom de domaine DNS et la liste des serveurs DNS peuvent faire partie du message RA si le routeur et le destinataire supportent la RFC 6106 (IPv6 RA Options for DNS Configuration)
Serveur DHCPv6
Thomas Moegli
2 méthodes :
๏ Processus EUI-64
๏ Utilise l’adresse MAC de l’interface
๏ Nombre généré aléatoirement (Privacy Extension)
๏ Plus de sécurité car l’adresse MAC n’est pas utilisé
๏ Note : Pour tout système, la même méthode est utilisée pour configurer une adresse GUA et une adresse link-local.
Adressage SLAAC Configuration de la partie Interface ID
110
Système d’exploitation EUI-64 64 bits aléatoires
Windows XP, Server 2003 ✔Windows Vista et ultérieur ✔
Mac OS X ✔
Linux ✔
Thomas Moegli
0300 E96B D4 80
0300 E96B D4 80FF FE
MAC (24 bits)OUI (24 bits)
030000 0010 E96B D4 80FF FE
Bit U/L
0302 E96B D4 80FF FE
Format EUI-64 (Extended Unique Identifier)
๏ Adresse MAC (48 bits) :
๏ Partie OUI, identifiant du constructeur (24 bits)
๏ Partie MAC, identifiant de l’interface (24 bits)
๏ Entre ces deux parties, on place les caractères hexadécimaux FF-FE (64 bits)
๏ Pourquoi FF-FE ? Selon l’IEEE, il s’agit d’une valeur réservée que les fabricants d’équipement ne peuvent ajouter dans une
adresse MAC
๏ Le bit U/L est le 3ème bit du deuxième hexset (7ème bit)
๏ Ce bit est placé à 0 s’il s’agit d’une adresse globale assignée par l’IEEE (Universal)
๏ Ce bit est placé à 1 s’il s’agit d’une adresse crée localement (par ex. adresse pour une interface virtuelle ou adresse MAC configurée manuellement par l’administrateur)
Adressage SLAAC SLAAC : Interface ID avec EUI-64
111
Thomas Moegli
๏ SLAAC étant stateless, aucune entité (pas de serveur DHCPv6) ne permet de vérifier si une adresse IPv6 configurée existe déjà dans le segment réseau
๏ Comment garantir que l’adresse est unique ?
๏ Solution : DAD (Duplicate Address Detection)
Adressage SLAAC SLAAC : Vérification d’une adresse IPv6 dupliquée
112
Thomas Moegli
๏ ICMPv6 propose un message appelé Neighbor Solicitation fonctionnant de manière similaire au protocole ARP de IPv4, à savoir la résolution d’une adresse IPv6 avec une adresse MAC
๏ DAD utilise ce message pour détecter si une adresse configurée existe déjà dans le réseau
๏ Etapes
๏ Envoi d’un message Neighbor Solicitation
๏ Envoi d’un message multicast (F02::01 : All-Nodes) avec pour adresse source l’adresse configurée
๏ Attente éventuelle d’une réponse (utilisation d’un timer) ๏ Si réponse : Présence d’un poste possédant déjà l’adresse
๏ Si aucune réponse : Adresse probablement unique et affectation autorisée
Adressage SLAAC SLAAC : DAD
113
ICMPv6Neighbor Solicitation
ICMPv6Neighbor Advertisement
Si non reçu ➔ Adresse uniqueSi réponse ➔ Adresse dupliquée
Thomas Moegli
Etapes
1. Construction de l’adresse Link-local
2. Test si l’adresse link-local est unique
3. Recherche d’un routeur IPv6
4. Annonce d’un routeur IPv6 contenant le préfixe du réseau
5. Test si l’adresse GUA choisie est unique
Adressage SLAAC SLAAC : Résumé
114
Adresse MAC :00-19-D2-8C-E0-4C
2001:DB8:CAFE:1::1/64
Création de l’adresse Link-localFE80::219:D2FF:FE8C:E04C/64
IPv6 Src = ::IPv6 Dst = FF02::1:FF8C:E04CICMPv6 Neighbor Solicitation
IPv6 Src = FE80::219:D2FF:FE8C:E04CIPv6 Dst = FF02::2ICMPv6 Router Solicitation
Aucune réponse reçue
IPv6 Src = FE80::202:7EFF:FE14:1IPv6 Dst = FF02::1ICMPv6 Router Advertisement
IPv6 Src = ::IPv6 Dst = FF02::1:FF8C:E04CICMPv6 Neighbor Solicitation
1
2
3
4
5
Thomas Moegli
Router(config)# ipv6 unicast-routing
Router
2001:DB8:CAFE:1::1/64FE80::1/64
All-IPv6 Devices (FF02::1)
Router IPv6
2001:DB8:CAFE:1::1/64FE80::1/64
All-IPv6 Devices (FF02::1)
All-IPv6 Routers (FF02::2)
ICMPv6Neighbor Solicitation
Protocoles de routageRIPng, OSPFv3, EIGRP for IPv6
Forward IPv6 packets
๏ Routeur (sans activation de routage IPv6) :
๏ Peut être configuré avec une adresse IPv6
๏ Fait partie du groupe multicast All-IPv6
๏ Routeur avec activation Routage IPv6 :
๏ Similaire à un routeur sans routage IPv6
๏ Membre du groupe multicast All-IPv6 Routers
๏ Envoie périodiquement des messages ICMPv6 Router Advertisement
๏ Permet d’activer les protocoles de routage IPv6
๏ Transfère les paquets IPv6 transitant (Forwarding)
Configuration SLAAC Routeurs vs Routeurs IPv6
115
Thomas Moegli
R2R1
Routeur IPv6 Routeur non IPv6
G0/1 G0/12001:DB8:CAFE:1/64
::1FE80::1
Configuration SLAAC
116
R1(config)# interface GigabitEthernet 0/1 R1(config-if)# ipv6 address 2001:DB8:CAFE:1::1/64 R1(config-if)# ipv6 address FE80::1 link-local R1(config-if)# no shutdown R1(config)# ipv6 unicast-routing
ICMPv6Router Advertisement
R2(config)# interface GigabitEthernet 0/1
! Crée une adresse link-local R2(config-if)# ipv6 enable ! Utilise SLAAC comme méthode pour l’adressage R2(config-if)# ipv6 address autoconfig default R2(config-if)# no shutdown
Thomas Moegli
R2R1
Routeur IPv6 Routeur non IPv6
G0/1 G0/12001:DB8:CAFE:1/64
::1FE80::1
Configuration SLAAC Vérification
117
R1# show ipv6 interface GigabitEthernet 0/1 GigabitEthernet0/1 is up, line protocol is up IPv6 is enabled, link-local address is FE80::1 Global unicast address(es) : 2001:DB8:CAFE:1::1, subnet is 2001:DB8:CAFE:1:/64 Joined group address(es) : FF02::1 FF02::2 FF02::FB FF02::1:FF00:1 ND router advertisement are sent every 200 seconds Hosts use stateless autoconfig for addresses.
ICMPv6Router Advertisement
Indique que les bits O et M sont à 0
Thomas Moegli
R2R1
Routeur IPv6 Routeur non IPv6
G0/1 G0/12001:DB8:CAFE:1/64
::1FE80::1
Configuration SLAAC Vérification
118
R2# show ipv6 interface brief GigabitEthernet0/1 [up/up] FE80::8A5A:92FF:FE3B:29E1 2001:DB8:CAFE:1:8A5A:92FF:FE3B:29E1 …
ICMPv6Router Advertisement
R2# show ipv6 interface GigabitEthernet0/1 GigabitEthernet0/1 is up, line protocol is up Hardware is CN Gigabit Ethernet, address is 885a.923b.29e1 (bia 885a.923b.29e1) …
EUI-64
Thomas Moegli
R2R1
Routeur IPv6 Routeur non IPv6
G0/1 G0/12001:DB8:CAFE:1/64
::1FE80::1
Configuration SLAAC Vérification
119
R2# show ipv6 route IPv6 Routing Table - default - 4 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary D - EIGRP, EX - EIGRP external, ND - Neighbor Discovery, NDp - ND Prefix, l - LISP O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 ND ::/0 [2/0] via FE80:1, GigabitEthernet0/1 NDp 2001:DB8:CAFE1::/64 [2/0] via GigabitEthernet0/1, directly connected …
ICMPv6Router Advertisement
Route par défaut apprise par SLAAC
Préfixe appris par SLAAC
Thomas Moegli
๏ Un routeur (non configuré comme routeur IPv6)
๏ Peut posséder des adresses IPv6 configurées sur ses interfaces
๏ Est membre du groupe multicast All-IPv6 Devices
๏ Un routeur IPv6
๏ Configuration d’un routeur IPv6 via la commande ipv6 unicast-routing
๏ Possède les mêmes caractéristiques qu’un routeur
๏ Est membre du groupe multicast All-IPv6 Routers
๏ Envoie des messages ICMPv6 Router Advertisement
๏ Permet d’activer des protocoles de routage IPv6
๏ Transmet les paquets IPv6 entre équipements (transition via le routeur)
Routeurs vs Routeurs IPv6
121
2001:DB8:CAFE:1::1/64FE80::1FF02::1 (All-IPv6 Devices)
2001:DB8:CAFE:1::1/64FE80::1FF02::1 (All-IPv6 Devices)FF02::2 (All-IPv6 Routers)
IPv6
ICMPv6 : Router Advertisement
RIPng, OSPFv3, EIGRP pour IPv6
Thomas Moegli
Table de routage IPv6
122
R1# show ipv6 route IPv6 Routing Table - default - 6 entries Codes : C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, a - Application
C 2001:DB8:CAFE:1::/64 [0/0] via GigabitEthernet0/0, directly connected L 2001:DB8:CAFE:1::1/128 [0/0] via GigabitEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive R1#
2001:DB8:CAFE:1::/64:1R1
G0/0
Thomas Moegli
Table de routage IPv6
123
R1# show ipv6 route IPv6 Routing Table - default - 6 entries Codes : C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, a - Application
C 2001:DB8:CAFE:1::/64 [0/0] via GigabitEthernet0/0, directly connected L 2001:DB8:CAFE:1::1/128 [0/0] via GigabitEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive R1#
2001:DB8:CAFE:1::/64:1R1
G0/0
๏ Les routes locales (L) sont des routes /128 pour les adresses unicast IPv6 du routeur
๏ Permet au routeur d’être plus efficace de traiter les paquets qui sont à destination du routeur lui-même.
Thomas Moegli
Table de routage IPv6
124
R1# show ipv6 route IPv6 Routing Table - default - 6 entries Codes : C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, a - Application
C 2001:DB8:CAFE:1::/64 [0/0] via GigabitEthernet0/0, directly connected L 2001:DB8:CAFE:1::1/128 [0/0] via GigabitEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive R1#
2001:DB8:CAFE:1::/64:1R1
G0/0
๏ Par défaut, les paquets multicast (FF00::/8) ne sont pas transmis
๏ Tout paquet multicast plus « spécifique » se placera dans la table de routage à une place plus élevée que cette règle
๏ Les liens locaux multicast (FF02) ne sont jamais transmis en dehors de la ligne.
Thomas Moegli
๏ La configuration de routes statiques dans IPv6 est similaire à la configuration en IPv4
Route statique IPv6
125
Router(config)# ipv6 route ipv6-prefix/prefix-length {exit-intf | ipv6-address}
Paramètre Description
ipv6-prefix Adresse IPv6 de destination du réseau distant à ajouter dans la table de routage
/prefix-length Longueur du préfixe du réseau distant à ajouter dans la table de routage
exit-intf Interface de sortie
ipv6-address Adresse du prochain Next-Hop
Thomas Moegli
Route statique IPv6 Configuration
126
2001:DB8:CAFE:2::/64:1
:1R2R1G0/1 S0/0/0
S0/0/0:22001:DB8:CAFE:1::/64
2001:DB8:FEED:1::/642001:DB8:FEED:2::/642001:DB8:FEED:3::/642001:DB8:FEED:4::/642001:DB8:FEED:5::/64
Route statique
R2(config)# ipv6 unicast-routing R2(config)# ipv6 route 2001:db8:cafe:1::/64 2001:db8:cafe:2::1
R2# show ipv6 route static IPv6 Routing Table - default - 14 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route … S 2001:DB8:CAFE:1::/64 [1/0] via 2001:DB8:CAFE:2::1 R2#
Vérification :
Thomas Moegli
2001:DB8:CAFE:2::/64:1
:1R2R1G0/1 S0/0/0
S0/0/0:22001:DB8:CAFE:1::/64
2001:DB8:FEED:1::/642001:DB8:FEED:2::/642001:DB8:FEED:3::/642001:DB8:FEED:4::/642001:DB8:FEED:5::/64
Route statique
Route statique IPv6 Configuration
127
R1(config)# ipv6 unicast-routing R1(config)# ipv6 route 2001:db8:feed:1::/64 2001:db8:cafe:2::2 R1(config)# ipv6 route 2001:db8:feed:2::/64 2001:db8:cafe:2::2 R1(config)# ipv6 route 2001:db8:feed:3::/64 2001:db8:cafe:2::2 R1(config)# ipv6 route 2001:db8:feed:4::/64 2001:db8:cafe:2::2 R1(config)# ipv6 route 2001:db8:feed:5::/64 2001:db8:cafe:2::2
R1# show ipv6 route static … S 2001:DB8:FEED:1::/64 [1/0] via 2001:DB8:CAFE:2::2 S 2001:DB8:FEED:2::/64 [1/0] via 2001:DB8:CAFE:2::2 S 2001:DB8:FEED:3::/64 [1/0] via 2001:DB8:CAFE:2::2 S 2001:DB8:FEED:4::/64 [1/0] via 2001:DB8:CAFE:2::2 S 2001:DB8:FEED:5::/64 [1/0] via 2001:DB8:CAFE:2::2 R1#
Options de réduction de la table de routage
๏ Route statique résumée
๏ Route statique par défaut
Thomas Moegli
๏ CEF (Cisco Express Forwarding est un mécanisme qui permet d’optimiser les processus de recherche dans la table de routage
๏ Pour les versions IOS inférieures à 15.x, il est nécessaire d’utiliser la commande de configuration globale ipv6 cef en plus de la commande ipv6 unicast-routing
Route statique IPv6 CEF pour IPv6
128
R1# show running-config … ip cef no ipv6 cef
CEF pour IPv4 actif par défautCEF pour IPv6 désactivé par défaut
R1(config)# ipv6 unicast-routing R1(config)# exit R1# show running-config … ip cef ipv6 cef
CEF pour IPv4 actifCEF pour IPv6 actif
R1
ipv6 unicast-routingipv6 cef
Thomas Moegli
๏ Etape 1 : En commençant par les bits de gauche à droite, identifier à partir de quel moment les adresses changent (indiquées en rouge)
Route statique IPv6 Routes résumées
129
2001:0db8:feed:0001::/642001:0db8:feed:0002::/64 2001:0db8:feed:0003::/64 2001:0db8:feed:0004::/64 2001:0db8:feed:0005::/64
2001:0db8:feed:0000000000000001::/642001:0db8:feed:0000000000000010::/64 2001:0db8:feed:0000000000000011::/64 2001:0db8:feed:0000000000000100::/64 2001:0db8:feed:0000000000000101::/64
๏ Etape 2 : Convertir les blocs indiquées en binaire
Thomas Moegli
๏ Etape 3 : Sur le bloc indiquée, compter le nombre de bits identiques.Le nombre détermine le masque
Route statique IPv6 Routes résumées
130
2001:0db8:feed:0000000000000001::/642001:0db8:feed:0000000000000010::/64 2001:0db8:feed:0000000000000011::/64 2001:0db8:feed:0000000000000100::/64 2001:0db8:feed:0000000000000101::/64
16 16 16 13
= 61 Masque /61
+ + +
Note : La route résumée comprend également les réseaux 2001:db8:feed::/64, 2001:db8:feed:6::/64 et 2001:db8:feed:7::/64
Thomas Moegli
๏ Etape 4 : Ajouter des zéros sur les bits restants du bloc.
Route statique IPv6 Routes résumées
131
2001:0db8:feed:0000000000000000::/61
Note : La route résumée comprend également les réseaux 2001:db8:feed::/64, 2001:db8:feed:6::/64 et 2001:db8:feed:7::/64
2001:0db8:feed:0000::/61
2001:0db8:feed:0::/61
2001:db8:feed::/61
ou
ou
Thomas Moegli
2001:DB8:CAFE:2::/64:1
:1R2R1G0/1 S0/0/0
S0/0/0:22001:DB8:CAFE:1::/64
2001:DB8:FEED:1::/642001:DB8:FEED:2::/642001:DB8:FEED:3::/642001:DB8:FEED:4::/642001:DB8:FEED:5::/64
Route statique
Route statique IPv6 Configuration de routes résumées
132
R1(config)# no ipv6 route 2001:db8:feed:1::/64 2001:db8:cafe:2::2 R1(config)# no ipv6 route 2001:db8:feed:2::/64 2001:db8:cafe:2::2 R1(config)# no ipv6 route 2001:db8:feed:3::/64 2001:db8:cafe:2::2 R1(config)# no ipv6 route 2001:db8:feed:4::/64 2001:db8:cafe:2::2 R1(config)# no ipv6 route 2001:db8:feed:5::/64 2001:db8:cafe:2::2
R1(config)# ipv6 route 2001:db8:feed::/61 2001:db8:cafe:2::2
Thomas Moegli
2001:DB8:CAFE:2::/64:1
:1R2R1G0/1 S0/0/0
S0/0/0:22001:DB8:CAFE:1::/64
2001:DB8:FEED:1::/642001:DB8:FEED:2::/642001:DB8:FEED:3::/642001:DB8:FEED:4::/642001:DB8:FEED:5::/64
Route statique
Route statique IPv6 Vérification de la configuration
133
R1# show ipv6 route static … S 2001:DB8:FEED:1::/61 [1/0] via 2001:DB8:CAFE:2::2 R1#
R1# ping 2001:db8:feed:1::1 Sending 5, 100-byte ICMP Echos to 2001:DB8:FEED:1::1, timeout is 2 seconds : !!!!! R1#
Thomas Moegli
๏ Configuration d’une route par défaut en IPv4 :
๏ Configuration d’une route par défaut en IPv6 :
Route statique IPv6 Route par défaut
134
Router(config)# ip route 0.0.0.0 0.0.0.0 { exit-intf | ipv4-add }
Router(config)# ipv6 route ::/0 { exit-intf | ipv4-add }
Thomas Moegli
๏ Les opérations de base et les algorithmes utilisés dans OSPFv2 sont également applicables pour OSPFv3 en IPv6
Routage IPv6 OSPFv3
136
Protocoles de routage internes Protocoles de routage externes
Protocoles de routage à vecteur de distance
Protocoles de routage à état de liens
Protocoles de routage à vecteur de chemin
RIPv2 EIGRP OSPFv2 IS-IS BGP-4
RIPng EIGRP pour IPv6 OSPFv3 * IS-IS pour IPv6 BGP-4 pour IPv6MP-BGP
*OSPFv3 supporte le routage IPv4 et IPv6
Thomas Moegli
Routage IPv6 OSPFv3
137
OSPFv2 pour IPv4 OSPFv3 pour IPv6 OSPFv3 Address Families
Version OSPF OSPFv2 OSPFv3 OSPFv3
Routes annoncées Réseaux IPv4 Préfixes IPv6 Réseaux IPv4 et préfixes IPv6
Etat des liens Oui Oui Oui
Métrique Coût (Cisco : Bandwidth) Coût (Cisco : Bandwidth) Coût (Cisco : Bandwidth)
Support multi-areas Oui Oui Oui
Router-ID 32-bits 32-bits 32-bits
DR et BDR Oui Oui Oui
Thomas Moegli
Routage IPv6 OSPFv3
138
OSPFv2 pour IPv4 OSPFv3 pour IPv6 OSPFv3 Address Families
Encapsulation Layer 3 IPv4 IPv6 IPv6
Adresse source Adresse IPv4 Adresse de lien local IPv6 Adresse de lien local IPv6
Destination : All OSPF Routers 224.0.0.5 FF02::5 FF02::5
Destination :All DR/BDR 224.0.0.6 FF02::6 FF02::6
Destination : Neighbor Adresse IPv4 Adresse de lien local IPv6 Adresse de lien local IPv6
Routage IPv6 Unicast N/A (Par défaut routage unicast IPv4) Requis
Requis (même si utilisé uniquement pour IPv4 address
family)
Authentification Plain text et MD5 IPsec IPsec
LSAs OSPFv3 renomme deux types de LSA et définit deux nouveaux types de LSA qui n’existent pas dans OSPFv2
Thomas Moegli
Routage IPv6 OSPFv3
139
OSPFv2 LSAs OSPFv3 LSAsType Nom LS Type Code Nom
1 Router LSA 0x2001 Router LSA
2 Network LSA 0x2002 Network LSA3 Network Summary LSA 0x2003 Inter-Area Prefix LSA
4 ASBR Summary LSA 0x2004 Inter-Area Router LSA
5 AS-External LSA 0x2005 AS-External LSA6 Group Membership LSA 0x2006 Group Membership LSA
7 NSSA External LSA 0x2007 Type-7 LSA0x2008 Link LSA
0x2009 Intra-Area Prefix LSA
Thomas Moegli
Routage IPv6 Comparaison OSPFv2 et OSPFv3
140
R2R1Réseau IPv4
OSPFv2
Table des voisins
OSPFv2
LSDB
IPv4
Table de routage
OSPFv2
Table des voisins
OSPFv2
LSDB
IPv4
Table de routage
OSPFv2
Table des voisins
OSPFv2
LSDB
IPv4
Table de routage
OSPFv2
Table des voisins
OSPFv2
LSDB
IPv4
Table de routage
Réseau IPv6
Thomas Moegli
Topologie d’exemple
Routage IPv6 OSPFv2 et OSPFv3 : Configuration
141
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
Thomas Moegli
Routage IPv6 OSPFv2 : Configuration
142
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
! Configuration de la route statique ip route 0.0.0.0 0.0.0.0 192.168.77.2
! Configuration OSPF router ospf 1 router-id 1.1.1.1 passive-interface GigabitEthernet0/0 network 192.168.1.0 0.0.0.255 area 0 network 192.168.12.0 0.0.0.255 area 0 default-information originate ! Propagation de la route par défaut dans OSPF
:2 .2
R1
Propagation route par défaut
Thomas Moegli
Routage IPv6 OSPFv2 : Configuration
143
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
! Configuration OSPF router ospf 1 router-id 2.2.2.2 network 192.168.12.0 0.0.0.255 area 0 network 192.168.23.0 0.0.0.255 area 0
:2 .2
Propagation route par défaut
R2
! Configuration OSPF router ospf 1 router-id 3.3.3.3 passive-interface GigabitEthernet0/0 network 192.168.23.0 0.0.0.255 area 0 network 192.168.3.0 0.0.0.255 area 0
R3
! Configuration OSPF interface S0/0/0 ip ospf 1 area 0 interface S0/0/1 ip ospf 1 area 0
ou
R2
Thomas Moegli
! Configuration de la route statique et activation du routage IPv6 ipv6 route ::/0 2001:DB8:77::2 ipv6 unicast-routing
! Configuration OSPF ipv6 router ospf 2 ! Le process-ID OSPF ne requiert pas d’être identique sur tous les routeurs router-id 1.1.1.6 ! Même processus que OSPFv2 pour déterminer le RID. Obligatoire si aucune adresse IPv4 configurée passive-interface GigabitEthernet0/0 default-information originate
interface GigabitEthernet0/0 ipv6 ospf 2 area 0 ! Pas de commande network
interface Serial0/0/0 ipv6 ospf 2 area 0
R1
Routage IPv6 OSPFv3 : Configuration
144
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
:2 .2
Propagation route par défaut
Thomas Moegli
ipv6 unicast-routing
! Configuration OSPF ipv6 router ospf 2 router-id 2.2.2.6
interface Serial0/0/0 ipv6 ospf 2 area 0
interface Serial0/0/1 ipv6 ospf 2 area 0
Routage IPv6 OSPFv3 : Configuration
145
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
:2 .2
Propagation route par défaut
R2
Thomas Moegli
ipv6 unicast-routing
! Configuration OSPF ipv6 router ospf 2 router-id 3.3.3.6
interface Serial0/0/1 ipv6 ospf 2 area 0
passive-interface GigabitEthernet0/0 interface GigabitEthernet0/0 ipv6 ospf 2 area 0
Routage IPv6 OSPFv3 : Configuration
146
OSPF Area 0
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
:2 .2
Propagation route par défaut
R2R3
Thomas Moegli
OSPF Area 51
2001:DB8:CAFE:12::/64:2.2
:1.1
2001:DB8:CAFE:23::/64:3.3
:2.2R2
S0/0/0S0/0/1
2001:DB8:77::/64:1.1
ISP
192.168.12.0/24 192.168.23.0/24
R1 S0/0/0S0/0/1
192.168.1.0/242001:DB8:CAFE:1::/64
192.168.77.0/24
192.168.3.0/242001:DB8:CAFE:3::/64
R3S0/0/1
G0/0
G0/0
:1.1
:3.3
FE80::1 FE80::2 FE80::3
Route par défaut
OSPF Area 0Totally Stubby (OSPFv2 et OSPFv3)
ipv6 unicast-routing
! Configuration OSPF ipv6 router ospf 1 router-id 2.2.2.2 ipv6 router ospf 2 router-id 2.2.2.6
interface Serial0/0/0 ip ospf 1 area 0 ipv6 ospf 2 area 0
Routage IPv6 OSPFv3 : Configuration Multi-area
147
:2 .2
Propagation route par défaut
R2 Routeur ABR
interface Serial0/0/1 ip ospf 1 area 51 ipv6 ospf 2 area 51
router ospf 1 area 51 stub no-summary exit ipv6 router ospf 2 area 51 stub no-summary
Thomas Moegli
Merci de votre attention [email protected]
Références
IPv6 Fundamentals, LiveLessons (R. Graziani) IPv6 : Principes et mise en oeuvre, ENI Editions (J-P. Archier) Sécurité IPv6, HEIA-FR (F. Buntschu)
148