355
IPv6: Concepts et mise en oeuvre

IPv6 training

Embed Size (px)

DESCRIPTION

Presentation IPv6

Citation preview

Page 1: IPv6 training

IPv6: Concepts et mise en oeuvre

Page 2: IPv6 training

Table des matières

n  La table des matières est insérée dans la page de commentaire. n  La page de commentaire recouvre ce slide. Il n’est donc pas imprimé. n  Ce slide n’est pas visible en mode diaporama (slide masqué).

Page 3: IPv6 training

Objectif

n  L’Objectif de ce cours est de fournir toutes les informations théoriques et pratiques nécessaires pour planifier et mettre en œuvre un déploiement IPv6 dans un environnement mono protocole IPv6 ou mixte MPLS-IPv4-IPv6

Page 4: IPv6 training

Pre-Requis

n  Une culture générale réseau est nécessaire pour tirer partie de tout le contenu n  Ce Cours s’adresse a un public ayant eu une première expérience avec IPv4 et souhaitant

intégrer IPv6 dans leurs réseaux. n  Des labs utilisant des routeurs Cisco sont prévus mais ne sont pas indispensables pour

donner ce cours si le public n’en a pas besoin.

Page 5: IPv6 training

Sommaire

n  Présentations n  Rappels IPv4 n  Le Protocole IPv6 n  ICMPv6 et Neighbor Discovery n  Menaces sur NDP et SEND pour le sécuriser n  Les Protocoles de Routages IPv6 n  Interconnexions de Réseaux IPv6

n  Tunnels IPv6 dans IPv4 n  Interconnections par des réseaux MPLSv4

-  6PE, 6vPE n  La Qualité de Service dans les réseaux IPv6 n  La Sécurité dans les réseaux IPv6

n  Protocole de routage n  IPSec

n  La Gestion des Réseaux IPv6

Page 6: IPv6 training

Fred BOVY

n  12 yr CCIE Routing & Switching 3013 n  Cisco Certified System Intructor 95003 n  8 ans chez ITS ( Groupe SITA)

n  5 ans comme technico-commercial et n  3 ans comme formateur principalement Cisco et autres passerelles SNA/X25 sous UNIX vers TCP/IP.

n  2 ans chez Global Knowledge (Institut ERIS ) n  responsable formation Cisco.

n  10 ans chez CISCO. n  4 ans comme support Clients VIVENDI et EQUANT n  6 ans comme dev-testeur IPv6 (6PE,6VPE, Netflow for IPv6, etc…..)

Page 7: IPv6 training

Pratique

n  Horaires 9h-12h 14h-17h n  Pauses Café n  Pensez a vos successeurs !

n  N’oubliez pas de remplir vos fiches d’évaluation a la fin du cours !

Page 8: IPv6 training

Rappel IPv4

Page 9: IPv6 training

Objectif

n  L’objectif de ce module est de rafraichir les connaissances IPv4 en introduisant tous les basics de ce protocole

n  Ceci pour permettre de comparer avec IPv6 n  de plus IPv6 et IPv4 ont beaucoup en commun

Page 10: IPv6 training

IP et protocoles associes

n  IPv4 offre un service de datagram Best-Effort n  Il est assisté de ARP pour encapsuler ses datagrams dans des trames en obtenant

l’adresses MAC de son destinataire. n  IPv4 a besoin d’autres protocoles ou de configurations statiques laborieuses

Page 11: IPv6 training

En-tête IPv4

Version Longueur d’en-tête D Longueur Totale en Octet

Identification pour les fragment Flag Fragment Offset Durée de Vie (TTL) Protocol Somme de contrôle pour l’en-tête (header checksum)

Adresse Source

Adresse Destination

Options (+ bourrage)

P P P DF M

T R E 0

Page 12: IPv6 training

En-tete IPv4

n  Version (4 Bits) 4 n  Internet Header Length (4 bits)

n  IHL signifie "Internet header lengh". ce champ est codé sur 4 bits et représente la longueur en mots de 32 bits de l'en-tête IP. Par défaut, il est égal à 5 (20 octets), cependant, avec les options de l'en-tête IP, il peut être compris entre 6 et 15.

n  Le fait que le codage soit sur 4 bits, la taille maximum de l'en-tête IP est donc de 15*32bits = 60 octets

n  60 >= Taille En-tête Ipv4 >= 20

Page 13: IPv6 training

Fragmentation

n  Identification (16 bits) n  Identifie tous les fragments d’un même datagramme

n  Fragment Offset (13 bits) n  position du fragment par rapport au paquet de départ, en nombre de mots de 8 octets.

n  Flag n  DF - Don’t Fragment n  MF - More Fragment

Page 14: IPv6 training

TTL. Durée de Vie (8 bits)

n  BUT: Contrecarrer les effets d’une boucle de routage en évitant que des paquets puissent tourner dans le réseau à l’infini, problème non résolu au niveau deux sur les ponts transparents.

n  ORIGINE: A l’origine de l’Internet, ce champs était supposé représenter le temps restant au paquet à vivre dans le réseau.

n  C’est vite devenu trop compliqué à gérer et il s’est transformé en compteur à rebours de saut. Lorsqu’il atteint zéro, le datagramme est détruit.

n  Ce qu’il est devenu: Il est décrémenté à chaque saut. Si il atteint la valeur nulle. Le datagramme est jeté et un message ICMP Time Exceeded est envoyé vers la source.

Page 15: IPv6 training

Protocole (8 bits)

n  numéro du protocole au-dessus de la couche réseau : n  TCP = 6, n  UDP = 17, n  ICMP = 1.

Page 16: IPv6 training

Somme de contrôle de l’en-tête (16 BITS)

n  Checksum ou encore CRC pour Contrôle de Redondance Cyclique: vérification de l'intégrité de l'en-tête seulement. Si le CRC est invalide, le paquet est abandonné sans message d'erreur.

n  Le TTL est généralement le seul champs qui change pendant le routage d’un paquet et demande le calcul d’un nouveau CRC. Cette opération est faisable par des ASICS.

Page 17: IPv6 training

TOS et Priorites

n  Service: n  Priorité (3bits),

-  0 - 000 - Routine -  1 - 001 - Prioritaire -  2 - 010 - Immédiat -  3 - 011 - Urgent (flash) -  4 - 100 - Très urgent -  5 - 101 - Critique -  6 - 110 - Supervision interconnexion -  7 - 111 - Supervision réseau

n  Délai (Delay), Débit(Througput), Fiabilité (Reliablity), Cout (Economic), Must Be Zero

Page 18: IPv6 training

DiffServ

n  Differentiated Services Field redéfini les 6 premiers bits comme DSCP et défini deux grandes sortes de trafic.

n  Dans l’en-tête IPv6, le DSCP est présent dans un champs appelé Trafic Class.

Page 19: IPv6 training

DiffServ Expedited Forwarding

n  Expedited Forwarding (RFC3246). n  Dans ce mode les données sont traitées avec une priorité stricte. n  Cela demande un protocole de réservation RSVP pour garantir que la bande passante est

disponible dans la Strict Priority Queue. -  DSCP = 101110

Page 20: IPv6 training

DiffServ Assured Forwarding

n  Assured Forwarding (RFC2597). n  Dans ce mode le trafic est classé par classes de trafic plus ou moins prioritaires. n  Dans chaque classe il est possible de donner une priorité pour le rejet de trafic devant être

rejeté par manque de Bande passante disponible (Overbooking).

Page 21: IPv6 training

Diff-Serv Assured Forwarding

DSCP DSCP binary Intended Protocol Configuration

AF1 AF11 AF12 AF13

001010 001100 001110

Bulk Transfer, Web, General Data Service

Active Q management DSCP-based WRED.

AF2 AF21 AF22 AF23

010010 010100 010110

Datagram access, transaction services, interactives traffic, preferred data service

Active Q management DSCP-based WRED.

AF3 AF31 AF32 AF33

011010 011100 011110

Locally defined; mission critical application

Active Q management DSCP-based WRED.

AF4 AF41 AF42 AF43

100010 100100 100110

Interactive video and associated voice

Admission control RSVP Active Q management DSCP-based WRED.

Page 22: IPv6 training

Diff Serv Class Selector

PHB DSCP DSCP bin Intended Protocol Configuration

IP Routing Class Selector 6 110000 BGP, OSPF, and so on Queuing=rate based. Small guaranteed min rate, WRED

Streaming Video Class Selector 4 100000 Often Proprietary Admission control=RSVP, Queuing=rate based. Small guaranteed min rate, WRED

Telephony Signaling Class Selector 3 011000 SIP, H323, etc…. Queuing=rate based. Small guaranteed min rate, WRED

Network Management Class Selector 2 010000 SNMP Queuing=rate based. Small guaranteed min rate, WRED

Scavenger Class Selector 1 0010000 User Selected Service Queuing=rate based. NO guaranteed min rate, WRED

Page 23: IPv6 training

Longueur Totale en Octets

n  nombre total d'octets du datagramme, en-tête IP comprise. Donc, la valeur maximale est (216)-1 octets.

Page 24: IPv6 training

La Fragmentation

n  Les Champs suivants permettent la fragmentation. -  Identification - Identifie tous les fragments d’un même datagramme -  Fragment Offset - Positionne le fragment dans le datagramme -  MF Bit - Encore des fragments a venir -  DF Bit - Ne pas fragmenter, laisser tomber si nécessaire

Page 25: IPv6 training

PMTUD

n  Une station tente d’émettre un paquet vers la destination au MTU et positionne le bit DF. n  Si un routeur drop le paquet, il envoie un Packet Too Big ICMP vers la source avec le MTU

disponible. n  L’opération est éventuellement répétée jusqu’ a ce qu’un paquet puisse être émis au MTU

disponible vers la destination. n  La source maintient un cache par destination.

Page 26: IPv6 training

En-tête IPv4 (suite)

n  TTL. Le Time to Live est décrémenté a chaque hop. Si sa valeur est nul le paquet est droppé et un message ICMP remonte a la source pour l’en informer.

n  Protocol. Un code définit dans le RFC1700 qui définit le protocole encapsule. Les plus connus sont:

n  01 - ICMP n  02 - IGMP n  06 - TCP n  17 - UDP

Page 27: IPv6 training

Checksum.

n  Le champ Checksum est codé sur 16 bits et représente la validité de l’en-tête du paquet de

la couche 3. n  Pour pouvoir calculer le Checksum, il faut positionner le champ du checksum a 0 et ne

considérer que l'en-tête IP. Donc par exemple, si deux trames ont la même en-tête IP (y compris le champ length) et deux en-têtes ICMP et Data différentes (mais de même longueur), le checksum IP sera alors le même.

Page 28: IPv6 training

Adresses IPv4

n  Adresse IP Source/Destination n  Classe A. Adresses de 1.0.0.0 à 126.255.255.255.

n  La plage 10.0.0.0. à 10.255.255.255 est privée. n  128 domaines (réseaux) et 16.777.214 machines de classe A par domaine

n  Classe B. 127.0.0.0 à 191.255.255.255. n  La plage 172.16.0.0. à 172.31.255.255 est privée. n  16.000 domaines et 65.534 Machines de classe B par domaine

n  Classe C. 192.0.0.0 à 223.255.255.255. n  La plage 192.168.0.0. à 192.168.255.255 est privée. n  2.000.000 domaines et 254 machines de classe C par domaine

n  Classe D. 234.0.0.0 à 239.255.255.255 Multicast n  Classe E. 240.0.0.0 à 247.255.255.255 Expérimentale

Page 29: IPv6 training

NAT/PAT

n  NAT permet de gérer la traduction d’adresses privées en publiques n  PAT permet d’associer plusieurs adresses privées a une adresse publique n  Cons

n  Goulet d’étranglement n  Gere mal certaines applications qui véhiculent les adresses

n  Pro n  Cache le réseau a l’extérieur du domaine

Page 30: IPv6 training

Option

Option Data

OptionType Option Length

C class Option Number

Page 31: IPv6 training

En-tête IPv4 - Option

n  Copie (1 bit) n  S’il est positionné les options sont recopiées dans le paquet fractionné.

n  Class (2 Bits) n  0 - 00 - Supervision de réseau

1 - 01 - Non utilise 2 - 10 - Debug et mesures 3 - 11 - Non utilisé

Page 32: IPv6 training

Options (Suite)

n  Numéro (5 bits). Le champ Numéro indique les différentes options existantes. n  Voici la liste des différents numéros possibles par Classe :

n  Classe 0, - 0 - 00000 - Fin de liste d'option. Utilisé si les options ne se terminent pas à la fin de l'en-tête (bourrage). - 1 - 00001 - Pas d'opération. Utilisé pour aligner les octets dans une liste d'options. - 2 - 00010 - Restriction de sécurité et de gestion. Destiné aux applications militaires. - 3 - 00011 - Routage lâche défini par la source. - 7 - 00111 - Enregistrement de route. - 8 - 01000 - Identificateur de connexion. - 9 - 01001 - Routage strict défini par la source.

n  Classe 2, - 4 - 00100 - Horodatage dans l'Internet.

Page 33: IPv6 training

En-tête IPv4 - Bourrage

n  Le champ Bourrage est de taille variable comprise entre 0 et 7 bits. Il permet de combler le

champ option afin d'obtenir une en-tête IP multiple de 32 bits. La valeur des bits de bourrage est 0.

Page 34: IPv6 training

DHCP/BOOTP/RARP

n  Certaines stations n’ont pas de quoi stocker leur système d’exploitation et le charge par le réseau. n  Tout ce que connait la station est sa MAC adresse n  Une Requête BOOTP ou RARP demande une adresse IP en envoyant sa MAC adresse. n  Un Serveur BOOTP ou RARP lui donne son adresse IP d’après sa MAC adresse n  Puis la station peut charger son OS en utilisant TFTP. n  La différence principale entre ces protocoles est que BOOTP comme DHCP sont encapsulés dans IP.

Page 35: IPv6 training

DHCP

n  Configuration reseau des stations centralisee. n  On configure sur un Serveur DHCP tout ce que les machines d’un reseau ont besoin de

connaitre: n  Adresse IP n  Routeur par defaut n  Adresse du ou des Serveurs DNS n  Nom de domaine, etc…

Page 36: IPv6 training

Conclusion

n  IPv4 ne permet pas d’attribuer une adresse globale au nombre toujours croissant de stations Internet.

n  NAT permet d’utiliser des adresses privées mais la traduction est un goulet d’étranglement et s’accommode mal de certaines applications.

n  IPv6 résout le problème d’adressage et bien d’autres encore.

Page 37: IPv6 training

IPv6

Page 38: IPv6 training

Objectives

n  Comprendre toutes les différences avec IPv4 n  Comprendre les Adresses IPv6 n  Maitriser IPv6

Page 39: IPv6 training

Topic

n  Objectifs n  Introduction n  En-tête IPv6 n  Les Adresses IPv6

Page 40: IPv6 training

Introduction

n  RFC2460 n  IP Version 6 améliore sur de nombreux points le protocole IP version 4 vieux d’une trentaine

d’années maintenant !… n  La pénurie d’adresse IPv4 qui a généralisée l’emploi de NAT dans la plupart des entreprises

est un frein au développement de certaines applications qui s’accommodent mal de NAT.

Page 41: IPv6 training

En-tête IPv6 en bref !

n  Les champs de la fragmentation sont retirés. n  Les champs Identifications, Don’t Fragment, More Bit et Fragment Id ont étés supprimés.

n  Le CHECKSUM a également été supprime n  Il devient obligatoire dans UDP

n  Un Champs Trafic Class (8 bits) contient le DSCP n  Un Champs Flow Label (20 bits) permet d’identifier un flux d’information. n  Les adresses sont sur 128 bits n  De 20 Octets il passe à 40 Octets

Page 42: IPv6 training

En-tête IPv6

Source IPv6 Address Destination IPv6 Address

Next Header=Routing Hdr

Next Header=TCP

TCP Header

Hop-By-Hop

Routing Header

Ver Traffic Class Flow Label

Payload Length Next Header=Hop-By-Hop Hop Limit

Page 43: IPv6 training

En-tête IPv6

Ethernet II, Src: ca:02:42:76:00:08 (ca:02:42:76:00:08), Dst: IPv6mcast_00:01:00:02 (33:33:00:01:00:02)

Destination: IPv6mcast_00:01:00:02 (33:33:00:01:00:02) Source: ca:02:42:76:00:08 (ca:02:42:76:00:08) Type: IPv6 (0x86dd) Internet Protocol Version 6 0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 56 Next header: UDP (0x11) Hop limit: 255 Source: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442) Destination: ff02::1:2 (ff02::1:2) User Datagram Protocol, Src Port: dhcpv6-client (546), Dst Port: dhcpv6-server (547) Source port: dhcpv6-client (546) Destination port: dhcpv6-server (547) Length: 56 Checksum: 0x86f0 [validation disabled]

Page 44: IPv6 training

Flow label

n  Permet d’identifier un flow de données n  Non utilisé à ce jour donc disponible pour de futures applications

Page 45: IPv6 training

Traffic Class

n Un octet n Similaire a TOS+Priority n Utilisé pour marquer le trafic pour traitement différentié selon QOS en vigueur

Page 46: IPv6 training

DiffServ

n  Identique a IPv4 n  Differentiated Services Field redéfinit les 6 premiers bits comme DSCP n  définit deux grandes sortes de trafic.

n  Expedited Forwarding -  http://www.ietf.org/rfc/rfc3246.txt

n  Assured Forwarding -  http://www.ietf.org/rfc/rfc2597.txt

Page 47: IPv6 training

DiffServ Expedited Forwarding

n  Expedited Forwarding (RFC3246). n  Dans ce mode les données sont traitées avec une priorité stricte. n  Cela demande le protocole de réservation RSVP pour garantir que la bande passante soit disponible dans les

Priority Queues des routeurs tout au long du chemin. -  DSCP = 101110

Page 48: IPv6 training

Diff-Serv Assured Forwarding

q  Dans ce mode le trafic est classé par classe de trafic plus ou moins prioritaires. q  Chaque classe de trafic est doté de 3 niveaux de précédence pour prioriser les drop.

DSCP DSCP binary Intended Protocol Configuration

AF1 AF11 AF12 AF13

001010 001100 001110

Bulk Transfer, Web, General Data Service

Active Q management DSCP-based WRED.

AF2 AF21 AF22 AF23

010010 010100 010110

Datagram access, transaction services, interactives traffic, preferred data service

Active Q management DSCP-based WRED.

AF3 AF31 AF32 AF33

011010 011100 011110

Locally defined; mission critical application

Active Q management DSCP-based WRED.

AF4 AF41 AF42 AF43

100010 100100 100110

Interactive video and associated voice

Admission control RSVP Active Q management DSCP-based WRED.

Page 49: IPv6 training

Diff Serv Class Selector

PHB DSCP DSCP bin Intended Protocol Configuration

IP Routing Class Selector 6 110000 BGP, OSPF, and so on Queuing=rate based. Small guaranteed min rate, WRED

Streaming Video Class Selector 4 100000 Often Proprietary Admission control=RSVP, Queuing=rate based. Small guaranteed min rate, WRED

Telephony Signaling

Class Selector 3 011000 SIP, H323, etc…. Queuing=rate based. Small guaranteed min rate, WRED

Network Management

Class Selector 2 010000 SNMP Queuing=rate based. Small guaranteed min rate, WRED

Scavenger Class Selector 1 0010000 User Selected Service Queuing=rate based. NO guaranteed min rate, WRED

Page 50: IPv6 training

Next Header

n  Afin de permettre le chainage des encapsulations, un pointeur vers le prochain header a été ajouté

n  Similaire au champs protocole de IPv4 n  Permet le chainage de plusieurs Options

Page 51: IPv6 training

IPv6 Option Header

n  Afin de permettre le chainage des encapsulations, un pointeur vers le prochain header a été ajouté n  Similaire au champs protocole de IPv4 n  La seule Option qui doit être inspectée par tous les nodes est le Hop-by-Hop n  Chaque option est formatéee comme un TLV

Option Type Option Length Option data

8 bits 8 bits 16 bits

Page 52: IPv6 training

Hop-By-Hop Option

n  Hop-by-Hop (Next header=0) est la seule en-tête qui doit être examinée par tous les nœuds du réseau.

n  Jumbogram 65,536 octets n  RFC 2711 Router Alert utilise par MLD, RSVP n  DOIT ETRE LE PREMIER

Page 53: IPv6 training

Routing Header

n  Type 0. un RFC Implémente le Source Routing n  Il liste tous les nœuds qui doivent être visités n  Représente un danger potentiel et peut être interdit sur un routeur cisco.

n  Type 1 Obsolete n  Type 2. RFC3775 Utilise par Mobile IPv6

Page 54: IPv6 training

IPv6 Header (suite)

n  Fragment Header n  Utilise PMTUD pour l’éviter n  S’il ne le peut, la source fragmente et l’option contient les champs nécessaires pour rassembler

le datagramme. : ID, offset n  C’est devenu tellement rare que ca ne valait pas la peine de mobiliser des champs fixes dans

l’en-tête IPv6. n  Authentication Header n  ESP Header n  Mobility Header

Page 55: IPv6 training

Ordre des options

n  Hop-by-hop n  Destination options (si routing present) n  Routing n  Fragment n  Authentication n  ESP n  Mobility n  Destination option (si routing absent) n  Upper layer

Page 56: IPv6 training

Capture

No. Time Source Destination Protocol Info 188 619.951000 2005::2 2005::1 ICMPv6 Echo request

Frame 188 (114 bytes on wire, 114 bytes captured)

Ethernet II, Src: ca:00:12:a4:00:38 (ca:00:12:a4:00:38), Dst: ca:01:12:a4:00:38 (ca:01:12:a4:00:38) Internet Protocol Version 6

0110 .... = Version: 6 .... 1010 0000 .... .... .... .... .... = Traffic class: 0x000000a0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 60

Next header: IPv6 hop-by-hop option (0x00) Hop limit: 64

Source: 2005::2 (2005::2) Destination: 2005::1 (2005::1)

Hop-by-Hop Option Next header: IPv6 destination option (0x3c)

Length: 0 (8 bytes) PadN: 6 bytes

Destination Option Next header: ICMPv6 (0x3a)

Length: 0 (8 bytes)

PadN: 6 bytes Internet Control Message Protocol v6

Type: 128 (Echo request) Code: 0

Checksum: 0x4c15 [correct] ID: 0x1d86

Sequence: 0x0009 Data (36 bytes)

0000 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 ................

0010 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 ....... !"#$%&'( 0020 29 2a 2b 2c )*+,

Data: 090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20... [Length: 36]

Page 57: IPv6 training

Maximum Transmission Unit

n  IPv4 n  MTU >= 68 Octets

n  IPv6 n  MTU >= 1280 Octets n  PMTUD

Frame Header IPv6 Packet Frame Trailer

Link-Layer Frame

Minimum MTU = 1280 Octets

Page 58: IPv6 training

Adresses IPv6

n  Unicast. n  Identifie un nœud de réseau n  Le trafic est acheminé vers ce nœud unique

n  Multicast n  Identifie un groupe de nœuds de réseau n  Le trafic est acheminé vers tous les nœuds de ce groupe n  FF00::/8

n  Anycast n  Identifie un groupe de nœuds de réseau n  Le trafic est acheminé vers le nœud le plus proche

Page 59: IPv6 training

Representation

n  X:X:X:X:X:X:X:X n  X est un champs Hexa sur 16 bits

n  Les 0 successifs sont représentés par :: mais seulement 1 fois dans une adresse n  2000:1::0102:1234:4222 n  FF01:0:0:0:0:0:0:1 = FF01::1 n  0:0:0:0:0:0:0:0 = ::

Page 60: IPv6 training

Représentation (suite)

n  IPv4-compatible n  0:0:0:0:0:192.168.30.1 n  ::192.168.30.1 n  Tunnels Automatiques IPv6->IPv4

n  Dans un URL, il est entouré de [] n  http://[2001:1:4::11]:8080/index.html

Page 61: IPv6 training

Unspecified et Loopback Address

n  Unspecified n  0:0:0:0:0:0:0:0 ou :: n  Utilise quand il n’y a pas d’adresse disponible

-  Initial DHCP Request -  Initial RS pendant autoconfig

n  Loopback n  0:0:0:0:0:0:0:1 n  ::1 n  Identique a 127.0.0.1 en ipv4

Page 62: IPv6 training

