Vous êtes sur la page 1sur 202

Chap 1 : Introduction à IPv6

Chap 1 : Introduction à IPv6

Prof. Abderrahim Sekkaki


Historique (2/5)

3
Historique (3/5)
Croissance exponentielle de l’Internet (W.W.W.)
Répartitions inégales
Pénurie d’adresses
Solutions :
À court terme : RIRs, DHCP, NAT, CIDR, …
À long terme : IPv6
Meilleure répartition des allocations:

4
Historique (4/5)
•CIDR (Classless Inter Domain Routing)
A.B.C.D/M

 Moins de gaspillage
 Meilleure agrégation

• DHCP
Attribution dynamique d’adresses
Pool d’adresses
Utilisation de baux
+ d’hôtes que d’adresses disponibles 5
Historique (5/5)

•NAT

6
LES INSUFFISANCES DU PROTOCOLE IPv4

L'une des principales limitations d'IPv4 est liée à l'espace d'adressage qu'il définit
 Adresses réparties en classe
 Conduit à l'épuisement rapide des réseaux
 Amène à un gaspillage d'adresses
 Surcharge des tables de routage
Phase intermédiaire
 Adressage privé RFC 1918
 Translation d'adresse (NAT)
 Mise en œuvre du CIDR
 Politique d'attribution des adresses

Mesures provisoires
Autres insuffisances
 Gestion de la sécurité
 Gestion de la qualité de service

7
Chap 2 :
Vue d'ensemble du nouveau
protocole IPv6

8
PRINCIPALES CARACTERISTIQUES D'IPv6
Conservation des principalse fonctionnalités d'IPv4

Des possibilités étendues d'adressage et de routage

La taille de l'adresse IP passe de 32 à 128 bits


 plus grand nombre de nœuds adressables,
 plus grand nombre de réseaux
 auto configuration des adresses.

Nouveaux mécanismes de diffusion

Format d'en-tête simplifié

En-têtes d'extensions définissant des options


 En-têtes placées entre l'en-tête Ipv6 et Transport
 Optimisation au niveau des routeurs qui ne les traitent pas
 Pas de taille limite

Gestion de l'authentification et de confidentialité

Gestion de la qualité de service (étiquetage de flux) 9


Comparaison du format des paquets IPv4 et IPv6

10
Le chaînage des en-têtes d'extension
Format de l’en-tête IPv6 – Extensions (1/3)

Version (4bits) : version du Protocole IP. Sa valeur est 6.


Classe de trafic (8bits) : permet la différenciation des services conformément à la RFC2474.
Identificateur de flux (20 bits) : identificateur unique choisi par la source. Utilisé pour mettre en
œuvre la qualité de service
Longueur des données utiles (16 bits): taille des données utiles qui suivent l’entête IPv6 (y compris
les options)
En-tête suivant (Next Header 8 bits) : identifie le prochain en-tête
 Valeurs identiques à celles du champ "Protocol" de IPv4 pour référencer les protocoles de
niveau 4 (Tcp = 6, Udp = 17, Icmp=1)
 Valeurs du champ Next Header avec qlques extensions
Valeur Extension Valeur Protocole
0 Proche en proche 4 IPv4
43 Routage 6 TCP
44 Fragmentation 17 UDP
50 Confidentialité 41 IPv6
51 Authentification 58 ICMPv6
59 Fin des en-têtes 132 SCTP
60 Destination 135 Mobilité 11
136 UDP-lite
Le chaînage des en-têtes d'extension
Format de l’en-tête IPv6 – Extensions (2/3)

Nombre de sauts (8 bits) : remplace le champ «TTL» d' IPv4. Sa valeur est
décrémentée à chaque nœud traversé
Adresse source (128 bits) ; Adresse Destination (128 bits) 12
Le chaînage des en-têtes d'extension
Format de l’en-tête IPv6 – Extensions Example (3/3)

13
Chap 3 : Plan d’adressage IPv6

14
Adressage IPv6
Les objectifs
• Dans ce chapitre, vous allez apprendre à :

• Expliquer la nécessité de l'adressage IPv6

• Décrire la représentation d'une adresse IPv6

• Décrire les types d'adresses réseau IPv6

• Configurer les adresses


15
Adressage IPv6
La nécessité du protocole IPv6 (1/2)
IPv6 est conçu pour être le successeur d'IPv4
Les prévisions indiquent que les cinq organismes
d'enregistrement Internet locaux manqueront
d'adresses IPv4 entre 2015 et 2020
Avec l'utilisation croissante d'Internet, un espace
limité d'adresses IPv4, les problèmes liés à la
fonction NAT et les objets connectés, le moment est
venu d'entamer la transition vers IPv6 !

16
Adressage IPv6
La nécessité du protocole IPv6 (2/2)

IPv4 dispose d'un maximum théorique d'adresses


de 4,3 milliards, plus les adresses privées en
combinaison avec NAT
L'espace d'adressage IPv6 de 128 bits est bien
plus étendu et fournit 340 undécillions d'adresses
IPv6 élimine les problèmes de limitation d'IPv4 et
apporte d'autres améliorations, notamment ICMPv6

17
Adressage IPv6
Règle n°1 - Omettre les zéros en début
de segment
 Première règle pour réduire les adresses IPv6 : les zéros (0) du
début d'une section de 16 bits (ou hextet) peuvent être omis
 01AB est équivalent à 1AB
 09F0 est équivalent à 9F0
 0A00 est équivalent à A00
 00AB est équivalent à AB

18
Adressage IPv6
Règle n°2 - Omettre toutes les séquences
de zéros (1/2)
 Une suite de deux deux-points (::) peut remplacer toute
chaîne unique et continue d'un ou plusieurs segments de
16 bits (hextets) comprenant uniquement des zéros.
 Cette suite (::) ne peut être utilisée qu'une seule fois dans
une adresse, sinon celle-ci devient ambiguë.
 C'est ce qu'on appelle le format compressé
 Adresse incorrecte – 2001:0DB8::ABCD::1234

19
Adressage IPv6
Règle n°2 - Omettre toutes les séquences
de zéros (2/2)
 Exemples

20
Adressage IPv6
Types d'adresses IPv6 (1/2)
IPv6 définit trois types d'adresse :
Unicast (Monodiffusion)
Identifie l'interface d'un nœud individuel.
Multidiffusion
Identifie un groupe d'interfaces, en règle générale sur des nœuds
différents. Les paquets envoyés à l'adresse multidiffusion vont à
tous les membres du groupe multidiffusion.
Anycast
Identifie un groupe d'interfaces, en règle générale sur des nœuds
différents. Les paquets envoyés à l'adresse anycast vont au nœud
membre du groupe anycast le plus proche de l'expéditeur
21
Adressage IPv6
Types d'adresses IPv6 (2/2)
Address Type Description Topology

“One to One”
• An address destined for a single interface.
Unicast • A packet sent to a unicast address is delivered to the interface identified by
that address.

“One to Many”
• An address for a set of interfaces (typically belonging to different nodes).
Multicast • A packet sent to a multicast address will be delivered to all interfaces
identified by that address.

“One to Nearest” (Allocated from Unicast)


• An address for a set of interfaces.
Anycast • In most cases these interfaces belong to different nodes.
• A packet sent to an anycast address is delivered to the closest interface as
determined by the IGP.

22
Adressage IPv6
Espace Unicast (1/5)

23
Adressage IPv6
Espace Unicast (2/5)

 Monodiffusion globale
• Similaire à une adresse IPv4 publique
• Globalement unique
• Adresses routables sur Internet
• Peuvent être configurées pour être statiques ou attribuées
dynamiquement
 Link-local
• Pour communiquer avec les autres périphériques sur la même
liaison locale
• Restriction à une seule liaison - non routables au-delà de la
liaison
24
Adressage IPv6
Espace Unicast (3/5)
 Envoi en boucle
• Permet à un hôte de s'envoyer un paquet à lui-même ; pas d'attribution à une
interface physique
• Envoyez une requête ping à l'adresse de bouclage pour tester la configuration
TCP/IP de l'hôte local
• Seulement des 0, sauf pour le dernier bit – adresses avec la syntaxe ::1/128 ou
juste ::1

 Adresse non spécifiée


• Adresse contenant uniquement des 0 – Représentée sous la forme ::/128 ou juste ::
• Ne peut pas être attribuée à une interface et est utilisée uniquement comme adresse
source
• Une adresse non spécifiée est utilisée comme adresse source lorsque le périphérique
n'a pas encore d'adresse IPv6 permanente ou lorsque la source du paquet est
inappropriée pour la destination
25
Adressage IPv6
Espace Unicast (4/5)

 Adresse locale unique


• Similaire aux adresses privées pour IPv4
• Adresse utilisée pour l'adressage local à l'intérieur d'un site entre un
nombre limité de sites
• Comprise entre FC00::/7 et FDFF::/7

 IPv4 intégré
Permet de faciliter la transition d'IPv4 vers IPv6

26
Adressage IPv6
Espace Unicast (5/5) : configuration
IPv6 Unicast
Address Assignment

Link-local (FE80::/10) Global Routable


Address Assignment Address Assignment

Static Dynamic Static Dynamic

Automatically created (EUI-


64 format) if a global Stateless
IPv6 Address unicast IPv6 address is
IPv6 Address
Autoconfiguration
configured

IPv6 Unnumbered DHCPv6

27
Adressage IPv6
Espace Unicast: Adresse monodiffusion link-local (1/2)
 Chaque interface réseau IPv6 DOIT avoir une adresse link-local
 Permet à un périphérique de communiquer avec les autres
périphériques IPv6 sur la même liaison et seulement sur celle-ci
(le sous-réseau)
 Plage FE80::/10, les 10 premiers bits étant 1111 1110 10xx xxxx
 1111 1110 1000 0000 (FE80) - 1111 1110 1011 1111 (FEBF)

28
Adressage IPv6
Espace Unicast: Adresse monodiffusion link-local (2/2)
 Les paquets associés à une adresse link-local source ou de
destination ne peuvent pas être acheminés au-delà de leur liaison
d'origine.

 Utilisés par les protocoles de configuration d'adresse globale


· découverte des voisins (neighbor discovery)
· découverte de routeurs (router discovery)
29
 Adresse unique sur un même lien
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (1/6)

Structure d'une adresse de monodiffusion globale IPv6


 Les adresses de monodiffusion (unicast) globale IPv6 sont
globalement uniques et routables sur le réseau Internet IPv6
 L'équivalent des adresses IPv4 publiques
 ICANN attribue les blocs d'adresses IPv6 aux cinq organismes
d'enregistrement Internet locaux (RIR)
 Actuellement, seules des adresses de monodiffusion globale dont les
premiers bits sont 001 ou 2000::/3 sont attribuées

30
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (2/6)

Structure d'une adresse de monodiffusion globale IPv6


• Actuellement, seules des adresses de monodiffusion globale dont les premiers
bits sont 001 ou 2000::/3 sont attribuées

31
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (3/6)
 Une adresse de monodiffusion globale se compose de trois parties :

 Préfixe de routage global : préfixe ou partie réseau de l'adresse attribuée


par le fournisseur (par exemple un FAI) à un client ou à un site. Actuellement,
les organismes d'enregistrement Internet locaux attribuent le préfixe /48 aux
clients.

 2001:0DB8:ACAD::/48 a un préfixe qui indique que les 48 premiers bits


(2001:0DB8:ACAD) constituent le préfixe ou la partie réseau.
32
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (4/6)
 ID de sous-réseau
• Utilisé par une organisation pour identifier les sous-réseaux de son site

 ID d'interface
• Équivaut à la partie hôte d'une adresse IPv4
• Il est utilisé parce que le même hôte peut avoir plusieurs interfaces, chacune
ayant une ou plusieurs adresses IPv6

33
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (5/6)

34
Adressage IPv6
Espace Unicast: Adresse monodiffusion globale (6/6)

35
Adressage IPv6
Identifiants d’interfaces (1/5)
 L'ID d'interface d'adresse unicast peut être attribué de différentes manières.
• Configuration automatique à partir d’un EUI-64 64 bits ou étendue à
partir d’un MAC 48 bits
• Numéro pseudo-aléatoire généré automatiquement (pour résoudre les
problèmes de confidentialité)
• Attribué via DHCP
• configuré manuellement

 Format EUI-64 pour la configuration automatique sans état


• Étend l’adresse MAC 48 bits à 64 bits en insérant FFFE au milieu.
• L’universel / local (bit «u») est défini sur 1 pour la portée globale et sur 0
pour la portée locale.

36
Adressage IPv6
Identifiants d’interfaces (2/5)
Format EUI-64

Ce format étend l’adresse MAC 48 bits à 64 bits en insérant FFFE


dans les 16 bits du milieu

37
Adressage IPv6
Identifiants d’interfaces (3/5)
ID Interface correspondant à une valeur aléatoire

 La détermination de l’Interface ID peut être faite à partir d’un calcul d’un


nombre aléatoire

 Ce calcul peut être lié à la clé publique générant un identifiant CGA


(Cryptographic Generated Addresses)

 Cette disposition permet d’empêcher le suivi d’une machine à partir de l’ID