Global Unicast Address

n  Adresse Unicast d’un Hote: n  2000:0001:0002:0000:0000:0005:0006:0007 n  2000:0001:0002::0005:0006:0007

n  Prefix Reseaux: n  2000:0001:0002::/48 n  2000:1000:0001:0010::/64

Page 63: IPv6 training

Multicast

n  FF00::/8 n  FF0x:: (X=0..F) est réservé n  Remplace le broadcast inexistant en IPv6 n  No TTL in IPv6 Multicast

n  L’étendu est codée dans l’adresse n  FF02::1:FFXX:XXXX Solicited Node

Page 64: IPv6 training

Multicast

n  Flag (Drapeau) n  O si permanent n  1 si temporaire

n  Scope (Etendue) n  1=node n  2=link n  3=site n  5=Organization n  E=Global

FF Flag 0 Interface ID Scope

128 bits

Page 65: IPv6 training

Multicast Address

n  FF01::1 Interface-local Scope All nod]e address n  FF01::2 Interface-local Scope All routers address n  FF02::1 Link-local Scope all node adress n  FF02:2 Link-local Scope All routers address n  FF05::1 Site-local Scope All node address n  FF05::2 Site-local Scope all routers address n  FF05::1:3 Site-local Scope all DHCP server

Page 66: IPv6 training

Solicited-node multicast adress

n  Addresse Unicast n  805B:2D9D:DC28::FC57:D4C8:1FFF

n  Prefix n  FF02:0:0:0:0:1:FF

n  Solicited-node multicast adress n  FF02:0:0:0:0:1:FF:C8:1F:FF

Page 67: IPv6 training

Etendue d’adresse (Scope)

n  Link-local scope. n  Certaines adresses ne sont valides que dans un domaine de couche liaison de données n  1111111010 -> FE84::/64

n  Site-local scope. n  Ces adresses sont valides au niveau d’un ou plusieurs sites ou d’un ensemble de domaines de

couches de liaison de données n  11111110L-> FC00::/7 OR FD00::/7 for Local Assigment

n  Global Scope n  Ces adresses sont valides au sens le plus large de l’Internet auquel est connecte le nœud.

Page 68: IPv6 training

Adresses IPv6 pour un noeud

n  Une Link-local pour chaque interface n  Loopback n  Assigned Unicast n  All-nodes Multicast n  Solicited-node multicast pour chaque unicast n  Multicast

Page 69: IPv6 training

Adresses requises pour un routeur

n  Toutes les adresses du nœud IPv6 n  Subnet-router anycast pour les interfaces configurées comme forwarding interfaces n  Autres Anycast

n  All-Routers Multicast n  Specific Multicast pour les protocoles de routages

Page 70: IPv6 training

IPv6 dans Ethernet

n  Protocole IPv6: Ox86DD

Dest Ethernet Adress Source Ethernet

Adress 0x86DD IPv6 En-tête et charge

Page 71: IPv6 training

EUI-64

n  Mac Address 48 bit n  X=1 Unique n  X=0 Not Unique

00 90 59 02 E0 F9

00 90 59 02 E0 F9 FF FE

000000X0

EUI-64 est forme en inserant 0xFFFE

Page 72: IPv6 training

Multicast Mapping sur Ethernet

n  Adresse IPv6 Multicast n  FF02:0:0:0:0:1:FF90:FE53

n  Adresse Mac correspondante

n  33:33:FF:90:FE:53

Page 73: IPv6 training

Cisco IPv6 Interface

sa13-72c(config-if)#do show ipv6 int gig0/2 GigabitEthernet0/2 is up, line protocol is up IPv6 is enabled, link-local address is FE80::20B:60FF:FEB4:9C1A No Virtual link-local address(es): Stateless address autoconfig enabled Global unicast address(es): 2000:1::20B:60FF:FEB4:9C1A, subnet is 2000:1::/64 [EUI/CAL/PRE] valid lifetime 2591911 preferred lifetime 604711 Joined group address(es): FF02::1 FF02::2 FF02::1:FFB4:9C1A MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 23319) ND advertised reachable time is 0 (unspecified) ND advertised retransmit interval is 0 (unspecified) ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses.

Page 74: IPv6 training

Conclusions

n  Plus de limite sur les adresses disponibles n  Une en-tête orientée performance n  Le multicast remplace le broadcast44

Page 75: IPv6 training

ICMPv6

Page 76: IPv6 training

Objectives

n  Comprendre le fonctionnement d’ICMPv6 n  ICMPv6 Neighbor Discovery, IGMP et autres protocoles sont maintenant implementés dans

ICMPv6

Page 77: IPv6 training

TOPIC

n  Introduction n  ICMPv6 n  MLD (IGMP) n  Protection d’ICMPv6 n  Messages d’Erreurs d’ICMPv6

n  Destination Unreachable n  Time Exceeded n  Paquet too Big n  Parameter Problem

n  Message d’informations n  Echo Request n  Echo Reply

n  Exemple sur un routeur Cisco

Page 78: IPv6 training

Introduction

n  RFC 4443 n  IPv6 extension header type 58 n  PMTUD est utilisé pour trouver le MTU entre deux nœuds de réseau. n  ICMP Version 6 améliore sur de nombreux points le protocole IP version 4 vieux d’une trentaine

d’années maintenant ! n  ICMPv6 et Neighbor Discovery englobe maintenant des fonctions autrefois assurées par ARP,

IGMP, IDRP, et d’autre encore. n  Neighbor Discovery est supportée par ICMPv6.

Page 79: IPv6 training

ICMPv6/NDP Header

Type Code Checksum

Corps du Message

Page 80: IPv6 training

MLD (IGMP)

n  MLDv1 (RFC 2710) n  IGMPv2. RFC 2236 n  Multicast Listener Query. ICMPv6 Type 130 n  Multicast Listener v1. Report. ICMPv6 Type 131 n  Multicast Listener Done. ICMPv6 Type 132

n  MLDv2 n  IGMPv3. RFC 3376 n  Multicast Listener Query. ICMPv6 Type 130 n  Multicast Listener Report. v2. ICMPv6 Type 143

Page 81: IPv6 training

Protection ICMPv6

n  Les messages suivants doivent avoir un hop limit de 255: n  RS:133, RA:134 n  NS:135, NA:134 n  Redirect: 137 n  Inverse Neighbor Discovery Solicitation: 141 n  Inverse Neighbor Discovery Advertizement: 142 n  Certificate Path Solicitation (SEND): 148 n  Certificate Path Advertisement (SEND): 149

Page 82: IPv6 training

Message informatifs

n  Utilisés par la commande pingv6 n  Echo Request n  Echo Reply

sa13-72c>ping 2000:1::100 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2000:1::100, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms sa13-72c> Apr 21 05:56:54: ICMPv6: Sent echo request, Src=2000:1::20B:60FF:FEB4:9C1A, Dst=2000:1::100 Apr 21 05:56:54: ICMPv6: Received echo reply, Src=2000:1::100, Dst=2000:1::20B:60FF:FEB4:9C1A Apr 21 05:56:54: ICMPv6: Sent echo request, Src=2000:1::20B:60FF:FEB4:9C1A, Dst=2000:1::100 Apr 21 05:56:54: ICMPv6: Received echo reply, Src=2000:1::100, Dst=2000:1::20B:60FF:FEB4:9C1A Apr 21 05:56:54: ICMPv6: Sent echo request, Src=2000:1::20B:60FF:FEB4:9C1A, Dst=2000:1::100 Apr 21 05:56:54: ICMPv6: Received echo reply, Src=2000:1::100, Dst=2000:1::20B:60FF:FEB4:9C1A Apr 21 05:56:54: ICMPv6: Sent echo request, Src=2000:1::20B:60FF:FEB4:9C1A, Dst=2000:1::100 Apr 21 05:56:54: ICMPv6: Received echo reply, Src=2000:1::100, Dst=2000:1::20B:60FF:FEB4:9C1A [SNIP]

Page 83: IPv6 training

Message d’Erreurs

n  Destination Unreachable n  Packet Too Big n  Time Exceeded n  Parameter Problem

Page 84: IPv6 training

Destination Unreachable

CODE DESCRIPTION EXPLICATION 0 Pas de route vers la destination Le paquet a été droppé parce qu’il n’y avait pas de

route vers la destination

1 Communication administrativement prohibee

Le paquet a été filtré par un routeur

3 Adresse non joignable Le niveau liaison de donnée ne peut être résolu

4 Port non joignable Le port de destination UDP ou TCP n’existe pas ou est ignoré par le host.

Page 85: IPv6 training

Time Exceeded

n  Le champ Hop cout est décrémenté à chaque Hop. n  Lorsqu’il atteint zéro.

n  Le Paquet est jeté n  un message ICMPv6 TIME EXCEEDED est envoyé vers la source du paquet.

n  Ceci permet a un paquet de ne pas circuler pour toujours dans le réseau si une boucle de réseau existe.

Page 86: IPv6 training

Paquet Too Big

n  La source doit découvrir le PMTU grâce à PMTUD

n  si un routeur reçoit un paquet trop long pour être acheminé, il doit le jeter et envoyer un packet ICMPv6 Packet Too Big vers la source avec son MTU.

n  La source ajuste son MTU et maintient un cache par destination n  Le Minimum MTU d’un réseau IPv6 doit être de 1280 Octets au minimum.

Page 87: IPv6 training

Parameter Problem

Code Description Explication O Champs d’en-tête

Erronées Le Champs pointe par ce pointer est erroné

1 Type de Prochain en-tête non reconnu

Le Next Header n’est pas reconnu

2 IPv6 Option Non reconnue

L’Option IPv6 n’est pas reconnue

Page 88: IPv6 training

Exemple avec plus de debug

sa13-72c#ping 2000:1::100

Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2000:1::100, timeout is 2 seconds:

!!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms

sa13-72c# Apr 18 08:41:15: IPv6: Looking up 2000:1::100 [Source ::] in FIB Apr 18 08:41:15: IPv6: FIB lookup for 2000:1::100 succeeded. if=GigabitEthernet0/2, nexthop 2000:1::100

Apr 18 08:41:15: IPv6-Sas: SAS picked source 2000:1::1 for 2000:1::100 (GigabitEthernet0/2) Apr 18 08:41:15: IPV6: source 2000:1::1 (local)

Apr 18 08:41:15: dest 2000:1::100 (GigabitEthernet0/2) Apr 18 08:41:15: traffic class 0, flow 0x0, len 100+0, prot 58, hops 64, originating Apr 18 08:41:15: ICMPv6-ND: DELETE -> INCMP: 2000:1::100

Apr 18 08:41:15: ICMPv6-ND: Sending NS for 2000:1::100 on GigabitEthernet0/2 Apr 18 08:41:15: IPV6: source 2000:1::1 (local) Apr 18 08:41:15: dest FF02::1:FF00:100 (GigabitEthernet0/2)

Apr 18 08:41:15: traffic class 224, flow 0x0, len 72+0, prot 58, hops 255, originating Apr 18 08:41:15: IPv6-Fwd: Sending on GigabitEthernet0/2

Apr 18 08:41:15: ICMPv6-ND: Resolving next hop 2000:1::100 on interface GigabitEthernet0/2 Apr 18 08:41:15: IPv6-Fwd: Encapsulation postponed, performing resolution Apr 18 08:41:15: IPv6: Looking up 2000:1::1 [Source 2000:1::100] in FIB

Apr 18 08:41:15: IPv6: FIB lookup for 2000:1::1 succeeded. Local, if=GigabitEthernet0/2, nexthop 2000:1::1 Apr 18 08:41:15: IPV6: source 2000:1::100 (GigabitEthernet0/2)

Apr 18 08:41:15: dest 2000:1::1 (GigabitEthernet0/2)

Page 89: IPv6 training

Conclusions

n  On retrouve dans ICMPv6 les fonctions d’ICMP mais il accueille aussi des applications qui étaient séparées auparavant:

n  Neighbor Discovery Protocol n  MLD autrefois nommé IGMP pour le multicast

Page 90: IPv6 training

Neighbor Discovery Protocol

Page 91: IPv6 training

Objectifs

n  Comprendre le rôle d’NDP n  Comprendre ses algorithmes n  Comprendre toutes ses fonctionnalités

Page 92: IPv6 training

Sommaire

n  Introduction n  Les Fonctionnalités NDP n  Les Algorithmes NDP

n  State Machine for Reachability n  Next Hop Determination n  Default Router Selection n  Duplicate Address Detection n  Autoconfiguration

n  Lecture n  Conclusion

Page 93: IPv6 training

Fonctionnalités de ND

n  RFC 4861, RFC 4862 n  Router Discovery n  Neighbor Discovery n  Prefix Discovery n  Parameter Discovery n  Address Auto-Configuration n  Address Resolution n  Next-hop Determination n  Neighbor Unreachability Detection n  Duplicate Address Detection n  Redirection n  Default Router and More Specific route Selection n  Proxying node

Page 94: IPv6 training

NDP PDU

Message But ICMP Code Emetteur Cible Option

Router Solicitation (RS)

Demande un RA immediatement

133 Hotes Tous Routers SLLA

Router Advertisement (RA)

Annonce: Router par defaut, prefixes du lien, prefixes joignables, paarametres d’operations

134 Routeurs Emetteur du RS ou tous les hotes

SLLA, MTU, info de Prefix, info de Route, Interval d’annonces,info d’agent maison

Neighbor Solicitation (NS)

Requiers l’adresse de lien de l’hote cible

135 Hotes Hote solicite ou le noeud cible

SLLA

,, Repond au NA Annonce le changement d’adresse du lien

136 Hotes Emetteur du NS ou tous les Hotes

TLLA

Redirect Informe les hotes d’un meilleur premier saut

137 Routeurs Hotes qui declencha le redirect

TLLA En-tetes Redirigee

Inverse neighbor Solicitation (INS)

Requiers une addresse IPv6 correspondant a l’adresse de liaison de donnee

141 Hotes Tous les hotes SLLA, TLLA, MTU, list d’adresses sources

Inverse Neighbor Advertisement (INA)

Reponse a un INA 142 Hotes Emetteur du INS SLLS, TLLA, List d’adresses cibles, MTU

Page 95: IPv6 training

Neighbor Discovery

n  Neighbor Solicitation/Advertisement permettent de gérer le cache des voisins. n  IPv6 a mis en œuvre un Automate d’état fini pour gérer ce cache efficacement. n  Remplace avantageusement ARP

Page 96: IPv6 training

Automate de gestion des Voisins

Page 97: IPv6 training

Etats des voisins

q  INCOMPLETE n  « Address resolution is being performed on the entry. Specifically, a Neighbor Solicitation has been sent

to the solicited-node multicast address of the target, but the corresponding Neighbor Advertisement has not yet been received. »

q  REACHABLE n  « Positive confirmation was received within the last ReachableTime milliseconds that the forward path to

the neighbor was functioning properly. While REACHABLE, no special action takes place as packets are sent. »!

q  STALE n  « More than ReachableTime milliseconds have elapsed since the last positive confirmation was received

that the forward path was functioning properly. While stale, no action takes place until a packet is sent. The STALE state is entered upon receiving a unsolicited Neighbor Discovery message that updates the cached link-layer address. Receipt of such a message does not confirm reachability, and entering the STALE state ensures reachability is verified quickly if the entry is actually being used. However,reachability is not actually verified until the entry is actually used. »!

q  DELAY n  « More than ReachableTime milliseconds have elapsed since the last positive confirmation was received

thatthe forward path was functioning properly, and a packet was sent within the last DELAY_FIRST_PROBE_TIMEseconds. If no reachability confirmation is received within DELAY_FIRST_PROBE_TIME seconds of entering the DELAY state, send a Neighbor Solicitation and changethe state to PROBE. The DELAY state is an optimization that gives upper- layer protocols additional time to provide reachability confirmation in those cases where ReachableTime milliseconds have passed since the last confirmation due to lack of recent traffic. Without this optimization, the opening of a TCP connectionafter a traffic lull would initiate probes even though the subsequent three-way handshake would provide a reachability confirmation almost immediately. »!

q  PROBE q  « A reachability confirmation is actively sought by retransmitting Neighbor Solicitations every

RetransTimer milliseconds until a reachability confirmation is received. »!

Page 98: IPv6 training

ND - Sollicitation du voisin

n  NS/NA

ICMP Type 135 Src =A Dst = Solicited Multicast de B Target= Adresse IP de B Quel est votre adresse de liaison de données (MAC)

ICMP Type 136 Src=B Dst=A adresse de liaison de données (MAC) de B

Page 99: IPv6 training

Neighbor Sollicitation Header

0 1 2 3

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + +

| | + Target Address +

| | + + | |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options ... +-+-+-+-+-+-+-+-+-+-+-+-

Page 100: IPv6 training

Neighbor Advertisement Header

0 1 2 3

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |R|S|O| Reserved |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + +

| | + Target Address +

| | + + | |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options ... +-+-+-+-+-+-+-+-+-+-+-+-

Page 101: IPv6 training

ARP remplacé par NDP

sa13-72c#ping 2000:1::100!!Type escape sequence to abort.!Sending 5, 100-byte ICMP Echos to 2000:1::100, timeout is 2 seconds:!

!!!!!!Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/4 ms!

sa13-72c#!Apr 18 08:36:03: ICMPv6-ND: DELETE -> INCMP: 2000:1::100!Apr 18 08:36:03: ICMPv6-ND: Sending NS for 2000:1::100 on GigabitEthernet0/2!

Apr 18 08:36:03: ICMPv6-ND: Resolving next hop 2000:1::100 on interface GigabitEthernet0/2!Apr 18 08:36:03: ICMPv6-ND: Received NA for 2000:1::100 on GigabitEthernet0/2 from 2000:1::100!

Apr 18 08:36:03: ICMPv6-ND: Neighbour 2000:1::100 on GigabitEthernet0/2 : LLA 0008.201a.7c38!Apr 18 08:36:03: ICMPv6-ND: INCMP -> REACH: 2000:1::100!Apr 18 08:36:08: ICMPv6-ND: Received NS for 2000:1::1 on GigabitEthernet0/2 from FE80::208:20FF:FE1A:7C38!

Apr 18 08:36:08: ICMPv6-ND: DELETE -> INCMP: FE80::208:20FF:FE1A:7C38!Apr 18 08:36:08: ICMPv6-ND: Neighbour FE80::208:20FF:FE1A:7C38 on GigabitEthernet0/2 : LLA 0008.201a.7c38!Apr 18 08:36:08: ICMPv6-ND: INCMP -> STALE: FE80::208:20FF:FE1A:7C38!

Apr 18 08:36:08: ICMPv6-ND: Sending NA for 2000:1::1 on GigabitEthernet0/2!Apr 18 08:36:08: ICMPv6-ND: STALE -> DELAY: FE80::208:20FF:FE1A:7C38!

!

n  Pas de perte de paquet pendant la résolution ND !!

Page 102: IPv6 training

Neighbor Sollicitation

Internet Protocol Version 6

0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 400

Next header: ICMPv6 (0x3a) Hop limit: 255 Source: fe80::2027:9779:3775:5cf8 (fe80::2027:9779:3775:5cf8)

Destination: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442) Internet Control Message Protocol v6

Type: 135 (Neighbor solicitation) Code: 0 Checksum: 0x64e3 [correct]

Target: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442) ICMPv6 Option (Source link-layer address) Type: Source link-layer address (1)

Length: 8 Link-layer address: ca:03:42:76:00:08

ICMPv6 Option (CGA) Type: CGA (11) Length: 192

Pad Length: 1 Reserved

CGA: 94CC49E03C4E5C8140E0CD97396A7359FE80000000000000... Padding SNIP

Page 103: IPv6 training

Découverte du Voisinage - Redirect

Src = A Dest=B

Dest Ethernet:R1 (default Router)

A

R1

R2 Redirect:

Src=R1 Dst = A Data= Bon router est R2

Dest Ethernet = A

B

Page 104: IPv6 training

Redirect

n  Semblable au Redirect d’IPv4 n  Permet de rediriger la source vers le meilleur Next-Hop lorsqu’un paquet est rerouté par la

même interface n  L’Hôte doit mettre a jour sa table pour envoyer le trafic par le meilleur chemin

Page 105: IPv6 training

Redirect

0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Code | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Target Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Destination Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options ... +-+-+-+-+-+-+-+-+-+-+-+-

Page 106: IPv6 training

Redirect

Internet Protocol Version 6

0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 856

Next header: ICMPv6 (0x3a) Hop limit: 255 Source: fe80::2038:148e:b9df:fd6d (fe80::2038:148e:b9df:fd6d)

Destination: fe80::2027:9779:3775:5cf8 (fe80::2027:9779:3775:5cf8) Internet Control Message Protocol v6

Type: 137 (Redirect) Code: 0 Checksum: 0x5964 [correct]

Target: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442) Destination: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442) ICMPv6 Option (Target link-layer address)

Type: Target link-layer address (2) Length: 8

Link-layer address: ca:02:42:76:00:08 ICMPv6 Option (Redirected header) Type: Redirected header (4)

Length: 448 Reserved: 0 (correct)

Redirected packet SNIP

Page 107: IPv6 training

ND - Annonce de Routeur

n  Annonces Periodic RA n  ICMP Type = 134 n  Src = Router Link-Local n  Dst = All nodes multicast address n  Data = Options, prefix, lifetime, autoconfig flag

n  Routeur Cisco n  Ipv6 unicast-routing

Page 108: IPv6 training

ND - solicitation de Routeur

n  RS n  ICMP Type = 133 n  Src = :: n  Dst = All routers multicast address

n  Au démarrage d’une station ou lorsqu'on configure autoconfig, RS permet de recevoir immédiatement toutes les infos

Page 109: IPv6 training

RA - show ipv6 routers

hote#show ipv6 routers Router FE80::2038:148E:B9DF:FD6D on FastEthernet0/0, last update 2 min

Hops 64, Lifetime 1800 sec, AddrFlag=0, OtherFlag=0, MTU=1500

HomeAgentFlag=0, Preference=Medium

Reachable time 0 (unspecified), Retransmit time 0 (unspecified)

Prefix 2001::/64 onlink autoconfig

Valid lifetime 2592000, preferred lifetime 604800

hote#

Page 110: IPv6 training

RA capture

Internet Protocol Version 6 0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 104 Next header: ICMPv6 (0x3a) Hop limit: 255 Source: fe80::207:cbff:fe3e:b6b3 (fe80::207:cbff:fe3e:b6b3) Destination: ff02::1 (ff02::1) Internet Control Message Protocol v6 Type: 134 (Router advertisement) Code: 0 Checksum: 0xf74b [correct] Cur hop limit: 64 Flags: 0x00 Router lifetime: 1800 Reachable time: 0 Retrans timer: 0

ICMPv6 Option (Prefix information)

Type: Prefix information (3) Length: 32 Prefix length: 64 Flags: 0xc0 Valid lifetime: 86400 Preferred lifetime: 86400 Prefix: 2a01:e35:2f26:d340:: ICMPv6 Option (Recursive DNS Server) Type: Recursive DNS Server (25) Length: 40 Reserved Lifetime: 600 Recursive DNS Servers: dns3.proxad.net (2a01:e00::2) Recursive DNS Servers: dns2.proxad.net (2a01:e00::1) ICMPv6 Option (MTU) Type: MTU (5) Length: 8 MTU: 1480 ICMPv6 Option (Source link-layer address) Type: Source link-layer address (1) Length: 8 Link-layer address: 00:07:cb:3e:b6:b3

Page 111: IPv6 training

Neighbor Unreachability Detection

n  La communication entre 2 nœuds IPv6 peut être cassée. n  C’est important de le savoir pour mettre en route des méthodes de recovery si nécessaire. Un host peut

basculé n  r sur un nouveau routeur

n  Il y a 2 façons de s’en rendre compte: n  Un protocole de plus haut niveau continue d’acquitter le trafic n  Un NA est reçu en réponse a un NS

n  La Machine d’états peut être suivie sur un routeur en tapant la commande « debug ipv6 neighbor »

Page 112: IPv6 training

State Machine for Reachability

Create Entry Send NS

Incomplete

Stale

Delay

Probe

Reachable

NA2 Te

NA1

Report Error

Delete Entry

NA3 Or U

T or O or NA4 or NA5

T

NA3 ou U

Retry NS

Retry NS

SEND NS NA5 ou O

S NA3 ou U

NA5 ou O