Interface quel que soit son emplacement et d’éviter ainsi toute atteinte à la
vie privée

 Cette disposition permet aussi de sécuriser le mécanisme de découverte des


voisins
38
Adressage IPv6
Identifiants d’interfaces (4/5)
ID Interface correspondant à une valeur aléatoire - CGA RFC 3972

 Chaque machine a une paire de clés RSA


 Vérification ultra-légère de la validité
 Empêcher l’usurpation d’une adresse CGA valide

39
Adressage IPv6
Identifiants d’interfaces (5/5)
Adresses Compatibles IPv4
 Représentées sous la forme ::a.b.c.d
a.b.c.d est une adresse Ipv4
notation hexadécimale XXXX:YYYY possible
96 bits 32 bits
0 Adresse IPv4

 Utilisées pour permettre la communication de deux


piles IPv6 au travers d’IPv4
 Traitement d'un paquet à destination d'une adresse ::a.b.c.d
créationautomatique d'un tunnel IPv6/IPv4
le paquet IPv6 est encapsulé dans un paquet IPv4
le paquet IPv4 est normalement délivré
le paquet IPv6 est traité par la pile de communication IPv6
 Conçues pour une phase transitoire 40
Adressage IPv6
Adresses Utiles au protocole SEND – Overview (1/2)

SEND (RFC 3971) est une version sécurisée de NDP (Neighbor Discovery
Protocol, RFC 2461 et RFC 2462), le protocole de découverte de voisins
d'IPv6.

La première innovation est l'utilisation de CGA (RFC 3972) pour


Cryptographically Generated Addresses, qui permet de créer des
identifiants d'interfaces à partir d'une clé publique.

Le deuxième mécanisme important de SEND est la possibilité de


découvrir automatiquement un chemin de certification sur le réseau.

41
Adressage IPv6
Adresses Utiles au protocole SEND – Overview (2/2)

L’objectif du protocole SEND (Secure ND) est de sécuriser les différents messages de
découverte de voisins. (No Exist IPv4)

La sécurisation du message ND est obtenue par l’introduction d’options associées aux


messages existants et de nouveaux messages relatifs à la certification.

 Chemins de certification
Ancré sur des parties de confiance, censé certifier l'autorité des routeurs sur
certains préfixes
 Adresses générées cryptographiquement (CGA)
Adresses IPv6 dont les ID Interfaces sont générés de manière cryptographique
 Option de signature RSA
Protégez tous les messages relatifs aux voisins et découverte de routeur
 Options d'horodatage et de non-diffusion
Empêcher les attaques par rejeu 42
Adressage IPv6
Adresses Uniques Locales (1/2)

Ces adresses sont destinées à une utilisation locale. Elles ne sont pas
définies pour être routées dans l'Internet, mais seulement au sein d'une
zone limitée telle qu'un site ou entre un nombre limité de sites

Les adresses uniques locales ont les caractéristiques suivantes :


 Préfixe globalement unique.
 Préfixe clairement définit facilitant le filtrage sur les routeurs de bordure.
 Permet l'interconnexion de sites sans générer de conflit d'adresse et sans
nécessiter de renumérotation.
 Indépendantes des fournisseurs d'accès à l'Internet et ne nécessitent donc
pas de connectivité.
 Pas de conflit en cas de routage par erreur en dehors d'un site.
 Aucunes différences pour les applications, qui peuvent les considérer comme
des adresses globales unicast standard. 43
Adressage IPv6
Adresses Uniques Locales (2/2)

Les adresses uniques locales sont créées en utilisant un identifiant global


(Global ID) généré pseudoaléatoirement. Ces adresses suivent le format
suivant :

Prefix (7 bits) : FC00::/7 préfixe identifiant les adresses IPv6 locales (ULA)
L (1 bit) : Positionné à 1, le préfixe est assigné localement. La valeur 0 est
réservée pour une utilisation future.
Global ID (40 bits) : Identifiant global utilisé pour la création d'un préfixe
unique (Globally Unique Prefix).
Subnet ID (16 bits) : Identifiant d'un sous réseau à l'intérieur du site.
Interface ID (64 bits) : L'identifiant d'interface tel que définit dans
Identifiant d'interface.
44
Adressage IPv6
Espace Multicast (1/7)
Les deux groupes suivants de multidiffusion IPv6 attribuée sont
les plus courants :
 FF02::1 Groupe de multidiffusion avec tous les nœuds –
• Tous les périphériques IPv6 sont inclus
• Même effet qu'une adresse de diffusion IPv4
 FF02::2 Groupe de multidiffusion avec tous les routeurs –
• Tous les routeurs IPv6 sont inclus
• Un routeur devient un membre de ce groupe lorsqu'il est activé en
tant que routeur IPv6 avec la commande de configuration globale
ipv6 unicast-routing
• Un paquet envoyé à ce groupe est reçu et traité par tous les
routeurs IPv6 situés sur la liaison ou le réseau

45
Adressage IPv6
Espace Multicast (2/7)
Les adresses de multidiffusion IPv6 attribuées

46
Adressage IPv6
Espace Multicast (3/7)
Les adresses de multidiffusion IPv6 de nœud sollicité
 Sont similaires à l'adresse de multidiffusion sur tous les nœuds ; concordance
uniquement avec les 24 derniers bits de l'adresse de monodiffusion globale IPv6
d'un périphérique

 Sont créées automatiquement lorsque la monodiffusion globale ou les adresses de


monodiffusion link-local sont attribuées
 Sont créées en combinant un préfixe FF02:0:0:0:0:FF00::/104 spécial avec les 24 47
derniers bits de son adresse de monodiffusion
Adressage IPv6
Espace Multicast (4/7)
Les adresses de multidiffusion IPv6 - Résumé

FF02::5 Link-Local OSPFv3 Routers


FF02::6 Link-Local OSPFv3 DR Routers 48
Adressage IPv6
Espace Multicast (5/7)
Les adresses de multidiffusion IPv6 - « Solicited Node »

Pour chaque adresse Unicast et Anycast


Utilisé dans les messages de sollicitation de voisin (NS)
FF02 :: 1: FF & {24 bits inférieurs à partir de l'ID d'interface IPv6 Unicast}

49
Adressage IPv6
Espace Multicast (6/7)
Les adresses de multidiffusion IPv6 - « Solicited Node »
Example

50
Adressage IPv6
Espace Multicast (7/7)
Les adresses de multidiffusion IPv6 - « Solicited Node »
IPv6 Interface Example
Adressage IPv6
Espace Multicast (6/)

51
Adressage IPv6
Adresses Anycast
Une adresse anycast permet de désigner un service par une adresse bien
connue, de cette manière, il n'est pas nécessaire d'interroger un serveur pour
connaître la localisation d'un équipement.

La partie préfixe est la même que celle utilisée pour les adresses Unicast. Contrairement aux
structures d'adresses vue précédemment, la longueur de ce préfixe n'est pas spécifiée, car une
adresse Anycast doit s'adapter aussi bien aux plans d'adressage actuels (où la longueur est
généralement de 64 bits) qu'aux futurs plans qui pourraient avoir des tailles différentes.

L’adresse Anycast définit plusieurs interfaces, elle permet de délivrer le paquet au « plus proche »

Avec les adresses Anycast, plusieurs équipements sur un lien physique possèdent une même
adresse IPv6. Or il ne s'agit pas d'envoyer la même information à tous ces équipements comme en
Multicast, mais d’en choisir un seul. Une possibilité consiste à utiliser le mécanisme de découverte
de voisins pour trouver l'association entre l'adresse IPv6 et l'adresse MAC.
52
Adressage IPv6
Adresses Spéciales

Les adresses spéciales sont caractérisées par leur préfixe


0::/8 (RFC 3513) :
Adresse indéterminée,

Adresse de bouclage,

Adresse mappée,

Adresse compatible

53
Chap 4 : Configuration automatique
IPv6

54
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (1/6)

55
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (2/6)

 IPv6 / ICMPv6 & IPv4 / ICMP ont des fonctions similaires (numéros de message
entièrement différents)

 Demande d'écho, réponse d'écho (alias "ping") (type 128 et 129)


 Destination inaccessible
 Problème de paramètre
 Temps dépassé
 Redirections
 Paquet trop gros (découverte du chemin MTU) (

 Cependant, ICMPv6 est également utilisé pour des fonctions supplémentaires


dans IPv6, à la différence des fonctions relativement légères que IPv4 utilise:

 Découverte de voisin (ND (NS / NA)) (même fonction qu'ARP IPv4)


 Découverte de routeur (ND (RS / RA)), attribution de préfixe aux hôtes 56
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (3/6)

57
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (4/6)

ICMPv6 Error Message – Destination Unreachable


• “Unreachables” allow “graceful” session failures when something is
broken – sent by intermediate or target node
• Codes give additional information to sender
• Multiple codes:
• 0 No route to destination
• 1 Communication with destination
administratively prohibited IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)
• 2 Beyond scope of source address
Type = 1
• 3 Address unreachable (Dest Code Checksum
• 4 Port unreachable Unreachable)
• 5 Source address failed Unused
ingress/egress policy
• 6 Reject route to destination “as much of the invoking (original) IPv6 packet as possible
within MTU constraints” 58
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (5/6)
ICMPv6 Error Message – Destination Unreachable
Le routeur PTR-E découvre que l'adresse de destination est inaccessible, rejette
le paquet et informe l'expéditeur
src: 2001:db8:1:2::3
dst: 2001:db8:a:b::d
TCP or UDP Header + Data

RTR-A RTR-B RTR-C


2001:db8:1:2::3

src: 2001:db8:20:b3::f
dst: 2001:db8:1:2::3
ICMPv6 Destination Unreachable
Address Unreachable RTR-D RTR-E

2001:db8:a:b::c
src: 2001:db8:1:2::3
dst: 2001:db8:a:b::d 2001:db8:20:b3::f
59
TCP or UDP Header + Data
Configuration automatique d’IPv6
Les nouvelles attributions du protocole ICMP dans sa version v6 (6/6)
ICMPv6 Informational Message – Ping
• Echo-Request IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)

• Echo-Reply Type = 128


(Echo Request)
Code = 0 Checksum

• Used for “ping” application, Identifier Sequence Number

commonly used to test,


troubleshoot, or validate Data

connectivity
IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)

Type = 129
Code = 0 Checksum
(Echo Reply)

Identifier Sequence Number

Data

Noter que Les champs Identifiant et Numéro de séquence - aident à faire


correspondre les demandes et les réponses - peuvent être nuls 60
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 ND (RFC 4861)
 Remplace ARP, ICMP (redirections, découverte de routeur)

 Accessibilité des voisins

 Les hôtes l'utilisent pour découvrir les routeurs, la


configuration automatique des adresses (SLAAC)

 Détection d'adresses en double (DAD)

 Se compose d’un en-tête IPv6, d’un en-tête ICMPv6, d’un


61
en-tête ND, et ND options
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
 Le protocole de découverte de voisin (ND) se compose de deux
composants:
• Découverte du voisin (Neighbor Discovery)
• Découverte de routeur (Router Discovery)

 Découverte de voisin dans IPv6 = ARP dans IPv4


• La résolution des adresses C3 en adresses C2 correspondantes
 Cependant, IPv4 ARP:
 Inefficace, utilise la diffusion
 Viole le caractère sacré (principalement sémantique) du modèle à 7 couches
Partie C2, partie C3
 IPv6 ND :
 Utilise la «pure» C3, véhiculée dans les messages ICMPv6
 Plus efficace, utilise la multidiffusion
62
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
IPv4 ARP Process Review
Diffusion d'interface d'origine ARP-Request
Interface cible unicasts ARP-Reply
“44” has IPv6 packet to send to “66”

src: 10.20.30.44
dst: 10.20.30.66
src L2 Addr = 00-02-03-04-05-06
dst L2 Addr = *** UNKNOWN ***

10.20.30.44 10.20.30.55 10.20.30.66


00-02-03-04-05-06 04-08-09-0a-0b-0c 08-0e-0f-10-11-12
Listen: 10.20.30.255 Listen: 10.20.30.255 Listen: 10.20.30.255
Listen: ff-ff-ff-ff-ff-ff Listen: ff-ff-ff-ff-ff-ff Listen: ff-ff-ff-ff-ff-ff

src: 10.20.30.44
dst: 10.20.30.255 1 src: 10.20.30.66
“55” dst: 10.20.30.44
ARP Request
Does receive ARP ARP Reply (w/Target L2 addr)
Target = 10.20.30.66
Does not reply Target = 10.20.30.66
src L2 Addr = 00-02-03-04-05-06
dst L2 addr = ff-ff-ff-ff-ff-ff src L2 addr = 08-oe-of-10-11-12
dst L2 addr = 00-02-03-04-05-06
2
63
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
Messages ND

64
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 – Neighbor Discovery – NS
 Lorsqu'un nœud doit envoyer IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)

un paquet (dans une trame) à Type = 135 (NS) Code = 0 Checksum


un voisin, il doit d'abord
Reserved
déterminer l'adresse MAC de
la destination. Target Address

 L'hôte d'origine envoie le NS à


Options (Example = Source Link-Layer Address)
l'adresse de multidiffusion du
noeud sollicité (FF02 :: 1: FFxx:
xxxx) de la destination prévue,
qui est dérivée de l'adresse
IPv6 de destination. A B
65
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
Solicited-Node Multicast Address Formation
 Commencer par une adresse IPv6:

2001:db8::0085:0802:0004:0013

 Rappeler le format de l'adresse de multidiffusion du nœud sollicité:


FF02::1:FFxx:xxxx

 En combinant les spécifications IPv6 (24 bits les plus bas), on obtient :
FF02::1:FF04:0013

 Correspond à l'adresse Ethernet (32 bits inférieurs):


33-33-FF-04-00-13 66
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 – Neighbor Discovery – NA
 Chaque interface écoute l'adresse du IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)
nœud-Sol dérivée de chacune de ses
Type = 136 (NA) Code = 0 Checksum
adresses unicast (potentiellement
nombreuses). RSO Reserved

 Quand il reçoit un NS à cette adresse Target Address


(avec son adresse unicast comme
cible), il répond avec un NA Options (Example = Target Link-Layer Address)

 Les deux nœuds stockent le mappage


d'adresse IPv6 à adresse C2 dans le Host sends NA to solicitor
cache
 NS / NA sont également utilisés pour
le processus de détection d'adresse
en double - test d'interface en liaison
pour l'unicité de l'adresse A 67 B
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
Neighbor Discovery – Exemple - One Listener
 Le nœud “44” doit résoudre l'adresse C2 de “66”

68
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
Neighbor Discovery – Exemple - Sol-node Chevauchement
 Notez que plusieurs adresses unicast IPv6 peuvent être mappées sur
la même adresse de nœud Sol
“44” has IPv6 packet to send to “3::55”

src: 2001:db8:1:2::44
dst: 2001:db8:1:3::55
src L2 Addr = 00-02-03-04-05-06
dst L2 Addr = *** UNKNOWN ***

2001:db8:1:2:1::44 2001:db8:1:2:2::55 2001:db8:1:2:3::55


00-02-03-04-05-06 04-08-09-0a-0b-0c 08-0e-0f-10-11-12
Listen: ff02::1:ff00:0044 Listen: ff02::1:ff00:0055 Listen: ff02::1:ff00:0055
Listen: 33-33-ff-00-00-44 Listen: 33-33-ff-00-00-55 Listen: 33-33-ff-00-00-55

src: 2001:db8:1:2:1::44
dst: ff02::1:ff00:0055 1 “2::55” src: 2001:db8:1:2:3::55
Neighbor Solicitation ** Does ** receive NS dst: 2001:db8:1:2:1::44
target = 2001:db8:1:2:3::55 Does not reply Neighbor Advertisement
src L2 Addr = 00-02-03-04-05-06 (Target not a match) Target = 2001:db8:1:2:3::55
dst L2 addr = 33-33-ff-00-00-55 src L2 addr = 08-oe-of-10-11-12
dst L2 addr = 00-02-03-04-05-06
2
69
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 – Neighbor Discovery – Router Discovery (1/3)
 Router Discovery
 IPv6 a été conçu pour permettre la configuration automatique de l'hôte sur
la base d'informations locales: identificateur d'interface (IID) + préfixe de
sous-réseau reçu du routeur sur la liaison.
 Implémenté dans le protocole en utilisant les messages ICMPv6 :
 Demande de routeur (Router Solicitation) (RS - ICMPv6 type 133)
 Une multidiffusion de paquets par un hôte lorsqu'il se
connecte pour la première fois à un lien pour découvrir les
routeurs
 Annonce de routeur (Router Advertisement) (RA - ICMPv6 type 134)
 Multicast de paquets par un routeur (périodiquement, et
également en réponse à un RS) pour informer les hôtes sur la
liaison des caractéristiques du réseau (souvent incluant le
préfixe sur la liaison) de ce segment 70
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 – Neighbor Discovery – Router Discovery -RS (2/3)
 C’est la première étape qu'un IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)

hôte effectue après avoir Type = 133 (RS) Code = 0 Checksum


activé une adresse locale de
Reserved
liaison. Elle consiste à solliciter
Options (Example = Source Link-Layer Address)
des routeurs pour obtenir des
informations de configuration.

Hosts send RS to FF02::2  “All-Routers Mcast”


71
Configuration automatique d’IPv6
Le protocole de découverte de voisinage NDP (Neighbor Discovery)
ICMPv6 – Neighbor Discovery – Router Discovery -RA (3/3)
 Périodiquement (toutes les 10 IPv6 Base Header (40 bytes) (NH = 58 = ICMPv6)

Type = 133 (RA) Code = 0 Checksum


minutes environ par défaut) ou
Cur Hop Limit MO Reserved Router Lifetime

en réponse à RS, un routeur Reachable Time

envoie un RA Retrans Time

 Cela porte une richesse Options (Example = Source Link-Layer Address)

d'informations liées à la
configuration

Router sends RA to FF02::1


 “All-Nodes Mcast”
72
Configuration automatique d’IPv6
Le protocole SEND de découverte des voisins sécurisés (1/5)
Secure Neighbor Discovery (SEND) - RFC 3971
SEND (RFC 3971) est une version sécurisée de NDP (Neighbor
Discovery Protocol, RFC 2461 et RFC 2462), le protocole de
découverte de voisins d'IPv6.

L’objectif du protocole SEND (Secure ND) est de sécuriser les


différents messages de découverte de voisins. (No Exist IPv4)

La sécurisation du message ND est obtenue par l’introduction


d’options associées aux messages existants et de nouveaux messages
relatifs à la certification.

73
Configuration automatique d’IPv6
Le protocole SEND de découverte des voisins sécurisés (2/5)
Secure Neighbor Discovery (SEND) - RFC 3971
Le protocole SEND ajoute des fonctions de sécurité grace à l'ajout d'options
au messages NDP.
-------------NDP Message -----------------
IPv6 Header ICMPv6 ND Message- ND Message
Option
Next Header = 58 Header Specific

(ICMPv6) data
------NDP Message header-

L'option CGA permet de vérifier l'identité d'une machine émettrice d'un


paquet NDP. Cette option contient entre autre la clé publique de la machine
émettrice, dont la cohérence avec l'adresse source utilisée est vérifiée par
la machine réceptrice.
74
Configuration automatique d’IPv6
Le protocole SEND de découverte des voisins sécurisés (3/5)
Secure Neighbor Discovery (SEND) - RFC 3971
Une option unicité (NOnce) est utilisée pour protéger les associations
Demande/Réponse (Solicit/Advertisement) : une réponse NDP devra
contenir la même valeur NOnce que la demande correspondante pour être
valide.

Enfin deux options (Certicate Path Solicitation et Certificate Path


Advertisement) sont utilisées afin de permettre la découverte automatique
par une machine terminal d'un chemin de certification. Ce mécanisme
permet à des machines utilisant l'auto configuration sans état (RFC 2462)
de vérifier la légitimité d'un routeur et celle des préfixes publiés sur le lien
auprès d'un tiers de confiance sur le réseau.

75
Configuration automatique d’IPv6

Le protocole SEND de découverte des voisins sécurisés (4/5)

 Chaque machine a une paire de clés RSA


 Vérification ultra-légère de la validité
 Empêcher l’usurpation d’une adresse CGA valide

76
Configuration automatique d’IPv6

Le protocole SEND de découverte des voisins sécurisés (5/5)

Problèmes avec SEND


 Non supporté par tous les périphériques
 Le réseau doit supporter tous les périphériques dessus
 Empêche seulement l'usurpation d'identité déjà connue du
hôte
 N’indique pas qui peut générer ICMP
Router Advertisements (RAs)
Neighbor Announcements (NAs) 77
Configuration automatique d’IPv6
Les différentes phases d'une configuration automatique sans état (1/3)
 Chaque système IPv6 (autre que les routeurs) peut créer sa propre adresse
globale en monodiffusion.
Permet aux nouveaux périphériques (téléphones cellulaires,
périphériques sans fil, appareils ménagers et réseaux domestiques, par
exemple) de se connecter facilement à Internet.
 La configuration automatique sans état utilise les informations contenues dans les
messages RA pour configurer automatiquement les hôtes.
 Les RA sont envoyés périodiquement, mais un nœud peut envoyer des messages
RS lors de l’amorçage (boot) afin de ne pas avoir à attendre le prochain RA.
A

R1

ICMP type: 133 (RS)


Source: ::
Destination: All routers multicast address (FF02::2)
Query: Please send RA
78
Configuration automatique d’IPv6
Les différentes phases d'une configuration automatique sans état (2/3)
A

R1

ICMP type: 134 (RA)


Source: R1 link-local address
Destination: All nodes multicast address (FF02::1)
Data: Options, prefixes, lifetime, …

 Tous les routeurs du réseau répondent immédiatement à la RS, avec un RA


envoyé à l'adresse de multidiffusion de tous les nœuds.
 Le préfixe inclus dans le RA est utilisé comme préfixe / 64 pour l'adresse de
l'hôte.
 L'ID d'interface utilisé est l'ID d'interface au format EUI-64.
79
Configuration automatique d’IPv6
Les différentes phases d'une configuration automatique sans état (3/3)
A B

ICMP type: 135 (NS)


Source: ::
Destination: Solicited-node address of A
Data: Link-layer address of A
Query: What is your link-layer address?

 L'hôte crée maintenant une adresse de lien local et une adresse de nœud sollicité
à l'aide du RA fourni par le routeur.
 Ensuite, il doit vérifier que sa nouvelle adresse IPv6 est unique sur la liaison en
utilisant le processus de détection d'adresse en double (DAD).
 DAD est utilisé pendant le processus de configuration automatique pour garantir
qu'aucun autre périphérique n'utilise l'adresse de configuration automatique.
 Au cours de la phase DAD, l’hôte A envoie un service de réseau pour demander si
un autre nœud de la liaison possède la même adresse IPv6.
 Si un nœud répond à la demande, cela signifie que l'adresse IPv6 est déjà utilisée et
que l'hôte A doit être configuré manuellement. 80
Configuration automatique d’IPv6
Mécanisme de détection d'adresse dupliquée

81
Configuration automatique d’IPv6
Fragmentation dans IPv6 (1/3)

Partie non fragmentable


• En-tête IPv6 plus les en-têtes qui doivent être traités par les
nœuds en-route
• Répété avec des fragments ajoutés après le “fragment entête"
Partie fragmentable
• Les en-têtes devant être traités uniquement par le noeud de
destination = les en-têtes de bout en bout + en-tête de couche
supérieure et les données
• La partie fragmentable est divisée en morceaux d’une longueur
multiple de 8 octets.
MTU minimum pour IPv6 est de 1280 octets
• Tous les liens DOIVENT supporter cette unité 82
Configuration automatique d’IPv6
Fragmentation dans IPv6 (2/3)

La fragmentation est laissée au destinataire en IPv6


• Les routeurs n'effectuent pas de fragmentation
En-tête de fragment utilisé lorsqu'un nœud final doit envoyer un paquet plus
grand que le MTU du chemin 83
Configuration automatique d’IPv6
Fragmentation dans IPv6 (3/3)
Découverte MTU

84
Configuration automatique d’IPv6
Configuration avec état , le Protocole DHCPv6
L'auto-configuration avec état vise à réduire les efforts d'installation des machines
IPv6, tout comme l'auto-configuration sans état d'ailleurs. A la différence de cette
dernière, elle offre une information de configuration plus riche et un contrôle sur
l'affectation des paramètres de configuration.

L'ensemble des paramètres de configuration comprend notamment les informations :


d'adressage, de routage, du service de noms (DNS), du service d'information
réseau (NIS) etc.

Le protocole DHCPv6 sert à remettre des paramètres de configuration d'un serveur


DHCP à un client IPv6.

En plus des communications point-à-point, DHCPv6 s'appuie également sur des


communications multidestination (multicast)pour la découverte des serveurs
d'un site. 85
Chap 5 : Support des applications
en IPv6

86
Support des applications en IPv6
DNS et DDNS (1/4)
 La plupart des serveurs DNS modernes supportent IPv6
 L’enregistrement AAAA pour le mappage IPv6 à FQDN
 L’enregistrement PTR sous ip6.arpa. TLD pour le mappage FQDN à IP
 DNS est un protocole de transport agnostique c.à.d.
 Une requête sous IPv4 pourrait donner des enregistrements de type
AAAA
 Une requête sous IPv6 pourrait donner des enregistrements de type A

87
Support des applications en IPv6
DNS et DDNS (2/4)
Génération d’un enregistrement PTR IPv6
① Écrire complètement l'adresse IPv6 dans le sens inverse
② Séparez chaque Hexit par un point
③ Ajoutez le domaine “ip6.arpa”

Exemple avec sipcalc

88
Support des applications en IPv6
DNS et DDNS (3/4)
Approche double pile et DNS

Dans un cas à double pile, une application peut :


• être compatible IPv4 et IPv6
• Interroger le DNS pour les enregistrements IPv4 (A) et / ou
IPv6 (AAAA)
• Choisir une adresse et, par exemple, se connecter à l'adresse89 IPv6
Support des applications en IPv6
DNS et DDNS (4/4)
DNS64
 Une extension au DNS définie dans la RFC 6147
 Le serveur DNS reçoit une demande AAAA
 Si un RR AAAA existe pour un hôte externe, la ressource est