T

Te

NA1 - Recevoir un NA avec Solicited=0

NA2- Recevoir un NA avec Solicited=1

NA3- Recevoir un NA avec Solicited=1 et Override=1 ou Override=0 et le link-layer identique a celui dans le cache

NA4- Recevoir un NA avec solicited=1, Override=0 et link-layer different du cache

NA5=Recevoir un NA avec solicited=0, override=1, et link-layer diferent du cache

O - Recevoir un autre ND paquet avec link-layer different du cache.

S- Envoyer un paquet

T- Timeout

Te- Timeout avec retry epuise

U- Couche superieur confirmee

T

T

Page 113: IPv6 training

Next-Hop Determination

n  A la difference d’IPv4, un host peut-etre voisin avec un prefix reseau different. n  Il sera considere on-link si:

n  Il est couvert par un des prefixes du lien n  Il a recu un NA pour cette adresse n  Il a recu n’importe quel message ND de cette adresse n  Il a recu un RA avec ce prefix dans la list des prefix n  Il a recu un REDIRECT message avec une cible egale a cette adresse

Page 114: IPv6 training

Next-Hop Determination Algorithm

Lookup in Dest Cache [D,N]

Lookup in Prefix List for [D,N]

Retrieve a default Router N from router list

Nexthop=N

Not found

Off-link Nexthop=N

Nexthop=D

Nexthop=D

D = Dest Address N = Neighbor on same link L = Link-layer address

Lookup in neighbor cache for nexthop

Not found

Packet Dropped

Neighbor Discovery

Not found

Packet Forwarded

Entry State

Found

Found

Reachable Neigh. Unreachability

detection Address Resolution or Router Selection

Stale

Reachable

Not Reachable

Page 115: IPv6 training

Default Router Selection

n  Type A n  Ignore le default router preference et la route la plus spécifique présente dans le RA n  Si le routeur sélectionné n’est plus joignable, le host doit utiliser les autres en round-robin afin

de sonder (probe) chacun des routeurs. n  Type B

n  Comme le type A mais le host tient compte de la préférence du routeurs. n  Type C

n  Host qui implémente une table de routage. n  Quand un host type fait un next-hop determination il préfère les host Reachable et puis il

applique le longest match.

Page 116: IPv6 training

Detection d’adresses Dupliquées (DAD)

n  ICMP Type = 135 n  Src = 0 (::) n  Dst = solicited node multicast address of A n  Data = link-layer de A n  Query: Quel est votre adresse de lien ?

A

Page 117: IPv6 training

Duplicate Address Detection

n  Avant de s’assigner une adresse il génere un NS pour l’adresse n  si pas de NA recu, alors il génère un NA et se l’assigne

Apr 18 09:57:31: ICMPv6-ND: L3 came up on GigabitEthernet0/2 Apr 18 09:57:31: IPv6-Addrmgr-ND: DAD request for 2000:1::1 on GigabitEthernet0/2

Apr 18 09:57:31: ICMPv6-ND: Sending NS for 2000:1::1 on GigabitEthernet0/2 Apr 18 09:57:32: IPv6-Addrmgr-ND: DAD: 2000:1::1 is unique.

Apr 18 09:57:32: ICMPv6-ND: Sending NA for 2000:1::1 on GigabitEthernet0/2 Apr 18 09:57:32: IPv6-Address: Address 2000:1::1/64 is up on GigabitEthernet0/2

Page 118: IPv6 training

Autoconfiguration

n  RFC 4862, IPv6 Stateless Address Autoconfiguration n  Il utilise RS/RA pour obtenir le préfix et construire une adresse n  Il utilise NS (DAD) pour tester si cette adresse n’est pas déjà employée. n  Statefull Autoconfiguration avec DHCP pour IPv6 RFC3315.

n  http://www.cisco.com/en/US/prod/collateral/iosswrel/ps6537/ps6553/whitepaper_C11-472610.html

Page 119: IPv6 training

DHCPv6

n  Les routeurs IPv6 signalent l’utilisation de DHCPv6 n  Les bits M et O sont positionnés dans les RA n  Le bit M « Managed Adress Configuration » indique aux clients l’utilisation de DHCPv6 pour

obtenir leurs configuration n  Le bit O « Other Statefull Configuration » suggère aux clients d’utiliser DHCPv6 pour d’autres

configurations que la seule adresse n  Les clients et serveurs s’échangent ensuite grâce à DHCPv6

n  DHCPv6 Request n  DHCPv6 Reply

n  "ff02::1:2" Tous les relay agents et serveurs n  "ff05::1:3" Tous les Serveurs DHCPv6

Page 120: IPv6 training

Autoconfig - show ipv6

hote#sh ipv6 route IPv6 Routing Table - Default - 5 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external 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 [2/0] via FE80::2038:148E:B9DF:FD6D, FastEthernet0/0 LC BAD:1:2:FC64:8ECC:593A:15C3:654/128 [0/0]

via FastEthernet0/0, receive C 2001::/64 [0/0] via FastEthernet0/0, directly connected

L 2001::20EC:31D3:14CB:A7A/128 [0/0] via FastEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive

hote#

Page 121: IPv6 training

Autoconfig - show ipv6 interface

hote#sh ipv6 int fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::38B1:E73C:C0F0:4442 No Virtual link-local address(es): Global unicast address(es): BAD:1:2:FC64:8ECC:593A:15C3:654, subnet is BAD:1:2:FC64:8ECC:593A:15C3:654/128 2001::20EC:31D3:14CB:A7A, subnet is 2001::/64 Joined group address(es): FF02::1 FF02::1:FFC3:654 FF02::1:FFCB:A7A FF02::1:FFF0:4442 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 37164) Default router is FE80::2038:148E:B9DF:FD6D on FastEthernet0/0 hote#

Page 122: IPv6 training

Quelques RFC

n  RFC 2460 IPv6 Specification n  RFC 5095 Deprecation of Type 0 Routing Headers in IPv6

n  RFC 3513 IPv6 Addressing Architecture n  RFC 4861 Neighbor Discovery n  RFC 4862 IPv6 Stateless Auto config n  RFC 4443 ICMPv6 Specification

n  http://tools.ietf.org/html/rfc4443

Page 123: IPv6 training

Conclusion

n  NDP fait partie de ICMPv6 donc inséparable d’IPv6. n  Il rend des services de type ARP, inverse ARP n  Redirect n  IDRP ICMP Discovery Router Protocol

Page 124: IPv6 training

Applications IPv6

Page 125: IPv6 training

Objectifs

n  Comprendre DHCPv6 n  Le support de DNS pour IPv6 n  Lister les applications réseaux disponibles

Page 126: IPv6 training

DHCPv6

n  Statefull Autoconfiguration avec DHCP pour IPv6 RFC3315. n  http://www.cisco.com/en/US/prod/collateral/iosswrel/ps6537/ps6553/whitepaper_C11-472610.html

n  Les routeurs IPv6 signalent l’utilisation de DHCPv6

n  Les bits M et O sont positionnés dans les RA n  Le bit M « Managed Adress Configuration » indique aux clients l’utilisation de DHCPv6 pour obtenir leurs

configuration n  Le bit O « Other Statefull Configuration » suggère aux clients d’utiliser DHCPv6 pour d’autres configurations

que la seule adresse n  Les clients et serveurs s’échangent ensuite grâce à DHCPv6

n  DHCPv6 Request n  DHCPv6 Reply

n  "ff02::1:2" Tous les relay agents et serveurs n  "ff05::1:3" Tous les Serveurs DHCPv6

Page 127: IPv6 training

DHCPv6 Sollicit

Internet Protocol Version 6

0110 .... = Version: 6 [0110 .... = This field makes the filter

"ip.version == 6" possible: 6]

.... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000

Payload length: 56 Next header: UDP (0x11)

Hop limit: 255 Source: fe80::38b1:e73c:c0f0:4442

(fe80::38b1:e73c:c0f0:4442)

Destination: ff02::1:2 (ff02::1:2) User Datagram Protocol, Src Port: dhcpv6-client (546),

Dst Port: dhcpv6-server (547)

Source port: dhcpv6-client (546)

Destination port: dhcpv6-server (547) Length: 56

Checksum: 0x86f0 [validation disabled]

DHCPv6 Message type: Solicit (1) Transaction-ID: 0x00b44306 Elapsed time option type: 8 option length: 2 elapsed-time: 0 ms Client Identifier option type: 1 option length: 10 DUID type: link-layer address (3) Hardware type: Ethernet (1) Link-layer address: ca:02:42:76:00:08 Option Request option type: 6 option length: 4 Requested Option code: DNS recursive name server

(23) Requested Option code: Domain Search List (24) Identity Association for Non-temporary Address option type: 3 option length: 12 IAID: 262145 T1: 0 T2: 0

Page 128: IPv6 training

DHCPv6 Advertise

Internet Protocol Version 6

0110 .... = Version: 6 [0110 .... = This field makes the filter

"ip.version == 6" possible: 6]

.... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000

Payload length: 102 Next header: UDP (0x11)

Hop limit: 255 S o u r c e : f e 8 0 : : 2 0 2 7 : 9 7 7 9 : 3 7 7 5 : 5 c f 8

(fe80::2027:9779:3775:5cf8)

Destination: fe80::38b1:e73c:c0f0:4442 (fe80::38b1:e73c:c0f0:4442)

User Datagram Protocol, Src Port: dhcpv6-server (547), Dst Port: dhcpv6-client (546)

Source port: dhcpv6-server (547)

Destination port: dhcpv6-client (546) Length: 102

Checksum: 0x6db3 [validation disabled]

DHCPv6 Message type: Advertise (2) Transaction-ID: 0x00b44306 Server Identifier option type: 2 option length: 10 DUID type: link-layer address (3) Hardware type: Ethernet (1) Link-layer address: ca:03:42:76:00:08 Client Identifier option type: 1 option length: 10 DUID type: link-layer address (3) Hardware type: Ethernet (1) Link-layer address: ca:02:42:76:00:08 Identity Association for Non-temporary Address option type: 3 option length: 40 IAID: 262145 T1: 43200 T2: 69120 IA Address option type: 5 option length: 24 IPv6 address: bad:1:2:2d98:8e14:c0b1:6ef5:8548 Preferred lifetime: 86400 Valid lifetime: 172800 Domain Search List option type: 24 option length: 14 DNS Domain Search List Domain: fredbovy.com

Page 129: IPv6 training

DHCPv6 Server

R4>show ipv6 dhcp This device's DHCPv6 unique identifier(DUID): 00030001CA0342760008 R4>show ipv6 dhcp int FastEthernet0/0 is in server mode Using pool: fred Preference value: 0 Hint from client: ignored Rapid-Commit: disabled R4#show ipv6 dhcp pool DHCPv6 pool: fred Static bindings: Binding for client BADCAF0E IA PD: IA ID not specified Prefix: DEAD:BEEF::/48 preferred lifetime 604800, valid lifetime 2592000 Address allocation prefix: DEAD:BEEF:1:2:3::/64 valid 172800 preferred 86400 (1 in use, 0

conflicts) Domain name: fredbovy.com Active clients: 1 R4#show ipv6 dhcp bind Client: FE80::38B1:E73C:C0F0:4442 DUID: 00030001CA0242760008 Username : unassigned IA NA: IA ID 0x00040001, T1 43200, T2 69120 Address: DEAD:BEEF:1:2:6090:18A5:E017:DE5C preferred lifetime 86400, valid lifetime 172800 expires at Aug 11 2010 03:23 PM (172554 seconds)

Page 130: IPv6 training

DHCPv6 Client

hote#show ipv6 dhcp interface FastEthernet0/0 is in client mode Prefix State is IDLE Address State is OPEN

Renew for address will be sent in 11:39:08 List of known servers: Reachable via address: FE80::2027:9779:3775:5CF8

DUID: 00030001CA0342760008 Preference: 0 Configuration parameters: IA NA: IA ID 0x00040001, T1 43200, T2 69120

Address: BAD:1:2:FC64:8ECC:593A:15C3:654/128 preferred lifetime 86400, valid lifetime 172800 expires at Aug 11 2010 02:36 PM (171549 seconds)

Domain name: fredbovy.com Information refresh time: 0 Prefix Rapid-Commit: disabled Address Rapid-Commit: disabled

Configuration: interface FastEthernet0/0 ipv6 address dhcp

Page 131: IPv6 training

DHCPv6 Operation

*Aug 9 15:34:32.806: IPv6 DHCP: Received REPLY from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:32.806: IPv6 DHCP: IA_NA 00040001 contains status code NOADDRS-AVAIL *Aug 9 15:34:32.806: IPv6 DHCP: DHCPv6 address changes state from REQUEST to SOLICIT (ADDR_NAK) on FastEthernet0/0 *Aug 9 15:34:32.806: IPv6 DHCP: Received REPLY from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:32.806: IPv6 DHCP: No matching transaction ID in REPLY from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:33.782: IPv6 DHCP: Sending SOLICIT to FF02::1:2 on FastEthernet0/0

*Aug 9 15:34:33.786: IPv6 DHCP: Received ADVERTISE from FE80::2027:9779:3775:5CF8 on FastEthernet0/0 *Aug 9 15:34:33.786: IPv6 DHCP: Adding server FE80::2027:9779:3775:5CF8 *Aug 9 15:34:33.786: IPv6 DHCP: Received ADVERTISE from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:34.858: IPv6 DHCP: Sending REQUEST to FF02::1:2 on FastEthernet0/0 *Aug 9 15:34:34.858: IPv6 DHCP: DHCPv6 address changes state from SOLICIT to REQUEST (ADDR_ADVERTISE_RECEIVED) on

FastEthernet0/0

*Aug 9 15:34:34.858: IPv6 DHCP: Received REPLY from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:34.858: IPv6 DHCP: Processing options *Aug 9 15:34:34.862: IPv6 DHCP: Adding address DEAD:BEEF:1:2:C541:3F5C:EA1A:BE21/128 to FastEthernet0/0

*Aug 9 15:34:34.870: IPv6 DHCP: T1 set to expire in 43200 seconds *Aug 9 15:34:34.870: IPv6 DHCP: T2 set to expire in 69120 seconds *Aug 9 15:34:34.870: IPv6 DHCP: Configuring domain name fredbovy.com

*Aug 9 15:34:34.870: IPv6 DHCP: DHCPv6 address changes state from REQUEST to OPEN (ADDR_REPLY_RECEIVED) on FastEthernet0/0

*Aug 9 15:34:34.870: IPv6 DHCP: Received REPLY from FE80::2027:9779:3775:5CF8 on FastEthernet0/0

*Aug 9 15:34:34.870: IPv6 DHCP: DHCPv6 address changes state from OPEN to OPEN (ADDR_REPLY_RECEIVED) on FastEthernet0/0

Page 132: IPv6 training

DHCP Prefix Delegation

n  Il est possible de recevoir une Prefix plutôt qu’une adresse n  Une fois ce prefix réçu par le client il peut l’utiliser pour configurer des interfaces IPv6 n  Les routeurs CISCO gèrent la partie cliente et la partie serveur

Page 133: IPv6 training

Autoconfig - show ipv6

hote#sh ipv6 route IPv6 Routing Table - Default - 5 entries

Codes: C - Connected, L - Local, S - Static, U - Per-user Static route

B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP

EX - EIGRP external

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 [2/0]

via FE80::2038:148E:B9DF:FD6D, FastEthernet0/0

LC BAD:1:2:FC64:8ECC:593A:15C3:654/128 [0/0]

via FastEthernet0/0, receive

C 2001::/64 [0/0]

via FastEthernet0/0, directly connected

L 2001::20EC:31D3:14CB:A7A/128 [0/0]

via FastEthernet0/0, receive

L FF00::/8 [0/0]

via Null0, receive

hote#

Page 134: IPv6 training

Autoconfig - show ipv6 interface

hote#sh ipv6 int fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::38B1:E73C:C0F0:4442 No Virtual link-local address(es): Global unicast address(es): BAD:1:2:FC64:8ECC:593A:15C3:654, subnet is BAD:1:2:FC64:8ECC:593A:15C3:654/128 2001::20EC:31D3:14CB:A7A, subnet is 2001::/64 Joined group address(es): FF02::1 FF02::1:FFC3:654 FF02::1:FFCB:A7A FF02::1:FFF0:4442 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 37164) Default router is FE80::2038:148E:B9DF:FD6D on FastEthernet0/0 hote#

Page 135: IPv6 training

DNS

n  Transporter les requêtes DNS dans IPv6 Internet Protocol Version 6 0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 145 Next header: UDP (0x11) Hop limit: 255 Source: fe80::61e:64ff:feec:73a9 (fe80::61e:64ff:feec:73a9) Destination: ff02::fb (ff02::fb) User Datagram Protocol, Src Port: mdns (5353), Dst Port: mdns (5353) Source port: mdns (5353) Destination port: mdns (5353) Length: 145 Checksum: 0x5753 [validation disabled] Domain Name System (response) n  Coder les adresses IPv6 dans les messages DNS

n  Type AAAA Name: power-mac-g5-de-fred-bovy-6.local Type: AAAA (IPv6 address) .000 0000 0000 0001 = Class: IN (0x0001) 1... .... .... .... = Cache flush: True Time to live: 2 minutes Data length: 16 Addr: 2a01:e35:2f26:d340:61e:64ff:feec:73a9

Page 136: IPv6 training

DNS Capture

Internet Protocol Version 6 0110 .... = Version: 6 [0110 .... = This field makes the filter "ip.version == 6" possible: 6] .... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 145 Next header: UDP (0x11) Hop limit: 255 Source: fe80::61e:64ff:feec:73a9 (fe80::61e:64ff:feec:73a9) Destination: ff02::fb (ff02::fb) User Datagram Protocol, Src Port: mdns (5353), Dst Port: mdns (5353) Source port: mdns (5353) Destination port: mdns (5353) Length: 145 Checksum: 0x5753 [validation disabled] Domain Name System (response) [Request In: 788] [Time: -404.306754000 seconds] Transaction ID: 0x0000 Flags: 0x8400 (Standard query response, No error) Questions: 0 Answer RRs: 1 Authority RRs: 0 Additional RRs: 3 Answers power-mac-g5-de-fred-bovy-6.local: type A, class IN, cache flush, addr 192.168.0.15 Name: power-mac-g5-de-fred-bovy-6.local Type: A (Host address) .000 0000 0000 0001 = Class: IN (0x0001) 1... .... .... .... = Cache flush: True Time to live: 2 minutes Data length: 4 Addr: 192.168.0.15

Page 137: IPv6 training

DNS Capture (suite)

Additional records power-mac-g5-de-fred-bovy-6.local: type AAAA, class IN, cache flush, addr fe80::61e:64ff:feec:73a9 Name: power-mac-g5-de-fred-bovy-6.local Type: AAAA (IPv6 address) .000 0000 0000 0001 = Class: IN (0x0001) 1... .... .... .... = Cache flush: True Time to live: 2 minutes Data length: 16 Addr: fe80::61e:64ff:feec:73a9 power-mac-g5-de-fred-bovy-6.local: type AAAA, class IN, cache flush, addr 2a01:e35:2f26:d340:61e:64ff:feec:73a9 Name: power-mac-g5-de-fred-bovy-6.local Type: AAAA (IPv6 address) .000 0000 0000 0001 = Class: IN (0x0001) 1... .... .... .... = Cache flush: True Time to live: 2 minutes Data length: 16 Addr: 2a01:e35:2f26:d340:61e:64ff:feec:73a9 power-mac-g5-de-fred-bovy-6.local: type NSEC, class IN, cache flush, next domain name power-mac-g5-de-fred-bovy-6.local Name: power-mac-g5-de-fred-bovy-6.local Type: NSEC (Next secured) .000 0000 0000 0001 = Class: IN (0x0001) 1... .... .... .... = Cache flush: True Time to live: 2 minutes Data length: 8 Next domain name: power-mac-g5-de-fred-bovy-6.local RR type in bit map: A (Host address) RR type in bit map: AAAA (IPv6 address)

Page 138: IPv6 training

Gestion des devices IPv6

n  SNMP sur IPv6 n  SNMP sur un transport IPv6 n  Support IPv6 de nombreuses MIB

n  SSH sur IPv6 n  TELNET sur IPv6 n  TFTP sur IPv6 n  Syslog sur IPv6 n  HTTP sur IPv6 n  Ping6, traceroute6

Page 139: IPv6 training

Conclusion

n  Toutes les applications nécessaires à un déploiement réseaux sont disponibles n  Il y a quelques années certains ROOT Server DNS ne parlaient pas IPv6

Page 140: IPv6 training

Secured Neighbor Discovery

Page 141: IPv6 training

Objectifs

n  Comprendre les menaces sur NDP n  Comprendre l’approche de SEND pour contrecarrer les menaces répertoriées

Page 142: IPv6 training

Sommaire

n  Introduction: Les Menaces et l’approche de SEND pour les contrecarrer n  Cryptographycally Generated Address

n  Empêcher de se faire voler son adresse n  Address Delegation Authority

n  Protège les Hôtes de routeurs frauduleux n  Un routeur doit avoir un certificat valide pour être choisi par un hôte.

n  Exemples n  http://www.cisco.com/en/US/prod/collateral/iosswrel/ps6537/ps6553/white_paper_c11-563156.html

Page 143: IPv6 training

Introduction

n  NDP est une application de ICMPv6, il est donc encapsulé dans des paquets ICMPv6.

n  Le protocole ND (Neighbor Discovery) d'IPv6 est un ensemble de messages et de processus qui déterminent les relations entre les nœuds voisins.

n  ND remplace ARP, ICMP Router Discovery et ICMP Redirection, utilise dans IPv4, et fournit des fonctionnalités supplémentaires.

n  ND est décrit dans le document RFC 2461, Neighbor Discovery for IP Version 6 (IPv6). n  De par le nombre de fonctions qu’il permet d’automatiser, NDP ouvre aussi de nombreux

trous de sécurité

Page 144: IPv6 training

Les fonctionnalités de NDP

n  Les hotes utilisent ND pour effectuer les taches suivantes : n  Découvrir les routeurs voisins. n  Découvrir les adresses, les préfixes d'adresse et d'autres paramètres de configuration.

n  Les routeurs utilisent ND pour effectuer les taches suivantes : n  Annoncer leurs présences, les paramètres de configuration des hôtes et les préfixes sur la liaison de

données. n  Indiquer aux hôtes une meilleure adresse de tronçon suivant pour la transmission des paquets a une

destination spécifique.

n  Les nœuds utilisent ND pour effectuer les taches suivantes : n  Résoudre l'adresse de couche liaison d'un nœud voisin en direction duquel un paquet IPv6 est transmis

et déterminer le moment auquel l'adresse a change. n  Déterminer si des paquets IPv6 peuvent être envoyés a un voisin et reçus de celui-ci

n  Les menaces sont décrites dans le RFC 3756

Page 145: IPv6 training

NDP Protocol Data Units

n  Deux nouveaux PDUs n  Certificate Path Solicitation (CPS SEND) n  Certificate Path Advertisement (CPA SEND)

n  Nouvelles Options NDP n  CGA - 11 n  RSA - 12 n  Certificate - 16 n  Trust - 15 n  Nonce - 14 n  Timestamp -13

Page 146: IPv6 training

Les Nouvelles Options et PDU

Page 147: IPv6 training

Option CGA

n  L'option CGA permet de vérifier l'identité d'une machine émettrice d'un paquet NDP. Cette option contient entre autre la clef publique de la machine émettrice, dont la cohérence avec l'adresse source utilisée est vérifiée par la machine réceptrice.

Page 148: IPv6 training

Option RSA

n  L'option RSA contient une signature du paquet, calculée avec la clef privée de la machine émettrice.

n  Le nœud recevant le paquet peut vérifier l'intégrité et l'authenticité du paquet, grâce à la clef publique reçue conjointement ou précédemment.

n  La confiance dans la clef publique utilisée par les options CGA et RSA se base sur un mécanisme de certification

Page 149: IPv6 training

Option d’Horodatage

n  Une option d'horodatage (Timestamp) est utilisée pour protéger NDP des attaques de type 'rejeu'.

Page 150: IPv6 training

L’option NONCE

n  Une option unicité (Nonce) est utilisée pour protéger les associations Demande/Réponse (Solicit/Advertisement) :

n  une réponse NDP devra contenir la même valeur NOnce que la demande correspondante pour être valide.

Page 151: IPv6 training