compatible IPv6
 Si aucun enregistrement AAAA mais un enregistrement A existe,
alors
o DNS64 crée un «enregistrement synthétique», mappe l'adresse
IPv4 de l'hôte externe de l'enregistrement A en une adresse
IPv6, puis renvoie aux hôtes IPv6 internes une réponse
o 64: ff9b :: / 96 est un préfixe réservé IPv6 pour DNS64
o Par exemple, si A record => 192.0.100.5, l’enregistrement
DNS64 serait 64: ff9b :: 192.0.100.5 90
Support des applications en IPv6
Enregistrement AAAA

 ‘L’enregistrement AAAA défini pour IPv6, permet d'établir la


correspondance entre un nom de domaine et son (ou une de ses)
adresse(s) IPv6.
 Une machine ayant plusieurs adresses IPv6 globales a en principe
autant d'enregistrements AAAA publiés dans le DNS.
 Une requête DNS de type AAAA concernant une machine particulière
retourne dans ce cas tous les enregistrements AAAA publiés dans le
DNS et correspondant à cette machine.

91
Support des applications en IPv6
Résolution inverse

 L'enregistrement de type PTR, stocké sous l'arbre DNS inverse in-


addr.arpa, permet d'établir la correspondance entre une adresse IPv4
et un (ou plusieurs) nom(s). C'est ce même type d'enregistrement
PTR, qui, stocké sous l'arbre DNS inverse ip6.arpa, permet de mettre
en correspondance une adresse IPv6 avec un ou plusieurs noms de
domaines. .

 Par exemple l'adresse 2001:660:3006:1::1:1 (adresse de ns3.nic.fr)


est transformée en le nom de domaine inverse suivant :
1.0.0.0.1.0.0.0.0.0.0.0.0.0.0.0.1.0.0.0.6.0.0.3.0.6.6.0.1.0.0.2.ip6.arpa.

92
Support des applications en IPv6
Logiciels Serveurs

• La plupart des logiciels DNS supportent IPv6 dans leurs versions récentes. leur
support peut être soit complet (enregistrements AAAA, enregistrements PTR
sous l'arborescence ip6.arpa et transport IPv6 des messages DNS), soit partiel
(uniquement les enregistrements AAAA et PTR) selon le logiciel.

• Par exemple, la distribution BIND 9 développée par l'ISC (Internet Systems


Consortium) représente la référence de fait dans le domaine. L’AFNIC et d’autres
registres se sont engagés à soutenir le projet de développement de la future
version de ce logiciel libre, BIND 10.

• En effet, il s'agit d'un logiciel complet (client, serveur et outils) intégrant toutes
les extensions DNS récentes (IPv6, DNSSEC, ...). Les distributions BIND 9 ont
l'avantage d'être disponibles en code source et en format binaire pour la quasi-
totalité des plates-formes (Unix, MS Windows *, ...). Ainsi, la distribution BIND 9
a été choisie comme base pour les exemples de fichiers de configuration. 93
Support des applications en IPv6
Les Résolveurs (1/2)

• les résolveurs (DNS récursif) : Ce sont les serveurs qui posent les questions, ils
résolvent les noms demandés et gardent les réponses en cache durant la TTL
(Time To Live) configurée.

• Un résolveur DNS est une machine à laquelle on va demander de


trouver l’adresse IP relative à nom de domaine. En réalité on peut lui
demander de nous retourner toutes les informations (les
enregistrements) contenus dans le DNS concernant ce nom de
domaine, il peut s’agir de l’adresse IP, d’une adresse de serveur mail,
d’une adresse mail pour contacter l’administrateur, …

94
Support des applications en IPv6
Les Résolveurs (2/2) Exemple : Dynamic NAT64 with DNS64
1. IPv6-only sends DNS AAAA request to DNS64 “can you
resolve ipv4.server.org?”
2. DNS64 only has an IPv4 address for ipv4.server.org so it
creates a synthetic AAAA RR as follows -
DNS64 64:ff9b::192.0.100.5
2001:DB8::1:1
DNS Pref=64:ff9b::/96 3. IPv6-only sends a TCP SYN to ipv4.server using IPv6
IPv6-only • Source IPv6 = [2001:db8::1]: 32178
Network • Dest. IPv6 = [64:ff9b::192.0.100.5]:80
192.0.1.10/24
IPv6-only host 4. Packet get routed to IPv6 interface of NAT64, NAT64
2001:DB8::1 NAT64
selects unused source port (example: 43124) on
192.0.1.10
5. NAT64 extracts the IPv4 header from the IPv6 address
and builds IPv4 packet
IPv4.server.org • source IPv4 = 192.0.1.10:43124
(IPv4-only server) • dest. IPv4 = 192.0.100.5:80
192.0.100.5/24
6. NAT64 sends packet out of IPv4 interface toward
ipv4.server.org
95
2001:db8::1[32178] to 64:ff96::192.0.100.5[80]<==> 192.0.1.10[43124] to 192.0.100.5[80 ]
Chap 6 : Les protocoles de routage
du premier saut (FHRP)

96
Les protocoles de routage du premier saut
Limitations de passerelles par defaut (1/8)
 Si la passerelle par défaut ne peut
pas être atteinte, le
dispositif local ne peut
pas envoyer des paquets en dehors
du segment de réseau local.

 Même si un routeur redondant


existe pouvant servir de passerelle
par défaut à ce segment, il n'y a
aucune méthode dynamique par
laquelle ces
dispositifs peuvent déterminer
l'adresse d'une nouvelle passerelle
par défaut. 97
Les protocoles de routage du premier saut
Redondance d’un routeur (2/8)
 Des routeurs multiples sont
configurés pour un fonctionnement
conjoint, de manière à présenter
l'illusion d'un routeur unique au
regard des hôtes du LAN
 En partageant une adresse IP et
une adresse MAC, plusieurs
routeurs peuvent jouer le rôle d'un
routeur virtuel unique.
 La capacité d'un réseau à effectuer
une reprise dynamique après la
défaillance d'un périphérique
jouant le rôle de passerelle par
défaut est appelée « redondance 98
au premier saut ».
Les protocoles de routage du premier saut
Étapes relatives au basculement du routeur d’un routeur (3/8)
Lorsque le routeur actif est défaillant, le
protocole de redondance définit le rôle de
routeur actif pour le routeur en veille. Voici la
procédure en cas de défaillance du routeur
actif :

1. Le routeur en veille cesse de voir les


messages Hello du routeur de transfert.

2. Le routeur en veille assume le rôle du


routeur de transfert.

3. Étant donné que le nouveau routeur de


transfert prend en charge l'adresse IP et
l'adresse MAC du routeur virtuel, les
périphériques hôtes ne perçoivent aucune 99
interruption de service.
Les protocoles de routage du premier saut
Protocoles FHRP (First-Hop Redundancy Protocols) (4/8)

 Hot Standby Router Protocol (HSRP)


 HSRP for IPv6
 Virtual Router Redundancy Protocol version 2 (VRRPv2)
 VRRPv3
 Gateway Load Balancing Protocol (GLBP)
 GLBP for IPv6
 ICMP Router Discovery Protocol (IRDP)
.

100
Les protocoles de routage du premier saut
Protocoles FHRP (First-Hop Redundancy Protocols) (5/8)

101
Les protocoles de routage du premier saut
Vérification HSRP (6/8)
Un routeur HSRP actif présente les
caractéristiques suivantes :
•Il répond aux requêtes ARP de la passerelle
par défaut avec l'adresse MAC du routeur
virtuel.
•Il prend en charge un réacheminement actif
des paquets pour le routeur virtuel.
•Il envoie des messages Hello.
•Il connaît l'adresse IP du routeur virtuel

Un routeur HSRP en veille présente les


caractéristiques suivantes :
•Il écoute les messages Hello périodiques.
•Il prend en charge le réacheminement actif
des paquets s'il n'entend pas de réponse du
routeur actif. 102
.
Les protocoles de routage du premier saut
Vérification GLBP (7/8)
 Le protocole GLBP est une solution Cisco propriétaire permettant la sélection
automatique et l’utilisation simultanée de plusieurs passerelles disponibles. Il
assure également le basculement automatique entre ces passerelles. Plusieurs
routeurs partagent la charge des trames qui, du point de vue du client, sont
envoyées à une adresse de passerelle par défaut unique.
 Les principales caractéristiques du protocole GLBP sont les suivantes :

• Il permet une utilisation complète des ressources sur l'ensemble des


périphériques, sans la lourde tâche administrative de création de groupes
multiples.
• Il offre une adresse IP virtuelle unique et plusieurs adresses MAC virtuelles.
• Il achemine le trafic vers une passerelle unique répartie entre plusieurs
routeurs.
• Il effectue un nouveau routage automatique en cas de défaillance. 103
Les protocoles de routage du premier saut
Vérification GLBP (suite) (8/8)

104
Chap 7 : Implémentation du
routage IPv6

105
Implémentation du routage IPv6
Routage IPv6 (1/2)
 IPv6 prend en charge le routage suivant:
Routage statique
RIPng
OSPFv3
IS-IS pour IPv6
EIGRP pour IPv6
Multiprotocole BGP version 4 (MP-BGPv4)

 Pour chaque option de routage ci-dessus, la


commande ipv6 unicast-routing doit être
configurée. 106
Implémentation du routage IPv6
Routage IPv6 (2/2)
 IPv6 est une évolution de IPv4, ce qui est très clair
dans le cas des protocoles de routage
 Les versions du protocole IPv6 correspondent aux
protocoles IPv4:

 Routage statique IPv6  Routage statique IPv4


 IPv6 RIPng  IPv4 RIPv2
 IPv6 EIGRP  IPv4 EIGRP
 IPv6 OSPFv3  IPv4 OSFPv2

107
Implémentation du routage IPv6
Routage statique IPv6 (1/8)

Configuré de la même manière que IPv4.

 Il existe une exigence spécifique à IPv6 selon RFC 2461.

 Un routeur doit pouvoir déterminer l'adresse de liaison locale de


chacun de ses routeurs voisins pour s'assurer que l'adresse cible
d'un message de redirection identifie le routeur voisin par son
adresse de liaison locale.
 Cette exigence signifie essentiellement qu’il n’est pas
recommandé d’utiliser une adresse unicast globale comme
adresse de saut suivant avec routage.
108
Implémentation du routage IPv6
Routage statique IPv6 (2/8)
 Configuré de la même manière que IPv4.
 Il existe une exigence spécifique à IPv6 selon RFC 2461.

 Un routeur doit pouvoir déterminer l'adresse de liaison locale de chacun de


ses routeurs voisins pour s'assurer que l'adresse cible d'un message de
redirection identifie le routeur voisin par son adresse de liaison locale.
 Cette exigence signifie essentiellement qu’il n’est pas recommandé
d’utiliser une adresse unicast globale comme adresse de saut suivant avec
routage.
Router(config)#

ipv6 route ipv6-prefix/prefix-length {ipv6-address | interface-type


interface-number [ipv6-address]} [administrative-distance]
[administrative-multicast-distance | unicast | multicast] [next-
hop-address] [tag tag]

109
Implémentation du routage IPv6
Routage statique IPv6 (3/8)
Types de routes statiques
 Route statique IPv6 directement attachée:
 Créé en utilisant uniquement l'interface sortante.
 L'interface spécifiée doit être active et IPv6 activé.
 Par exemple, pour spécifier que 2001: CC1E :: / 32 est accessible via
l’interface Serial 0/0/0:
 ipv6 route 2001: CC1E :: / 32 serial 0/0/0
Route statique récursive:
 Créé en utilisant uniquement le paramètre d'adresse du saut suivant.
 Le routeur doit se référer une seconde fois à sa table de routage pour
déterminer l'interface à utiliser pour atteindre l'adresse du prochain saut.
 Par exemple, pour spécifier que 2001: CC1E :: / 32 est accessible via le voisin
d'adresse 2001: 12 :: 1:
route ipv6 2001: CC1E :: / 32 2001: 12 :: 1 110
Implémentation du routage IPv6
Routage statique IPv6 (4/8)
Types de routes statiques
 Route statique entièrement spécifiée:
 Inclut à la fois l'interface sortante et l'adresse du saut suivant.
 Utilisé sur les interfaces multi-accès (Ethernet) avec plusieurs périphériques.
 Par exemple, la commande pour spécifier que 2001: CC1E :: / 32 est accessible
via l'interface Fa0 / 0 du voisin à l'adresse 2001: 12 :: 1 est la suivante:
ipv6 route 2001: CC1E :: / 32 serial 0/0/0 2001: 12 :: 1
 Route statique flottante:
 La route est définie avec la valeur de distance administrative supérieure à la
distance administrative de tout IGP pour atteindre une destination particulière.
 La route statique fonctionne comme une sauvegarde des routes découvertes
par IGP.
Il ne sera ajouté à la table de routage que si l'entrée IGP est supprimée.
111
Implémentation du routage IPv6
Routage statique IPv6 (5/8)
Exemples de routes statiques

2001:1::1/64 2001:1::2/64
Lo100: 10::10:1/64 Lo102: 13::13:1/64
R1 R2
S0/1/0
S0/1/0

Lo101: 11::11:1/64

• Dans cet exemple de topologie, supposons que R1 soit le routeur du site


central et que R2 soit un routeur du site de branche.
• Une route statique vers le réseau 13 :: 13: 1/64 doit être configurée sur R1.
• De plus, une route statique par défaut sera configurée sur R2 pour atteindre
tous les autres réseaux.

112
Static Route Example Routage statique IPv6 (6/8)
2001:1::1/64 2001:1::2/64
Lo100: 10::10:1/64 Lo102: 13::13:1/64
R1 S0/1/0 R2
S0/1/0

Lo101: 11::11:1/64

R1(config)# ipv6 unicast-routing


R1(config)# ipv6 route 13::/64 s0/1/0
R1(config)# exit
R1# show ipv6 route static
IPv6 Routing Table – 9 entries
Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP
U – Per-user Static route
I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
S 13::/64 [1/0]
via ::, Serial0/1/0
R1#

• A static route to the 13::13:1/64 network is configured on central site router R1.
Routage statique IPv6 (7/8)
Static Route Example
2001:1::1/64 2001:1::2/64
Lo100: 10::10:1/64 Lo102: 13::13:1/64
R1 S0/1/0 R2
S0/1/0

Lo101: 11::11:1/64

R2(config)# ipv6 unicast-routing


R2(config)# ipv6 route ::/0 s0/1/0
R2(config)# exit
R2# show ipv6 route static
IPv6 Routing Table – 9 entries
Codes: C – Connected, L – Local, S – Static, R – RIP, B – BGP
U – Per-user Static route
I1 – ISIS L1, I2 – ISIS L2, IA – ISIS interarea, IS – ISIS summary
O – OSPF intra, OI – OSPF inter, OE1 – OSPF ext 1, OE2 – OSPF ext 2
ON1 – OSPF NSSA ext 1, ON2 – OSPF NSSA ext 2
S ::/0 [1/0]
via ::, Serial0/1/0
R2#

• A default static route as specified by the “::/0” entry, is now configured on branch office router R2 to
reach all other networks.
Routage statique IPv6 (8/8)
Static Route Example
2001:1::1/64 2001:1::2/64
Lo100: 10::10:1/64 Lo102: 13::13:1/64
R1 S0/1/0 R2
S0/1/0

Lo101: 11::11:1/64

R1# ping 13::13:1


Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 13::13:1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/13/16 ms
R1#

R2# ping 10::10:1


Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10::10:1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/12/16 ms
R2#
R2# ping 11::11:1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 11::11:1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/15/16 ms
R2#
Implémentation du routage IPv6
RIPng (1/5)
 Routing Information Protocol, new generation (RIPng, RFC 2080) est un
protocole de routage vecteur à distance pour IPv6.
Il est basé sur IPv4 RIP version 2 (RIPv2).

 Il est similaire à RIPv2 car:


• La limite de saut est encore 15.
• La distance administrative est encore de 120.
• Il utilise toujours split horizon et poison reverse pour empêcher les
boucles de routage.

 Contrairement à RIPv2, RIPng est:


• Utilisé pour transporter les réseaux IPv6 et les préfixes.
Il utilise un préfixe IPv6 et une adresse IPv6 de saut suivant.
• Utilise le port UDP 520 (au lieu du port UDP 521).
• Utilise le groupe de multidiffusion FF02 :: 9 (au lieu de 224.0.0.9). 116
Enable RIPng on an Interface RIPng (2/5)

• Enable an IPv6 RIP process on an interface.


Router(config-if)#
ipv6 rip name enable

• The name parameter is the name of the RIPng routing process.


• If the RIPng routing process does not already exist, the command will create it.

R1(config)# int fa0/0


R1(config-if)# ipv6 rip ?
WORD User selected string identifying this RIP process

R1(config-if)# ipv6 rip RIP ?


default-information Configure handling of default route
enable Enable/disable RIP routing
metric-offset Adjust default metric increment
summary-address Configure address summarization

R1(config-if)# ipv6 rip RIP enable


R1(config-if)#
Enable RIPng RIPng (3/5)
• Configure the IPv6 RIP routing process.
Router(config)#
ipv6 router rip name

• The name parameter is the name of the RIP routing process.


• Command enters router configuration mode.
R1(config)# ipv6 router rip RIP
R1(config-rtr)#?
default Set a command to its defaults
distance Administrative distance
distribute-list Filter networks in routing updates
exit Exit from IPv6 routing protocol configuration mode
maximum-paths Forward packets over multiple paths
no Negate a command or set its defaults
poison-reverse Poison reverse updates
port Port and multicast address
redistribute Redistribute IPv6 prefixes from another routing protocol
split-horizon Split horizon updates
timers Adjust routing timers

R1(config-rtr)#
Disable Split Horizon RIPng (4/5)

• Disable the split horizon route loop prevention feature.


Router(config-rtr)#
no split-horizon

• Use the split-horizon router configuration command to re-enable the feature.

R1(config)# ipv6 router rip RIP


R1(config-rtr)# no ?
distance Administrative distance
distribute-list Filter networks in routing updates
maximum-paths Forward packets over multiple paths
poison-reverse Poison reverse updates
port Port and multicast address
redistribute Redistribute IPv6 prefixes from another routing protocol
split-horizon Split horizon updates
timers Adjust routing timers

R1(config-rtr)# no split-horizon
R1(config-rtr)#
Implémentation du routage IPv6

RIPng (5/5)

 Verifying and Troubleshooting RIPng

Command Description

Displays the parameters and current state of the active IPv6 routing protocol
show ipv6 protocols processes.
[summary] The summary keyword specifies that only the configured routing protocol
process names are displayed.

Displays IPv6 RIPng routing transaction debug messages.


debug ipv6 rip [interface-
type interface-number] The interface-type interface-number option can be used to
display interface specific debug messages.

120
Implémentation du routage IPv6
OSPFv3 (1/23)

 L'implémentation du protocole pour IPv6 comprend les caractéristiques


suivantes:
• Basé sur OSPF version 2 (OSPFv2), avec améliorations
• Distribue les préfixes IPv6
• Fonctionne directement sur IPv6 (C3)

 Cette implémentation inclue les attributs spécifiques à IPv6:


• Adresses 128 bits
• Adresse locale du lien
• Plusieurs adresses et instances par interface
• Authentification (utilise maintenant IPsec)
• OSPFv3 s'exécute sur un lien plutôt que sur un sous-réseau

121
Implémentation du routage IPv6
OSPFv3 (2/23)

 Open Shortest Path First version 3 (OSPFv3 RFC 5340) est un protocole de
routage à état de liens pour IPv6.
 Il est basé sur OSPFv2.
 Les éléments suivants sont restés identiques à OSPFv2:
 Types de paquets (Hello, DBD, LSR, LSU, LSA)
 Mécanismes de découverte de voisins et de formation de contiguïté
 Calculs SPF
 Procédure d'élection DR
 Support multi-zones (y compris NSSA)
 Prise en charge de plusieurs topologies (NBMA, point à multipoint, point à
point et diffusion)
 Le routeur-ID est toujours une adresse 32 bits
 ……..
122
Implémentation du routage IPv6
OSPFv3 (3/23)
Différences entre OSPFv2 et OSPFv3
 Contrairement à OSPFv2, OSPFv3:
 OSPFv3 s'exécute sur un lien et est configuré sur une interface.
 Utilise le terme «lien» de la même manière que «sous-réseau» ou «réseau»
IPv4 OSPF.
 Les adresses IPv6 link-local sont obligatoires.
 Il existe désormais trois portées d'inondation LSA distinctes: portée du lien-
local, étendue du domaine et étendue de l'AS.
 Plusieurs instances OSPFv3 sont prises en charge sur une interface.
 Les adresses de multidiffusion ont changé.
 La sécurité est améliorée..

123
Implémentation du routage IPv6
OSPFv3 (4/23)
OSPFv3 s'exécute sur un lien
 OSPFv3 s'exécute sur un lien, par opposition à IPv4 sur un sous-
réseau IP.
IPv6 utilise le terme «lien» qui remplace les termes «réseau» et
«sous-réseau» utilisés dans le protocole OSPF IPv4.

 L'instruction network dans le mode sous-commande de routeur


d'OSPFv2 est remplacée par la commande
ipv6 ospf processus-id area area-id interface

124
Implémentation du routage IPv6
OSPFv3 (5/23)
Utilisation des adresses de liaison locale
 OSPFv3 utilise des adresses IPv6 link-local pour identifier les
voisins d'adjacence OSPFv3.

 Par conséquent, lors de la configuration de la commande


ipv6 ospf neighbour
l'adresse IPv6 utilisée doit être l'adresse lien-local du voisin.

125
Implémentation du routage IPv6
OSPFv3 (6/23)
Prise en charge de plusieurs instances OSPFv3
 Séparation des « Autonomous Systems », chacun exécutant OSPF,
utilisent un lien commun.
Un seul lien pourrait appartenir à plusieurs domaines.
 OSPFv3 utilise un nouveau champ, appelé ID d'instance, pour
autoriser plusieurs instances par lien.
Pour que deux instances se parlent, elles doivent partager le
même ID d'instance.
 Par défaut, l'ID d'instance est mis à 0.

126
Implémentation du routage IPv6
OSPFv3 (7/23)
Addresses de multidiffusion
 FF02 :: 5
Représente tous les routeurs OSPFv3 sur la portée de la liaison
locale, ce qui correspond à 224.0.0.5 dans OSPFv2.

 FF02 :: 6
Représente tous les routeurs désignés (DR) sur la portée de la
liaison locale, ce qui correspond à 224.0.0.6 dans OSPFv2

127
Implémentation du routage IPv6
OSPFv3 (8/23)
Etapes de configuration OSPFv3
1. Compléter la stratégie de réseau OSPF et la planification de votre
réseau IPv6. (Par exemple, plusieurs areas sont-elles requises?).
2. Activer le routage unicast IPv6 à l’aide de la commande
ipv6 unicast-routing.
3. (Facultatif) Entrer le mode de configuration du routeur OSPFv3 et
configurer l'ID du routeur.
4. Activer IPv6 sur l'interface à l'aide de la commande
ipv6 ospf area.
5. (Facultatif) Configurer les spécificités de routage à partir du mode
de configuration du routeur, notamment la priorité du routeur, le
résumé de l'itinéraire, les fonctionnalités de stub, etc.
128
Implémentation du routage IPv6
OSPFv3 (9/23) Activer OSPFv3
 Configurer les paramètres du processus de routage OSPFv3
Router(config)#
ipv6 router ospf process-id

Le paramètre process-id identifie un processus OSPFv3 unique au niveau local du


routeur et peut être un entier positif.
R1(config)# ipv6 router ospf 10
R1(config-rtr)#?
area OSPF area parameters
auto-cost Calculate OSPF interface cost according to bandwidth
default Set a command to its defaults
default-information Distribution of default information
default-metric Set metric of redistributed routes
discard-route Enable or disable discard-route installation
distance Administrative distance
distribute-list Filter networks in routing updates
ignore Do not complain about specific event
log-adjacency-changes Log changes in adjacency state
maximum-paths Forward packets over multiple paths
passive-interface Suppress routing updates on an interface
process-min-time Percentage of quantum to be used before releasing CPU
redistribute Redistribute IPv6 prefixes from another routing protocol
router-id router-id for this OSPF process
summary-prefix Configure IPv6 summary prefix
timers Adjust routing timers 129
Implémentation du routage IPv6
OSPFv3 (10/23) Définir ID Routeur
Router(config-rtr)#
router-id {ip-address}

 L'adresse IP (ip_address) est un nombre au format d'adresse IPv4.


L'ID du routeur doit être unique sur chaque routeur.
 Le processus de sélection de Router ID est le même que pour OSPFv2.
1. Router ID est utilisé s'il est explicitement configuré.
2. Sinon, l'adresse de bouclage la plus élevée est utilisée.
3. Sinon, l'adresse IPv4 active la plus élevée.
4. Sinon, Router ID doit être explicitement configuré.
R1(config-rtr)# router-id ?
A.B.C.D OSPF router-id in IP address format

R1(config-rtr)# router-id 10.10.10.1


R1(config-rtr)# 130
Implémentation du routage IPv6
OSPFv3 (11/23) Activer OSPFv3 sur l’interface

 Activer une instance OSPFv3 sur une interface


Router(config-if)#
ipv6 ospf process-id area area-id [instance instance-id]

131
Implémentation du routage IPv6
OSPFv3 (12/23) Activer OSPFv3 sur l’interface
R1(config)# int fa0/0
R1(config-if)# ipv6 ospf ?
<1-65535> Process ID
authentication Enable authentication
cost Interface cost
database-filter Filter OSPF LSA during synchronization and flooding
dead-interval Interval after which a neighbor is declared dead
demand-circuit OSPF demand circuit
flood-reduction OSPF Flood Reduction
hello-interval Time between HELLO packets
mtu-ignore Ignores the MTU in DBD packets
neighbor OSPF neighbor
network Network type
priority Router priority
retransmit-interval Time between retransmitting lost link state
advertisements
transmit-delay Link state transmit delay