Neighbor Discovery Options

Message CGA RSA Nonce Timestamp

Router Solicitation (RS)

MUST unless sent from unspecififed

MUST unless sent from unspecififed

MUST MUST

Router Advertisement (RA)

MAY. The CGA option can be omitted in RA but this would be rejected by current IOS implementation

MUST MUST for sollicited RA to all node multicast. Not needed for unsolicited

MUST

Neighbor Solicitation (NS)

MUST MUST MUST MUST

Neighbor Advertisement (NA)

MUST MUST MUST for sollicited NA to all node multicast. Not needed for unsolicited

MUST

Redirect MAY MUST MUST

Page 152: IPv6 training

CPS/CPA

n  Enfin deux nouveau messages (CPS/CPA) sont utilisés afin de permettre la découverte automatique par une machine terminal d'un chemin de certification.

n  Ce mécanisme permet a des machines utilisant l'auto configuration sans état (RFC 2462) de vérifier la légitimité d'un routeur et celle des préfixes publiques sur le lien auprès d'un tiers de confiance sur le réseau.

Page 153: IPv6 training

CPS/CPA

n  Un host reçoit un RA d’un nouveau routeur n  Il n’a pas de certificat correspondant n  Il envoie un CPS vers le routeur n  Le routeur répond avec son certificat n  Si l’hôte et le routeurs ont des certificats trustes par la même autorité, l’host accepte le RA

sinon il le rejette

Page 154: IPv6 training

Exemples

Page 155: IPv6 training

DAD - 3 TENTATIVES

Jan 7 09:40:23: %IPV6_ND-4-DUPLICATE: Duplicate address FE80::C2:3A71:71F2:CB17 on Ethernet0/0

Jan 7 09:40:23: %IPV6_ND-4-DUPLICATE: Duplicate address FE80::847:1745:E31D:F38B on Ethernet0/0

Jan 7 09:40:24: %IPV6_ND-4-DUPLICATE: Duplicate address FE80::18:F205:D13E:EC43 on Ethernet0/0

show ipv6 interface ethernet0/0 Ethernet0/0 is up, line protocol is up

IPv6 is stalled, link-local address is FE80::18:F205:D13E:EC43 [DUP] No Virtual link-local address(es): Global unicast address(es): 2000:1::CDC:14FC:266F:6C56, subnet is 2000:1::/64 [TEN]

Joined group address(es): FF02::1 MTU is 1500 bytes ICMP error messages limited to one every 0 milliseconds

ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1

ND reachable time is 30000 milliseconds (using 44471)

Page 156: IPv6 training

DAD

show ipv6 cga address-db

2000:1::/64 ::CDC:14FC:266F:6C56 - table 0x0

interface: Ethernet0/0 (3)

modifier: NEWSEND

collisions: 0

FE80::/64 ::18:F205:D13E:EC43 - table 0x12000003 interface: Ethernet0/0 (3)

modifier: NEWSEND

collisions: 2

Page 157: IPv6 training

Redirect

Ethernet Packet: 566 bytes Dest Addr: AABB.CC03.E900, Source Addr: AABB.CC03.EA00 Protocol: 0x86DD

IPv6: Version: 6, Traffic Class: 224 (0xE0), Flow Label: 0 (0x0) Payload Length: 512, Next Header: 58 (0x3A), Hop Limit: 255

Source: FE80:0:0:0:387F:B93F:AD87:DCF2 Dest: 2000:1:0:0:28A3:9D22:92CC:78E2 ICMPv6:

Type: 137 (Redirect Message), Code: 0 Checksum: 0xAFC6 (OK), Reserved: 0x0 Target Address: FE80:0:0:0:3C95:B6D1:8E8F:CE3E

Destination Address: CAFE:200:0:0:0:0:0:1 Options type: 4 (Redirected Header) Options length: 14 (112 octets), Reserved1: 0x0, Reserved2: 0x0

Page 158: IPv6 training

Redirect (Suite)

Options type: 11 (CGA Parameters)

Options length: 24 (192 octets), Pad length: 1 (8 octets), Reserved: 0x0 Modifier: 47D8:E91E:8E98:5C71:2B8E:8A4B:94E8:CC9

Subnet Prefix: FE80:0:0:0 Collision Count: 0

Public key: 0 : 3081 9F30 0D06 092A 8648 86F7 0D01 0101 0500 0381 0..0...*.H..........

20 : 8D00 3081 8902 8181 00C1 6305 BC6C ED66 BACE 3472 ..0.......c..l.f..4r 40 : 31B5 5BEA D07E 0B4C D4AC 1983 9DB1 0245 F769 3561 1.[..~.L.......E.i5a

60 : 3745 59C2 52D9 1185 4734 E325 D3FE 5803 4F0A 4072 7EY.R...G4.%..X.O.@r 80 : 697D A71A D718 3334 5DC8 F10F F44B AF16 24A0 9E86 i}....34]....K..$... 100 : 8D84 131A 0548 A8AF CC16 74E1 ACB5 6127 D82C 84F0 .....H....t...a'.,..