R1(config-if)# ipv6 ospf 10 ?


area Set the OSPF area ID

R1(config-if)# ipv6 ospf 10 area 0 ?


instance Set the OSPF instance
<cr>

R1(config-if)# ipv6 ospf 10 area 0 132


R1(config-if)#
Implémentation du routage IPv6
OSPFv3 (13/23) Vérification de l’OSPFv3

133
OSPFv3 (14/23)
OSPFv3 Example 1
Area 0 Area 1

2001:410:FFFF:1::1/64 3FFE:B00:FFFF:1::2/64 3FFE:B00:FFFF:1::1/64


S0/0/1 S0/0/2 S0/0/3
R1 R2

R1(config)# ipv6 router ospf 100


R1(config-rtr)# router-id 10.1.1.3
R1(config-rtr)# area 0 range 2001:410::/32
R1(config-rtr)# exit
R1(config)# interface Serial0/0/1
R1(config-if)# ipv6 address 2001:410:FFFF:1::1/64
R1(config-if)# ipv6 ospf 100 area 0
R1(config-if)# exit
R1(config)# interface Serial0/0/2
R1(config-if)# ipv6 address 3FFE:B00:FFFF:1::2/64
R1(config-if)# ipv6 ospf 100 area 1
R1(config-if)#

R2(config)# ipv6 router ospf 100


R2(config-rtr)# router-id 10.1.1.4
R2(config-rtr)# exit
R2(config)# interface Serial0/0/3
R2(config-if)# ipv6 address 3FFE:B00:FFFF:1::1/64
R2(config-if)# ipv6 ospf 100 area 1
R2(config-if)#
OSPFv3 (15/23)
OSPFv3 Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64


Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0
R3 R1 R2 R4

R1(config)# ipv6 unicast-routing


R1(config)#
R1(config)# interface s0/1/0
R1(config-if)# ipv6 ospf 1 area 0
R1(config-if)#
*Aug 14 06:24:23.040: %OSPFv3-4-NORTRID: OSPFv3 process 1 could not pick a routerid,
please configure manually
R1(config-if)# exit
R1(config)# ipv6 router ospf 1
R1(config-rtr)# router-id 0.0.0.1
R1(config-rtr)#exit
R1(config)# interface s0/1/0
R1(config-if)# ipv6 ospf 1 area 0
R1(config-if)# exit
R1(config)# interface fa0/0
R1(config-if)# ipv6 ospf 1 area 13
R1(config-if)#

• In this multi-area example, all four routers will be configured to support OSPFv3.
OSPFv3 (16/23)
OSPFv3 Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64


Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0
R3 R1 R2 R4

R2(config)# ipv6 unicast-routing


R2(config)#
R2(config)# ipv6 router ospf 1
R2(config-rtr)# router-id 0.0.0.2
R2(config-rtr)# exit
R2(config)#
R2(config)# interface s0/1/0
R2(config-if)# ipv6 ospf 1 area 0
*Aug 14 06:15:14.836: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.1 on Serial0/1/0 from
LOADING to FULL, Loading Done
R2(config-if)#

• Notice how R2 immediately creates a neighbor adjacency with R1.


OSPFv3 Example 2 OSPFv3 (17/23)

Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64


Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0
R3 R1 R2 R4

R2# show ipv6 ospf neighbor

Neighbor ID Pri State Dead Time Interface ID Interface


0.0.0.1 1 FULL/ - 00.00.33 6 Serial0/1/0
R2#
R2# show ipv6 ospf interface
Serial0/1/0 is up, line protocol is up
Link Local Address FE80::219:55FF:FE92:B212, Interface ID 6
Area 0, Process ID 1, Instance ID 0, Router ID 0.0.0.2
Network Type POINT_TO_POINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:09
Index 1/1/1, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 2
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 0.0.0.1
Suppress hello for 0 neighbor(s)
R2(config-if)#
OSPFv3 (18/23)
OSPFv3 Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64


Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0
R3 R1 R2 R4

R4(config)# ipv6 unicast-routing


R4(config)# ipv6 router ospf 1
R4(config-rtr)# router-id 0.0.0.4
R4(config-rtr)# interface fa0/0
R4(config-if)# ipv6 ospf 1 area 24
*Aug 14 06:34:36.992: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.2 on FastEthernet0/0
from LOADING to FULL, Loading Done
R4(config-if)# end
R4#

• R4 is configured and immediately forms an adjacency with R2.


OSPFv3 (19/23)
OSPFv3 Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64

Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0


R3 R1 R2 R4

R4# show ipv6 route ospf

<output omitted>

OI 12:12::/64 [110/65]
via FE80::219:55FF:FE92:B212, FastEthernet0/0
OI 2001:1::/64 [110/65]
via FE80::219:55FF:FE92:B212, FastEthernet0/0
R4#

• The routing table of R4 displays the Area 0 route 12:12::/64.


 The 2001:1::/64 route is a global unicast address configured on R1.
OSPFv3 (20/23)
OSPFv3 Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64


Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0
R3 R1 R2 R4

R3(config)# ipv6 unicast-routing


R3(config)# ipv6 router ospf 1
R3(config)#
*Aug 14 06:24:09.976: %OSPFv3-4-NORTRID: OSPFv3 process 1 could not pick a
router-id, please configure manually
R3(config-rtr)# router-id 0.0.0.3
R3(config-rtr)# exit
R3(config)# interface fa0/0
R3(config-if)# ipv6 ospf 1 area 13
R3(config-if)#
*Aug 14 06:40:43.804: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.1 on FastEthernet0/0
from LOADING to FULL, Loading Done
R3(config-if)# end
R3#

• Finally R3 is configured and immediately forms an adjacency with R1.


OSPFv3 Example 2 OSPFv3 (21/23)
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64

Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0


R3 R1 R2 R4

R3# show ipv6 route ospf

<output omitted>

OI 12:12::/64 [110/65]
via FE80::219:56FF:FE2C:9F60, FastEthernet0/0
OI 24:24::/64 [110/66]
via FE80::219:56FF:FE2C:9F60, FastEthernet0/0
OI 2001:1::/64 [110/129]
via FE80::219:56FF:FE2C:9F60, FastEthernet0/0
R3#
R3# ping 24:24::4
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 24:24::4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/16/16 ms
R3#

• The routing table of R3 reveals the Area 24 route and a ping verifies connectivity.
OSPFv3 (22/23)
OSPFv3 Totally Stubby Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64

Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0


R3 R1 R2 R4

R1(config)# ipv6 router ospf 1


R1(config-rtr)# area 13 stub no-summary
R1(config-rtr)#
*Aug 14 06:54:11.780: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.3 on
FastEthernet0/0 from FULL to DOWN, Neighbor Down: Adjacency forced to reset
R1(config-rtr)#

R3(config)# ipv6 router ospf 1


R3(config-rtr)# area 13 stub
R3(config-rtr)#
*Aug 14 06:40:17.716: %OSPFv3-5-ADJCHG: Process 1, Nbr 0.0.0.1 on
FastEthernet0/0 from LOADING to FULL, Loading Done
R3(config-rtr)#

• The reduce the size of the routing table in Area 13, R1 and R3 create a totally-stub area.
 Notice that the no-summary keyword is only required on the ABR (R1).
OSPFv3 (23/23)
OSPFv3 Totally Stubby Example 2
Area 13 Area 0 Area 24

13:13::3/64 13:13::1/64 12:12::1/64 12:12::2/64 24:24::1/64 24:24::4/64

Fa0/0 Fa0/0 S0/1/0 S0/1/0 Fa0/0 Fa0/0


R3 R1 R2 R4

R3# show ipv6 route ospf

<output omitted>

OI ::/0 [110/2]
via FE80::219:56FF:FE2C:9F60, FastEthernet0/0
R3#
R3# ping 24:24::4
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 24:24::4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/14/16 ms
R3#

• Notice that the routing has been reduced to only 1 default route and connectivity has
been verified.
Implémentation du routage IPv6
EIGRP pour IPv6 (1/2)
Bases EIGRP
 Protocole de routage centré sur Cisco, suivi de IGRP
 Multi-protocole via un module spécifique à la famille
d'adresses - configuré indépendamment
 Fonctionne sur IPv6 (directement - pas de C4)
 Très répandu dans les environnements réseau
exclusivement Cisco
 Fonctionnement sécurisé en utilisant le schéma MD5

144
Implémentation du routage IPv6
EIGRP pour IPv6 (2/2)
Routage EIGRP
Router 0
# enable
# configure terminal
# ipv6 unicast-routing
#ipv6 router eigrp 1
# eigrp router-id 10.1.1.1 # no shut #exit
# interface serial 1/0
# ipv6 enable
# ipv6 eigrp 1
# exit
# interface fastethernet 0/0
# ipv6 enable
# ipv6 eigrp 1
# exit
# show ipv6 eigrp interfaces 1

L’adresse 10.1.1.1 est utilisée pour identifier le routeur et peut être une adresse ipv4 ou ipv6 145
Chap 8 : Sécurité IPv6

146
Sécurité IPv6
Introduction aux concepts de la Sécurité (1/14)
 Plusieurs approches pour sécuriser un environnement:
 «Meilleures pratiques du secteur» actuelles, utilisation de:
 Stateful filtering, Firewalling
 Systèmes de détection et de prévention des intrusions
(IDS / IPS)
 Proxy de couche d'application
 NATing / utilisation de l'adressage privé

 C & A / A & A, conformité aux normes


 Sarbanes-Oxley HIPAA GLBA PCI
 FISMA FIPS140 NIST-sp800 DIACAP

147
Sécurité IPv6
Introduction aux concepts de la Sécurité (2/14)
Similarités IPv4 et IPv6
 Toujours "juste" un protocole Layer3
 Avantage: impact minimal sur les autres couches,
«flexibilité»
 Inconvénient: ne peut résoudre que les problèmes de C3
 Attaques similaires : fragmentation, attaques de résolution
MAC, attaques de configuration
 IPv6 ne peut atténuer:
 Mauvais comportement de l'utilisateur
 Fichiers / emails / sites infectés par des logiciels malveillants
 Violations de confidentialité
 Tout le reste n'est pas un problème de C3!

148
Sécurité IPv6
Introduction aux concepts de la Sécurité (3/14)
SimilaritésIPv4 et IPv6 , Fragmentation

 Les attaques par fragmentation sont similaires entre IPv4 et IPv6


 Quelques différences fonctionnelles dans la manière dont la fragmentation
se produise (découverte de Path MTU, en-têtes d'extension)
 RFC5722: Les fragments qui se chevauchent sont déconseillés dans IPv6!
149
Sécurité IPv6
Introduction aux concepts de la Sécurité (4/14)
Similarités IPv4 et IPv6 , Extensions Headers
 En-tête d'extension: Hop-by-Hop (0)
 Signalisation dans la bande, inspectée
à chaque saut intermédiaire
Problème: impact / débit du processeur,
throughput
 Atténuation: filtrez-les sur les bords

150
Sécurité IPv6
Introduction aux concepts de la Sécurité (5/14)
Similarités IPv4 et IPv6, Résolution MAC (1)
172.16.2.10
= 00-21-6A-7B-C6-3E
2001:0DB8:0011:0010:0000:0000:0000:0010
= 00-21-6A-7B-C6-3E
 IPv4 utilise ARP, soumis à l'usurpation ARP
 IPv6 utilise ND, soumis à l'usurpation ND
 L'attaque est, sur le plan conceptuel, identique, même si ND
repose sur la multidiffusion et non sur le broadcast comme ARP
151
Sécurité IPv6
Introduction aux concepts de la Sécurité (6/14)
Similarités IPv4 et IPv6, Résolution MAC (2)
2001:0DB8:0011:0010:0000:0000:0000:0010
= 00-21-6A-7B-C6-3E
2001:0DB8:0011:0010:<CGA IID GOES HERE>
= 00-21-6A-7B-C6-3E
 IPv6 a une nouvelle atténuation de l'usurpation de la DN - SEND / CGA
 Découverte sécurisée des voisins
 Adresses générées de manière cryptographique
 Le destinataire d'une requête NA peut vérifier qu'il s'agit de la
bonne adresse MAC 152
Sécurité IPv6
Introduction aux concepts de la Sécurité (7/14)
Similarités IPv4 et IPv6, DHCP

 Les attaques DHCP sont très similaires entre IPv4 et IPv6 dûs à la
configuration malveillante des hôtes
 DHCPv4 utilise la diffusion; attribue une adresse, un masque de sous-
réseau, une passerelle et «autre» (DNS)
 DHCPv6 utilise la multidiffusion; assigne les adresses et “autre”153
Sécurité IPv6
Introduction aux concepts de la Sécurité (8/14)
Différences IPv4 et IPv6, DHCP

 Attaques DHCP discutées plus tôt - similaires entre IPv4 et IPv6


 Nouveau pour IPv6: Router Advertisements
 Préfixe claquant, passerelle par défaut usurpant plus commun
 D'autres paramètres peuvent également être intéressants, par exemple:
Informations DNS (RFC5006), Limite de sauts, MTU
 Atténuation: SEND / CGA, RA-Guard
154
Sécurité IPv6
Introduction aux concepts de la Sécurité (9/14)
Tunnels de transition
 Les tunnels rendent
plusieurs choses plus
difficiles - inspection,
filtrage
 Les tunnels
permettent la
connectivité IPv6,
parfois de manière
«inattendue» ou en
violation des règles
définies (policies)
155
Sécurité IPv6
Introduction aux concepts de la Sécurité (10/14)
IPv6 Scanning / Reconnaissance (1)
2001:0DB8:0011:0010:0000:0000:0000:0010

2001:db8:11:10::/64 is the prefix in this address.


Low –order 64bits is the “Interface ID”.
 Le Scanning traditionnel doit changer
 Pour les administrateurs et les attaquants (hackers)
 À 1 million de paquets par seconde (1 Mpps) =
 ~ 584 942 ans pour numériser un seul segment, du début à la fin
 Supposons que 1 000 adresses soient utilisées de manière égale
= ~ 58 ans pour trouver la première adresse.
 Remarque: 1 Mpps de pings bruts est un minimum de 384 Mbps, ce
qui ferait sonner une alarme quelque part 156
Sécurité IPv6
Introduction aux concepts de la Sécurité (11/14)
IPv6 Scanning / Reconnaissance (2)
2001:0DB8:0011:0010:0000:0000:0000:0010
The low-order 64 bits are commonly assigned three ways:
1) Manually
2)
3)

 Pour les adresses attribuées manuellement:


 Le plus souvent «d'ordre faible» et / ou séquentiel
Par exemple, <Préfixe> :: 1, <Préfixe> :: 10
 Parfois, intégration d'adresse IPv4 (dernier octet ou adresse complète)
 Soit l'hex converti: <préfixe> :: a01.01.01
 Plus souvent, pas tellement: <préfixe> :: 10: 1: 1: 1
 Parfois, en utilisant des «mots hexadécimaux» ou des numéros de port:
 "F00d", "boeuf", "café", "mort", "f4c3: b00c", "80", "443", etc.
 Peu importe, tout cela est facilement scriptable 157
Sécurité IPv6 Introduction aux concepts de la Sécurité (12/14
IPv6 Scanning / Reconnaissance (3)
2001:0DB8:0011:0010:0323:45ff:fe67:89ab
The low-order 64 bits are commonly assigned three ways:
1) Manually
2) EUI64 (derived from MAC address, or from IPv4 address)
3)

 Pour les adresses EUI64:


 Certaines hypothèses peuvent être faites:
 18 bits sont "connus" ("ff: fe" et U / L, G); si bas à 46 bits
 “Seulement” ~ 8000 OUI ont été émises, donc ces 22 bits sont réduits à enviro
13 bits, maintenant à 37 bits
 Si l'attaquant connaît une adresse valide et sait qu'une organisation achète peut-êt
en vrac = balayer simplement «près de» cette adresse, donner ou prendre une
douzaine de bits.
158
Sécurité IPv6 Introduction aux concepts de la Sécurité (13/14)
IPv6 Scanning / Reconnaissance (4)
2001:0DB8:0011:0010:b550:7a83:58a0:bb6
The low-order 64 bits are commonly assigned three ways:
1) Manually
2) EUI64 (derived from MAC address, or from IPv4 address)
3) Randomly
 Lorsque l’adresse est déterminée aléatoirement, Scanning horizontal
«non informé» n'est pas réalisable dans IPv6
 Plusieurs outils : NMAP
 «Expression d’hôte invalide: :: / 64 - barre oblique non autorisée. Les adresses
IPv6 ne peuvent actuellement être spécifiées que individuellement».
 Noter qu’une adresse publiée dans un enregistrement DNS peut souvent