120 : 9CD7 4EE9 DB5B 7EFA 8AF7 4AE1 0643 9A9C 5DA2 1FEA ..N..[~...J..C..]... 140 : 19EC 15B6 CCF3 AFE9 53B9 3CF7 28DF C3CC 4F02 0301 ........S.<.(...O... 160 : 0001 ..

Padding:

0 : 00 . Options type: 13 (Timestamp)

Options length: 2 (16 octets), Reserved:

0 : 0000 0000 0000 ...... Timestamp: 0:4934:11AA:6A74

Page 159: IPv6 training

Redirect (suite) Options type: 12 (RSA Signature) Options length: 19 (152 octets)

Reserved: 0x0

Key Hash:

0 : 6537 1956 E030 F1E0 3C2B 8BB1 1B02 CA68 e7.V.0..<+.....h

Digital Signature and padding:

0 : 5C17 AFCF 17D5 C267 56C4 E460 00C1 0713 4053 7EEE \......gV..`....@S~.

20 : FD20 ABCB 5191 E799 2164 14A9 065D 6936 5E35 CA7F . ..Q...!d...]i6^5..

40 : 6C9A 4D4A 4A0F D7FA 87DE A1CB F813 4C29 843A E6E9 l.MJJ.........L).:..

60 : 41D5 6834 F9CF 90C7 A827 5830 C183 FE0C 7E76 F990 A.h4.....'X0....~v..

80 : 6DDD CBF5 E582 0E52 EABA 3A4A E84F ED5F BC05 859A m......R..:J.O._....

100 : 454A 1272 2427 0BA1 5647 D2F2 94DA FF1B 901D 345D EJ.r$'..VG........4]

120 : 4DB9 9F49 733C 67E4 74E1 ACB5 M..Is<g.t...

Dec 1 04:32:50 PM 2008: INFO: Start Checking RFC 2461 8.1 Conformance

Dec 1 04:32:50 PM 2008: INFO: Source Address is a link-local: FE80:0:0:0:387F:B93F:AD87:DCF2

Dec 1 04:32:50 PM 2008: INFO: ICMPv6 is 40 octets or more

Dec 1 04:32:50 PM 2008: INFO: ICMPv6 dest @ in the redir msg is not a mc CAFE:200:0:0:0:0:0:1

Dec 1 04:32:50 PM 2008: INFO: target address is link-local or same as dest @

Dec 1 04:32:50 PM 2008: INFO: Adding Option:4 Count:1

Dec 1 04:32:50 PM 2008: INFO: Adding Option:11 Count:2 Dec 1 04:32:50 PM 2008: INFO: Adding Option:13 Count:3

Dec 1 04:32:50 PM 2008: INFO: Adding Option:12 Count:4

Dec 1 04:32:50 PM 2008: INFO: found 4 options

Dec 1 04:32:50 PM 2008: INFO: Analyzing options:

Options type: 4 (Redirected Header)

Page 160: IPv6 training

Redirect (suite)

Options length: 14 (112 octets), Reserved1: 0x0, Reserved2: 0x0 IP header + data: 0 : 6000 0000 003C 3A3F 2000 0001 0000 0000 28A3 9D22 `....<:? .......(.." 20 : 92CC 78E2 CAFE 0200 0000 0000 0000 0000 0000 0001 ..x................. 40 : 8000 1F20 154D 0000 0001 0203 0405 0607 0809 0A0B ... .M.............. 60 : 0C0D 0E0F 1011 1213 1415 1617 1819 1A1B 1C1D 1E1F .................... 80 : 2021 2223 2425 2627 2829 2A2B 2C2D 2E2F 3031 3233 !"#$%&'()*+,-./0123 100 : 0000 0000 .... Dec 1 04:32:50 PM 2008: INFO: Analyzing options: Options type: 11 (CGA Parameters) Options length: 24 (192 octets), Pad length: 1 (8 octets), Reserved: 0x0 Modifier: 47D8:E91E:8E98:5C71:2B8E:8A4B:94E8:CC9 Subnet Prefix: FE80:0:0:0 Collision Count: 0 Public key: 0 : 3081 9F30 0D06 092A 8648 86F7 0D01 0101 0500 0381 0..0...*.H.......... 20 : 8D00 3081 8902 8181 00C1 6305 BC6C ED66 BACE 3472 ..0.......c..l.f..4r 40 : 31B5 5BEA D07E 0B4C D4AC 1983 9DB1 0245 F769 3561 1.[..~.L.......E.i5a 60 : 3745 59C2 52D9 1185 4734 E325 D3FE 5803 4F0A 4072 7EY.R...G4.%..X.O.@r 80 : 697D A71A D718 3334 5DC8 F10F F44B AF16 24A0 9E86 i}....34]....K..$... 100 : 8D84 131A 0548 A8AF CC16 74E1 ACB5 6127 D82C 84F0 .....H....t...a'.,.. 120 : 9CD7 4EE9 DB5B 7EFA 8AF7 4AE1 0643 9A9C 5DA2 1FEA ..N..[~...J..C..]... 140 : 19EC 15B6 CCF3 AFE9 53B9 3CF7 28DF C3CC 4F02 0301 ........S.<.(...O... 160 : 0001 .. Padding: 0 : 00 .

Page 161: IPv6 training

Redirect (suite)

Dec 1 04:32:50 PM 2008: INFO: Analyzing options: Options type: 13 (Timestamp)

Options length: 2 (16 octets),

Reserved:

0 : 0000 0000 0000 ......

Timestamp: 0:4934:11AA:6A74

Dec 1 04:32:50 PM 2008: INFO: Analyzing options:

Options type: 12 (RSA Signature)

Options length: 19 (152 octets)

Reserved: 0x0

Key Hash:

0 : 6537 1956 E030 F1E0 3C2B 8BB1 1B02 CA68 e7.V.0..<+.....h

Digital Signature and padding:

0 : 5C17 AFCF 17D5 C267 56C4 E460 00C1 0713 4053 7EEE \......gV..`....@S~.

20 : FD20 ABCB 5191 E799 2164 14A9 065D 6936 5E35 CA7F . ..Q...!d...]i6^5..

40 : 6C9A 4D4A 4A0F D7FA 87DE A1CB F813 4C29 843A E6E9 l.MJJ.........L).:..

60 : 41D5 6834 F9CF 90C7 A827 5830 C183 FE0C 7E76 F990 A.h4.....'X0....~v..

80 : 6DDD CBF5 E582 0E52 EABA 3A4A E84F ED5F BC05 859A m......R..:J.O._....

100 : 454A 1272 2427 0BA1 5647 D2F2 94DA FF1B 901D 345D EJ.r$'..VG........4] 120 : 4DB9 9F49 733C 67E4 74E1 ACB5 M..Is<g.t...

Dec 1 04:32:50 PM 2008: INFO: Result: 1

Page 162: IPv6 training

Redirect (end) Dec 1 04:32:50 PM 2008: INFO: Expected Target address : fe80::3c95:b6d1:8e8f:ce3e Dec 1 04:32:50 PM 2008: INFO: Target address in Redirect: fe80:0:0:0:3c95:b6d1:8e8f:ce3e Dec 1 04:32:50 PM 2008: INFO: Correct address in Redirect message Dec 1 04:32:50 PM 2008: INFO: Start checking SEND options Dec 1 04:32:50 PM 2008: INFO: ==> Checking for anything requiring specific processing Dec 1 04:32:50 PM 2008: INFO: Source address is specified Dec 1 04:32:50 PM 2008: INFO: packet *not* sent to all nodes multicast address Dec 1 04:32:50 PM 2008: INFO: Scanning thru all options. looking for LEN=0 Dec 1 04:32:50 PM 2008: INFO: Redirected Header length:112 Dec 1 04:32:50 PM 2008: INFO: Checking Timestamp option Dec 1 04:32:50 PM 2008: INFO: Checking Nonce option Dec 1 04:32:50 PM 2008: INFO: Checking CGA option Dec 1 04:32:50 PM 2008: INFO: Checking RSA option Dec 1 04:32:50 PM 2008: INFO: CGA Parameters length:192 Dec 1 04:32:50 PM 2008: INFO: Checking Timestamp option Dec 1 04:32:50 PM 2008: INFO: Checking Nonce option Dec 1 04:32:50 PM 2008: INFO: Checking CGA option Dec 1 04:32:50 PM 2008: INFO: CGA Collision:0 OK Dec 1 04:32:50 PM 2008: INFO: Timestamp length:16 Dec 1 04:32:50 PM 2008: INFO: Checking Timestamp option Dec 1 04:32:50 PM 2008: INFO: Timestamp:80487983508084 Dec 1 04:32:50 PM 2008: INFO: TS Reserved:0 OK Dec 1 04:32:50 PM 2008: INFO: RSA Signature length:152 Dec 1 04:32:50 PM 2008: INFO: Checking Timestamp option Dec 1 04:32:50 PM 2008: INFO: Checking Nonce option Dec 1 04:32:50 PM 2008: INFO: Checking CGA option Dec 1 04:32:50 PM 2008: INFO: Checking RSA option Dec 1 04:32:50 PM 2008: INFO: Last option MUST be RSA Dec 1 04:32:50 PM 2008: INFO: RSA Option found as last Dec 1 04:32:50 PM 2008: INFO: PASS: SEND Options checking passed Dec 1 04:32:50 PM 2008: INFO: Packet is: Redirect Message

Dec 1 04:32:50 PM 2008: INFO: ==> Checking required option for REDIR Dec 1 04:32:50 PM 2008: INFO: Mandatory SEND options present and valid Dec 1 04:32:50 PM 2008: INFO: ==> Packet number 25 ============================================================================= 16:32:42.891 GMT Mon Dec 1 2008 Relative Time: 1.327999

Page 163: IPv6 training

Configuration SEND

Page 164: IPv6 training

Configuration CGA Cisco

n  Générer une paire de clefs (key pair) unix1a(config)#crypto key generate rsa label FRED modulus 1024 The name for the keys will be: FRED % The key modulus size is 1024 bits % Generating 1024 bit RSA keys, keys will be non-exportable...[OK]

n  Configurer un modifier et le SEC Level unix1a(config)#ipv6 cga modifier rsakeypair FRED sec-level 2 % Increase maximum iterations allowed (0) unix1a(config)#

n  Appliquer le Modifier à l’Interface unix1a(config)#int et0/0 unix1a(config-if)#ipv6 cga rsakeypair FRED

n  Configurer des Adresses CGA unix1a(config)#int et0/0 unix1a(config-if)#ipv6 address fe80:: link-local cga unix1a(config-if)#ipv6 address 2000::/64 cga

Page 165: IPv6 training

Configuration CGA Cisco

unix1a#sh run int et0/0 Building configuration... Current configuration : 154 bytes ! interface Ethernet0/0 ip address 10.1.1.1 255.255.255.0 ipv6 cga rsakeypair FRED ipv6 address FE80:: link-local cga ipv6 address 2000::/64 cga end unix1a#sh ipv6 int et0/0 Ethernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::50C9:E166:EED0:B87A No Virtual link-local address(es): Global unicast address(es): 2000::5814:3232:68B9:9B23, subnet is 2000::/64 Joined group address(es): FF02::1 FF02::1:FFB9:9B23 FF02::1:FFD0:B87A MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 20736)

Page 166: IPv6 training

Configuration CGA Cisco

unix1a#sh ipv6 cga modifier-db :: label: FRED sec level: 2

Addresses: 2000::5814:3232:68B9:9B23 FE80::50C9:E166:EED0:B87A

unix1a#sh ipv6 cga address-db 2000::/64 ::5814:3232:68B9:9B23 - table 0x0 interface: Ethernet0/0 (3)

modifier: FRED collisions: 0 FE80::/64 ::50C9:E166:EED0:B87A - table 0x12000003

interface: Ethernet0/0 (3) modifier: FRED collisions: 0 unix1a#

Page 167: IPv6 training

Configuration ADD

n  Au minimum, il faut n  Un serveur de Certificats: CA n  Un Routeur n  Un Host

n  On peut configurer toutes ces fonctions sur des routeurs Cisco

Page 168: IPv6 training

Configuration du CA

CA#sh crypto pki server Certificate Server CA: Status: enabled State: enabled

Server's configuration is locked (enter "shut" to unlock it) Issuer name: C=FR, ST=fr, L=example, O=Cisco, OU=NSSTG, CN=CA0

CA cert fingerprint: E85AE4FB 75E897D9 B95A6777 E64A45F1 Granting mode is: auto Last certificate issued serial number (hex): 2

CA certificate expiration timer: 16:38:21 UTC Jan 25 2013 CRL NextUpdate timer: 16:37:22 UTC Jan 27 2010

Current primary storage dir: nvram: Database Level: Minimum - no cert data written to storage CA#sh ip http server status

HTTP server status: Enabled HTTP server port: 80 HTTP server active supplementary listener ports:

HTTP server authentication method: enable HTTP server digest algorithm: md5

HTTP server access class: 0 HTTP server base path: HTTP server help root:

Maximum number of concurrent server connections allowed: 5 Server idle time-out: 180 seconds

Server life time-out: 180 seconds Maximum number of requests allowed on a connection: 1 HTTP server active session modules: ALL

HTTP secure server capability: Present HTTP secure server status: Disabled

HTTP secure server port: 443 HTTP secure server ciphersuite: 3des-ede-cbc-sha des-cbc-sha rc4-128-md5 rc4-128-sha HTTP secure server client authentication: Disabled

HTTP secure server trustpoint: HTTP secure server active session modules: ALL

Page 169: IPv6 training

Configuration du CA

crypto pki server CA issuer-name C=FR, ST=fr, L=example, O=Cisco, OU=NSSTG,

CN=CA0 grant auto ip http server

Page 170: IPv6 training

Configuration du Routeur

n  Configurer un trustpoint crypto pki trustpoint SEND enrollment url http://192.168.0.1:80 serial-number subject-name C=FR, ST=fr, L=example, O=cisco, OU=nsstg, CN=router

revocation-check none rsakeypair SEND

n  Authentification auprés du CA n  Récupère le Certificat du CA n  crypto pki authenticate SEND

n  Enrollment auprès du CA n  Récupère le Certificat du Routeur n  crypto pki enroll SEND

Page 171: IPv6 training

Configuration du Host

n  Configurer un trustpoint crypto pki trustpoint SEND enrollment url http://192.168.0.1:80 serial-number revocation-check none

n  Authentification auprès du CA crypto pki authenticate SEND

hote#sh ipv6 nd secured certificates

Total number of entries: 1 / 32 Hash id RA certcnt certrcv state 2B5559355296F787B9A99EB6943AD563 0x00001065 no 1 1

CERT_VALIDATED certificate No 0 subject

hostname=R2+serialNumber=4294967295,c=FR,st=fr,l=example,o=cisco,ou=nsstg,cn=router issuer c=FR,st=fr,l=example,o=Cisco,ou=NSSTG,cn=CA0

Page 172: IPv6 training

Troubleshooting SEND

Page 173: IPv6 training

Traitement du RA unix1a# debug ipv6 nd secured 00:12:29: SEND: EVENT: IPV6_SEND_CERT_T2_FIRED CURRENT STATE: CERT_VALIDATED 00:12:29: SEND: Verifying certificate 00:12:29: SEND: Certificate validated 00:12:29: SEND: action: Start T1 00:12:29: SEND: NEW STATE TR: CERT_VALIDATING 00:12:29: SEND: EVENT: IPV6_SEND_CERT_VALID_CHAIN CURRENT STATE: CERT_VALIDATING 00:12:29: SEND: action: Stop T1 00:12:29: SEND: action: Set trust level in RA then deliver it 00:12:29: SEND: action: Deliver RA packet to stack 00:12:29: SEND: action: Start T2 00:12:29: SEND: NEW STATE TR: CERT_VALIDATED 00:13:29: SEND: EVENT: IPV6_SEND_CERT_T2_FIRED CURRENT STATE: CERT_VALIDATED 00:13:29: SEND: Verifying certificate 00:13:29: SEND: Certificate validated 00:13:29: SEND: action: Start T1 00:13:29: SEND: NEW STATE TR: CERT_VALIDATING 00:13:29: SEND: EVENT: IPV6_SEND_CERT_VALID_CHAIN CURRENT STATE: CERT_VALIDATING 00:13:29: SEND: action: Stop T1 00:13:29: SEND: action: Set trust level in RA then deliver it 00:13:29: SEND: action: Deliver RA packet to stack 00:13:29: SEND: action: Start T2 00:13:29: SEND: NEW STATE TR: CERT_VALIDATED unix1a#show ipv6 nd secured certificate Total number of entries: 1 / 32 Hash id RA certcnt certrcv state 9F3F0B3AEE9F9204720096454EAF0BBA 0x00003D12 no 1 1 CERT_VALIDATED certificate No 0 subject serialNumber=117285866+hostname=unix1b,c=FR,st=PACA,l=Biot,o=Cisco,ou=ITD,cn=unix1b issuer c=FR,st=PACA,l=Biot,o=Cisco,ou=ITD,cn=CA0

Page 174: IPv6 training

Certificats sur le Routeur

unix1b#sh crypto pki cert Certificate

Status: Available Certificate Serial Number (hex): 02

Certificate Usage: General Purpose Issuer:

c=FR st=PACA

l=Biot o=Cisco

ou=ITD cn=CA0

Subject: Name: unix1b

Serial Number: 117285866 serialNumber=117285866+hostname=unix1b

c=FR st=PACA

l=Biot o=Cisco

ou=ITD

cn=unix1b CRL Distribution Points:

http://10.0.1.200/CS Validity Date:

start date: 16:20:32 BST Apr 29 2009 end date: 16:20:32 BST Apr 29 2010

Associated Trustpoints: FRED

CA Certificate Status: Available

Certificate Serial Number (hex): 01

Certificate Usage: Signature

Issuer: c=FR st=PACA l=Biot o=Cisco ou=ITD cn=CA0 Subject:

c=FR

st=PACA

l=Biot

o=Cisco

ou=ITD

cn=CA0

Validity Date:

start date: 16:17:44 BST Apr 29 2009

end date: 16:17:44 BST Apr 28 2012

Associated Trustpoints: FRED

Page 175: IPv6 training

Compteur PDU SEND

hote#show ipv6 nd sec counters int f0/0 Received ND messages on FastEthernet0/0: rcvd accept SLLA TLLA PREFIX MTU CGA RSA TS NONCE TA CERT RA 19 19 19 0 19 19 19 19 19 0 0 0

NS 1 1 1 0 0 0 1 1 1 1 0 0 NA 4 3 0 4 0 0 4 4 4 2 0 0

CPA 1 1 0 0 0 0 0 0 0 0 1 1 Dropped ND messages on FastEthernet0/0: Codes CGA_VFY: CGA option does not verify

drop CGA_VFY NA 1 1

Sent ND messages on FastEthernet0/0: sent aborted SLLA TLLA CGA RSA TS NONCE TA

NS 5 0 2 0 4 4 4 4 0 NA 3 0 0 2 3 3 3 1 0 CPS 1 0 0 0 0 0 0 0 1

hote#

Page 176: IPv6 training

debug ipv6 nd secured

*Jan 28 13:08:49.575: %SYS-5-CONFIG_I: Configured from console by console

*Jan 28 13:09:12.591: SEND: EVENT: IPV6_SEND_CERT_T2_FIRED CURRENT STATE: CERT_VALIDATED

*Jan 28 13:09:12.595: SEND: Verifying certificate *Jan 28 13:09:12.647: SEND: Certificate validated *Jan 28 13:09:12.647: SEND: action: Start T1

*Jan 28 13:09:12.647: SEND: NEW STATE TR: CERT_VALIDATING

*Jan 28 13:09:12.647: SEND: EVENT: IPV6_SEND_CERT_VALID_CHAIN CURRENT STATE: CERT_VALIDATING *Jan 28 13:09:12.647: SEND: action: Stop T1

*Jan 28 13:09:12.647: SEND: action: Set trust level in RA then deliver it

*Jan 28 13:09:12.647: SEND: action: Deliver RA packet to stack

*Jan 28 13:09:12.647: SEND: action: Start T2

*Jan 28 13:09:12.647: SEND: NEW STATE TR: CERT_VALIDATED

*Jan 28 13:09:18.443: SEND: Receive: ND_ROUTER_ADVERT

*Jan 28 13:09:18.447: SEND: src FE80::2038:148E:B9DF:FD6D *Jan 28 13:09:18.447: SEND: dst FF02::1 *Jan 28 13:09:18.451: SEND: Received at: 0x4B618C7E73B9 = 13:09:18 UTC Jan 28 2010

*Jan 28 13:09:18.455: SEND: option 1 len 8: ND_OPT_SOURCE_LINKADDR

*Jan 28 13:09:18.455: SEND: option 5 len 8: ND_OPT_MTU

*Jan 28 13:09:18.455: SEND: option 3 len 32: ND_OPT_PREFIX_INFORMATION

*Jan 28 13:09:18.455: SEND: option 11 len 192: ND_OPT_CGA

*Jan 28 13:09:18.455: SEND: option 13 len 16: ND_OPT_TIMESTAMP *Jan 28 13:09:18.455: SEND: option 12 len 152: ND_OPT_RSA *Jan 28 13:09:18.455: SEND: Verifying address FE80::2038:148E:B9DF:FD6D *Jan 28 13:09:18.455: SEND: sec is 1

*Jan 28 13:09:18.455: SEND: keylen is 1024

*Jan 28 13:09:18.455: SEND: Address verified Jan 28 13:09:18.455: SEND: Timestamp: 0x4B618C7F591C = 13:09:19 UTC Jan 28 2010 *Jan 28 13:09:18.455: SEND: TS opt check RC = 0 *Jan 28 13:09:18.459: SEND: Good signature *Jan 28 13:09:18.459: SEND: RA with prefix option 2001::

*Jan 28 13:09:18.459: SEND: EVENT: IPV6_SEND_CERT_RCV_RA CURRENT STATE: CERT_VALIDATED

*Jan 28 13:09:18.459: SEND: action: Set trust level in RA then deliver it

*Jan 28 13:09:18.459: SEND: action: Deliver RA packet to stack

*Jan 28 13:09:18.459: SEND: Deliver RA just received

*Jan 28 13:09:18.463: SEND: NEW STATE TR: CERT_VALIDATED

Page 177: IPv6 training

Commande de Test

ipv6 nd secured test <skip,cga,cpa,rsa> <params> ü  skip <nonce, rsa, cga, Timestamp> ü  cpa <badnumber>

ü  cga <prefix, collision, modifier, key> <value>

ü  rsa <badsig>

n  NON DOCUMENTEE

Routeur(config-if)#ipv6 nd secured test cga ?

collision Corrupt CGA parameters (collision)

key Corrupt CGA parameters (key)

modifier Corrupt CGA parameters (modifier)

prefix Corrupt CGA parameters (prefix)

Page 178: IPv6 training

Conclusion

n  SEND permet de sécuriser NDP n  Il devient quasiment impossible de voler une adresse n  Impossible de se faire passer pour un routeur pour capter des flux

Page 179: IPv6 training

First Hop Routing Protocol

Page 180: IPv6 training

Objectif

n  Garantir un routeur par défaut disponible n  Transparent pour les hôtes

Page 181: IPv6 training

Sommaire

n  Introduction n  Un Exemple HSRP n  Conclusions

Page 182: IPv6 training

Introduction

n  Un protocol FHRP fournit une adresse virtuelle utilisée par les stations comme next hop. n  Cette adresse est attribuée à plusieurs routeurs

n  1 seul est actif a la fois n  Permet de tracker une interface

Page 183: IPv6 training

Les Protocoles FHRP

n  HSRP n  GLBP n  VRRP n  La moins couteuse

n  Neighbor Discovery (NDP) n  La plus couteuse

n  Tourner un protocole de routage sur les hôtes n  Peut s’avérer moins performant (RIPng)

Page 184: IPv6 training

Introduction HSRPv6

n  Portage d’HSRP sur IPv6 n  Permet une adresse Link-Locale Virtuelle n  Hello UDP n  Priorité par défaut 100 n  Tracker une interface pour basculer sur un routeur de secours si un lien tombe

Page 185: IPv6 training

HSRP pour IPv6 - Configuration

interface Ethernet0/0 no ip address ipv6 address FE80::3 link-local ipv6 address 2000::1/100 standby version 2 standby 1 ipv6 FE80::5 end unix1a# interface Ethernet0/0 no ip address ipv6 address FE80::4 link-local ipv6 address 2000::2/100 standby version 2 standby 1 ipv6 FE80::5 end

Page 186: IPv6 training

HSRP pour IPv6

unix1a#sh stand Ethernet0/0 - Group 1 (version 2) State is Standby 1 state change, last state change 00:00:19 Virtual IP address is FE80::5 Active virtual MAC address is 0005.73a0.0001 Local virtual MAC address is 0005.73a0.0001 (v2 IPv6 default) Hello time 3 sec, hold time 10 sec Next hello sent in 0.816 secs Preemption disabled Active router is FE80::4, priority 100 (expires in 7.808 sec) MAC address is aabb.cc03.ea00 Standby router is local Priority 100 (default 100) Group name is "hsrp-Et0/0-1" (default)

unix1b#sh stand Ethernet0/0 - Group 1 (version 2) State is Active 2 state changes, last state change 00:08:37 Virtual IP address is FE80::5 Active virtual MAC address is 0005.73a0.0001 Local virtual MAC address is 0005.73a0.0001 (v2 IPv6 default) Hello time 3 sec, hold time 10 sec Next hello sent in 2.800 secs Preemption disabled Active router is local Standby router is FE80::3, priority 100 (expires in 9.376 sec) Priority 100 (default 100) Group name is "hsrp-Et0/0-1" (default) unix1b#

Page 187: IPv6 training

HSRP pour IPv6

unix1a#sh ipv6 int et0/0 Ethernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::3 [UNA] Virtual link-local address(es): FE80::5 [UNA/OOD/INIT] Global unicast address(es): 2000::1, subnet is 2000::/100 Joined group address(es): FF02::1 FF02::2 FF02::66 FF02::1:FF00:1 FF02::1:FF00:3 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 42641) ND advertised reachable time is 0 (unspecified) ND advertised retransmit interval is 0 (unspecified) ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses. unix1a#

unix1b#sh ipv6 int et0/0 Ethernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::4 [UNA] Virtual link-local address(es): FE80::5 [OOD] Global unicast address(es): 2000::2, subnet is 2000::/100 Joined group address(es): FF02::1 FF02::2 FF02::66 FF02::1:FF00:2 FF02::1:FF00:4 FF02::1:FF00:5 MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 43673) ND advertised reachable time is 0 (unspecified) ND advertised retransmit interval is 0 (unspecified) ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses. unix1b#

Page 188: IPv6 training

HSRP pour IPv6

Apr 24 07:02:34.483 BST: IPV6: source FE80::4 (local) Apr 24 07:02:34.483 BST: dest FF02::66 (Ethernet0/0) Apr 24 07:02:34.483 BST: traffic class 224, flow 0x0, len 100+0, prot 17, hops 255, originating Apr 24 07:02:34.483 BST: IPv6-Fwd: Sending on Ethernet0/0 Apr 24 07:02:34.747 BST: IPV6: source FE80::3 (Ethernet0/0) Apr 24 07:02:34.747 BST: dest FF02::66 Apr 24 07:02:34.747 BST: traffic class 224, flow 0x0, len 100+14, prot 17, hops 255, forward to ulp Apr 24 07:02:34.747 BST: HSRP: Et0/0 Grp 1 Hello in FE80::3 Standby pri 100 vIP FE80::5 unix1b#

Page 189: IPv6 training

HSRP Standby take over

pagent1a#ping Protocol [ip]: ipv6 Target IPv6 address: fe80::3 Repeat count [5]: 23323333 Datagram size [100]: Timeout in seconds [2]: Extended commands? [no]: y UDP protocol? [no]: Verbose? [no]: Precedence [0]: DSCP [0]: Include hop by hop option? [no]: Include destination option? [no]: Sweep range of sizes? [no]: Output Interface: Ethernet0/0 Type escape sequence to abort. Sending 23323333, 100-byte ICMP Echos to FE80::3, timeout is 2 seconds: Packet sent with a source address of FE80::5 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!......!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!! Success rate is 98 percent (565/571), round-trip min/avg/max = 0/23/152 ms pagent1a#X

Page 190: IPv6 training

HSRP track une interface

unix1a#sh stand Ethernet0/0 - Group 1 (version 2) State is Standby 1 state change, last state change 00:24:42 Virtual IP address is FE80::5 Active virtual MAC address is 0005.73a0.0001 Local virtual MAC address is 0005.73a0.0001 (v2 IPv6 default) Hello time 3 sec, hold time 10 sec Next hello sent in 1.728 secs Preemption enabled Active router is FE80::4, priority 100 (expires in 9.152 sec) MAC address is aabb.cc03.ea00 Standby router is local Priority 90 (default 100) Track interface Ethernet1/0 state Down decrement 10 Group name is "hsrp-Et0/0-1" (default)

Current configuration : 194 bytes#!#interface Ethernet0/0# no ip address# ipv6 address FE80::3 link-local# ipv6 address 2000::1/100# standby version 2# standby 1 ipv6 FE80::5# standby 1 preempt standby 1 track Ethernet1/0 #unix1a#unix1a#conf t Enter configuration commands, one per line. End with CNTL/Z. unix1a(config)# int et 1/0 unix1a(config-if)#no shut unix1a(config-if)#^Z unix1a#sh stand Ethernet0/0 - Group 1 (version 2) State is Standby 1 state change, last state change 00:28:38 Virtual IP address is FE80::5 Active virtual MAC address is 0005.73a0.0001 Local virtual MAC address is 0005.73a0.0001 (v2 IPv6 default) Hello time 3 sec, hold time 10 sec Next hello sent in 1.008 secs Preemption enabled Active router is FE80::4, priority 100 (expires in 8.368 sec) MAC address is aabb.cc03.ea00 Standby router is local Priority 100 (default 100) Track interface Ethernet1/0 state Up decrement 10 Group name is "hsrp-Et0/0-1" (default)

Page 191: IPv6 training

Conclusion

n  IPv6 fournit avec ND un moyen de configurer automatiquement un routeur par défaut n  Insuffisant pour un basculement rapide en cas de problème

n  Autres solutions: n  tourner un protocole de routage sur la station n  utiliser un FHRP (HSRPv6, GLBP)

Page 192: IPv6 training

Routing Protocols

Page 193: IPv6 training

Objectif

n  Les protocoles de routages IPv6 permettent: n  le routage intra AS

-  RIPv2, OSPFv3, ISIS, EIGRP n  Le routage inter Autonomous System

-  BGP

Page 194: IPv6 training

Sommaire

n  Introduction n  Les Protocoles de routages Intra-AS

n  RIPv2 n  OSPFv3 n  ISIS n  EIGRP

n  Les Protocoles de routages Inter AS n  BGP

n  Conclusions

Page 195: IPv6 training

Introduction

n  Les protocoles de routages permettent de remplir les tables de routages de façons automatiques

n  Les protocoles intra et inter AS n’ont pas le même cahier des charges n  Les protocoles intra AS ont pour vocation d’échanger un maximum d’information topologique

pour permettre la construction de tables de routages les plus optimisées possible dans un AS

n  Les protocoles inter AS permettent de contrôler au mieux les informations échangées de façon à construire un routage stratégique entre les divers AS.

Page 196: IPv6 training

Les Protocoles Intra AS

n  RIPv2 n  EIGRP n  OSPFv3 n  ISIS

Page 197: IPv6 training

RIPng

n  RFC 2080 n  Basé sur RIPv2

n  Distance Vector n  Routage par rumeur n  Spit-horizon, poison reverse n  Metric: Hop Count

-  Meme limitation que RIP -  Maximum Hop=15

n  Utilise les Link-Local Address n  UDP Port 521 n  Annonces multicast FF02::9 n  Cisco IOS supporte 4 instances de RIPv2 n  Configuré par interface et non par réseau

Page 198: IPv6 training

RIPng

interface Loopback0 no ip address ipv6 address CAFE:1::1/64 ipv6 rip fred enable End interface Ethernet0/0 no ip address ipv6 address 4::1/64 ipv6 rip fred enable

unix1b#sh ipv6 ro #IPv6 Routing Table - Default - 6 entries#Codes: C - Connected, L - Local, S - Static, U - Per-user Static route# B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1# I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP# EX - EIGRP external# O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2# ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2#C 4::/64 [0/0]# via Ethernet0/0, directly connected#L 4::2/128 [0/0]# via Ethernet0/0, receive#R CAFE:1::/64 [120/2]# via FE80::A8BB:CCFF:FE03:E900, Ethernet0/0#C CAFE:2::/64 [0/0]# via Loopback0, directly connected#L CAFE:2::1/128 [0/0]# via Loopback0, receive#L FF00::/8 [0/0]# via Null0, receive##unix1b#sh ipv6 rip da RIP process "fred", local RIB 4::/64, metric 2 Ethernet0/0/FE80::A8BB:CCFF:FE03:E900, expires in 167 secs CAFE:1::/64, metric 2, installed# Ethernet0/0/FE80::A8BB:CCFF:FE03:E900, expires in 167 secs##

Page 199: IPv6 training

EIGRP pour IPv6

n  Protocole 88 n  Distance Vector optimisé avec des techniques de Link State protocoles n  Chaque routeur a une table des voisins disponibles n  Chaque voisin disponible annonce des routes

n  Lorsqu’un nouveau voisin monte les tables de routages sont intégralement échangées n  Ensuite seul les changements sont annoncés n  Chaque routeur génère un Hello régulièrement n  Les voisins sont conservés tant qu’on entend parler d’eux pendant un holdtime n  Si un voisin est perdu, toutes les informations topologiques apprises par ce voisin sont effacées. n  Si des routes sont perdues, les routes sont dites « actives », des requêtes pour ces routes sont alors générées sur les autres interfaces

disponibles. n  Fiable et éprouvé

n  EIGRP a été entièrement réécrit n  3 Nouveaux TLV

n  IPv6_REQUEST_TYPE n  IPv6_Metric_Type n  IPv6_Exterior_Type

n  MD5 Authentification n  Automatic Sumarization disabled n  No Split Horizon

Page 200: IPv6 training

Metric

n  Metric par défaut: EIGRP = 256 * (107/BWmin + Sum(Delays)/10)

n  Un lien vers une destination de 128k et le delay est 84000 microsecondes n  Emetric = 256 *(107/128 + 84000/10) n  Emetric = 256*86525 = 22150400

Page 201: IPv6 training

Exemple EIGRP pour IPv6

interface Ethernet0/0 no ip address ipv6 address 4::1/64 ipv6 eigrp 100 interface Loopback0 no ip address ipv6 address CAFE:1::1/64 ipv6 eigrp 100 ipv6 router eigrp 100

eigrp router-id 1.1.1.2 no shutdown

!

unix1b#sh ipv6 eigrp top IPv6-EIGRP Topology Table for AS(100)/ID(1.1.1.2) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 4::/64, 1 successors, FD is 281600 via Connected, Ethernet0/0 P CAFE:2::/64, 1 successors, FD is 128256 via Connected, Loopback0 P CAFE:1::/64, 1 successors, FD is 409600 via FE80::A8BB:CCFF:FE03:E900 (409600/128256), Ethernet0/0 unix1b#sh ipv6 eigrp int IPv6-EIGRP interfaces for process 100 Xmit Queue Mean Pacing Time Multicast Pending Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes Et0/0 1 0/0 8 0/2 50 0 Lo0 0 0/0 0 0/1 0 0 unix1b#sh ipv6 eigrp ne IPv6-EIGRP neighbors for process 100 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 0 Link-local address: Et0/0 10 00:06:18 8 200 0 3 FE80::A8BB:CCFF:FE03:E900 unix1b# #

Page 202: IPv6 training

Exemple EIGRP pour IPv6

unix1b#sh ipv6 ro IPv6 Routing Table - Default - 6 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1 I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 C 4::/64 [0/0] via Ethernet0/0, directly connected L 4::2/128 [0/0] via Ethernet0/0, receive D CAFE:1::/64 [90/409600] via FE80::A8BB:CCFF:FE03:E900, Ethernet0/0 C CAFE:2::/64 [0/0] via Loopback0, directly connected L CAFE:2::1/128 [0/0] via Loopback0, receive L FF00::/8 [0/0] via Null0, receive unix1b#

Page 203: IPv6 training

OSPFv3 pour IPV6

n  OSPF est le protocole recommandé par l’IETF pour IPv4 et IPv6 n  Link-State

n  Routage par propagande n  RFC 2740

n  OSPFv3 est exécuté par lien et non par Nœud n  IPv6 Multicast

n  FF02::5 OSPF Routers n  FF02::6 OSPF designated routers

n  OSPF découvre ses voisins et devient adjacents avec certains n  Deux routeurs OSPF sont adjacents si ils échangent leur Database Topologique constituée de tous les LSA visibles

dans l’Area n  « Guide de Troubleshooting OSPF. Fred BOVY »

Page 204: IPv6 training

Changement dans les LSA

n  Les LSA ont maintenant un flooding Scope n  Link-local n  Area n  Autonomous System

n  Inter-Area prefix remplaces n  Summary (type 3) remplacés par Interarea Prefix LSA (Type 3) n  ASBR Summary remplacés par Interarea Router LSA (Type 4)

n  Router et Network LSA contiennent que des Identifier (pas de préfix) n  2 Nouveaux LSAs ont été ajoutés

n  Link LSA (Type 8) n  Intra-Area Prefix LSA (Type 9)

-  Intra-Area prefix LSA contient ce qu’il y avait dans les routeurs LSA en v2. n  OSPFv3 Router et Link LSA n’ont plus que des info Topologiques

n  LINK LSA annonce la Link-Local et la liste de tous les préfixes des liens

Page 205: IPv6 training

Initialisation Interface

n  Plusieurs Instances sont maintenant supportées n  OSPF cherche d’autres voisins de la même instance n  DOWN n  INIT

n  L’interface a reçu un Hello mais la communication bi directionnelle n’est pas établie. n  2WAY

n  On se voit dans les Hellos reçus par le voisin. A ce stade un DR serait élu sur un réseau à accès multiples. n  EXSTART

n  Les deux voisins négocient pour savoir qui va être le Master et qui sera le Slave pour l’initialisation de la DB. Le Master dirige les échanges.

n  LOAD n  Les DB sont en train de s’initialiser et les routeurs s’échangent les LSA manquant ou qui ne sont pas à jour.

n  FULL n  Les deux voisins sont maintenant Adjacents et complètement initialisés.

Page 206: IPv6 training

OSPF Hello

Frame 1 (94 bytes on wire, 94 bytes captured) Ethernet II, Src: ca:01:06:a9:00:54 (ca:01:06:a9:00:54), Dst: IPv6mcast_00:00:00:05 (33:33:00:00:00:05) Destination: IPv6mcast_00:00:00:05 (33:33:00:00:00:05) Source: ca:01:06:a9:00:54 (ca:01:06:a9:00:54) Type: IPv6 (0x86dd) Internet Protocol Version 6 0110 .... = Version: 6 .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 40 Next header: OSPF IGP (0x59) Hop limit: 1 Source: fe80::c801:6ff:fea9:54 (fe80::c801:6ff:fea9:54) Destination: ff02::5 (ff02::5) Open Shortest Path First OSPF Header OSPF Version: 3 Message Type: Hello Packet (1) Packet Length: 40 Source OSPF Router: 192.168.0.11 (192.168.0.11) Area ID: 0.0.0.2 Packet Checksum: 0x85ef [correct] Instance ID: 0 (IPv6 unicast AF) Reserved: 0 OSPF Hello Packet Interface ID: 8 Router Priority: 1 Options: 0x000013 (R, E, V6) Hello Interval: 10 seconds Router Dead Interval: 40 seconds Designated Router: 192.168.0.11 Backup Designated Router: 10.10.10.10 Active Neighbor: 10.10.10.10

!

Page 207: IPv6 training

DB Description

Frame 27 (82 bytes on wire, 82 bytes captured) Ethernet II, Src: ca:01:06:a9:00:54 (ca:01:06:a9:00:54), Dst: ca:02:06:a9:00:54 (ca:02:06:a9:00:54) Destination: ca:02:06:a9:00:54 (ca:02:06:a9:00:54) Source: ca:01:06:a9:00:54 (ca:01:06:a9:00:54) Type: IPv6 (0x86dd) Internet Protocol Version 6 0110 .... = Version: 6 .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 28 Next header: OSPF IGP (0x59) Hop limit: 1 Source: fe80::c801:6ff:fea9:54 (fe80::c801:6ff:fea9:54) Destination: fe80::c802:6ff:fea9:54 (fe80::c802:6ff:fea9:54) Open Shortest Path First OSPF Header OSPF Version: 3 Message Type: DB Descr. (2) Packet Length: 28 Source OSPF Router: 192.168.0.11 (192.168.0.11) Area ID: 0.0.0.2 Packet Checksum: 0x9c84 [correct] Instance ID: 0 (IPv6 unicast AF) Reserved: 0 OSPF DB Description Reserved: 0 Options: 0x000013 (R, E, V6) Interface MTU: 1500 Reserved: 0 DB Description: 0x07 (I, M, MS) .... 0... = R: OOBResync bit is NOT set .... .1.. = I: Init bit is SET .... ..1. = M: More bit is SET .... ...1 = MS: Master/Slave bit is SET DD Sequence: 60

Page 208: IPv6 training

LS Request

Frame 31 (82 bytes on wire, 82 bytes captured) Ethernet II, Src: ca:01:06:a9:00:54 (ca:01:06:a9:00:54), Dst: ca:02:06:a9:00:54 (ca:02:06:a9:00:54)

Destination: ca:02:06:a9:00:54 (ca:02:06:a9:00:54) Source: ca:01:06:a9:00:54 (ca:01:06:a9:00:54)

Type: IPv6 (0x86dd) Internet Protocol Version 6

0110 .... = Version: 6 .... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 28

Next header: OSPF IGP (0x59) Hop limit: 1

Source: fe80::c801:6ff:fea9:54 (fe80::c801:6ff:fea9:54) Destination: fe80::c802:6ff:fea9:54 (fe80::c802:6ff:fea9:54)

Open Shortest Path First OSPF Header

OSPF Version: 3 Message Type: LS Request (3)

Packet Length: 28 Source OSPF Router: 192.168.0.11 (192.168.0.11)

Area ID: 0.0.0.2

Packet Checksum: 0x6ea0 [correct] Instance ID: 0 (IPv6 unicast AF)

Reserved: 0 Link State Request

Reserved: 0 LS Type: Router-LSA (0x2001)

Link State ID: 0.0.0.0 Advertising Router: 10.10.10.10 (10.10.10.10)

Page 209: IPv6 training

LS Update

Frame 36 (158 bytes on wire, 158 bytes captured) Ethernet II, Src: ca:02:06:a9:00:54 (ca:02:06:a9:00:54), Dst:

IPv6mcast_00:00:00:05 (33:33:00:00:00:05)

Destination: IPv6mcast_00:00:00:05 (33:33:00:00:00:05)

Source: ca:02:06:a9:00:54 (ca:02:06:a9:00:54)

Type: IPv6 (0x86dd)

Internet Protocol Version 6

0110 .... = Version: 6

.... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0

.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000

Payload length: 104

Next header: OSPF IGP (0x59)

Hop limit: 1

Source: fe80::c802:6ff:fea9:54 (fe80::c802:6ff:fea9:54)

Destination: ff02::5 (ff02::5)

Open Shortest Path First

OSPF Header

OSPF Version: 3

Message Type: LS Update (4)

Packet Length: 104

Source OSPF Router: 10.10.10.10 (10.10.10.10)

Area ID: 0.0.0.2

Packet Checksum: 0x67e4 [correct]

Instance ID: 0 (IPv6 unicast AF)

Reserved: 0

LS Update Packet Number of LSAs: 2 Link-LSA (Type: 0x0008) LS Age: 1 seconds Do Not Age: False LSA Type: 0x0008 (Link-LSA) Link State ID: 0.0.0.8 Advertising Router: 10.10.10.10 (10.10.10.10) LS Sequence Number: 0x8000001a LS Checksum: 0x9ee0 Length: 44 Router Priority: 1 Options: 0x000033 (DC, R, E, V6) Link-local Interface Address: fe80::c802:6ff:fea9:54 # prefixes: 0 Router-LSA (Type: 0x2001) LS Age: 1 seconds Do Not Age: False LSA Type: 0x2001 (Router-LSA) Link State ID: 0.0.0.0 Advertising Router: 10.10.10.10 (10.10.10.10) LS Sequence Number: 0x80000018 LS Checksum: 0x3bff Length: 40 Flags: 0x00 () Options: 0x000033 (DC, R, E, V6) Router Interfaces: Type: 2 (Connection to a transit network) Reserved: 0 Metric: 1 Interface ID: 8 Neighbor Interface ID: 8 Neighbor Router ID: 192.168.0.11

Page 210: IPv6 training

LS ACK

Frame 40 (130 bytes on wire, 130 bytes captured) Ethernet II, Src: ca:01:06:a9:00:54 (ca:01:06:a9:00:54), Dst:

IPv6mcast_00:00:00:05 (33:33:00:00:00:05) Destination: IPv6mcast_00:00:00:05 (33:33:00:00:00:05)

Source: ca:01:06:a9:00:54 (ca:01:06:a9:00:54) Type: IPv6 (0x86dd)

Internet Protocol Version 6 0110 .... = Version: 6

.... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0 .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000

Payload length: 76 Next header: OSPF IGP (0x59)

Hop limit: 1 Source: fe80::c801:6ff:fea9:54 (fe80::c801:6ff:fea9:54)

Destination: ff02::5 (ff02::5) Open Shortest Path First

OSPF Header

OSPF Version: 3 Message Type: LS Acknowledge (5)

Packet Length: 76 Source OSPF Router: 192.168.0.11 (192.168.0.11)

Area ID: 0.0.0.2 Packet Checksum: 0x029f [correct]

Instance ID: 0 (IPv6 unicast AF) Reserved: 0

LSA Header LS Age: 8 seconds Do Not Age: False

LSA Type: 0x2001 (Router-LSA) Link State ID: 0.0.0.0 Advertising Router: 10.10.10.10 (10.10.10.10) LS Sequence Number: 0x80000017 LS Checksum: 0x953e

Length: 24 LSA Header LS Age: 1 seconds Do Not Age: False

LSA Type: 0x0008 (Link-LSA) Link State ID: 0.0.0.8 Advertising Router: 10.10.10.10 (10.10.10.10) LS Sequence Number: 0x8000001a

LS Checksum: 0x9ee0 Length: 44 LSA Header LS Age: 1 seconds

Do Not Age: False LSA Type: 0x2001 (Router-LSA) Link State ID: 0.0.0.0 Advertising Router: 10.10.10.10 (10.10.10.10)

LS Sequence Number: 0x80000018 LS Checksum: 0x3bff Length: 40

Page 211: IPv6 training

Exemple Configuration Cisco

ipv6 router ospf 1 router-id 1.1.1.1 log-adjacency-changes ! interface Ethernet0/0 no ip address ipv6 address FE80::4 link-local ipv6 address 2000::2/100 ipv6 ospf 1 area 0 standby version 2 standby 1 ipv6 FE80::5 standby 1 preempt end

Page 212: IPv6 training

IPv6 OSPF Neighbor

Neighbor ID Pri State Dead Time Interface ID Interface 1.1.1.1 1 EXSTART/BDR 00:00:33 3 Ethernet0/0 unix1b#

Apr 24 10:43:19.647 BST: %OSPFv3-5-ADJCHG: Process 1, Nbr 1.1.11.1 on Ethernet0/0 from LOADING to FULL, Loading Done

unix1b#

unix1a#show ipv6 ospf neighbor Neighbor ID Pri State Dead Time Interface ID Interface

1.1.1.1 1 FULL/BDR 00:00:38 3 Ethernet0/0 unix1a# unix1b#show ipv6 ospf neighbor

Neighbor ID Pri State Dead Time Interface ID Interface 1.1.11.1 1 FULL/DR 00:00:33 3 Ethernet0/0

Page 213: IPv6 training

IPv6 OSPF Interface

unix1b#sh ipv6 ospf int Ethernet0/0 is up, line protocol is up Link Local Address FE80::4, Interface ID 3 Area 0, Process ID 1, Instance ID 0, Router ID 1.1.1.1

Network Type BROADCAST, Cost: 10 Transmit Delay is 1 sec, State BDR, Priority 1 Designated Router (ID) 1.1.11.1, local address FE80::3

Backup Designated router (ID) 1.1.1.1, local address FE80::4 Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Hello due in 00:00:05 Index 1/1/1, flood queue length 0

Next 0x0(0)/0x0(0)/0x0(0) Last flood scan length is 1, maximum is 1 Last flood scan time is 0 msec, maximum is 0 msec

Neighbor Count is 1, Adjacent neighbor count is 1 Adjacent with neighbor 1.1.11.1 (Designated Router) Suppress hello for 0 neighbor(s) unix1b#

Page 214: IPv6 training

IPV6 OSPF DB Exemple

unix1b#show ipv6 ospf database router

OSPFv3 Router with ID (1.1.1.1) (Process ID 1)

Router Link States (Area 0)

LS age: 755 Options: (V6-Bit, E-Bit, R-bit, DC-Bit) LS Type: Router Links

Link State ID: 0 Advertising Router: 1.1.1.1

LS Seq Number: 80000003 Checksum: 0xE4F6 Length: 40

Number of Links: 1 Link connected to: a Transit Network

Link Metric: 10 Local Interface ID: 3

Neighbor (DR) Interface ID: 3 Neighbor (DR) Router ID: 1.1.11.1

LS age: 754 Options: (V6-Bit, E-Bit, R-bit, DC-Bit)

LS Type: Router Links Link State ID: 0

Advertising Router: 1.1.11.1 LS Seq Number: 80000004 Checksum: 0x9C34

Length: 40 Number of Links: 1

Link connected to: a Transit Network Link Metric: 10

Local Interface ID: 3 Neighbor (DR) Interface ID: 3 Neighbor (DR) Router ID: 1.1.11.1

Page 215: IPv6 training

IPv6 OSPF DB

unix1b#show ipv6 ospf database prefix

OSPFv3 Router with ID (1.1.1.1) (Process ID 1)

Intra Area Prefix Link States (Area 0)

Routing Bit Set on this LSA

LS age: 1235

LS Type: Intra-Area-Prefix-LSA Link State ID: 0

Advertising Router: 1.1.11.1

LS Seq Number: 80000002

Checksum: 0xC3CA

Length: 52

Referenced LSA Type: 2001

Referenced Link State ID: 0

Referenced Advertising Router: 1.1.11.1

Number of Prefixes: 1

Prefix Address: CAFE:6::1 Prefix Length: 128, Options: LA, Metric: 0

Routing Bit Set on this LSA LS age: 1235 LS Type: Intra-Area-Prefix-LSA Link State ID: 3072 Advertising Router: 1.1.11.1 LS Seq Number: 80000001 Checksum: 0x62EB Length: 52 Referenced LSA Type: 2002 Referenced Link State ID: 3 Referenced Advertising Router: 1.1.11.1 Number of Prefixes: 1 Prefix Address: 2000:: Prefix Length: 100, Options: None, Metric: 0

Page 216: IPv6 training

IPv6 OSPF DB External

unix1b#sh ipv6 ospf database external

OSPFv3 Router with ID (1.1.1.1) (Process ID 1)

Type-5 AS External Link States

Routing Bit Set on this LSA

LS age: 49

LS Type: AS External Link

Link State ID: 0

Advertising Router: 1.1.11.1

LS Seq Number: 80000001

Checksum: 0x80F7

Length: 36

Prefix Address: 45:: Prefix Length: 64, Options: None

Metric Type: 2 (Larger than any link state path)

Metric: 5

Page 217: IPv6 training

IPv6 OSPF DB Link

Unix1b#show ipv6 ospf database link

OSPFv3 Router with ID (1.1.1.1) (Process ID 1)

Link (Type-8) Link States (Area 0)

LS age: 304

Options: (V6-Bit, E-Bit, R-bit, DC-Bit)

LS Type: Link-LSA (Interface: Ethernet0/0)

Link State ID: 3 (Interface ID)

Advertising Router: 1.1.1.1

LS Seq Number: 80000002

Checksum: 0x6D83

Length: 64

Router Priority: 1

Link Local Address: FE80::4 Number of Prefixes: 1

Prefix Address: 2000:: Prefix Length: 100, Options: None

LS age: 357

Options: (V6-Bit, E-Bit, R-bit, DC-Bit) LS Type: Link-LSA (Interface: Ethernet0/0) Link State ID: 3 (Interface ID)

Advertising Router: 1.1.11.1 LS Seq Number: 80000002

Checksum: 0x11D6 Length: 64 Router Priority: 1

Link Local Address: FE80::3 Number of Prefixes: 1

Prefix Address: 2000:: Prefix Length: 100, Options: None

Page 218: IPv6 training

IPv6 OSPF DB Summary

unix1b#show ipv6 ospf database database-summary

OSPFv3 Router with ID (1.1.1.1) (Process ID 1)

Area 0 database summary LSA Type Count Delete Maxage

Router 2 0 0 Network 1 0 0 Link 2 0 0

Prefix 2 0 0 Inter-area Prefix 0 0 0

Inter-area Router 0 0 0 Type-7 External 0 0 0 Unknown 0 0 0

Subtotal 7 0 0

Process 1 database summary

LSA Type Count Delete Maxage Router 2 0 0 Network 1 0 0

Link 2 0 0 Prefix 2 0 0

Inter-area Prefix 0 0 0 Inter-area Router 0 0 0 Type-7 External 0 0 0

Unknown 0 0 0 Type-5 Ext 1 0 0

Unknown AS 0 0 0 Total 8 0 0

Page 219: IPv6 training

ISIS

n  ISIS pour ISO 10589 n  CLNP/CLNS

n  Integrated ISIS pour IPv4 - RFC 1195 n  Très semblable a OSPF n  TLV rends le protocole tres souple n  ISIS pour IPv6 Protocol 0X8E n  2 nouveaux TLV

n  IPv6_Reachability (0XEC) n  IPv6_Interface_Address (0XE8)

Page 220: IPv6 training

Configuration ISIS pour IPv6

router isis fred net 49.0001.0000.0000.0000.0200 passive-interface Loopback0

! !

interface Ethernet0/0

no ip address

ipv6 address FE80::3 link-local

ipv6 address 2000::1/100

ipv6 router isis fred standby version 2

standby 1 ipv6 FE80::5

standby 1 preempt

standby 1 track Ethernet1/0

end

Page 221: IPv6 training

ISIS DB

unix1e#sh isis da IS-IS Level-1 Link State Database: LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL

unix1a.00-00 0x00000006 0x682A 1173 0/0/0 unix1e.00-00 * 0x00000004 0xD820 1178 0/0/0 unix1e.01-00 * 0x00000001 0x67D7 1177 0/0/0

IS-IS Level-2 Link State Database: LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1a.00-00 0x00000006 0x1A78 1177 0/0/0 unix1e.00-00 * 0x00000004 0x0CEC 1178 0/0/0

unix1e.01-00 * 0x00000001 0x7F48 1177 0/0/0 unix1e#

Page 222: IPv6 training

ISIS Database

unix1e#sh isis database unix1a.00-00 detail IS-IS Level-1 LSP unix1a.00-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1a.00-00 0x00000006 0x682A 1061 0/0/0 Area Address: 49 NLPID: 0x8E Hostname: unix1a IPv6 Address: 2000::1 Metric: 10 IPv6 2000::/64 Metric: 10 IS unix1e.01 IS-IS Level-2 LSP unix1a.00-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1a.00-00 0x00000006 0x1A78 1065 0/0/0 Area Address: 49 NLPID: 0x8E Hostname: unix1a IPv6 Address: 2000::1 Metric: 10 IS unix1e.01 Metric: 10 IPv6 2000::/64

Page 223: IPv6 training

ISIS Database

unix1a#sh isis data Area 1: IS-IS Level-1 Link State Database:

LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1a.00-00 * 0x00000006 0x682A 834 0/0/0 unix1e.00-00 0x00000004 0xD820 835 0/0/0

unix1e.01-00 0x00000001 0x67D7 834 0/0/0 IS-IS Level-2 Link State Database: LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1a.00-00 * 0x00000006 0x1A78 838 0/0/0

unix1e.00-00 0x00000004 0x0CEC 835 0/0/0 unix1e.01-00 0x00000001 0x7F48 834 0/0/0 Area fr:

Area fred:

Page 224: IPv6 training

DIS Pseudonode LSP

unix1a#sh isis data unix1e.01-00 det Area 1:

IS-IS Level-1 LSP unix1e.01-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1e.01-00 0x00000001 0x67D7 747 0/0/0

Metric: 0 IS-Extended unix1e.00 Metric: 0 IS-Extended unix1a.00 IS-IS Level-2 LSP unix1e.01-00

LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL unix1e.01-00 0x00000001 0x7F48 746 0/0/0 Metric: 0 IS-Extended unix1e.00

Metric: 0 IS-Extended unix1a.00 unix1a#

Page 225: IPv6 training

Router LSP

unix1a#sh isis data unix1e.00-00 det

Area 1:

IS-IS Level-1 LSP unix1e.00-00

LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL

unix1e.00-00 0x00000004 0xD820 676 0/0/0

Area Address: 49

NLPID: 0x8E Hostname: unix1e

IPv6 Address: 2000::5 Metric: 10 IPv6 2000::/64 Metric: 10 IS-Extended unix1e.01

IS-IS Level-2 LSP unix1e.00-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL

unix1e.00-00 0x00000004 0x0CEC 675 0/0/0

Area Address: 49

NLPID: 0x8E

Hostname: unix1e

IPv6 Address: 2000::5

Metric: 10 IS-Extended unix1e.01 Metric: 10 IPv6 2000::/64 unix1a#

Page 226: IPv6 training

Introduction

MP-BGP

Page 227: IPv6 training

Introduction

n  References n  RFC 1770, 1772,1773, 1774 n  The Internet Routing Architecture by Bassam Halabi

n  Path Vector Protocol n  Path Attribute

n  Mandatory n  Well-known n  Discretionary n  transitive n  Les + importants sont AS_PATH and NEXT_HOP

Page 228: IPv6 training

Introduction

n  eBGP et iBGP n  Echange les tables complètes au démarrage n  Les Updates uniquement ensuite n  Les parties spécifiques à IPv6 sont dans RFC 2545

Page 229: IPv6 training

Path Attributes

BGP

Page 230: IPv6 training

Attributes

n  Origin (Type code 1) n  Well-known, Mandatory n  0: IGP n  1: EGP n  2: Incomplete

n  AS_PATH (Type code 2) n  Well-known, Mandatory n  1: AS_SET n  2:AS_SEQUENCE

n  NEXT_HOP (Type Code 3) n  Well-known, Mandatory

Page 231: IPv6 training

Attributes

n  MULTI_EXIT_DISC (Type Code 4) n  Optional, Non-Transitive

n  LOCAL_PREF (Type Code 5) n  Well-known, Discretionary

n  ATOMIC-AGGREGATE (Type Code 6) n  Well-known, Discretionary

n  AGGREGATOR (Type Code 7) n  Optional, transitive

n  Community n  Cluster n  MP_REACH_NLRI

Page 232: IPv6 training

Algorithme du meilleur Chemin

BGP

Page 233: IPv6 training

Algorithme du meilleur chemin

n  Synchronization n  Next-Hop joignables n  Weigth n  Local Pref n  AS_PATH le plus court n  MED

n  bgp always-compare-med n  bgp bestpath med-confed n  bgp deterministic med

Page 234: IPv6 training

Algorithme du meilleur chemin

n  eBGP avant iBGP n  Multipath

n  eBGP Multipath -  maximum-paths n

n  iBGP Multipath -  maximum-paths ibgp n

n  eiBGP Multipath -  maximum-paths eibgp n

n  Path le plus vieux

Page 235: IPv6 training

Exemple

unix1a#sh bgp ipv6 600:11:22:62::/64 BGP routing table entry for 600:11:22:62::/64, version 700

Paths: (2 available, best #2, table Default)

Advertised to update-groups:

1

1 55570 47418 39654 {24266,44837,18778}

2000:100::100 from 2000:100::100 (5.5.5.5)

Origin EGP, metric 1174, localpref 100, valid, external

1 55570 47418 39654 {24266,44837,18778}

2000::100 from 2000::100 (1.1.1.1)

Origin EGP, metric 1174, localpref 100, valid, external, best

% NOTE: This command is deprecated. Please use 'show bgp ipv6 unicast'

unix1a#

Page 236: IPv6 training

Exemple

unix1a#sh bgp ipv6 600:11:22:62::/64 BGP routing table entry for 600:11:22:62::/64, version 900

Paths: (2 available, best #2, table Default)

Flag: 0x820

Not advertised to any peer

1 55570 47418 39654 24266 44837 18778 7481 30006 26443 58269 46052 30397 45086 7253 {2680,19823,56986}

2000:100::100 from 2000:100::100 (5.5.5.5)

Origin EGP, metric 1311, localpref 100, valid, external

1 55570 47418 39654 {24266,44837,18778}

2000::100 from 2000::100 (1.1.1.1)

Origin EGP, metric 1174, localpref 100, valid, external, best

Page 237: IPv6 training

BGP Message Format

n  Marker n  Pour les messages OPEN n  ou si l’Authentification n’est pas utilise, n  tous les bits sont a 1.

n  Length n  Longueur Totale du message incluant l’en-tête. n  4096 > LEN > 19

Page 238: IPv6 training

BGP Message Format - Type

n  Open n  Ouvre une session BGP

n  Update n  Contient les information de routages n  Routes a ajouter et routes a retirer (withdraw)

n  Notification n  Reset la connexion suite a une erreur

n  Keepalive n  Maintient la connexion ouverte

Page 239: IPv6 training

Open

Ethernet Packet: 127 bytes

Dest Addr: AABB.CC03.F000, Source Addr: AABB.CC03.E900 Protocol: 0x86DD

IPV6 Version: 0x6, Traffic_Class: 0xC0, (Prec=Internet Contrl) Flow_Label: 0x000000, Payload_Length: 73

Next_Header: 6, Hop_Limit: 1 Source: 2000::1 Dest: 2000::100

TCP Src Port: 179, Dest Port: 11044

Seq #: 0x90D41545, Ack #: 0x0223D0B8, Hdr_Len: 5 Flags: 0x18 ACK PSH, Window: 16347, Checksum: 0x624D (OK) Urgent Pointer: 0

BGP Marker: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF Length: 53, Type: 1 (Open)

Version: 4, AS: 65000, Hold Time: 180, BGP ID: 10.1.1.1 Option length: 24

Type:2 Len:6 : Capability: (Code: 1 Len:4) MultiProtocol Ext. AFI: IPv6, SAFI: Unicast, Type:2 Len:2 : Capability: (Code:128 Len:0) Route Refresh (old)

Type:2 Len:2 : Capability: (Code: 2 Len:0) Route Refresh Type:2 Len:6 : Capability: (Code: 65 Len:4) Unknown Capability: 4104 0000 FDE8

Page 240: IPv6 training

Keepalive

Ethernet Packet: 93 bytes Dest Addr: AABB.CC03.E900, Source Addr: AABB.CC03.F000

Protocol: 0x86DD

IPV6 Version: 0x6, Traffic_Class: 0xC0, (Prec=Internet Contrl)

Flow_Label: 0x000000, Payload_Length: 39

Next_Header: 6, Hop_Limit: 60

Source: 2000::100

Dest: 2000::1

TCP Src Port: 11044, Dest Port: 179

Seq #: 0x0223D0B8, Ack #: 0x90D4158D, Hdr_Len: 5

Flags: 0x18 ACK PSH, Window: 32000, Checksum: 0x4891 (OK)

Urgent Pointer: 0

BGP Marker: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF

Length: 19, Type: 4 (KeepAlive)

Page 241: IPv6 training

Update (MP_REACH_NLRI)

Ethernet Packet: 246 bytes Dest Addr: AABB.CC03.E900, Source Addr: AABB.CC03.F000

Protocol: 0x86DD

IPV6 Version: 0x6, Traffic_Class: 0xC0, (Prec=Internet Contrl)

Flow_Label: 0x000000, Payload_Length: 192

Next_Header: 6, Hop_Limit: 60

Source: 2000::100

Dest: 2000::1

TCP Src Port: 11044, Dest Port: 179

Seq #: 0x0223D0CB, Ack #: 0x90D415A0, Hdr_Len: 5

Flags: 0x18 ACK PSH, Window: 32000, Checksum: 0x4401 (OK)

Urgent Pointer: 0

BGP Marker: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF

Length: 172, Type: 2 (Update) Unfeasible Routes Length: 0 Total Path Attribute Length: 149

Attr Flags: 0x40, Type: 1 ORIGIN: 1 (EGP) Attr Flags: 0x40, Type: 2 AS_PATH:

Path Type: 2 (AS_SEQ), Len: 4; 1,33299,51178,47751, Path Type: 1 (AS_SET), Len: 1; 27016, Attr Flags: 0x80, Type: 4 MULTI_EXIT_DISC: 2219

Attr Flags: 0x40, Type: 5 LOCAL_PREF: 20889 Attr Flags: 0x80, Type: 14 MP_REACH_NLRI: Len: 111

AFI: IPv6, SAFI: Unicast, NEXT_HOP: 2000::100 NLRI: Len: 64 bits, 600:11:22::

NLRI: Len: 64 bits, 600:11:22:1:: NLRI: Len: 64 bits, 600:11:22:2:: NLRI: Len: 64 bits, 600:11:22:3::

NLRI: Len: 64 bits, 600:11:22:4:: NLRI: Len: 64 bits, 600:11:22:5::

NLRI: Len: 64 bits, 600:11:22:6:: NLRI: Len: 64 bits, 600:11:22:7:: NLRI: Len: 64 bits, 600:11:22:8::

NLRI: Len: 64 bits, 600:11:22:9::

Page 242: IPv6 training

Update (MP_REACH_NLRI)

BGP Marker: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF Length: 178, Type: 2 (Update) Unfeasible Routes Length: 0 Total Path Attribute Length: 155

Attr Flags: 0x40, Type: 1 ORIGIN: 1 (EGP) Attr Flags: 0x40, Type: 2 AS_PATH: Path Type: 2 (AS_SEQ), Len: 6; 1, 42040, 60532, 26199, 13743, 42950,

Path Type: 1 (AS_SET), Len: 2; 2238, 12373, Attr Flags: 0x80, Type: 4 MULTI_EXIT_DISC: 2454 Attr Flags: 0x40, Type: 5 LOCAL_PREF: 70553 Attr Flags: 0x80, Type: 14 MP_REACH_NLRI: Len: 111

AFI: IPv6, SAFI: Unicast, NEXT_HOP: 2000::100 NLRI: Len: 64 bits, 600:11:22:14::

NLRI: Len: 64 bits, 600:11:22:15:: NLRI: Len: 64 bits, 600:11:22:16:: NLRI: Len: 64 bits, 600:11:22:17:: NLRI: Len: 64 bits, 600:11:22:18::

NLRI: Len: 64 bits, 600:11:22:19:: NLRI: Len: 64 bits, 600:11:22:1A:: NLRI: Len: 64 bits, 600:11:22:1B:: NLRI: Len: 64 bits, 600:11:22:1C::

NLRI: Len: 64 bits, 600:11:22:1D::

Page 243: IPv6 training

Notification

Ethernet Packet: 97 bytes Dest Addr: AABB.CC03.F000, Source Addr: AABB.CC03.E900 Protocol: 0x86DD

IPV6 Version: 0x6, Traffic_Class: 0xC0, (Prec=Internet Contrl) Flow_Label: 0x000000, Payload_Length: 43 Next_Header: 6, Hop_Limit: 1

Source: 2000::1 Dest: 2000::100 TCP Src Port: 179, Dest Port: 11068

Seq #: 0xD7C221D4, Ack #: 0x3A33542E, Hdr_Len: 5 Flags: 0x18 ACK PSH, Window: 16347, Checksum: 0x74D9 (OK) Urgent Pointer: 0

BGP Marker: FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF Length: 23, Type: 3 (Notification) Error Code: 2, OPEN Message Error

Error SubCode: 2, Bad Peer AS Error Data: 0001

Page 244: IPv6 training

Tables de Routage et BGP

unix1a#sh bgp ipv6 un 600:11:22:63::/64 BGP routing table entry for 600:11:22:63::/64, version 7801 Paths: (2 available, best #2, table Default) Multipath: eBGP Advertised to update-groups: 1 1 55570 47418 39654 {24266,44837,18778} 2000:100::100 from 2000:100::100 (5.5.5.5) Origin EGP, metric 1174, localpref 100, valid, external,

multipath 1 55570 47418 39654 {24266,44837,18778} 2000::100 from 2000::100 (1.1.1.1) Origin EGP, metric 1174, localpref 100, valid, external,

multipath, best unix1a#sh ipv6 ro 600:11:22:63::/64 Routing entry for 600:11:22:63::/64 Known via "bgp 65000", distance 20, metric 1174, type external Redistributing via isis Redistributing via ospf 1 Route count is 2/2, share count 0 Routing paths: 2000::100 Last updated 00:04:21 ago 2000:100::100 Last updated 00:04:21 ago

unix1a#sh ipv6 cef 600:11:22:63::/64 det

600:11:22:63::/64, epoch 0, per-destination sharing recursive via 2000::100 attached to Ethernet0/0

recursive via 2000:100::100 attached to Ethernet1/0

Page 245: IPv6 training

eBGP Vs iBGP

n  iBGP ne change pas le NEXT_HOP n  iBGP ne répète pas les messages reçus

n  iBGP Requiert un maillage complet n  Cluster & Confederation

n  Cluster permet a un speaker iBGP de répéter un message n  Confédération crée des Sub-AS relies par des sessions se comportant comme des « eBGP »

Page 246: IPv6 training

Cluster et Route-Reflector

Cluster

iBGP

iBGP

iBGP eBGP

eBGP

Client

Client

Client

les Clients n’ont pas besoin d’un maillage intégral n(n-1)/2

Non-Client

Non-Client

Page 247: IPv6 training

Confédération

SubAS 65001

SubAS 65002

eBGP

iBGP

iBGP

AS1

Page 248: IPv6 training

Conclusions

n  Les protocoles de routages les plus populaires sont disponibles sous IPv6 n  RIPng est RIPv2 pour IPv6 n  OSPFv3 apporte qq changements dans la Database Topologique n  MP-BGP transporte les Update dans des MP_REACH_NLRI et MP_UNREACH_NLRI

Page 249: IPv6 training

IPv6 sur MPLS/IPv4

Page 250: IPv6 training

Pourquoi MPLS ?

n  Initialement le but était de remplacer l’en-tête IP, par une en-tête plus simple pour une commutation plus rapide

n  Un label de longueur fixe remplace l’adresse IP 32 bits max et de longueur variable n  Introduit un mode connecté pour IP sans connexion n  Les routeurs IP devenus très performants, l’argument d ’une plus grande vitesse de

commutation ne tient plus alors pourquoi MPLS ? n  MPLS permet alors de fournir des services beaucoup plus simplement qu’IP

n  MPLS-VPN est l’application qui a décidé la plupart des opérateurs n  Traffic Engineering

-  Allier RSVP à MPLS pour une signalisation en mode connecté -  Permet de mieux utiliser la bande passante d’un réseau au lieu du plus court

chemin uniquement. n  IPv6

-  6PE -  6VPE

Page 251: IPv6 training

Architecture MPLS

Label Imposition

Label Switching

Penultimate Hop Popping

Label Disposition

Page 252: IPv6 training

MPLS: distribution de label

Label Imposition

10.9.8.0 12

10.9.1.0 18

10.9.1.0 POP

10.9.8.0 29

Page 253: IPv6 training

Architecture MPLS

Label Imposition

Label Switching

PHP

Label Disposition

IP IP 29

IP 12

IP 18

IP

Page 254: IPv6 training

Forwarding Equivalence Class (FEC)

n  BUT: n  Associer les Forwarding Equivalence Class (FEC) à des labels n  FEC: Un ensemble de trafic allant vers une même destination et devant

recevoir un même traitement pour l’acheminement…

n  Exemple de FEC: n  Une adresse destination IP n  Un préfixe d’adresse (Summary address)

Page 255: IPv6 training

Labels

n  Une FEC est associée à un Label n  Ces labels doivent être distribués aux voisins

n  LDP n  RSVP

Page 256: IPv6 training

Routeur MPLS

n  Un routeur MPLS commute le trafic avec une table de commutation de label au lieu d’une table de routage

n  La table de commutation de label est le résultat de la table de routage et de la table des labels

n  Les labels sont échangés au moyen de LDP ou RSVP

Page 257: IPv6 training

LDP Hello

Les Routeurs broadcast un Hello pour découvrir leurs voisins LDP

Hello

Page 258: IPv6 training

LDP Connexion TCP

TCP Syn

TCP Ack

Les Routeurs établissent une session LDP sur TCP avec leurs voisins

Page 259: IPv6 training

LDP Label Request/Mapping

Label Request 10.9.8.0 ?

Label 12

Les Routeurs demandent les labels des routes reçues à leurs voisins

Label POP

Label 18

Label 29

Page 260: IPv6 training

Un LSP peut s’établir

Label Imposition

Label Switching

PHP

Label Disposition

IP IP 29

IP 12

IP 18

IP

Si un label est présent pour une destination, le paquet sera commuté sur son label sinon IP

Page 261: IPv6 training

MPLS-VPN

n  VRF n  Virtual Routing and Forwarding n  Un espace privé et propre à chaque client

n  Les Routes clients VRF sont échangées par BGP entre routeurs PE n  Le Cœur de réseau constitué des routeurs P et PE échange ses routes par

ISIS ou OSPF et ses labels par LDP ou RSVP

Page 262: IPv6 training

Architecture MPLS-VPN

n  PE: Provider Edge

n  CE: Customer Edge

n  P: Provider

PE

Nuage MPLS

OSPF ou ISISLDP ou RSVP

P

CE

CECE

CE

PE

PEPE

P

PP

PE

MP-iBGP

VRF Green

VRF Green

VRF Red

VRF Red

Page 263: IPv6 training

MPLS-VPN 2 Niveaux

n  Cœur de Réseau n  OSPF ou ISIS

-  Construit la table de routage Infrastructure n  LDP ou RSVP

-  Distribue les labels Infrastructure n  VRF

n  BGP: Construit les tables de routages VPN n  BGP: Distribue les labels VPN

Page 264: IPv6 training

MPLS VPN: En détail

n  Echange de label BGP n  Echange de Label LDP n  Voyage d’un paquet de CE

à CE

PE

Nuage MPLS

P

CE CE

PEl0:193.13.13.1

P

MP-iBGP

192.168.1.0 label 34192.168.1.0

192.168.1.0

IP

IP 34 15

193.13.13.1 POP

193.13.13.1 25

193.13.13.1 15

IP 34 25

IP 34

IP

Page 265: IPv6 training

Update

Routage MPLS-VPN

PE1 lo0: 10.0.0.1 CE1

RIB 112.14.16.0

112.14.16.0

PE2

10:1:112.14.16.0 nhop: 10.0.0.1

RT:100:1

vrf sales rd 10:1 route-target export 100:1 Table BGP vrf sales 10:1:112.14.16.0 10.0.0.1 RIB vrf sales 112.14.16.0 192.168.1.1

1

2

4

3

vrf sales rd 10:2 route-target import 100:1

Table BGP vrf sales 10:1:112.14.16.4 10.0.0.1 10:2:112.14.16.4 10.0.0.1

RIB vrf sales 112.14.16.0 10.0.0.1

CE2 112.14.16.0 192.168.2.1

192.168.1.1 192.168.2.1

Page 266: IPv6 training

MPLS/VPN InterAS ou NNI

MPLS/VPN MPLS/VPN

VSAT Spoke

HQs Européens

Hub VSAT

???

Page 267: IPv6 training

InterAS Option A

n  chaque client = une session BGP IP entre les PE ASBR n  Echange de routes IPv4 n  IPv4 entre les PE-ASBR

IP

IPUpdateMT-PE MT – P MT – PE ASBR C&W – PE ASBR

MP-iBGPeBGP

eBGPRIPv 2

C&W – PECE-AFRIQUE

MP-iBGP

L DP/IP LDP/IP IPLDP/I P

CE New-York

IP

eBGP

La nouvelle route est

dispo

RIPv 2

C&W – P

LDP/IP

Backbone MONACO TELECOM Backbone Cable &Wireless

IP

PE – Customer X MT – P Router MT – PE ASBR Router C& W – PE ASBR Router

IP Packet1917 IP Packet19 IP PacketYXIP Packet

LDP/ IP LDP/ IP IP

MP -iBGP eBGP

CECE

C&W – PE Router

IP

MP - iBGP

IPIP Packet

LDP/ IP

Page 268: IPv6 training

InterAS Option B

n  Une seule session MP-eBGP VPN entre les ASBR des deux Opérateurs n  Echange de routes VPNv4 n  MPLS entre les ASBR

PE – Customer X MT – P Router MT – PE ASBR Router C&W – PE ASBR Router

IP Packet1917

LDP/IP LDP/IP

MP -iBGP MP -eBGP

CECE

C&W – PE Router

IP

MP -iBGP

IPIP Packet

LDP/IP

Page 269: IPv6 training

InterAS Option C

MT PE ASBR Router

MP -eBGP

LDP /IP

CE

CE

IP IP

PE

PE

MT Route - Reflector ISP Route -Reflector

MP

-iBG

P

MP

- iBG

PM

P-iB

GP

MP -iB G

P

LDP /IP

ISP PE ASBR Router

n  Une seule session entre RR pour les routes vpn n  Pas de PE dédié, on interconnecte les RR entre eux n  Les PE ASBR ne servent qu’à échanger les routes/label vers les Next-Hop PE des

routes

Page 270: IPv6 training

Traffic Engineering

n  Mieux Utiliser la bande passante disponible sur le réseaux n  Le routage IP n’utilise que le chemin le plus court au risque de saturer

certains liens et de laisser d’autre liens complètement inutilisés ! n  TE permet d’emprunter les chemins ou la Bande Passante est disponible ! n  TE Réoptimise réguliérement les chemins n  Utilise RSVP pour signaler un chemin et réserver la bande passante sur les

liens n  Fast Reroute pour basculer sur un chemin de secours en quelques

millisecondes en cas de défaillance d’un lien ou d’un nœud !

Page 271: IPv6 training

Traffic Engineering

PATH BW 100 Mbps

RESV

Signalisation d’un chemin par RSVP

Page 272: IPv6 training

Application TE: Fast Reroute

n  Link Protection n  Protége les tunnels qui empruntent un Lien par un chemin de backup

présignalisé et disponible immédiatement en cas de soucis n  Node protection

n  Protége les tunnels qui passent par un nœud

Page 273: IPv6 training

FRR: Link Protection

n  Imite SONET APS n  Bascule tous les Tunnels TE

protégés qui empruntent ce lien sur un lien de secours en moins de 50 msec

n  PLR: Point of Local Repair n  MP: Merging Point PLR

MP

Page 274: IPv6 training

6PE et 6vPE

n  Les operateurs ont mis en place des réseaux MPLS IPv4 supportant une grande variété de services

n  6PE et 6vPE apportent un service IPv6 sans toucher au Cœur MPLS IPv4 n  Scalable. On peut facilement rajouter un PE pour encaisser une charge pour un seul n  Sur un routeur CISCO, le trafic est CEF ou dCEF switché

n  donc les temps de commutation sont optimum. n  Le lookup se fait sur un label plutôt qu’une adresse IPv6

n  Simple, rapide, efficace, fiable sont ces solutions !

Page 275: IPv6 training

6PE

6PE fournit un service IPv6 sur un PE MPLS IPv4

Page 276: IPv6 training

6PE distribue les labels IPv4 par LDP

6PE

LDP IPv4 P

MPLS LDP distribue les labels entre P et PE Routers

P

P

6PE 6

9 7

3

LDP IPv4

LDP IPv4 LDP IPv4

CE CE

Page 277: IPv6 training

6PE distribue les labels IPv6 par MP-BGP

6PE

P

BGP distribue les labels entre 6PE

neighbor x:x:x::x send-label

P

P

6PE

iBGP

14

iBGP

CE CE

RR

Page 278: IPv6 training

6PE - Vie d’un paquet de CE à CE

6PE

LDP IPv4 P

BGP

P

P

6PE 6

9

6 14 IPv6

9 14 IPv6

7

POP

LDP IPv4

LDP IPv4 LDP IPv4

LDP

BGP

7 14 IPv6

LDP

CE

14 IPv6

eBGP IPv6

eBGP IPv6

IPv6 IPv6

CE

Page 279: IPv6 training

Exemple - remote CE

unix1d#sh ipv6 ro dead:1::1/128 Routing entry for DEAD:1::1/128 Known via "bgp 65002", distance 20, metric 0, type external Route count is 1/1, share count 0

Routing paths: FE80::A8BB:CCFF:FE03:E907, Ethernet7/0 Last updated 00:14:56 ago

unix1d#sh bgp ipv6 u dead:1::1/128 BGP routing table entry for DEAD:1::1/128, version 15 Paths: (1 available, best #1, table Default)

Not advertised to any peer 11 65001 2000:2000:2::100 (FE80::A8BB:CCFF:FE03:E907) from 2000:2000:2::100 (10.10.10.1)

Origin IGP, localpref 100, valid, external, best

Page 280: IPv6 training

6PE. Label Imposition

unix1a#sh ipv6 ro dead:1::1/128 Routing entry for DEAD:1::1/128

Known via "bgp 11", distance 200, metric 0, type internal

Route count is 1/1, share count 0

Routing paths:

10.10.10.3%Default-IP-Routing-Table indirectly connected MPLS Required

Last updated 00:19:29 ago

unix1a#sh mpls for dead:1::1/128 det

Local Outgoing Prefix Bytes Label Outgoing Next Hop

Label Label or VC or Tunnel Id Switched interface

None 18 DEAD:1::1/128 0 Et1/0 10.1.1.2

MAC/Encaps=14/18, MRU=1500, Label Stack{18}

AABBCC03EA01AABBCC03E9018847 00012000

No output feature configured

AT the CE unix1d#sh bgp ipv6 u dead:1::1/128

BGP routing table entry for DEAD:1::1/128, version 7

Paths: (1 available, best #1, table Default)

Not advertised to any peer 11 65001 2000:2000:2::100 (FE80::A8BB:CCFF:FE03:E907) from 2000:2000:2::100 (10.10.10.1)

Origin IGP, localpref 100, valid, external, best

Page 281: IPv6 training

P Router

unix1c#sh mpls for Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or VC or Tunnel Id Switched interface

16 Pop Label 10.10.10.3/32 0 Et3/0 10.1.3.2 17 16 10.10.10.1/32 0 Et3/0 10.1.3.2 18 Pop Label 10.1.2.0/24 0 Et3/0 10.1.3.2 19 Pop Label 10.1.1.0/24 0 Et3/0 10.1.3.2 20 Pop Label CAFE:3::/64 0 aggregate

Page 282: IPv6 training

6PE - Label Disposition

unix1b#sh mpls for dead:1::1/128 Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or VC or Tunnel Id Switched interface 18   No Label DEAD:1::1/128 0 Et6/0 FE80::A8BB:CCFF:FE03:ED06

unix1b#sh ipv6 cef dead:1::1/128 det

DEAD:1::1/128, epoch 0 local label info: global/18 nexthop FE80::A8BB:CCFF:FE03:ED06 Ethernet6/0

unix1b#sh ipv6 ro dead:1::1/128 Routing entry for DEAD:1::1/128 Known via "bgp 11", distance 20, metric 0, type external Route count is 1/1, share count 0

Routing paths: FE80::A8BB:CCFF:FE03:ED06, Ethernet6/0 Last updated 00:39:46 ago

Page 283: IPv6 training

6PE Capability in the BGP Open

Ethernet II, Src: ca:00:10:ec:00:1c (ca:00:10:ec:00:1c), Dst: ca:02:10:ec:00:1c (ca:02:10:ec:00:1c)

Internet Protocol, Src: 10.10.10.1 (10.10.10.1), Dst: 10.10.10.3 (10.10.10.3)

Transmission Control Protocol, Src Port: 26466 (26466), Dst Port: bgp (179), Seq: 1, Ack: 1, Len: 69

Border Gateway Protocol OPEN Message Marker: 16 bytes Length: 69 bytes Type: OPEN Message (1) Version: 4 My AS: 1 Hold time: 180 BGP identifier: 10.10.10.1 Optional parameters length: 40 bytes Optional parameters Capabilities Advertisement (8 bytes) Parameter type: Capabilities (2) Parameter length: 6 bytes Multiprotocol extensions capability (6 bytes) Capability code: Multiprotocol extensions capability (1) Capability length: 4 bytes Capability value Address family identifier: IPv4 (1) Reserved: 1 byte Subsequent address family identifier: Unicast (1) Capabilities Advertisement (8 bytes) Parameter type: Capabilities (2) Parameter length: 6 bytes Multiprotocol extensions capability (6 bytes) Capability code: Multiprotocol extensions capability (1) Capability length: 4 bytes Capability value Address family identifier: IPv6 (2) Reserved: 1 byte Subsequent address family identifier: Unicast (1)

Capabilities Advertisement (8 bytes) Parameter type: Capabilities (2)

Parameter length: 6 bytes

Multiprotocol extensions capability (6 bytes)

Capability code: Multiprotocol extensions capability (1) Capability length: 4 bytes

Capability value

Address family identifier: IPv6 (2) Reserved: 1 byte

Subsequent address family identifier: Labeled Unicast (4) Capabilities Advertisement (4 bytes)

Parameter type: Capabilities (2)

Parameter length: 2 bytes

Route refresh capability (2 bytes) Capability code: Route refresh capability (128)

Capability length: 0 bytes

Capabilities Advertisement (4 bytes)

Parameter type: Capabilities (2)

Parameter length: 2 bytes

Route refresh capability (2 bytes) Capability code: Route refresh capability (2)

Capability length: 0 bytes

Capabilities Advertisement (8 bytes)

Parameter type: Capabilities (2)

Parameter length: 6 bytes

Support for 4-octet AS number capability (6 bytes)

Capability code: Support for 4-octet AS number capability (65) Capability length: 4 bytes

Capability value

AS number: 1

Page 284: IPv6 training

6PE Update BGP

Ethernet II, Src: ca:02:10:ec:00:1c (ca:02:10:ec:00:1c), Dst: ca:00:10:ec:00:1c (ca:00:10:ec:00:1c) Internet Protocol, Src: 10.10.10.3 (10.10.10.3), Dst: 10.10.10.1 (10.10.10.1) Transmission Control Protocol, Src Port: bgp (179), Dst Port: 26466 (26466), Seq: 89, Ack: 89, Len: 100 Border Gateway Protocol UPDATE Message Marker: 16 bytes Length: 100 bytes Type: UPDATE Message (2) Unfeasible routes length: 0 bytes Total path attribute length: 77 bytes Path attributes ORIGIN: INCOMPLETE (4 bytes) Flags: 0x40 (Well-known, Transitive, Complete) Type code: ORIGIN (1) Length: 1 byte Origin: INCOMPLETE (2) AS_PATH: empty (3 bytes) Flags: 0x40 (Well-known, Transitive, Complete) Type code: AS_PATH (2) Length: 0 bytes AS path: empty MULTI_EXIT_DISC: 0 (7 bytes) Flags: 0x80 (Optional, Non-transitive, Complete) Type code: MULTI_EXIT_DISC (4) Length: 4 bytes Multiple exit discriminator: 0 LOCAL_PREF: 100 (7 bytes) Flags: 0x40 (Well-known, Transitive, Complete) Type code: LOCAL_PREF (5) Length: 4 bytes Local preference: 100 MP_REACH_NLRI (56 bytes) Flags: 0x80 (Optional, Non-transitive, Complete) Type code: MP_REACH_NLRI (14) Length: 53 bytes Address family: IPv6 (2) Subsequent address family identifier: Labeled Unicast (4) Next hop network address (16 bytes) Next hop: ::ffff:10.10.10.3 (16) Subnetwork points of attachment: 0 Network layer reachability information (32 bytes) Label Stack=18 (bottom), IPv6=2001:1::/64 Label Stack=19 (bottom), IPv6=bad:cafe:3::1/128

Page 285: IPv6 training

6vPE

Page 286: IPv6 training

6vPE

6PE

LDP IPv4 P

MPLS LDP distribue les labels entre P et VPE Routers

P

P

6PE 6

9 7

3

LDP IPv4

LDP IPv4 LDP IPv4

CE CE

Page 287: IPv6 training

6vPE

6vPE

P

MP-BGP distribue les labels entre 6vPE

Address-family vpnv6

P

P

6vPE

iBGP

14

iBGP

CE CE

RR

Page 288: IPv6 training

6vPE apporte le VRF à 6PE

n  La virtualization permet à chaque client d’avoir son réseau privé n  Configurations facilitées

6vPE

CE

CE CE

VRF Engineering IPv4 VRF Engineering IPv6

VRF Sales IPv4 VRF Sales IPv6 VRF Tech IPv6

Page 289: IPv6 training

Table BGP 6vPE

unix1c#sh bgp vpnv6 unicast vrf sales BGP table version is 5, local router ID is 10.10.10.4 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 10:1 (default for vrf sales) *> DEAD:1::1/128 :: 0 32768 ? unix1c#sh bgp vpnv6 unicast vrf sales dead:1::1/128 BGP routing table entry for [10:1]DEAD:1::1/128, version 5 Paths: (1 available, best #1, table sales) Advertised to update-groups: 1 Local :: from 0.0.0.0 (10.10.10.4) Origin incomplete, metric 0, localpref 100, weight 32768, valid, sourced, best Extended Community: RT:10:2 mpls labels in/out 21/nolabel(sales)

Page 290: IPv6 training

Table de routage 6vPE

unix1c#sh ipv6 ro vrf sales IPv6 Routing Table - sales - 2 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2

ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 LC DEAD:1::1/128 [0/0] via Loopback10, receive L FF00::/8 [0/0]

via Null0, receive

Page 291: IPv6 training

P router

unix1c#sh mpls for Local Outgoing Prefix Bytes Label Outgoing Next Hop Label Label or VC or Tunnel Id Switched interface 16 Pop Label 10.10.10.3/32 0 Et3/0 10.1.3.2

17 16 10.10.10.1/32 0 Et3/0 10.1.3.2 18 Pop Label 10.1.2.0/24 0 Et3/0 10.1.3.2 19 Pop Label 10.1.1.0/24 0 Et3/0 10.1.3.2

20 Pop Label CAFE:3::/64 0 aggregate 21   Pop Label DEAD:1::1/128[V] 0 aggregate/sales unix1b#sh bgp vpnv6 u v sales dead:1::1/128

BGP routing table entry for [10:1]DEAD:1::1/128, version 3 Paths: (1 available, best #1, table sales) Not advertised to any peer

Local ::FFFF:10.10.10.4 (metric 11) from 10.10.10.4 (10.10.10.4) Origin incomplete, metric 0, localpref 100, valid, internal, best Extended Community: RT:10:2

mpls labels in/out nolabel/21

Page 292: IPv6 training

6vPE

unix1b#sh ipv6 ro vrf sales

IPv6 Routing Table - sales - 2 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP EX - EIGRP external

O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 B DEAD:1::1/128 [200/0]

via 10.10.10.4%Default-IP-Routing-Table, indirectly connected L FF00::/8 [0/0]

via Null0, receive

unix1b#sh ipv6 ro vrf sales dead:1::1/128

Routing entry for DEAD:1::1/128 Known via "bgp 11", distance 200, metric 0, type internal Route count is 1/1, share count 0

Routing paths: 10.10.10.4%Default-IP-Routing-Table indirectly connected

MPLS Required Last updated 00:06:29 ago

unix1b#sh ipv6 cef vrf sales dead:1::1/128 det DEAD:1::1/128, epoch 0

recursive via 10.10.10.4 label 21 nexthop 10.1.3.3 Ethernet3/0

Page 293: IPv6 training

Configuration 6vPE

VRF Definition red RD 100:1 Address-family IPv6 Route-target import 10:1 Route-target both 100:1 Interface fa0/0 vrf forwarding RED

ipv6 address 2001:db8:1::1/64 Router bgp 100 neighbor 10.1.1.1 remote 100 address-family vpnv6 neighbor 10.1.1.1 activate address-family ipv6 vrf red neighbor 2001:db8:1::2 remote 65002 neighbor 2001:db8:1::2 activate

Page 294: IPv6 training

Conclusions

n  IPv6 sur MPLS pour IPv4 est une solution éprouvée n  Plusieurs opérateurs ont donné un service IPv6 à leurs client grâce à 6PE/6vPE

Page 295: IPv6 training

Tunnels

Page 296: IPv6 training

Objectif

n  Les Tunnels IPv4 permettent l’interconnexion de réseaux IPv6 via un réseau IPv4 n  Manuel n  Automatiques

Page 297: IPv6 training

Sommaire

n  http://www.cisco.com/en/US/docs/ios/solutions_docs/ipv6/v6domain.html n  Les Tunnels IPv6 dans IPv4

n  IPv6 manually configured tunnels

n  Automatic 6to4 tunnel

n  IPv6 over IPv4 GRE tunnels.

n  Le choix n’affecte pas les services fournis

Page 298: IPv6 training

Introduction

n  IPv6 ne va pas se substituer a IPv4 en un jour n  des ilots IPv6 auront besoin d’être interconnectés via des tunnels IPv4

Page 299: IPv6 training

tunnel mode ipv6ip

n  Configuration manuelle n  Les nœuds sont ajoutés a la demande

Page 300: IPv6 training

Configuration

n  unix1a

interface Tunnel0

no ip address ipv6 unnumbered Ethernet0/0 ipv6 rip fred enable

tunnel source Ethernet0/0 tunnel destination 10.1.1.2 tunnel mode ipv6ip end

!

interface Ethernet0/0 ip address 10.1.1.1 255.255.255.0 ipv6 address 2000:1::1/64 end

n  unix1b

interface Tunnel0 no ip address

ipv6 unnumbered Ethernet0/0 ipv6 rip fred enable tunnel source Ethernet0/0 tunnel destination 10.1.1.1

tunnel mode ipv6ip end

! interface Ethernet0/0 ip address 10.1.1.2 255.255.255.0 ipv6 address 2000:1::2/64

end

Page 301: IPv6 training

Interface Tunnel

unix1a#sh int tun 0

Tunnel0 is up, line protocol is up Hardware is Tunnel MTU 17920 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 10.1.1.1 (Ethernet0/0), destination

10.1.1.2 Tunnel protocol/transport IPv6/IP Tunnel TTL 255 Tunnel transport MTU 1480 bytes Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input 00:00:18, output 00:00:07, output hang

never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total

output drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 58 packets input, 9056 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0

throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0

ignored, 0 abort 70 packets output, 7184 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped

out

unix1b#sh int tun 0 Tunnel0 is up, line protocol is up

Hardware is Tunnel MTU 17920 bytes, BW 100 Kbit/sec, DLY 50000 usec,

reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set

Keepalive not set Tunnel source 10.1.1.2 (Ethernet0/0), destination 10.1.1.1

Tunnel protocol/transport IPv6/IP Tunnel TTL 255

Tunnel transport MTU 1480 bytes Tunnel transmit bandwidth 8000 (kbps)

Tunnel receive bandwidth 8000 (kbps) Last input 00:00:13, output 00:00:24, output hang never

Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops:

0

Queueing strategy: fifo Output queue: 0/0 (size/max)

5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec

60 packets input, 9496 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 58 packets output, 5924 bytes, 0 underruns

0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops

0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out

Page 302: IPv6 training

IPv6 Int Tunnel

unix1a#sh ipv6 int tu0

Tunnel0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::A01:101 No Virtual link-local address(es):

Interface is unnumbered. Using address of Ethernet0/0 No global unicast address is configured

Joined group address(es): FF02::1 FF02::2

FF02::9 FF02::1:FF01:101

MTU is 1480 bytes ICMP error messages limited to one every 100

milliseconds

ICMP redirects are enabled

ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 43469)

Hosts use stateless autoconfig for addresses.

unix1b#sh ipv6 int tu0

Tunnel0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::A01:102 No Virtual link-local address(es):

Interface is unnumbered. Using address of Ethernet0/0 No global unicast address is configured

Joined group address(es): FF02::1 FF02::2

FF02::9 FF02::1:FF01:102

MTU is 1480 bytes ICMP error messages limited to one every 100

milliseconds

ICMP redirects are enabled

ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 36129)

Hosts use stateless autoconfig for addresses.

Page 303: IPv6 training

Table de routage

unix1a#sh ipv6 ro IPv6 Routing Table - Default - 6 entries

Codes: C - Connected, L - Local, S - Static, U - Per-user Static route

B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP

EX - EIGRP external

O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2

ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2

C 2000:1::/64 [0/0]

via Ethernet0/0, directly connected

L 2000:1::1/128 [0/0]

via Ethernet0/0, receive

C CAFE:1::/64 [0/0]

via Loopback0, directly connected

L CAFE:1::1/128 [0/0]

via Loopback0, receive

R CAFE:2::/64 [120/2] via FE80::A01:102, Tunnel0 L FF00::/8 [0/0]

via Null0, receive

unix1a#

unix1b#sh ipv6 ro IPv6 Routing Table - Default - 6 entries

Codes: C - Connected, L - Local, S - Static, U - Per-user Static route

B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP

EX - EIGRP external

O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2

ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2

C 2000:1::/64 [0/0]

via Ethernet0/0, directly connected

L 2000:1::2/128 [0/0]

via Ethernet0/0, receive

R CAFE:1::/64 [120/2] via FE80::A01:101, Tunnel0 C CAFE:2::/64 [0/0]

via Loopback0, directly connected

L CAFE:2::1/128 [0/0]

via Loopback0, receive

L FF00::/8 [0/0]

via Null0, receive

unix1b#

Page 304: IPv6 training

Tunnel mode ipv6to4

Page 305: IPv6 training

Configuration

enter#sh run int tu2002

Building configuration... Current configuration : 148 bytes

! interface Tunnel2002

no ip address no ip redirects ipv6 address 2002:C0A8:6301::1/128

tunnel source Ethernet0/0 tunnel mode ipv6ip 6to4

end enter#sh run int ether0/0

Building configuration... Current configuration : 68 bytes

! interface Ethernet0/0

ip address 192.168.99.1 255.255.255.0 end

relay#sh run int tu2002

Building configuration... Current configuration : 148 bytes

! interface Tunnel2002

no ip address no ip redirects ipv6 address 2002:C0A8:2101::1/128

tunnel source Ethernet0/0 tunnel mode ipv6ip 6to4

end relay#sh run int et0/0

Building configuration... Current configuration : 68 bytes

! interface Ethernet0/0

ip address 192.168.33.1 255.255.255.0 end

Page 306: IPv6 training

Sh int tu2002

enter#sh int tu2002 Tunnel2002 is up, line protocol is up Hardware is Tunnel MTU 17920 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 192.168.99.1 (Ethernet0/0) Tunnel protocol/transport IPv6 6to4 Tunnel TTL 255 Tunnel transport MTU 1480 bytes Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input never, output 00:04:50, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output

drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 36 packets output, 4176 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out

relay#sh int tu2002 Tunnel2002 is up, line protocol is up Hardware is Tunnel MTU 17920 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 192.168.33.1 (Ethernet0/0) Tunnel protocol/transport IPv6 6to4 Tunnel TTL 255 Tunnel transport MTU 1480 bytes Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input never, output 00:23:51, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output

drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 0 packets input, 0 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 6 packets output, 576 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out

Page 307: IPv6 training

Sh ipv6 int tu2002

interface Ethernet0/0 ip address 192.168.99.1 255.255.255.0 end

enter#sh ipv6 int tu2002

Tunnel2002 is up, line protocol is up

IPv6 is enabled, link-local address is FE80::C0A8:6301 No Virtual link-local address(es):

Global unicast address(es): 2002:C0A8:6301::1, subnet is 2002:C0A8:6301::1/128 Joined group address(es):

FF02::1

FF02::2

FF02::1:FF00:1

FF02::1:FFA8:6301

MTU is 1480 bytes

ICMP error messages limited to one every 100 milliseconds

ICMP redirects are enabled

ICMP unreachables are sent

ND DAD is not supported

ND reachable time is 30000 milliseconds (using 29034)

Hosts use stateless autoconfig for addresses.

interface Ethernet0/0 ip address 192.168.33.1 255.255.255.0

relay#sh ipv6 int tu2002

Tunnel2002 is up, line protocol is up

IPv6 is enabled, link-local address is FE80::C0A8:2101 No Virtual link-local address(es):

Global unicast address(es): 2002:C0A8:2101::1, subnet is 2002:C0A8:2101::1/128 Joined group address(es):

FF02::1

FF02::2

FF02::1:FF00:1

FF02::1:FFA8:2101

MTU is 1480 bytes

ICMP error messages limited to one every 100 milliseconds

ICMP redirects are enabled

ICMP unreachables are sent

ND DAD is not supported

ND reachable time is 30000 milliseconds (using 16406)

Hosts use stateless autoconfig for addresses.

Page 308: IPv6 training

GRE Tunnels

Page 309: IPv6 training

Show int tu0

hostA#sh int tu 0 Tunnel0 is up, line protocol is up Hardware is Tunnel MTU 17916 bytes, BW 100 Kbit/sec, DLY 50000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation TUNNEL, loopback not set Keepalive not set Tunnel source 10.1.1.1 (Loopback0), destination 10.1.1.2 Tunnel protocol/transport GRE/IP Key disabled, sequencing disabled Checksumming of packets disabled Tunnel TTL 255 Fast tunneling enabled Tunnel transport MTU 1476 bytes Tunnel transmit bandwidth 8000 (kbps) Tunnel receive bandwidth 8000 (kbps) Last input 00:06:17, output 00:06:17, output hang never Last clearing of "show interface" counters never Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/0 (size/max) 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 13 packets input, 1372 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 13 packets output, 1372 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 unknown protocol drops 0 unknown protocol drops 0 output buffer failures, 0 output buffers swapped out

Page 310: IPv6 training

Show interface tunnel0

hostA# show ipv6 int tu 0

Tunnel0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::A8BB:CCFF:FE03:E900 No Virtual link-local address(es):

Global unicast address(es): 2000:1::1, subnet is 2000:1::/64

Joined group address(es): FF02::1 FF02::1:FF00:1

FF02::1:FF03:E900 MTU is 1476 bytes

ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent

ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 41164)

Page 311: IPv6 training

Conclusions

n  Les solutions de tunnels existantes permettent un passage en douceur a IPv6 n  De + en + d’operateurs offrent un service IPv6 et rendent inutiles ces tunnels

Page 312: IPv6 training

QoS pour IPv6

Page 313: IPv6 training

Objectif

n  Lister les solutions existantes pour assurer la QoS dans les réseaux IPv6 n  Pourquoi implémenter la QoS dans un réseau

Page 314: IPv6 training

La QoS en quelques mots…

n  Accepter tous les flux de trafics lorsqu’il n’y a pas de congestion n  Minimiser les conséquences et isoler les responsables d’une attaque DoS n  La QoS ne paye pas de Bande Passante gratuite mais permet de mieux l’employer n  La QoS permet de gérer la congestion en essayant si possible de l’éviter et en la contrôlant

au mieux si elle parait ! n  La QoS permet de contenir les flux en cas d’attaque DoS sur un réseau et d’éviter le pire n  Les deux modèles de gestion de la QoS sont:

IntServ. RFC 2998 DiffServ. RFC 2475 IntServer et DiffServ sont complémentaires

Page 315: IPv6 training

Introduction

n  La QoS ne permet pas d’acheter de la BW gratuite n  Elle permet de maitriser les flux de données notamment en période de congestion n  Etablir des gardes fous pour contrer les attaques DOS

Page 316: IPv6 training

IntServ

n  Définit 3 Classes de Services n  Guaranteed Services

-  Garantie de Bande passante, délai et pas de perte de trafic n  Controlled Load

-  Différents niveau de services best effort n  Best Effort

n  RFC 1633 n  RSVP comme protocole de signalisation n  Grande granularite, travaille sur des Flux n  Permet de faire de la QoS de bout en bout

Page 317: IPv6 training

Resource Reservation Protocol (RSVP)

n  RFC 2205 RSVP Version 1 n  RSVP est utilise pour réserver de la bande passante dans la strict priority Q

n  Contient un policer n  RSVP Service Types:

n  Controlled Load RFC 2211 -  Son equivalent DiffServ est AF

n  Guaranteed Load RFC 2212 -  Son equivalent DiffServ serait EF

Page 318: IPv6 training

DiffServ

n  Travaille sur des aggrégats de flux n  Deux Classes principales:

n  Expressed Forwarding -  Une classe de trafic pour le temps réel, la voix, la vidéo -  RSVP peut être employé pour réserver de la BW dans cette classe -  Match Guaranteed Services d’Intserv

n  Assured Forwarding -  Classes AF1x à AF3x -  CS1 à CS3 pour la compatibilité avec Priorité -  Match Controlled Load d’intServ

Page 319: IPv6 training

Expedited Forwarding

n  RFC 2598 n  DSCP 101110 n  Nécessite RSVP pour réserver la BW dans les Strict Priority Queues

Page 320: IPv6 training

ToS et Precedence

Page 321: IPv6 training

Le ToS devint DSCP!

n  RFC2474 définit le DSCP pour IPv4 et IPv6 n  Assured Forwarding Définit 4 Classes:

n  AF1, AF2, AF3, AF4 n  Dans chaque Classe, 3 niveaux de précédence

n  AF13 sera droppé avant AF12 qui sera droppé avant AF11

Drop Précédence Class#1 Class #2 Class #3 Class #4

Low Drop Precedence AF11 AF21 AF31 AF41

Medium Drop Precedence AF12 AF22 AF32 AF42

High Drop Precedence AF13 AF23 AF33 AF43

Page 322: IPv6 training

Traffic Class

n  Best Effort (BE) n  DSCP 0

n  CS1 Moins que « Best Efffort » n  Trafic sans aucune utilité Business !

00 01 02 03 04 05 06 07 IP Precedence ToS Bits 00 00

DSCP ECN Class Class Class 0 Drop Drop 0 0

Page 323: IPv6 training

DSCP PHB standardise

PHB Low Drop Precedence Medium Drop Precedence

High Drop Precedence

BE 000000

EF 101110 = 46

AF1 001010 (AF11) = 10 001100 (AF12) = 12 001110 (AF13) = 14

AF2 010010 (AF21) = 18 010100 (AF22) = 20 010110 (AF23) = 22

AF3 011010 (AF31) = 26 011100 (AF32) = 28 011110 (AF33) = 30

AF4 100010(AF41) = 34 100100 (AF42) = 36 100110 (AF43) = 38

Page 324: IPv6 training

Mécanismes de Bases

n  Rate-limiting (CAR) n  Classification n  Policing n  Marking n  Shaping n  Congestion Avoidance and Dropping

Page 325: IPv6 training

Diffuer Trafic Conditioner Block

Page 326: IPv6 training

Classification

n  Précédence n  IPv4 et IPv6

n  DSCP n  IPv4 et IPv6

n  Par Protocole: NBAR n  IPv4

Page 327: IPv6 training

Marking

n  Commited Access Rate (CAR) n  IPv4

n  Class-Based Marking n  IPv4, IPv6

n  Policy Based Routing (PBR) n  IPv4, IPv6

Page 328: IPv6 training

Policing et Shaping

n  Tocken Bucket algorithms n  Class-Based Policing (CBP)

n  IPv4, IPv6 n  Traffic Shaping

n  Generic Traffic Shaping (GTS) -  IPv4

n  Frame Relay Traffic Shaping (FRTS) -  IPv4, IPv6

n  Class-Based Shaping

Page 329: IPv6 training

Shaping Algorithms

n  Interval = Bc/CIR n  Cisco Default

n  Bc = 1/8 CIR = 125 msec interval n  125 msec = 8,000 bits / 64,000 bps

Line rate 128 kbps

8000 bits

transmitted 0 ms 125 ms

Page 330: IPv6 training

Evitement de la Congestion : WRED

n  Weighted Random Early Detection (WRED) n  IPv4, IPv6

n  Drop le trafic de façon aléatoire en fonction du DSCP où de la Précédence n  Evite la synchronization des retransmissions n  Efficace avec les applications TCP

Page 331: IPv6 training

Gestion de la congestion

n  Gestion des files d’attente n  Défaut sur les liens basse vitesse:

-  WFQ n  Principale pour une gestion approfondie:

-  LLQ

n  Gestion des chutes de paquets n  WRED

Page 332: IPv6 training

Gestion des files d’attentes

n  Queuing (FIFO) n  IPv4, IPv6 n  Par defaut

n  Priority Queuing n  IPv4 n  Legacy n  4 Niveaux de priorites Strictes n  Risques d’une queue (High) qui affame les autres

n  Custom Queuing n  IPv4 n  Legacy n  Donne a chaque Q un max d’octets a emettre a chaque tour n  Pas de Q affame

Page 333: IPv6 training

Gestion des files d’attentes

n  Flow Based Weighted Fair Queuing -WFQ n  IPv4, IPv6 n  défaut sur les liens séries n  Pas de Strict Priority Q pour la voix !

n  Class-based Weighted Fair Queuing n  IPv4, IPv6 n  Pas de Strict Priority pour la voix !

Page 334: IPv6 training

Weighted Fair Queuing

n  4 flux : n  1 Priorite 4, 2 Priorite 3, 1 Priorite 2, 1 Priorite 0

n  Calculons combien reçoit chaque flux en periode de congestion: n  (1 P4)5 + (2 P3)4 + (1 P2)3 + (1 P0)1 = 13

-  1 P4 = 5/13 = 0,39 = 39% de la BW dispo -  2 P3 = 4/13 = 0,31 = 31% de la BW dispo -  1 P2 = 3/13 = 0,23 = 23 % de la BW dispo -  1 P0 = 1/13 = 0,07 = 7% de la BW dispo

n  MDRR ressemble avec en plus une priority Q.

Page 335: IPv6 training

Gestion des files d’attentes

n  Low Latency Queueing (LLQ) n  IPv4, IPv6, MPLS n  CWFQ + Strict Priority Q n  1 File d’attente traitée en priorité stricte

-  Policer intégré pour éviter d’affamer les autres Qs n  La plus utilisée sauf GSR quand voix et données se partagent le défaut

n  Modified Deficit Round Robin (MDRR) n  IPv4, IPv6, MPLS n  GSR

Page 336: IPv6 training

Gestion de la congestion: LLQ

n  Strict Priority Queue avec Policer intégré n  RSVP pour réserver la BW dans la Q n  Scavenger a de la BW reservee pour permettre d’identifier une attaque

unix1a#sh policy-map egress

Policy Map egress Class voice priority 33 (%) Class business bandwidth 30 (%) Class scavenger bandwidth 5 (%) packet-based wred, exponential weight 9 class min-threshold max-threshold mark-probablity ---------------------------------------------------------- 0 - - 1/10 1 - - 1/10 2 - - 1/10 3 - - 1/10 4 - - 1/10 5 - - 1/10 6 - - 1/10 7 - - 1/10 Class class-default bandwidth 27 (%)

Page 337: IPv6 training

Layer 2 QOS

n  ATM IPv4, IPv6 n  Frame-Relay IPv4, IPv6 n  Ethernet 802.1p (Cos) IPv4, IPv6

Page 338: IPv6 training

Link Efficiency Mechanism

n  Compressed Real Time Protocol (cRTP) n  IPv4 n  40 Octets -> 2 a 5 Octets

n  Link Fragmentation and Interleaving n  IPv4, IPv6

Page 339: IPv6 training

Exemple

Out: Ethernet0/0 Ethernet Packet: 158 bytes Dest Addr: AABB.CC03.E900, Source Addr: AABB.CC03.F000 Protocol: 0x86DD IPV6 Version: 0x6, Traffic_Class: 0xB8, (Prec=CRITIC/ECP) (Low Delay) (High Thruput) Flow_Label: 0x000000, Payload_Length: 104 Next_Header: 58, Hop_Limit: 64 Source: 2000:1::100 Dest: 2000:2::100 ICMPv6 Type: 128, Code: 0 (Echo Request) Checksum: 0x3D5A (OK) Identifier: 0000, Sequence: 0000 Echo Data: 0 : 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 .................... 20 : 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 ....................

Page 340: IPv6 training

Diff-Serv et MPLS

Page 341: IPv6 training

La QoS sur MPLS

n  3 bits pour coder jusqu’à 8 niveaux de priorités dans MPLS n  EXPerimental bits

n  3 modes de transit du réseau MPLS n  Uniform

-  Le mode de fonctionnement MT/MTI n  Short Pipe n  Pipe

Page 342: IPv6 training

MPLS EXP Bits

n  Label/Tag: 20 bits n  MPLS Experimenetal bits: 3 bits n  Bottom of Stack: S n  Time To Live: 8 Bits

Label/Tag

3 2 1 0

TTL COS

EXP S

32 bits

Page 343: IPv6 training

Uniform Mode

MPLS/VPN

MPLS/VPN

Fusion MPLS EXP-IP DSCP EXP->DSCP

DSCP->EXP

dscp

Page 344: IPv6 training

Uniform Mode

n  Les réseaux MPLS et IP ont la même stratégie de QOS. n  MPLS et EXP sont écrasés par l’autre à l’entrée et la sortie

Page 345: IPv6 training

Pipe Mode

n  MPLS a sa stratégie de QOS propre et ne touche ni n’utilise au DSCP IP n  MPLS EXP est utilisé pour scheduler le paquet en sortie

Page 346: IPv6 training

Short Pipe Mode

n  MPLS a sa stratégie de QOS propre et ne touche pas au DSCP IP sauf…. n  pour Scheduler le paquet à la sortie

Page 347: IPv6 training

Conclusion

n  Les solutions de tunnels existantes permettent un passage en douceur a IPv6 n  MPLS apporte une grande souplesse

Page 348: IPv6 training

Gestion de la Sécurité avec IPv6

Page 349: IPv6 training

Objectifs

n  Menaces sur IPv6 n  Comprendre comment la sécurité est implémentée sur IPv6 n  Comprendre les plus de IPv6

Page 350: IPv6 training

Menaces sur IPv6

n  On retrouve beaucoup de menaces existantes sur IPv4 en IPv6 n  Un network scan devient plus difficile en IPv6

n  Trop d’adresses à essayer n  Si dual stack on trouvera le nœud IPv6 via un scan IPv4 plus facilement

n  The Hacker Choice: n  http://www.thc.org/thc-ipv6

Page 351: IPv6 training

IPSEC

n  IPSec est désormais obligatoire n  Authentification des en-têtes n  Confidentialité des données n  Intégrité des données n  http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-ipsec.html

Page 352: IPv6 training

SEND

n  Sécurise les accès au réseau IPv6 n  Impossible de voler une adresse

n  Protection grâce aux CGA n  Man in the middle attack n  spoofing

n  Impossible d’insérer un routeur voyou n  Protection grâce au certificat n  Session Hijacking n  Man in the middle attack

Page 353: IPv6 training

CEFv6 Unicast RPF

n  Fonctionnalité des routeurs CISCO n  Vérifie l’adresse source des paquets reçus sur une interface n  L’adresse source du paquet doit être accessible via une entrée de la table de routage en

mode loose. n  En mode strict le paquet doit être reçu via l’interface qui pointe vers l’adresse source

Page 354: IPv6 training

Access-list

n  Access-List Standard, Extended n  Reflexive ACL n  Time Based ACL n  Cisco IOS Firewall pour IPv6 n  http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-sec_trfltr_fw.html

Page 355: IPv6 training

Conclusion

n  IPSec fait partie de tous les stack IPv6 n  NDP est sécurisé par SEND n  CEFv6 Unicast RPF permet de se protéger du spoofing à moindre frais