être facilement trouvée, quelle que soit la manière dont cette adresse a
été construite. 159
Sécurité IPv6 Introduction aux concepts de la Sécurité (14/14
IPv6 Reconnaissance

 Le scanning , bien que souvent sous-optimale, peut être réalisable si il es


"ensemencé" avec une intelligence supplémentaire
 Et parfois, le scan peut provenir de sites Web ou de machines zombies,
plutôt que de l'attaquant directement (Honeypot)

 En outre, la reconnaissance est plus qu'un simple scanning


 Les enregistrements DNS (A, AAAA, NS) sont des cibles précieuses
 Autres ressources publiées (exemple: sites Web)
 Publiée intentionnellement ou non
 Les WhoIs et autres enregistrements RIR sont accessibles au
public
160
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (1/6)

 IPsec est une solution fréquemment évoquée pour résoudre les


problèmes de C3.
• En fait, la prise en charge de IPsec est devenue obligatoire ("doit") dans
les implémentations IPv6
• Cependant, IPsec ne peut résoudre que certaines problèmes, en
fournissant (un sous-ensemble de): confidentialité, intégrité,
authentification
• Et cela n’est pas sans un surcoût - en termes de performances (CPU et
paquet) et de charge administrative liée à la configuration des
associations de sécurité (SA) et à la manipulation associée.
161
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (2/6)

 IPsec, fondamentaux:
Association de sécurité:
• Deux modes de fonctionnement:
Transport, Tunnel
 Deux mécanismes:
En-têtes d'authentification (AH, 51)
Protocole de sécurité d'encapsulation (ESP, 50)
 Chaque mode peut utiliser l'un ou l'autre mécanisme
 IPsec fondamentalement identique pour IPv4 & IPv6
Même RFC couvre les deux, RFC4003
162
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (3/6)

Protocole AH Protocole ESP

163
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (4/6)

Mode Tunnel:
• Souvent, routeur à routeur / site à
site - Peut être hôte à hôte
• Le paquet original entier est
devient le Payload d'un nouveau
paquet, "protégé "

Mode Transport:
• Hôte à Hote
• Le payload du paquet d'origine
devient le payload d'un paquet
protégé par IPsec

164
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (6/6)
 La configuration d’IPsec,
quel que soit le mode / mécanisme
en question - nécessite une configuration
a priori entre chaque paire de points de terminaison
• La création de tunnels «à maillage complet» est lourde
dans les meilleures circonstances, même s'il est facile à
configurer, il s'agit de points d'extrémité (N2 - N).
• IPsec n'est pas «facile à configurer» tunneling, nécessitant
des clés pré-partagées ou une infrastructure de clé
publique (PKI) et une ré-saisie automatique (espérons-le)
pour chaque association de sécurité (unidirectionnelle 165
Sécurité IPv6
Les mécanismes intégrés d'Ipsec (5/5)
Discussion

 IPsec fournit une application par paquet de trois services


principaux pour IPv4 et IPv6:
1. Confidentialité
2. Intégrité
3. Authentification

 Nécessite la configuration d'associations de sécurité


avant que le trafic ne soit transmis en toute sécurité
166
Sécurité IPv6
La sécurité du premier saut (1/7)
 Une table de base de données de voisins IPv6 connectés au commutateur est
créée à partir de sources d'informations telles que l'observation de protocole
ND (Neighbor Discovery).
 Cette base de données, ou table de liaison, est utilisée par diverses
fonctionnalités de protection IPv6 (telles que l'inspection IPv6 ND, la limite
d'adresse par port, le suivi de périphérique IPv6) pour valider l'adresse de
couche liaison (LLA), l'adresse IPv4 ou IPv6 et le préfixe liaison des voisins pour
empêcher l'usurpation d'identité et rediriger les attaques.
 L’inspection IPv6 ND apprend et sécurise les liaisons pour les adresses de
configuration automatique sans état dans les tables voisines de couche 2.
 L'inspection IPv6 ND analyse les messages de découverte de voisin afin de
créer une base de données de table de liaison approuvée et les messages de
découverte de voisin IPv6 non conformes sont supprimés.
167
Sécurité IPv6
La sécurité du premier saut (2/7)
 Les stratégies globales IPv6 fournissent des services de base de
données de stratégies de stockage et d'accès.

 L'inspection ND (IPv6 Neighbour Discovery) et la protection


d'annonce de routeur IPv6 (RA Guard) sont des fonctionnalités de
stratégie globale IPv6.

 Chaque fois qu'une inspection ND ou RA Guard est configurée


globalement, les attributs de stratégie sont stockés dans la base de
données de stratégies logicielles. La stratégie est ensuite appliquée
à une interface et l'entrée de la base de données de stratégies
logicielles est mise à jour pour inclure cette interface à laquelle la
stratégie est appliquée. 168
Sécurité IPv6
La sécurité du premier saut (3/7)
 Les périphériques utilisent les RA pour s’annoncer sur le lien.
 La fonction IPv6 RA Guard analyse ces RA et filtre les RA envoyés
par des périphériques non autorisés.
 En mode hôte, tous les messages de redirection de RA et de
routeur ne sont pas autorisés sur le port.
 La fonction RA Guard compare les informations de configuration du
périphérique de L2 avec les informations trouvées dans la trame RA
reçue.
 Une fois que le périphérique L2 a validé le contenu de la trame RA
et de la trame de redirection du routeur par rapport à la
configuration, il transmet le RA à sa destination de diffusion
individuelle ou de multidiffusion.
 Si le contenu de la trame RA n'est pas validé, la RA est supprimée.
169
Sécurité IPv6
La sécurité du premier saut (4/7)
RA Guard RFC 6105
 Met en œuvre le principe d'isolation similaire à d'autres
mécanismes de protection L2 déjà déployé dans le monde

 fonctionne assez bien contre certaines saveurs de problèmes.


par exemple envoi accidentel de RA par certaines entités
(VM, routeur domestique et al.)

 Introduction de DHCPv6 et ND Snooping et détection ND et


Inspection ARP dynamique dans l'IPv4

 Empêche l'usurpation d'adresse IPv6 un client connecté à un port


donné 170
Sécurité IPv6
La sécurité du premier saut (5/7)
RA Guard Exemple de configuration

Configuration of Router Role:


interface GigabitEthernet1/0/1
ipv6 nd raguard role router

Configuration of Host Role:


interface GigabitEthernet1/0/2
ipv6 nd raguard role host

interface GigabitEthernet1/0/3
ipv6 nd raguard role host 171
Sécurité IPv6
La sécurité du premier saut (6/7)
RA Guard Exemple de configuration

Configuration of Router Role:


interface GigabitEthernet1/0/1
ipv6 nd raguard role router

Configuration of Host Role:


interface GigabitEthernet1/0/2
ipv6 nd raguard role host

interface GigabitEthernet1/0/3
ipv6 nd raguard role host 172
Sécurité IPv6
La sécurité du premier saut (7/7)
RA Guard Exemple

RA
Port ACL blocks all ICMPv6 RA from hosts
ROUTER
interface FastEthernet0/2 Device-role

ipv6 traffic-filter ACCESS_PORT in R


A
access-group mode prefer port
RA-guard lite also dropping all RA received on this port
interface FastEthernet0/2 HOST
Device-role

ipv6 nd raguard
access-group mode prefer port Can also enforce MTU,

RA
prefix, ... In RA R
A
RA-guard
ipv6 nd raguard policy HOST device-role host
ipv6 nd raguard policy ROUTER device-role
router
R
A

ipv6 nd raguard attach-policy HOST vlan 100


interface FastEthernet0/0
173
ipv6 nd raguard attach-policy ROUTER
Sécurité IPv6
La sécurité du premier saut (1/3)
Définition IPv6 PACL
La fonction PACL IPv6 offre la possibilité de fournir un contrôle
d'accès (autoriser ou refuser) sur les ports de commutateur de C2
pour le trafic IPv6.

Les PACL IPv6 sont similaires aux PACL IPv4, qui fournissent un
contrôle d'accès sur les ports de commutateur de C2 pour le trafic
IPv4. Ils ne sont pris en charge que dans le sens de l'entrée et dans
le matériel.

Un PACL peut filtrer le trafic entrant sur les interfaces de C2 en


fonction des informations d'en-tête de C3 et de C4 ou
d'informations de C2 non IP. 174
Sécurité IPv6
La sécurité du premier saut (2/3)
Configuration IPv6 PACL
Avant de configurer la
Etapes à suivre
fonctionnalité PACL IPv6, vous
devez configurer une liste 1. enable

d’accès IPv6. 2. configure terminal

3. ipv6 access-list access-list-name


Une fois que vous avez configuré
la liste d'accès IPv6, vous devez 4. exit
configurer le mode liste de
5. interface type number
contrôle d'accès basée sur les
ports (PACL) sur l'interface 6. ipv6 traffic-filter access-list-name {in | out}
spécifiée IPv6 Layer 2. 7. end
175
Sécurité IPv6
La sécurité du premier saut (3/3)
Configuration IPv6 PACL - exemple

Exemple: configuration du mode PACL et application du


PACL IPv6 sur une interface.

Device# configure terminal

Device(config)# ipv6 access-list list1

Device(config-ipv6-acl)# exit

Device(config-if)# ipv6 traffic-filter list1 in


176
Chap 9: Cohabitation IPv4 - IPv6,
mécanismes de transition et de
migration vers IPv6

177
Cohabitation IPv4 - IPv6
Double pile (Double couche) (1/7)

• Les nœuds IPv4 et IPv6 sont


Upper Layers
activés en parallèle sur la
couche 3
TCP UDP Layer 4
• L'application peut définir le
protocole IP à utiliser

IPv4 IPv6 Layer 3 • Les nœuds à double pile


peuvent avoir à la fois des
enregistrements DNS A et
Ethernet Layer 2 AAAA

178
Cohabitation IPv4 - IPv6
Double pile – Exemple - Avant (2/7)

• Exemple d'environnement réseau, où tous les nœuds sont IPv4

Internet

Campus 3

Campus 2
Company
Campus 1 Datacenter
179
Cohabitation IPv4 - IPv6
Double pile – Exemple - Après (3/7)

• Seuls les nœuds compatibles IPv6 sont activés pour les opérations à double
pile et les services nécessaires pour prendre en charge leurs activités.

Internet
IPv6

v6
v4
Campus 3

v6
v4

Dual Stacked IT v6

Services v4

v6

v6 v4

v4

v6
v4
v6
v4 Campus 2
Company Dual
Campus 1 Datacenter Stack
Dual Dual
Stack Stack Dual
Dual
Dual Dual Stack
Stack 180
Stack Stack
Cohabitation IPv4 - IPv6
Double pile – Avantages (4/7)
La double pile est souvent considérée la bonne pratique pour la
transition IPv6 à cause des raisons suivantes:

• Architecture plus simple - Il est relativement facile d'activer IPv6 dans la


plupart des nœuds informatiques modernes.

• Compatibilité - La prise en charge d'IPv6 par les fournisseurs


informatiques n'étant pas cohérente, la double pile minimise les
perturbations des systèmes existants.

• Continuité de service - Limite les perturbations dans les applications et


les services critiques de l'entreprise

• Passage à la domination IPv6 - Idéal pour le passage progressif du réseau


181
IPv4 à la migration de tous les systèmes vers IPv6
Cohabitation IPv4 - IPv6
Double pile – Défis (5/7)
 La Complexité augmente au fur et à mesure que le déploiement de
la pile double augmente
Exécution de “deux” réseaux en parallèle
Potentiellement plus difficile à dépanner

 Capacité limitée pour les nouveaux déploiements de réseau où IPv4


est déjà rare

 Absence de parité des fonctionnalités dans la prise en charge des


fournisseurs informatiques pour IPv6

 Problème avec des noeuds superposés sans connectivité IPv6 «en


suspens»  solution Happy Eyeballs (connexion IPv4 et IPv6 182en //)
Cohabitation IPv4 - IPv6
Double pile – Happy Eyeballs ? (6/7)
• Problème bien connu lorsque le noeud www.example.com

est une pile double mais qu’une


connectivité IPv6 n’existe pas ou brisée DNS Server
Reply:

• Requête DNS résolue à la fois les


www.example.com
A = 198.51.100.227
AAAA = 2001:0DB8:4C22::1
enregistrements A et AAAA
• Le nœud préfère IPv6 et essaie
v4
d'abord, puis après échec, sur IPv4
• Une expérience utilisateur médiocre qui

X
IPv6 TCP Attempt

IPv4 TCP Attempt


Request:
dissuade les gens d'utiliser IPv6 www.example.com

• Le correctif consiste à faire des tentatives


Dual
de connexion simultanément (TCP, SCTP) Stack
183
Cohabitation IPv4 - IPv6
Double pile – Happy Eyeballs ? (7/7)
Le correctif consiste à faire des tentatives de connexion simultanément (TCP, SCTP)
Comportement problématique Solution

184
Interconnexion IPv6 réalisée à l'aide de tunnels construits dans un réseau IPv4
Définition (1/3)
Le tunneling est une méthode d'intégration dans laquelle un paquet
IPv6 est encapsulé dans un autre protocole, tel que IPv4. Cette
méthode d'encapsulation est le protocole IPv4 41:
Cela inclut un en-tête IPv4 de 20 octets sans option, un en-tête IPv6 et la
charge utile.
Ceci est considéré comme un double empilement.

185
Interconnexion IPv6 réalisée à l'aide de tunnels construits dans un réseau IPv4
Host Isolé (2/3)
L’encapsulation peut être réalisée par les routeurs Edge et les hotes
ou entre le hote et le routeur

186
Interconnexion IPv6 réalisée à l'aide de tunnels construits dans un réseau IPv4
Exemple de configuration de tunnel (3/3)

187
Tunnel manuel GRE
Introduction - Generic Routing Encapsulation RFC2784 (1/3)
 Il existe avec Linux un type de tunnel qui encapsule de l'IP sur IP. Cette solution
n'existe, semble-t-il, que sous Linux et reste assez limitative

 Le tunnel GRE fonctionne parfaitement. C'est un protocole ouvert, initialement


développé par CISCO, et qui peut donc se mettre en place sur des plate-formes
différentes

 Comme dans la configuration manuelle des tunnels IPv6, les tunnels GRE sont
des liaisons entre deux points, avec un tunnel distinct pour chaque liaison.

 Les tunnels GRE sont principalement utilisés pour les connexions stables
nécessitant une communication sécurisée régulière entre deux périphériques
ayant des implémentations à double pile.

188
Tunnel manuel GRE
Avantages - Generic Routing Encapsulation RFC2784 (2/3)
 Le tunnel GRE permet à des entreprises ayant plusieurs agences avec des
liaisons d’opérateurs différents de les raccorder à son LAN sans besoin de passer
par la tunnelisation IPsec ou SSL (et donc de matériel onéreux) Cela permet de
router le LAN de l’agence distante et donc de maitriser ses flux. On peut ainsi
diriger les flux selon ses besoins (Firewall d’accès Internet unique) et donc
d’assurer une meilleure stratégie de sécurité.

 Le Tunnel GRE est très utile lorsque l’on possède un réseau multi-sites en VPN
MPLS et que sur une agence on possède une liaison sous engagement d’un
opérateur tiers. En rajoutant le tunnel GRE on peut ainsi lier cette agence au
VPN MPLS et bénéficier tous ses avantages (Serveurs partagés, voip, sortie
Internet commune, Stratégies Windows, …).

189
Tunnel manuel GRE
Configuration GRE – IPv6 Tunnel (3/3)

 Lorsque les tunnels GRE IPv6 sont configurés, les adresses IPv6 sont attribuées
au tunnel source et au tunnel destination.
Etapes à suivre
1. enable
2. configure terminal
3. interface tunnel tunnel-number
4. Enter one of the following commands:
• ipv6 address {ipv6-address/prefix-length | prefix-name sub-bits/prefix-length}
• ipv6 address ipv6-prefix/prefix-length [eui-64]
5. tunnel source {ip-address | ipv6-address | interface-type interface-number}
6. tunnel destination {hostname | ip-address | ipv6-address}
7. tunnel mode {aurp | cayman | dvmrp | eon | gre | gre multipoint | gre ipv6 | ipip
[decapsulate-any] | iptalk | ipv6 | mpls | nos}
8. end
190
Tunnel automatique 6to4, 6RD
Introduction (1/8)

6to4 tente de résoudre les problèmes suivants:

Un certain nombre de sites sont prêts à déployer I’Pv6


en interne, mais ne parviennent pas à obtenir une
connectivité native.

Configurer les tunnels manuellement pour chaque


connexion est possible, avant que cela ne soit
nécessaire, est excessivement fastidieux et peut même
ne pas être réalisable du tout.
191
Tunnel automatique 6to4, 6RD
Connectivité 6to4 à 6to4 (2/8)

192
Tunnel automatique 6to4, 6RD
Conversion des adresses pour tunnel 6to4 (3/8)

Comme tout mécanisme de tunneling automatique, le facteur clé est


l'incorporation d'une adresse IPv4 dans une adresse IPv6, comme suit:
 <6to4 Prefix> : <IPv4 Address>::/48
 Example:
2002:1900:0102::/48
19 = 25
00 = .0
01 = .1
02 = .2

193
Tunnel automatique 6to4, 6RD
Exemple de configuration du tunnel 6to4 entre R1 et R3 (4/8)
Lo0 10.1.2.1/24
172.16.23.1 /24
S0/0/1
Lo0 10.1.3.1/24
R2 S0/0/1 R3
S0/0/0 172.16.23.2 /24
172.16.12.2 /24

172.16.12.1 /24
S0/0/0

Lo0 10.1.1.1/24

R1 R3
R1(config-if)# interface tunnel 0 R3(config-if)# interface tunnel 0
R1(config-if)# tunnel mode 1pv6ip to 6to4 R3(config-if)# tunnel mode 1pv6ip to 6to4
R1(config-if)# ipv6 address 2002:AC10:0C01:1::1/64 R3(config-if)# ipv6 address 2002:AC10:1703:1::3/64
R1(config-if)# tunnel source s0/0/0 R3(config-if)# tunnel source s0/0/1
Exit Exit
R1(config)# ipv6 route 2002::/16 tunnel 0 R3(config)# ipv6 route 2002::/16 tunnel 0

Verification Verification
R1#ping 2002:AC10:1703:1::3 R3#ping 2002:AC10:1::1
194
Tunnel automatique 6to4, 6RD
Exemple de configuration statique du tunnel 6to4 (5/8)
Lo0 10.1.2.1/24
172.16.23.1 /24
S0/0/1
Lo0 10.1.3.1/24
R2 S0/0/1 R3
S0/0/0 172.16.23.2 /24
172.16.12.2 /24

172.16.12.1 /24
S0/0/0 Router 1
Router1(config)# ipv6 unicast-routing
Router1(config)# ipv6 route FEC0::30/112 2002:AC10:1703:1::3
Lo0 10.1.1.1/24

Router 2
Router2(config)# ipv6 unicast-routing
Router2(config)# ipv6 route FEC0::1:0/112 2002:AC10:C01:1::1

Le saut suivant pour les deux routeurs est l'adresse IPv6 à


l'autre bout du tunnel 195
Tunnel automatique 6to4, 6RD
Définition 6rd (RFC 5569) (6/8)
 6rd == IPv6 Rapid Deployment sur les infrastructures IPv4
• Idée basique:
- utilise la même technique que 6to4
- mais avec le préfixe IPv6 spécifique à l'ISP au lieu de 2002 :: / 16
• Par exemple : 2a00: 0380 :: / 28 + IPv4 public 145.253.100.48/32 ⇒ :: / 60

• La taille du préfixe ISP n'est pas fixée: :: / 24 autorise le préfixe client de :: / 56

• Fonctionne également avec les réseaux privés RFC 1918, par exemple. 10.0.0.0/8

196
Tunnel automatique 6to4, 6RD
Schéma (7/8)

Il est plus facile de considérer le 6RD comme un


6to4 «privatisé»; le tunneling est entièrement limité
au réseau du FAI 197
Tunnel automatique 6to4, 6RD
Schéma entêtes (8/8)

198
Tunnel ISATAP
Propriétés (1/4)
 ISATAP (Intra-Site Automatic Tunnel Addressing Protocol) permet de connecter
des équipements terminaux IPv6 isolés dans un réseau IPv4, en gérant de
manière automatique l'encapsulation des paquets IPv6 dans des paquets IPv4.
Contrairement à 6to4, cette technique s'applique à l'intérieur d'un domaine.

 N'utilise pas la multidiffusion IPv4, comme requis avec 6to4

 Tous les hôtes utilisant ISATAP doivent être IPv4 / IPv6 dual-stack

 Les hôtes ISATAP communiquent en tunnelant les paquets IPv6 sur IPv4 à l'aide
du protocole 41

 ISATAP permet le déploiement de terminaux dual-stack et d'applications IPv6


sur une infrastructure locale IPv4, comme typiquement celle d'un réseau
d'entreprise 199
Tunnel ISATAP
Algo de Configuration (2/4)
L'algorithme de configuration d'un équipement isolé qui utilise ISATAP est le suivant :

• Dans un premier temps, l'équipement doit connaître l'adresse IPv4 du routeur


gérant ISATAP. Cette adresse pourrait être apprise par le DNS, ou en utilisant une
adresse Anycast IPv4 pour joindre le routeur le plus proche.

• L'équipement envoie un message IPv6 Router Sollicitation au routeur en utilisant


comme adresse de la source, son adresse lien-local (fe80::5e:fe:IPv4) et comme
adresse de destination l'adresse de multicast des routeurs (FF02::02). Ce message
est encapsulé dans un paquet IPv4 dont l'adresse destination est l'adresse IPv4 du
routeur.

• le routeur répond au message IPv6 Router Sollicitation en renvoyant en point-à-


point, toujours encapsulé dans un paquet IPv4, la liste des préfixes IPv6 utilisés
pour joindre les équipements isolés (Router Advertisement). 200
Tunnel ISATAP
Adresses ISATAP (3/4)
 Un hôte avec une adresse IPv4 w.x.y.z effectue une configuration
automatique avec l'ID d'interface = :: 0: 5EFE: w.x.y.z.

201
Tunnel ISATAP
Limitations ISATAP (4/4)

 Tous les hôtes IPv6 exécutent IPv4 / IPv6 en double pile


prennent en charge ISATAP
 Chaque hôte ISATAP doit connaître au moins un routeur
IPv4 / IPv6 à double pile.
 Tout le trafic est limité à un seul domaine administratif
 Il n'est pas nécessaire de traverser NAT IPv4
202
The End !

203

Vous aimerez peut-être aussi