Académique Documents
Professionnel Documents
Culture Documents
Configuration IP Des Routeurs Cisco
Configuration IP Des Routeurs Cisco
Cisco
Cisco
Innokenty Rudenko
Traduction autorise de louvrage en langue anglaise intitul Cisco Routers for IP Routing, de Innokenty Rudenko The Coriolis Group LLC, ISBN 1-57610-421-4
Le code de la proprit intellectuelle du 1er juillet 1992 interdit en effet expressment la photocopie usage collectif sans autorisation des ayants droit. Or, cette pratique sest gnralise notamment dans les tablissement denseignement, provoquant une baisse brutale des achats de livres, au point que la possibilit mme pour les auteurs de crer des uvres nouvelles et de les faire diter correctement est LE PHOTOCOPILLAGE aujourdhui menace. TUE LE LIVRE En application de la loi du 11 mars 1957, il est interdit de reproduire intgralement ou partiellement le prsent ouvrage, sur quelque support que ce soit, sans autorisation de lditeur ou du Centre Franais dExploitation du Droit de Copie, 20, rue des Grands-Augustins, 75006 Paris.
DANGER
2000, The Coriolis Group LLC. All rights reserved. ditions Eyrolles 2001, pour la prsente dition, ISBN 2-212-09238-5 ISBN dition Adobe eBook Reader : 2-212-28128-5, 2002
Remerciements
Je souhaite remercier les nombreuses personnes qui ont collabor cet ouvrage. Tout dabord, ma gratitude va Elliot Goykhman, prsident de Tsunami Computing cest lui qui a pens lcriture de ce livre. Il ma soutenu tout au long de la rdaction de cet ouvrage en mettant ma disposition tous les matriaux ncessaires. Je remercie lquipe de Coriolis qui a rendu ce projet possible, en particulier Michelle Stroup, diteur en charge de ce projet. Le travail avec elle et Colleen Brosnan fut un plaisir ; je suis impressionn par le travail quelle a accompli et les progrs linguistiques que je lui dois. Je remercie galement Stephanie Wall, Jennifer Watson et Meg Turecek. Je souhaite remercier mes collgues de Tsunami Computing et J .P. Morgan. Howard Poznansky ma abondamment conseill sur les aspects linguistiques de la rdaction de louvrage. Je remercie galement Frank Kettles, sans qui la rdaction de cet ouvrage aurait t bien moins amusante. Je remercie Gregg Messina et Mike Strumpf pour leurs conseils aviss sur lquipement du laboratoire de test qui a servi rdiger ce livre, et Boris Guzman pour son excellente relecture critique de certaines parties de louvrage. Je souhaite remercier Cornelius Hull, Anuj Kumar, Pat Coen, Roger Hampar, George Young, Carl Vitale, Mike Andrascik, Reginald Dancy, Ronnie Sun, Albert Mui, Julie Yip, Bill Hammill, Walter Sacharok, Dmitri Tcheverik, Valery Tsyplenkov, Artem Letko et tous les autres qui mont clair et encourag. Enn, je remercie mon pouse Adelya, qui ce livre est ddi, pour son amour, son soutien et sa patience tout au long de lcriture de ce livre.
Auteur
Innokenty Rudenko, diplm en sciences informatiques, CCIE 3805, MCSE, est consultant senior chez Tsunami Computing, Inc. Spcialis dans les rseaux bass sur les routeurs et les commutateurs Cisco, il travaille aujourdhui en mission chez J.P. Morgan New York.
1 2 3
5 6 8 9 11 13 14 14 15 17 22 22 25 30 30 33 34 36 36
XII
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conguration de IP sur LAN avec ARP et Proxy ARP . . . . . . . . . . . . . . . Conguration dune interface srie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de IP sur Frame Relay en mapping statique et ARP inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de IP sur RNIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 2
36 37 42 44 47
51 52 53 56 58 58 62 78
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conguration du pontage transparent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration du pontage transparent sur support physique mixte . . . . . . Conguration du pontage routage par la source (SRB) . . . . . . . . . . . . .
CHAPITRE 3
Routage statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Algorithme de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Partage de charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83 84 85 86 86 87 90 93 96 98 98 99 103
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Utilisation dinterfaces connectes pour le routage de base . . . . . . . . . . . Conguration du routage de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation de mtrique avec les routes statiques . . . . . . . . . . . . . . . . . . . . Routage statique avec utilisation dune interface de sortie au lieu du routeur de saut suivant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration du routage sans classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de la route par dfaut sur un routeur . . . . . . . . . . . . . . . . . . Conguration de routes individuelles pour des htes . . . . . . . . . . . . . . . . Conguration du partage de charge cot gal en routage statique . . . . . Conguration du partage de charge cot ingal en routage statique . . .
XIII
CHAPITRE 4
107 108 110 111 111 112 112 113 114 114 149
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conguration des protocoles de routage classe . . . . . . . . . . . . . . . . . . . Conguration des protocoles de routage sans classe . . . . . . . . . . . . . . . . .
CHAPITRE 5
171 172 172 173 174 177 177 178 178 182 182 186 187 188 191 199 203
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conguration de OSPF avec aire unique . . . . . . . . . . . . . . . . . . . . . . . . . . OSPF et son cot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de OSPF avec aires multiples . . . . . . . . . . . . . . . . . . . . . . . Annonce de la route par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Afchage de la base de donnes dtat des liens . . . . . . . . . . . . . . . . . . . . Conguration daires connes dans OSPF . . . . . . . . . . . . . . . . . . . . . . . . Liaisons virtuelles OSPF pour restaurer un rseau dorsal sectionn . . . . Liaisons virtuelles OSPF pour relier des aires isoles . . . . . . . . . . . . . . . . Conguration de OSPF sur des rseaux NBMA . . . . . . . . . . . . . . . . . . . .
copyright ditions Eyrolles
XIV
CHAPITRE 6
219 220 221 221 222 222 228 231 250 257 257 265
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Filtrage de trac avec listes daccs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Contrle des mises jour de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La redistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution avec EIGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution avec OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les routeurs ASBR et leur conguration . . . . . . . . . . . . . . . . . . . . . . . . . . Les aires de routage peu connes (NSSA Not-So-Stubby Area) et leur conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 7
273 273 274 274 275 276 278 278 278 287 307 316
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
La conguration du routage slectif (Policy-Based Routing) . . . . . . . . . . Conguration de la traduction dadresses NAT (Network Address Translation) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La conguration du protocole HSRP (Hot Standby Router Protocol) . . . Conguration du routage la demande (Dial-On Demand Routing) . . . .
CHAPITRE 8
Routage IP multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bases du routage multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Correspondance entre adresses IP multicast et adresses physiques (MAC)
XV
329 330 331 331 331 332 332 332 333 333 333 334 339 342 343
Arbre de routage par la source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbres partags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table de routage multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algorithme de Reverse Path Forwarding . . . . . . . . . . . . . . . . . . . . . . . . .
Les protocoles IP multicast existants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Protocole de gestion de groupes IGMP (Internet Group Management Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Protocol Independent Multicast-Dense Mode (PIM-DM) . . . . . . . . . . . . Protocol Independent Multicast-Sparse Mode (PIM-SM) . . . . . . . . . . . . Autres protocoles de routage multicast . . . . . . . . . . . . . . . . . . . . . . . . . . .
Solutions de conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le programme MCASTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-DM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-SM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-SM et PIM-DM sur la mme interface simultanment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-SM sur des rseaux NBMA . . . . . . . . . . . . . . . . . .
Annexes
ANNEXE A
Connexion de deux routeurs Cisco dos dos en utilisant deux cbles srie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ANNEXE B
349
351
357
Horodatage de Ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ANNEXE E
363
365
XVI
ANNEXE F
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Introduction
Conguration IP des routeurs Cisco, encore un livre parmi tant dautres ! , vous-tes-vous dit en prenant en main ce livre. Dtrompez-vous ; ce livre sadresse tout dabord aux praticiens qui, grce la lecture de cet ouvrage, mettront en uvre plus facilement les routeurs Cisco dans un environnement oprationnel, par une meilleure connaissance des principes de fonctionnement dun rseau moderne. Ils y trouveront des solutions innovantes et des exemples de problmes rarement mentionns ailleurs. Les problmes lis aux rseaux, du fait de leur nature distribue, semblent plus complexes que ceux lis un ordinateur isol. De surcrot, les rseaux sarticulent autour de matriels ddis tels que les routeurs, qui pour tre des ordinateurs nen sont pas moins trs diffrents des ordinateurs usuels que sont les Macintosh, les PC voire les systmes Unix. Ainsi, les routeurs Cisco, dots dun systme dexploitation et dune interface de ligne de commande propritaires, apparaissent-ils de prime abord comme des cratures difciles matriser. Mais, les rseaux sont-ils vraiment complexes ? La rponse est non. Les principes sousjacents sont en gnral abordables. Ils peuvent tre explicits et le seront dans cet ouvrage. Dj mis en pratique depuis quelques annes, ils sont soumis depuis, un processus constant de recherches et damliorations. De nos jours, prvoir le comportement dun rseau nest plus un problme dans bien des cas. Les solutions existent, a fortiori si lon recourt une approche systmatique. Les routeurs Cisco eux-mmes ne sont pas si complexes. Ils le sont mme moins que les PC sous Windows 98 ou NT, les Macintosh sous Mac OS, sans parler des systmes fonctionnant sous Unix. Le nombre de commandes dun routeur Cisco est limit et la plupart sexpliquent delles-mmes. Si nous faisons une comparaison fonctionnelle entre ce que peut faire un PC et un routeur Cisco, ce dernier peut sembler un appareil trs rustique. Et pourtant, les administrateurs de Windows 98 nont pas grand mal matriser leur sujet. Cet ouvrage traite de cas de conguration assez pointus que lon ne peut trouver dans la plupart des autres ouvrages. Dans chaque exemple de conguration, il sera expliqu pourquoi
chaque action doit tre faite et comment celle-ci se justie au regard des principes de fonctionnement des rseaux. Nombreux sont ceux qui pensent que ladministration dun rseau relve plus de lart que de la technique la technique tant vue comme une mthode dinvestigation rationnelle, par opposition un art o les solutions apparatraient comme par magie. Si tant est que le rseau fasse appel lart, ce ne peut tre que dune faon limite. Prenons lexemple du schma dadressage qui utilise des masques de sous-rseau de taille variable, connu aussi sous le nom de VLSM (Variable Length Subnet Mask). Dans un tel cas, les protocoles de routage envoient en mme temps que ladresse rseau ou sous-rseau, le masque associ ; ce qui permet la coexistence de masques diffrents au sein dune mme adresse rseau. Mais le VLSM na jamais t considr comme une mthode dimplmentation aise, en raison des problmes de chevauchement et de gaspillage dadresses quil peut entraner. Cest pourquoi lon tend dire quil relve plus de lart que de la technique. Or, cest bien dans cet ouvrage une technique dimplmentation du VLSM qui est propose pour minimiser les problmes voqus plus haut. Cet exemple parmi tant dautres sert lambition de ce livre : rendre ladministration de rseau un aspect plus technique quartistique. Ce livre est aussi destin ceux qui voudraient obtenir la certication CCIE, car il prsente des exemples de conguration fort utiles dans le cadre de la prparation des preuves pratiques de cet examen.
Organisation de louvrage
Cet ouvrage est organis selon la mme structure que ceux de la srie intitule Black Book de Coriolis. Chaque chapitre comprend une partie thorique et une partie pratique intitule Solutions de conguration . La premire partie tient lieu de bref rappel thorique sur le sujet trait, en se bornant expliquer les points indispensables la comprhension de la partie Solutions de conguration . Celle-ci propose des tches excuter sur des cas pratiques qui servent dillustration concrte du sujet expos. Ces tches varient en difcult, allant du plus simple au plus complexe, pour donner une palette dhypothses aussi large que possible. Cet ouvrage contient huit chapitres et six annexes allant de A F pour un complment dinformations. Chapitre 1 : Le modle de communication organis en couches et le protocole Internet Le titre de ce chapitre nest pas celui qui suscitera le plus denthousiasme dans lesprit du lecteur. Cependant, il constitue un passage oblig car les concepts de base des rseaux auxquels il sera fait rfrence tout au long de cet ouvrage y sont dcrits. Chapitre 2 : Le pontage avec les routeurs Cisco Ce chapitre traite de deux types de pontage que sont le pontage transparent et le pontage par la source. Bien quil sagisse dune digression par rapport au routage qui est le sujet principal de cet ouvrage, ce chapitre sert dissiper la confusion sur le pontage en expliquant son fonctionnement et ses implications quand un routeur doit excuter les deux fonctions (pontage et routage) simultanment. ce titre, ce chapitre constitue une lecture indispensable.
Introduction
Chapitre 3 : Routage statique Ce chapitre introduit les diffrents types de routage statique et contient une section consacre aux algorithmes de routage et leur logique dcisionnelle. Dans la partie Solutions de conguration , on abordera plusieurs cas pratiques. Chapitre 4 : Routage dynamique avec protocoles vecteur de distance Ce chapitre dcrit les protocoles de routage dynamique les plus anciens et les plus rpandus que sont ceux vecteur de distance. On y aborde aussi la technique du VLSM. Dans la partie Solutions de conguration , diffrents cas pratiques impliquant les protocoles RIP v1 et v2, ainsi que IGRP et EIGRP, sont exposs. Chapitre 5 : Protocoles de routage dynamique tat des liens Ce chapitre consacr au protocole OSPF prsente diffrents cas de conguration, y compris le plus honni de Frame Relay sur des rseaux maills, intgralement ou non. Certains cas particuliers de topologies aires multiples, aire dorsale sectionne avec circuits virtuels, sont galement expliqus. Chapitre 6 : Matrise du ux de donnes et des mises jour de routage Le ltrage et la redistribution sont deux lments primordiaux du routage. Ce chapitre prsente diffrents scnarios avec pour chacun les risques associs tel que le phnomne de boucle. Chapitre 7 : Cas spciaux de routage Ce chapitre traite du protocole de tolrance aux pannes ou HSRP (Hot Standby Routing Protocol), de la politique de routage, de la traduction dadresses ou NAT (Network Address Translation), et du routage la demande par ligne tlphonique ou DDR (Dial on Demand Routing). Chapitre 8 : Routage IP multicast Ce chapitre donne des indications sur la conguration de base pour la diffusion multicast (multidestinataire) IP qui comprend le protocole multicast indpendant ou PIM (Protocol Independent Multicast) en mode pars et dense.
1
Le modle de communication organis en couches et le protocole Internet
Solutions de conguration prsentes dans ce chapitre Utiliser IP sur LAN avec ARP et Proxy ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer une interface srie avec encapsulation HDLC . . . . . . . . . . . . . . . . . . . . Congurer IP sur Frame Relay en mapping statique et ARP inverse . . . . . . . . . . . . Congurer IP sur RNIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 42 44 47
Dans la premire partie de ce chapitre, nous dcrirons deux modles de communication organiss en couches : le modle de rfrence de lOSI (Open Systems Interconnection) et le modle Internet. Comme tout professionnel des rseaux, vous avez eu tudier le modle OSI et vous vous rappelez quil comprend sept couches, ayant chacune une fonction spcique. Les modles Internet et OSI se ressemblent, quelques exceptions prs. Nous allons donc, sans entrer dans le dtail de chaque couche de ces deux modles, nous intresser aux aspects les plus importants. Nous les reverrons dans les chapitres suivants. La seconde partie sera consacre la description du protocole Internet, galement appel IP (Internet Protocol). La manipulation dun routeur Cisco ncessite une connaissance approfondie de IP, dont nous allons faire une prsentation complte. Les lecteurs bien verss dans IP pourront considrer cette partie comme une rfrence consulter. Les autres y trouveront tous les lments essentiels pour bien comprendre IP et les sujets connexes. Une grande partie du contenu de ce livre consacr IP vient des documents Internet appels RFC (Request for Comments). Les RFC sont une source prcieuse dinformations, hlas trop
souvent nglige. Ainsi, toutes les normes Internet relatives aux protocoles IP, TCP parmi dautres, sont publies en tant que RFC dans leurs moindres dtails. De surcrot, les RFC sont gratuites et mises la disposition du public. Quand la rfrence une RFC savre ncessaire, il en sera fait mention sous la forme RFC XXXX , o XXXX correspond au numro de la RFC. Sauf ncessit absolue, on nutilisera pas dautres sources dinformations. ceux dsireux den savoir plus sur les RFC, nous conseillons, pour commencer, de visiter le site web www.rfc-editor.org.
Couche N
SAP ProtocoleN
La PDU est adresse lentit BN
Entit BN PDU
PDU
PDU est envoye grce au SAP de lentit XN-1 SAP Entit XN-1
Couche N-1
On peut voir sur la gure 1.1 deux entits, A(N) et B(N) de la couche (N), et deux autres X (N-1) et Y(N-1) de la couche (N-1). Les entits A (N) et B (N) changent une PDU en utilisant le protocole (N). Bien que lentit A (N) adresse la PDU lentit B (N), elle ne peut le faire que via le service fourni par les entits X (N-1) et Y (N-1). Lun des principes essentiels du modle organis en couches stipule que lentit destinataire recevra sans altration la PDU envoye par lentit homologue mettrice. Ce principe, tout en facilitant lindpendance des couches entre elles, rend galement possible le fonctionnement des protocoles. Le modle organis en couches permet plusieurs entits de la couche (N) de coexister au sein dun mme nud et dutiliser les services dune seule et mme entit de la couche (N-1). Cest le mcanisme du multiplexage/dmultiplexage. Ainsi, quand plusieurs entits de la couche (N) utilisent un SAP de lentit de la couche (N-1), il sagit du multiplexage. Le dmultiplexage intervient quand une entit de la couche (N-1) distribue les PDU aux entits concernes de la couche (N). La gure 1.2 illustre le cas dun multiplexage.
Figure 1.2
Multiplexage.
Le but des modles de communication organis en couches est de faciliter le dveloppement du logiciel et du matriel de rseau. Lintgrit des donnes pendant les transferts tant garantie pour chaque protocole de chaque couche, le concepteur peut se concentrer sur un protocole la fois, sans se proccuper du fonctionnement des protocoles des autres couches. Le modle organis en couches, grce au multiplexage/dmultiplexage, permet la conception modulaire du logiciel et du matriel. Lentit dans un tel modle peut tre un module rseau un pilote de priphrique (driver) ou mme un quipement. Un tel modle vous permet de charger sparment les modules rseau qui appartiennent des couches diffrentes ; davoir plusieurs modules rseau fonctionnant la couche (N) et dutiliser un seul et mme module de la couche (N-1). Les termes entit et module rseau se recouvrent sufsamment pour tre interchangeables. Nous emploierons le terme entit dans le cas gnral et celui de module pour dsigner une entit dimplmentation particulire un modle donn.
Le modle OSI
Dans la section prcdente, nous avons fait part dun modle gnrique de communication organis en couches qui na pas de grande signication pratique. Pour tre utile, un modle doit nous aider concevoir des systmes de communications rpondant des besoins. Il ne doit tre ni trop sommaire, pour viter aux concepteurs davoir entasser trop de fonctionnalits dans chaque protocole, ni trop labor, pour ne pas faire peser trop de contraintes sur ses performances relles. Le modle de rfrence de lISO fut introduit comme modle pratique en 1984 par le comit de normalisation de lISO (International Standards Organization). Ce modle comprend les sept couches suivantes : la couche application activits specialises de rseau comme le terminal virtuel, le transfert de chiers et le courrier lectronique ; la couche prsentation formatage de donnes, transcodage de caractre et cryptage ; la couche session tablissement de sessions entre un utilisateur et un nud de rseau tel le login ; la couche transport livraison des donnes de bout en bout, en mode scuris ou non ; la couche rseau routage des PDU travers des rseaux multiples ; gestion de la congestion intermdiaire ; la couche liaison formatage des donnes en trames et leur transmission sans erreur travers un rseau physique ; la couche physique transmission dlments binaires ou bits (binary digits) sur le support physique de communication. Aux fonctionnalits prsentes dans tout modle de communication organis en couches, lOSI ajoute la mthode dencapsulation de paquet qui permet de conserver lintgrit ncessaire des PDU changes entre entits homologues utilisant les services fournis par les entits des couches infrieures. La PDU de chaque couche, lexception de celle de la couche physique, est compose de deux parties : len-tte et les donnes. Len-tte contient des informations annexes utilises uniquement par lentit ou le module particulier. Les donnes, quant elles, sont reues pour traitement par la couche immdiatement suprieure. Rappelons que le modle organis en couches garantit lentit destinataire, la rception intacte dune PDU telle que la envoye lentit mettrice. LOSI se conforme cette rgle, faisant en sorte que lentit mettrice qui a construit la PDU, la passe dans son intgralit (en-tte inclus) sous forme de donnes, lentit immdiatement infrieure. Quand la correspondante de lentit infrieure lautre bout effectue le dmultiplexage des donnes vers lentit de la couche suprieure, celle-ci reoit exactement ce qui lui est destin. Ce procd est valable pour toutes les couches sauf pour la couche application qui reoit, en fait, les donnes nales en provenance du rseau. Vous remarquerez que lencapsulation la couche liaison ajoute la remorque (trailer) un lment dinformation de mme type que len-tte, qui nest utile quaux entits de cette couche. Cet lment nayant pas dimportance dans notre sujet sur lencapsulation, nous ne le dtaillerons pas plus. On ne discerne pas encore clairement comment le multiplexage/dmultiplexage est ralis travers le processus dencapsulation. Celui-ci a pour rle principal dassurer lintgrit des
PDU lors de leur acheminement entre entits homologues. Il ne peut pourvoir aux besoins du multiplexage/dmultiplexage. Cette dernire fonction, pour tre remplie, ncessite donc un lment supplmentaire Pour envoyer des donnes lentit de la couche infrieure, lentit de la couche suprieure peut se contenter de connatre le SAP du service de la couche infrieure, savoir linterface ce service. Plusieurs entits situes sur la mme couche peuvent partager le service dune mme entit de la couche infrieure. Les SAP sont donc ncessaires la fonction de multiplexage. Quand lentit de la couche infrieure destinatrice reoit les PDU, il lui faut associer chacune delle lentit destinataire de la couche suprieure. Comme le format des PDU, pass en tant que donnes lentit de la couche infrieure, est spci par le protocole des entits de la couche suprieure quelles sont seules comprendre, il est impossible pour lentit infrieure dinspecter ces donnes pour en dterminer le destinataire. Le seul moyen didentier ce dernier est de marquer les donnes avec son propre en-tte. Ce marquage se fait par un identicateur que lentit de la couche infrieure range dans len-tte de sa propre PDU. Cet identicateur qui permet prcisment le dmultiplexage, est souvent appel cl de dmultiplexage,.
Le modle Internet
Le modle OSI, malgr sa dnition assez exhaustive de la communication couches, comporte quelques lacunes. Conu lorigine pour servir de cadre opratoire aux protocoles fonctionnant sur des rseaux locaux ou LAN (Local Area Networks), homognes, il est peu adapt aux rseaux tendus ou WAN (Wide Area Networks). Si une fonction de routage est bel et bien spcie au niveau de la couche rseau du modle OSI, sa description reste sommaire quant au rle des routeurs, sachant que ces derniers constituent les nuds permettant de relier des rseaux mixtes de bout en bout. Lautre modle le plus utilis est le modle Internet, alias TCP/IP. la diffrence du modle OSI, le modle Internet fut conu pour servir de cadre opratoire aux protocoles fonctionnant sur des rseaux htrognes LAN et WAN. Le modle Internet comprend quatre couches : la couche application assure des activits spcialises de rseau comme le terminal virtuel, le transfert de chiers et le courrier lectronique ; la couche transport assure la livraison de donnes de bout en bout, scurises ou non ; la couche Internet assure le routage de donnes travers des rseaux htrognes et un contrle de ux rudimentaire ; la couche daccs rseau assure le formatage de donnes en trames et leur acheminement sans erreur travers un rseau physique ; cest l que seffectue la transmission de bits sur un support physique de communication. La fonctionnalit de ces couches est quivalente celle de leurs homologues dans le modle OSI. Il faut cependant remarquer que la couche daccs rseau regroupe les fonctionnalits de deux couches (liaison et physique). De mme la couche application peut recouvrir les couches session et prsentation. Le modle Internet se diffrencie encore de celui de lOSI pour ce qui est de la communication entre rseaux physiques divers, par lintroduction explicite du concept de routeur. Il possde deux types de piles couches : lune pour les nuds terminaux ou htes , dans la terminologie Internet, et lautre pour les routeurs, autrefois appels gateways cette
10
dernire dnomination date du dbut de lre Internet et ne manquerait pas de prter confusion aujourdhui. Ces deux types de pile sont illustrs sur la gure 1.3.
Figure 1.3
Hte A Couche application PDU Segment identique Couche transport PDU Routeur Couche Internet Datagramme identique PDU Couche Internet PDU PDU Message identique
Trame identique
Trame identique
PDU
PDU
PDU
PDU
Rseau physique A
Rseau physique A
Le modle Internet emploie des noms distincts pour dsigner les PDU de la couche Internet et celles de la couche transport : datagramme dans le premier cas et segment dans le second. Dans lexemple de la gure 1.3, le datagramme cr par le module IP de lhte A transite par le module Internet dun routeur avant dtre livr au module IP de lhte B, car A et B ne sont pas situs sur le mme rseau physique. Ce quon ne voit pas sur la gure 1.3, cest la modication que le routeur apporte certains champs des en-ttes de datagrammes en cours de traitement. Si ceux-ci sont trop grands pour tenir dans la taille maximale de trame ou MTU (Maximum Transfer Unit) du rseau par lequel le routeur les expdie, il va semployer les dcouper en morceaux plus petits. En dautres termes, le module IP de lhte B nest pas sr de recevoir intacts, les datagrammes crs par le module IP de lhte A. Cependant, cette diffrence par rapport lOSI est moins prononce quelle ny parat. Dans la gure 1.3 on voit que le datagramme reste intact en traversant le rseau physique sparant deux nuds adjacents, que ceux-ci soient des htes ou des routeurs. Si le nud rcepteur immdiatement voisin est un routeur, il va modier certains champs de len-tte du datagramme, voire le dcouper en plusieurs. Les nouveaux datagrammes qui en rsultent traversent intacts le rseau intermdiaire suivant. Ce procd na pas dincidence sur le segment, de
11
niveau suprieur, cr par le module de la couche transport et achemin lintrieur des datagrammes ; ce segment arrive nalement intact, mme aprs un parcours travers plusieurs rseaux intermdiaires. Les routeurs nont pas de module de couche transport, aussi les segments crs ce niveau dans lhte A ne peuvent-ils tre destins qu un destinataire de couche infrieure dans lhte B, en loccurrence, un module Internet. Il en est ainsi chaque traverse dun rseau intermdiaire par le datagramme. Dans le modle Internet, les PDU arrivent donc intactes destination dans les couches respectives. Pour tenir compte de ce nouveau schma dencapsulation, le modle Internet distingue deux types de communication selon la couche concerne : le bout en bout ou hte hte (host to host) et le proche en proche ou saut en saut (hop by hop). La communication de bout en bout suppose que les PDU du nud metteur sont expdies vers le nud rcepteur sans se proccuper du nombre de rseaux physiques intermdiaires traverser. La communication de proche en proche nintervient quentre deux nuds situs sur le mme rseau physique. Il est clair que la couche transport du modle Internet assure la communication de bout en bout, tandis que la couche Internet assure la communication de proche en proche.
Dans ce cas, 10.1.0.1 est ladresse IP du serveur. En utilisant cette adresse, lapplication telnet.exe se connecte lapplication telnetd rsidant sur le serveur Unix. Les applications telnet.exe et telnetd sont des entits homologues qui communiquent en utilisant le protocole Telnet. Les deux applications doivent utiliser le service de communication dun module quelconque de la couche transport. Les spcications du protocole Telnet imposent lutilisation de TCP (Transmission Control Protocol) qui intervient aussi bien du ct de telnet.exe que du ct de telnetd pour lchange des messages Telnet travers le rseau. Dans ce processus, le protocole Telnet est encapsul dans des segments TCP, qui sont leur tour transmis au module IP. Celui-ci encapsule les segments TCP dans des datagrammes et fait appel au pilote de la carte Ethernet pour les envoyer sous forme de trames sur le rseau physique.
12
Figure 1.4
TELNET.EXE
telnetd
Session TELNET
Telnet nest bien entendu pas la seule application faire partie de la srie de protocoles TCP/ IP. On peut citer entre autres FTP, HTTP, Finger, etc. Pour effectuer le multiplexage/ dmultiplexage pour lensemble de ces protocoles applicatifs, TCP utilise des ports, qui sont stocks sous la forme de champs de deux octets dans les en-ttes des segments TCP. Les ports TCP sont essentiellement des numros de protocole de la couche application permettant au systme dexploitation de lhte didentier les modules correspondants. Les ports utiliss par TCP se divisent en deux catgories, les ports de destination, qui sont des numros rservs connus de tous (well-known), et les ports source qui sont des numros adopts alatoirement (random). Les premiers identient les modules qui excutent des fonctions dans le serveur, comme rpondre des requtes ; les seconds identient les modules qui excutent des fonctions de client, telles que le lancement de requtes. Dans notre exemple de session Telnet, les modules client et serveur sont respectivement telnet.exe et telnetd. Le systme dexploitation alloue aux ports clients des numros temporaires , la diffrence des ports serveur, qui ont des numros rservs invariables, quel que soit le nombre de modules actifs sur le serveur. Les ports serveur doivent en outre rester les mmes dun hte lautre, en conformit avec TCP/IP, do leur qualicatif de connus de tous . Or, il est possible de lancer plusieurs sessions vers un mme hte. Les ports TCP ne sufsent donc pas identier de manire unique les modules dapplication, du moins quand ceux-ci tournent sur un serveur. titre dexemple, si vous avez lanc plusieurs sessions vers un mme hte, le module TCP est incapable didentier quel module telnetd utiliser partir des seuls ports TCP. Le seul moyen didentier les modules dune manire non ambigu est de combiner les deux numros de ports TCP avec les deux adresses IP. Ce procd est utilis par TCP lors du dmultiplexage des connexions en retour vers les modules dapplication. Quand le module TCP appelle le module IP, il utilise les adresses IP pour identier les destinations vers lesquelles envoyer les segments. Or, comme vous le savez, TCP nest pas le seul protocole de la couche transport dans TCP/IP ; le protocole UDP (User Datagram Protocol) en fait aussi partie. En principe, le modle Internet nest pas limit ces deux seuls protocoles de transport ; il doit pouvoir mettre disposition tout autre protocole de transport ncessaire lutilisateur. En dautres termes, le module IP doit pouvoir identier le protocole de la couche de transport auquel appartient le contenu des datagrammes entrants. Pour cela, le module IP utilise le numro de protocole, rang dans un champ dun octet de len-tte du datagramme. Comme la prsence de plusieurs instances du mme module de la couche transport sur une seule et mme instance du module IP est impossible, le module IP na aucune difcult identier le module transport partir du numro de protocole.
13
On pourrait croire que ce problme ne se pose pas au niveau de la couche daccs rseau, car IP, constituant la pierre angulaire du modle Internet, est le seul protocole rsider sur la couche Internet. Mais, TCP/IP na pas le monopole de lutilisation de la couche daccs rseau. Par exemple, il est de nos jours trs frquent davoir TCP/IP et SPX/IPX actifs sur la mme machine. Le module de la couche daccs rseau (par exemple, une carte rseau Ethernet et son pilote) doit donc aussi savoir lequel des modules de la couche Internet doit recevoir le contenu des trames entrantes. Encore une fois, une mthode semblable celle de IP et de TCP est utilise : un champ dans len-tte de la trame contient le numro du protocole de la couche Internet auquel les donnes sont destines. Par cet exemple simple on saperoit que le fonctionnement du modle Internet nest pas rellement complexe en lui-mme, la diffrence de certains de ses composants. Mme si cet ouvrage na pour objet que ltude des routeurs, les protocoles des couches transport et application restent dune grande importance. En effet, les routeurs Cisco sont dune matrise assez difcile, du fait que leur contrle stend prcisment aux modules de la couche transport, et mme ceux de la couche application rsidant dans les htes. Dans cet ouvrage, vous serez confront des situations qui ncessitent de comprendre les autres couches, outre celles daccs rseau et dInternet.
Notons que les routeurs ne sont pas les seuls nuds de rseau autoriss avoir des interfaces multiples. Les htes multihomed ou multidomicilis , par exemple, le sont aussi. cette diffrence prs que les htes nexcutent pas de fonction de routage sur les datagrammes.
Un exemple typique de routeur IP est le routeur Cisco capable par ailleurs dexcuter dautres fonctions. Les routeurs Cisco sont multiprotocole, dans la mesure o ils peuvent fonctionner sur une grande diversit de protocoles, tels que IPX, APPLETALK, DECNET, CLSN, etc.
14
Ces routeurs peuvent aussi jouer le rle de ponts, cest--dire oprer au niveau de la couche daccs rseau. Lutilisation des ponts est dcrite au chapitre 2.
Couche application
FTP
Telnet
---
NFS
Couche transport
TCP
UDP
Internet
IP
Ethernet
FDDI
Frame Relay
---
RNIS
Comme le montre la gure 1.5, IP occupe une position privilgie dans la suite TCP/IP tant le seul protocole de la couche Internet excuter les fonctions de routage. Dautres protocoles auxiliaires, non reprsents dans la gure 1.5, comme ICMP, IGRP, EIGRP, etc. sont prsents dans la couche Internet, mais aucun dentre eux ne fournit les services dont ont besoin les protocoles de la couche transport. Le service original fourni par IP aux protocoles de la couche transport masque le dtail des technologies sous-jacentes fonctionnant au niveau de la couche daccs rseau, crant ainsi lillusion que les htes sont spars par un support physique homogne un saut . Cest exactement ce que les protocoles de la couche transport attendent de IP et aucun autre protocole Internet supplmentaire nest ncessaire pour linstant.
15
non scuris le service ne donne aucune garantie que tout datagramme arrivera destination en toute intgrit ; les datagrammes peuvent se perdre en chemin ou subir des avaries lors de leur parcours vers la destination nale ; au mieux (best effort) le service au mieux signie que IP fera de son mieux pour que les datagrammes arrivent destination, sauf sil est contraint, pour des raisons de baisse de ressources (saturation de la mmoire de le dattente dans les routeurs, par exemple), de mettre au rebut une partie des datagrammes ; des cas de dysfonctionnement de matriel rseau ou de pilote peuvent avoir la mme consquence. Comme tout protocole, IP dnit le format de ses datagrammes. De ce que nous avons appris plus haut, nous savons que les datagrammes en cours de traitement dans les routeurs intermdiaires sont recrs. Ces nouveaux datagrammes reoivent la partie donnes intacte, sauf en cas de fragmentation. Leurs en-ttes conservent la plupart des champs den-ttes des datagrammes originaux, sans altration . Tous ces changements, fragmentation comprise, sont le travail des routeurs. Nous allons prsent examiner le processus de transmission dun datagramme de la source la destination.
16
Supposons que les protocoles de la couche transport et IP connaissent la MTU des rseaux directement attachs. Supposons aussi quils utilisent cette connaissance pour crer leurs PDU respectives, de faon ce que lencapsulation dans une trame physique nchoue pas. Que se passe-t-il, si un rseau intermdiaire entre la source et la destination, possde une MTU infrieure celle des rseaux directement attachs ? Ce cas est reprsent sur la gure 1.6
Figure 1.6
Datagrammes fragments quand ils traversent des rseaux dont la MTU est infrieure celle du rseau de leur provenance.
H1
Rseau N1 MTU = 1 500 octets
R1
R2
Rseau N2 MTU = 1 500 octets
H2
Lhte H1 envoie un datagramme lhte H2. Le premier sait que la MTU du rseau physique sur lequel il rside est de 1500 octets. Cependant, il ne sait rien du rseau N3 et de sa MTU. Par consquent, le module TCP construit un segment dont la taille est seulement compatible avec le rseau N1. Quand linterface rseau de lhte envoie la trame correspondante sur le support physique, la taille de la trame est de 1500 octets. Cependant, lhte H1 sait que la destination nest pas sur le mme rseau physique et quil doit recourir au routeur R1 pour expdier les donnes vers la destination nale. Lhte H1 envoie la trame physique au routeur R1 qui, lors de sa rception, en extrait le datagramme et se rend compte que sa taille ne permet pas de lenvoyer vers le rseau N3 sans fragmentation. Le routeur R1 dcoupe donc le datagramme en quatre morceaux appels fragments (nous saurons incessamment pourquoi il est dcoup en quatre), et chacun deux est encapsul sparment dans une trame physique du rseau N3 pour tre envoy au routeur R2. Ce dernier ralise que tous les quatre morceaux font partie dun mme datagramme plus grand. La MTU du rseau N2 est assez grande pour contenir le datagramme dorigine, et le routeur R2 se trouve donc devant le choix difcile soit de rassembler lui-mme les morceaux, soit de laisser ce travail au destinataire. Selon les spcications de IP, le soin de rassembler les fragments incombe lhte destinataire. Le routeur R2 envoie donc tous les quatre fragments sparment sur le rseau N3 destination de lhte H2 qui, lui, va se charger de les rassembler en datagramme dorigine. Ce processus se droule dans le module IP de lhte H2. Le module TCP de celui-ci ignore quune fragmentation a eu lieu parce quil reoit exactement ce que son expditeur homologue a cr dans lhte H1. Pendant le processus de fragmentation, le datagramme dorigine envoy par lhte H1 a subi des modications notables. Non seulement certains champs de len-tte ont t changs, mais le datagramme lui-mme a d tre fragment pour se conformer la MTU du rseau intermdiaire. Nanmoins, la couche transport de lhte H2, qui est TCP dans ce cas, na remarqu
17
aucun changement dans le segment envoy par son homologue de lhte H1. Tout ce processus sest droul dans les modules IP des nuds de rseau impliqus dans la transmission, donc de manire totalement transparente pour la couche transport. Examinons maintenant le contenu du datagramme et voyons le changement quil a subi pendant le processus de transmission.
Les datagrammes IP
Un datagramme IP comprend un en-tte et une charge utile (payload). Les donnes constituent la charge utile que le module IP reoit des protocoles de niveau suprieur, tels que TCP ou UDP, pendant le processus dencapsulation. Len-tte, cest linformation auxiliaire cre par le module IP que lui seul utilise pour le routage du datagramme vers sa destination nale. Nous avons vu plus haut, que IP est un service en mode non connect. Ainsi, len-tte de chaque datagramme est conu pour contenir tous les renseignements utiles aux dcisions de routage indpendant.
Figure 1.7
Format du datagramme IP
0 8 16 24 31 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 Longueur totale Version Longeur Type de service (Tos) (8 bits) (16 bits) (4 bits) den-tte (4 bits) Identification (8 bits) Dure de vie (TTL) (8 bits) Protocole (8 bits) Indicateurs (3 bits) Dplacement de pointeur de fragment (13 bits)
Adresse Source (32 bits) Adresse Destination (32 bits) Options Bourrage
Version Le champ version prend 4 bits et contient le numro de version IP qui est actuellement de 4. Longueur den-tte (IHL) Le champ de longueur den-tte (IP Header Length) est la taille den-tte du datagramme exprime en nombre entier de mots de 32 bits. Comme nous le verrons plus loin, le champ Options (selon quil est prsent ou non), rend variable la taille den-tte du datagramme. Quand aucune option nest prsente, len-tte occupe 20 octets, soit une longueur den-tte de 5 mots. Type de service (TOS) Le champ type de service (Type Of Service) spcie la manire dont le datagramme doit tre gr. Il comporte plusieurs sous-champs, chacun dnissant la manire souhaitable de traiter le datagramme (voir gure 1.8).
18
Figure 1.8
0 0 1 Priorit 2 3 D 4 T 5 R 6 7
Non utiliss
Le champ de priorit est le premier sous-champ du champ TOS (type de service). Il prcise le degr dimportance du datagramme : plus sa valeur est leve, plus le datagramme doit tre trait en priorit (voir tableau 1.1). Ce champ comporte 3 bits, pour spcier huit niveaux de priorit diffrents.
Tableau 1.1. Valeurs de prsance.
Dcimal
7 6 5 4 3 2 1 0
Binaire
111 110 101 100 011 010 010 000
Description
Contrle rseau Contrle inter-rseau CRTIC/ECP Flash Override Flash Immediate Priority Routine (Normal)
Les trois autres champs dnomms D (Delay ou dlai), T (pour Throughput ou dbit) et R (pour Reliability ou abilit) dans la gure 1.8 sont binaires et spcient le critre dvaluation de cot optimal du chemin par lequel envoyer le datagramme. Comme le montre la gure 1.8, ces champs nont quun bit, qui peut prendre la valeur de un (vrai) ou zro (faux). Si le bit D est un, le datagramme est envoy par le chemin de dlai minimal. Si le bit T est un, le datagramme est envoy par le chemin de plus haut dbit. Enn, si le bit R est un, le datagramme est envoy par le chemin le plus able. Lorsquun champ a pour valeur zro, le critre correspondant est ignor. Conceptuellement, le type de service est une ide fertile. Si le routeur possde plus dun chemin vers une destination, il est en mesure de choisir celui qui remplit la condition requise. Par exemple, si vous utilisez Telnet pour communiquer avec un hte distant, vous vous attendez une rponse rapide de lhte. Vous aurez donc positionner le bit D un pour tous les datagrammes de toutes les sessions Telnet, de faon forcer la connexion pour quelle prenne le chemin de dlai minimal. Au contraire, si vous voulez tlcharger un chier volumineux via FTP, ce nest pas le temps de rponse qui vous importe, mais la rapidit de tlchargement des chiers. Dans ce cas, vous aurez positionner le bit T un pour obtenir un meilleur dbit pour la connexion FTP. Malheureusement, cette fonctionnalit nest en gnral pas assure par les routeurs.
19
Longueur totale Le champ de longueur totale indique la taille du datagramme en nombre doctets. Ce champ comporte 16 bits, ce qui permet en thorie davoir des datagrammes ayant jusqu 65 535 octets de longueur. Mais comme nous le savons, des datagrammes aussi grands seront probablement rejets par le pilote dinterface rseau, incapable de les encapsuler dans des trames au niveau du rseau physique. La taille effective des datagrammes ne doit pas dpasser la MTU des rseaux physiques sur lesquels ils sont envoys. Nanmoins, tous les htes et les routeurs sont obligs daccepter des datagrammes dont la taille est de 576 octets ou moins. Identication Le champ identication, linstar des deux champs suivants, contribue au processus de fragmentation et de rassemblage des datagrammes. Avant de les dcrire, il est important de noter que les fragments de datagramme sont aussi des datagrammes. Leur structure est la mme que celle des datagrammes IP ordinaires. Le champ identication occupe 16 bits et sert reprer les fragments appartenant un mme datagramme. Chaque fois que lentit source cre un datagramme, elle attribue un numro unique son champ identication. Quand un routeur juge bon de fragmenter un datagramme, il recopie la plupart des champs de len-tte de ce dernier dans celui des fragments apparents. Le champ identication est galement report dans chaque fragment, procurant ainsi lhte destinataire le moyen de reconnatre les fragments faisant partie du datagramme dorigine. Indicateurs Le champ indicateurs (ags) occupe 3 bits et sert uniquement la fragmentation. Chaque bit est interprt indpendamment, comme suit : le bit 0 est rserv ; le bit 1, aussi appel DF (Dont Fragment), signie ne pas fragmenter ; positionn 0, il indique lautorisation de fragmenter. le bit 2, aussi appel MF (More Fragments), signie encore des fragments ; positionn 1 il indique que dautres fragments suivent ; postionn 0, il indique le dernier fragment ; bien entendu, ce bit reste positionn 0 si le datagramme nest pas fragment. Pointeur de fragment Le champ pointeur de fragment (Fragment Offset) occupe 13 bits et sert de compteur (par groupe de huit octets) pour calculer le dplacement de la charge utile du fragment courant dans le datagramme dorigine. La gure 1.9 montre comment le datagramme dorigine est fragment avant dtre envoy sur le rseau N3 ; on peut y voir aussi len-tte et la charge utile du datagramme ainsi que ceux des fragments ; seuls les champs den-tte concerns par le processus de fragmentation y sont reprsents. Pour mieux comprendre une opration de fragmentation, et quels sont les champs modis lors de son droulement, reportons-nous la gure 1.6. Supposons que le routeur R1 reoive des datagrammes dune taille de 1460 octets en provenance de lhte H1. Le routeur R1 aura fragmenter ces datagrammes pour se conformer la MTU du rseau N3, qui est de 512 octets. Supposons aussi que la couche daccs rseau prlve 32 octets des trames pour son propre usage, ne laissant ainsi que 480 octets pour IP.
20
Figure 1.9
En-tte (20 octets) : Longueur totale = 1 460, Identification = 1 001 Indicateurs = (0, DF=0, MF = 0) Pointeur de fragment = 0
Rseau N1 Rseau N3
En-tte (20 octets) : Longueur totale = 460, Charge utile Identification = 1 001 (440 octets) Indicateurs = (0, DF=0, MF = 1) Pointeur de fragment = 0 En-tte (20 octets) : Longueur totale = 460, Charge utile Identification = 1 001 (440 octets) Indicateurs = (0, DF=0, MF = 1) Pointeur de fragment = 55 En-tte (20 octets) : Longueur totale = 460, Charge utile Identification = 1 001 (440 octets) Indicateurs = (0, DF=0, MF = 1) Pointeur de fragment = 110 En-tte (20 octets) : Longueur totale = 140 Identification = 1 001 Indicateurs = (0, DF=0, MF=0) Pointeur de fragment = 165 Charge utile (120 octets)
Bien entendu, la fragmentation nuit au rendement dans une transmission. Si les fragments ont traverser un rseau intermdiaire dont la MTU est plus grande que celle des fragments, ceux-ci nen utiliseront quune partie. Par exemple, dans la gure 1.6, le routeur R2 aura envoyer les petits fragments quil reoit du routeur R1 sur le rseau N2 dont la MTU est au moins trois fois suprieure celle des fragments. Trs souvent, le dernier fragment se trouve tre bien plus petit que ce que le rseau physique peut admettre. Dans notre exemple, la MTU du rseau N3 est de 512 octets, ce qui autorise une taille maximale de 480 octets pour un datagramme. Cependant, le dernier fragment ne contient que 120 octets de donnes. Pendant la fragmentation, len-tte dorigine est remplac par plusieurs autres, ce qui augmente le cot. Dans notre exemple, cela revient crer quatre nouveaux en-ttes la place de celui dorigine1. Dure de vie (TTL) Le champ dure de vie (Time To Live) reprsente la dure de validit du datagramme, avant que lun des routeurs le rende obsolte. Le terme dure de vie est un peu inappropri car il ne met pas uniquement en jeu une unit de temps, comme la seconde.
1. De plus, le fait de compter en multiples de 8 octets pour calculer le dplacement implique un mauvais remplissage de la charge utile qui, toujours selon la figure 1.6, a une taille maximale permise de 460 octets, alors que les trois premiers fragments nen utilisent que 440.
21
La dure de vie est calcule de la manire suivante : 1. Quand un routeur reoit un datagramme, il dcrmente le champ dure de vie de un. 2. Si la valeur du champ tombe zro, le routeur met le datagramme au rebut ; sinon, il lenvoie soit au routeur du saut suivant (next hop) soit au destinataire nal. 3. Si le routeur est oblig de stocker le datagramme plus dune seconde, il dcrmente le champ de un chaque seconde. Le but principal du champ dure de vie est dviter la congestion dans un rseau en cas de boucle. Imaginons un datagramme envoy le long dun chemin, qui en n de compte le ramne son point de dpart. Si le champ dure de vie nexistait pas, le datagramme circulerait en permanence. Protocole Le champ protocole occupe un octet, et peut donc servir identier 255 protocoles diffrents utilisant le service IP et destinataires de la charge utile du datagramme. Le tableau 1.2 donne quelques valeurs de ce champ avec les protocoles correspondants. Il est noter que ces protocoles nappartiennent pas tous la couche transport. Des protocoles auxiliaires comme ICMP (Internet Control Message Protocol) et EIGRP (Enhanced Interior Gateway Routing Protocol) peuvent recourir aussi au service IP.
Tableau 1.2. Quelques protocoles et leurs valeurs.
Valeur de protocole en hexadcimal
6 11 1 9 58 59
Nom du protocole
Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Internet Control Protocol (ICMP) Cisco Interior gateway Routing Protocol (IGRP) Cisco extended IGRP (EIGRP) Open Shortest Path First (OSPF)
Somme de contrle Le champ somme de contrle (header checksum) contient uniquement la somme de contrle de len-tte. Toute modication en chemin de la charge utile nest pas dtecte par IP. Il appartient au protocole de la couche suprieure de procder sa propre vrication dintgrit des donnes, et de demander une retransmission en cas davarie. Adresses destination et source Les adresses destination et source dsignent respectivement ladresse IP de lhte metteur et celle de lhte cens recevoir le datagramme (voir section suivante). Options et Bourrage Les champs options peuvent servir ventuellement une mise au point logicielle ou dbogage. Ces champs nayant que peu dutilit en pratique, ils sont rarement utiliss. Le champ bourrage sert aligner les options sur une limite de mot (32 bits).
22
Les adresses IP
Presque tous les utilisateurs dordinateurs ont entendu parler et mme utilis des adresses IP. Mais quest-ce quune adresse IP ? Est-ce une manire didentier un hte dans un rseau conforme TCP/IP ? Que se passe-t-il si un hte a plusieurs cartes dinterface rseau ? Dans ce cas, devrait-il avoir plusieurs adresses IP, une pour chaque interface ? Serait-ce donc une manire didentier plutt linterface rseau dun hte rsidant dans un rseau conforme TCP/IP ? Nous admettrons quune adresse IP appartient au protocole Internet, qui fait partie de la couche du mme nom. Partant de cette hypothse, en quoi une adresse IP serait-elle concerne par linterface rseau, sachant que cette dernire appartient la couche daccs rseau ? On ne peut justier pleinement pourquoi il fut dcid que chaque hte IP devait possder une adresse IP pour chacune de ses interfaces rseau. Tout ce quon peut constater, cest quun hte ayant une adresse IP spcique pour chacune de ses interfaces rseau prend autant didentits. Les adresses IP servent aussi identier les rseaux sur lesquels rsident les htes. Ladresse IP, dune taille xe de 32 bits, est divise en deux parties de taille variable. Elles permettent lattribution dune identit unique au rseau (network ID) et lhte (host ID). Pour simplier, la premire dsigne le support physique auquel est rattach lhte, et la deuxime, lhte luimme. Le format utilis pour les adresses IP, pour quelles soient dune lecture facile, sappelle notation dcimale pointe. Dans cette notation, les 32 bits de ladresse IP sont condenss en quatre chiffres dcimaux spars par des points.
Adresse IP en binaire : 11010000100000010000000111000011 Notation dcimale pointe : 208.129.1.195
23
Classes de rseau IP
24 31 0 8 16 0 1 0 2 6 1 7 1 0 2 3 4 5 6 7 2 3 4 5 6 7 1 3 4 5 0 2 3 4 5 67 0 Identit rseau Identit hte Classe A Classe B Classe C Classe D Classe E 1 0 1 1 0 1 1 1 0 11 1 1 0 Identit rseau Identit rseau Adresse IP multidestinataire Reserv Identit hte Identit hte
Il existe cependant certaines drogations ce schma, sous la forme dadresses fonctionnelles, qui sont dtailles dans la RFC 1700, Internet Assigned Numbers). Par convention (cf. RFC 1700), une adresse rseau dont tous les bits sont zro dsigne de manire rexive le rseau sur lequel se trouve lordinateur. Cette adresse particulire de classe A peut exceptionnellement tre assigne un hte particulier dans son rseau particulier lorsquil ny a pas de risque dambigut Une telle adresse rseau ne peut apparatre que comme adresse source. Ladresse IP 0.0.0.0 (tous les bits sont zro), dsigne rexivement lhte qui parle . Cette adresse ne doit apparatre que dans un contexte non ambigu et comme adresse source uniquement. Ces deux formes dadresse sont utilises par des htes qui ne connaissent pas encore lidentit de leur rseau ni, a fortiori, leur propre adresse. Ladresse IP avec tous les bits 1 (255.255.255.255 en dcimal) est appele adresse de diffusion locale (local broadcast). Elle est envoye tous les htes dun mme support physique, et ne peut apparatre que comme destination. Ladresse 127.0.0.0 de classe A sert au rebouclage (loopback). Quand une machine reoit une adresse IP de ce type (par exemple, 127.0.0.1), son module Internet en dduit que cette adresse lui est destine, et quil ne doit pas lmettre vers lextrieur par le pilote rseau. Il le renvoie donc au module TCP. Ces adresses sont souvent utilises pour vrier le bon fonctionnement en local du logiciel rseau. Il existe deux autres adresses dhtes rserves. La premire, avec tous les bits 0, dsigne le rseau lui-mme (par exemple, en notation dcimale pointe, 10.0.0.0 reprsente le rseau de classe A dans son intgralit, sans mention dun hte particulier). La deuxime, avec tous les bits 1, dsigne tous les htes dun rseau donn. Une adresse IP unicast (de classe A, B ou C) o tous les bits de la partie hte sont positionns 1, sappelle adresse de diffusion dirige (directed broadcast). Les trois classes de rseau unicast A, B et C, taient censes sadapter des rseaux physiques de diffrentes envergures, comprenant un nombre plus ou moins important dhtes. En tenant
24
compte des bits affects lidentit rseau et des adresses rserves, la disponibilit par classe est la suivante : Pour la classe A on dispose de 27 2, soit 126 rseaux, et chaque rseau peut contenir jusqu 224 2, soit 16 777 214 htes ; la classe A dnit une fourchette de rseaux dadresses IP allant de 1.0.0.0 126.0.0.0. Pour la classe B on dispose de 214 1, soit 16 383 rseaux, et chaque rseau peut contenir jusqu 216 2, soit 65 534 htes ; la classe B dnit une fourchette de rseaux dadresses IP allant de 128.0.0.0 191.255.0.0. Pour la classe C on dispose de 221 1, soit 2 097 151 rseaux, et chaque reseau peut contenir jusqu 28 2, soit 254 htes ; la classe C dnit une fourchette de rseaux dadresse IP allant de 192.0.0.0 223.255.255.0. Jusqu prsent nous avons voqu le tout premier schma ofciel de ladressage IP. Depuis, il a subi bien des changements qui sont dans une certaine mesure incompatibles entre eux, mais qui concernent heureusement davantage les routeurs que les htes. Les anciens htes peuvent donc continuer communiquer sans difcult avec les htes plus rcents, condition que les routeurs intermdiaires implmentent toutes les versions de IP ncessaires. Les paragraphes suivants exposent succinctement les changements majeurs qui sont intervenus dans le schma dadressage IP et leur raison dtre. Linvention de la pile de protocoles TCP/IP marqua le dbut de lInternet, dont la popularit conduisit de plus en plus de socits choisir cette norme de communication pour leurs besoins commerciaux. Trs vite, le nombre de rseaux TCP/IP dpassa celui de tous les autres bass sur dautres protocoles. Quand la plupart des socits manifestrent leur volont dtre connectes lInternet, celui-ci devint le rseau mondial le plus important. Bien que cette popularit ait prouv la robustesse de conception et linteroprabilit entre un nombre croissant de rseaux, de machines, dquipements et de logiciels dorigine diverse, la exibilit de ladressage IP dorigine laissait dsirer. Il apparut trs tt au cours de lvolution de lInternet que le schma initial dadressage IP ne conviendrait plus, du fait que peu de rseaux prenaient en charge un nombre dhtes dpassant le millier. En dautres termes, lespace dadressage des classes A et B tait en bonne partie gaspill. Et la classe C, de son ct, ne disposait pas dun nombre sufsant dhtes. Pour pallier ces contraintes, on choisit dtendre les rseaux existants. La conception initiale dadressage IP fut rapidement largie par lajout du dcoupage en sousrseaux ou subnetting. Ceci aboutit diviser les classes de rseaux de la version initiale dadressage IP en sous-groupes. Ainsi, la partie hte elle-mme fut dcompose en une partie sous-rseau et une partie hte. La relation dorigine entre le segment de rseau physique et ladresse rseau fut galement revue de faon ce que ce soit dsormais ladresse de sousrseau qui soit lie lappartenance un rseau physique. Ladresse de rseau, quant elle, identia le niveau hirarchique auquel plusieurs sous-rseaux dpendant dune mme juridiction pouvaient tre rattachs. Contrairement aux classes de rseaux, le dcoupage en sous-rseaux nimpose pas de frontire prdnie entre la partie sous-rseau et la partie hte de ladresse. En outre, le dcoupage en sous-rseaux comme tel permet dattribuer des bits discontinus aux identits de sousrseau et dhte. La dmarcation se fait au moyen dun composant additionnel appel masque de sous-rseau (subnetmask). Celui-ci contient un arrangement de mots de 32 bits appliqu une adresse IP pour diffrencier les bits de lidentit de sous-rseau de ceux de lidentit
25
dhte. Suivant que le bit du masque est positionn un ou zro, le bit correspondant de ladresse IP fait partie de lidentit de sous-rseau ou de celle de lhte. Les masques de sousrseaux sont souvent transcrits en notation dcimale pointe (par exemple, 255.255.255.0). Un masque de sous-rseau ne fait pas partie de ladresse IP ; il sagit dune rgle applique aux adresses IP de tous les htes dun support physique pour dterminer lidentit de sousrseau de celui-ci. Le dcoupage en sous-rseaux introduisit deux adresses fonctionnelles supplmentaires qui sont dcrites dans la RFC 1700. La premire est ladresse de diffusion (dirige) de sousrseau, ou subnet directed broadcast ; elle est compose des adresses de rseau et de sousrseau, et dune srie de bits positionns un pour la partie hte ; elle permet de joindre tous les htes du sous-rseau concern. La deuxime adresse fonctionnelle comprend lidentit de rseau, avec tous les bits un dans les parties sous-rseau et hte ; cette adresse appele diffusion dirige ou directed broadcast permet de joindre tous les sous-rseaux du rseau concern. Ces deux adresses ne peuvent apparatre que comme adresses de destination. Bien que la RFC 1700, dcrivant la norme daffectation des adresses Internet, ne le dise pas expressment, une adresse compose des adresses rseau et de sous-rseau, et, pour la partie hte, de bits positionns zro, serait bien pratique, pour dsigner de manire concise un sous-rseau particulier au sein dun rseau divis en sous-rseaux. Ce serait le cas, par exemple, pour un rseau 10.0.0.0 segment avec un masque de sous-rseau de 255.255.0.0. Au lieu de mentionner sparment le rseau et le sous-rseau sous la forme dune identit rseau 10 et dune identit sous-rseau 5, on pourrait combiner les deux en une seule notation sous la forme 10.5.0.0. Celle-ci, appele adresse de sous-rseau sera adopte tout au long de cet ouvrage. Au dbut, le dcoupage en sous-rseaux ne touchait pas la partie rseau proprement dite, savoir celle qui dterminait la classe du rseau. En dautres termes, linterprtation des bits du masque de sous-rseau correspondant la partie rseau ntait pas dnie. Ce type de dcoupage en sous-rseaux est quali de classful. Plus tard, la rarfaction des nouvelles adresses aidant, la dcision fut prise de revoir le concept de classe. Cest ainsi quapparut le concept de rseau sans classe ou classless, qui mit n aux classes de rseaux unicast. Toute implmentation de TCP/IP en mode hors classe doit, pour sy conformer, utiliser un masque de sous-rseau pour dlimiter les parties rseau des parties hte. Lappellation de superrseau est parfois utilise quand un prxe rseau regroupe plusieurs rseaux dune classe, en souvenir de ladressage par classe. Par exemple, ladresse rseau 193.0.0.0 avec un masque de sous-rseau 255.0.0.0 est un super-rseau, et nest valide que dans la version sans classe de ladressage IP. Comme indiqu plus haut, ces nouvelles spcications concernaient peu les htes euxmmes. Ce sont les routeurs qui ont d implmenter de nouveaux algorithmes de routage sans classe pour tre conformes ces spcications. La diffrence entre le routage avec classes et sans classe est dcrite au chapitre 3.
26
qui cherchrent contourner ses limites. De mme, les concepteurs de IP furent contraints de pallier les limites dadressage en introduisant les masques de sous-rseaux. Quand les limites furent de nouveau presque atteintes, on dut trouver dautres moyens doptimiser ce dcoupage. Le masque de sous-rseau de longueur variable ou VLSM (Variable Length Subnet Mask), les protocoles de routage avec ou sans classes et les problmes dinteroprabilit qui en dcoulent, font tous partie de cette volution. Encore une fois, la plupart de ces innovations concernent les routeurs et non les htes. Pour congurer un routeur de faon ce quils adoptent les diffrentes stratgies de dcoupage de sous-rseaux, nous devons aborder un certain nombre de concepts additionnels relevant de ce domaine. Les masques de sous-rseaux peuvent tre continus ou discontinus. Dans le premier cas, les masques commencent 1 et le premier 0 ne peut tre suivi que par dautres 0. La gure 1.11 en donne un exemple. En utilisant la notation dcimale pointe, ladresse IP et le masque de sous-rseau sont transcrits sous la forme 67.240.1.3 et 255.255.240.0, respectivement. Si un 0 est suivi dun ou de plusieurs 1, le masque est discontinu. La gure 1.12 illustre un cas de ce type. Avec la notation dcimale pointe, la transcription de ladresse IP et celle du masque de sous-rseau sont de 67.240.1.3 et 255.252.31.0, respectivement.
Figure 1.11
0 24 31 8 16 0 1 2 3 4 5 6 7 01 2 3 4 5 6 7 0 1 2 3 4 5 6 7 01 2 3 4 5 67
Classe A 01 0 0 0 01 1 1 1 11 0 0 0 00 0 0 0 0 0 0 1 00 0 0 0 01 1 Adresse IP Masque de sousrseau
Figure 1.12
0 24 31 8 16 0 1 2 3 4 5 6 7 01 2 3 4 5 6 7 0 1 2 3 4 5 6 7 01 2 3 4 5 67
Classe A Adresse IP 0 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 Masque de sousrseau
11 1 1 1 11 1 1 1 11 1 1 0 00 0 0 1 1 1 1 1 00 0 0 0 00 0 Identit rseau Identit sousrseau Identit hte Identit sous-rseau Identit hte
Les masques discontinus sont trs rares (en fait, on na pas connaissance dun seul cas de dploiement de TCP/IP qui en fasse usage). Ils prsentent beaucoup dinconvnients parmi lesquels la difcult grer lespace dadressage, le caractre imprvisible des algorithmes de routage du fait que ni lidentit de sous-rseau, ni lidentit dhte, ne peuvent tre reprsents par des champs de bits continus ; et pour les utilisateurs, la difcult dextraire les identits de sous-rseaux et dhtes. Par exemple, la plage dadresses IP de la gure 1.11 allant de 67.240.0.1 67.240.15.255, facilite la tche dassignation des adresses aux htes situs sur ce rseau. En revanche, le masque discontinu de la gure 1.12, rend presque impossible la tche
27
de dnir une plage dadresses utilisables avec une notation aussi simple. La gestion administrative daffectation des adresses IP au moyen de masques de sous-rseaux devient trop lourde. Les dploiements de rseaux TCP/IP utilisent le plus souvent les masques continus. Une caractristique particulirement utile de ces derniers est de pouvoir tre identis par une notation qui ne mentionne que le nombre de bits positionns un. Cest une autre notation des masques de sous-rseaux. Dans la gure 1.11, on pourrait par exemple crire 20 au lieu de la notation classique en dcimale pointe 255.255.240.0. Habituellement, on fait prcder ce nombre dun caractre slache / , comme dans /20. On peut ainsi rassembler les informations dadresse et de masque de sous-rseau en une notation compacte, par exemple 67.240.1.3/20.
REMARQUE
Tout au long de ce livre, nous utiliserons pour spcier un masque de sous-rseau la nouvelle notation, plutt que la notation dcimale pointe sauf indication contraire. Pour simplier, toute rfrence un masque de sous-rseau supposera de celui-ci quil est continu, car les masques discontinus ne sont daucune utilit pratique.
Du fait de lutilisation exclusive des masques de sous-rseaux continus, les identiants de sous-rseau contenus dans les adresses IP ont galement t appels prxes rseau. De mme, les masques de sous-rseaux ont t considrs comme les indicateurs de la taille de prxe rseau (network prex lengths). Ces nouvelles dnominations sont utilises de plus en plus souvent pour tout ce qui concerne le routage IP.
REMARQUE
Les termes de prxe rseau et longueur de prxe rseau seront employs tout au long de cet ouvrage quand nous voquerons le routage IP. Dans les autres situations, on utilisera les termes adresse de sousrseau et masque de sous-rseau.
Il existe une relation directe entre la longueur dun masque de sous-rseau et le nombre dhtes quil peut mettre disposition. Ainsi, le but principal du dcoupage en sous-rseaux est de diviser ladresse rseau attribue en sous-rseaux plus petits, suivant le nombre dhtes que lon souhaite avoir dans chaque segment physique. Le calcul du nombre dhtes possibles pour une longueur donne de masque de sous-rseau, est assez simple. Le nombre de bits de la partie hte (nombre de bits positionns zro) sobtient en soustrayant de 32 le nombre de bits du masque (positionns un). Le nombre dhtes est le total de toutes les combinaisons possibles des uns et des zros parmi les bits qui appartiennent lidentit dhte, soustraction faite de ladresse de sous-rseau et de celle de diffusion. On a ainsi : N = 2 (32 L) 2 N est le nombre dhtes ; L est la longueur du masque de sous-rseau. Voici quelques exemples de calcul. Le masque de sous-rseau /30 En appliquant la formule pour le masque de sous-rseau /30, on obtient : N = 2 (32 30) 2 = 2 2 2 = 2
28
Le masque de sous-rseau /24 En appliquant la formule pour le masque de sous-rseau /24, on obtient : N = 2 (32 24) 2 = 2 8 2 = 256 2 = 254 Ce masque de sous-rseau est celui par dfaut utilis pour les rseaux de classe C. Il nest donc pas surprenant que le nombre dhtes quil gnre soit gal celui des htes dni pour cette classe. Le masque de sous-rseau /31 En appliquant la formule pour le masque de sous-rseau /31, on obtient : N = 2 (32 31) 2 = 2 1 2 = 2 2 = 0 On constate que lutilisation de ce masque ne gnre aucune adresse IP utile. Les seules adresses htes gnres sont une adresse de sous-rseau (lorsque lunique bit de la partie hte est positionn 0) et une adresse de diffusion (lorsque lunique bit hte est positionn 1). Le masque de sous-rseau /32 En appliquant la formule pour le masque de sous-rseau /32, on obtient : N = 2 (32 32 ) 2 = 1 2 = 1 Apparemment, le masque de sous-rseau /32 est aussi interdit. Mais on lutilise exceptionnellement pour dsigner une adresse dhte qui nappartient aucun sous-rseau ; nous reviendrons sur ce cas dans les chapitres consacrs aux protocoles de routage. En pratique, on a plus souvent besoin de dduire la longueur du masque de sous-rseau partir du nombre dhtes que linverse ; ce qui rend la formule prcdente peu utile. Or, la formule adquate pour calculer la longueur du masque est assez difcile manier : L = 32 log 2 (N + 2) On prfre donc recourir un tableau de valeurs pr-calcules pour connatre la longueur du masque de sous-rseau. Les rseaux physiques comprenant plus de mille htes tant rares, un tableau tel que le 1.3 est gnralement sufsant.
Tableau 1.3. Relation entre longueur de masque de sous-rseau et nombre dhtes.
Nombre dhtes maximum
2 6 14 30 62 126 254 510 1022 2046
Masque de sous-rseau
255.255.255.252 255.255.255.248 255.255.255.240 255.255.255.224 255.255.255.192 255.255.255.128 255.255.255.0 255.255.254.0 255.255.252.0 255.255.248.0
29
Agence A
Agence B
Anneau FDDI
Sige social
Supposons que les agences A et B aient toutes deux un besoin maximum de 100 htes, en incluant les connexions des routeurs. Pour le rseau FDDI du sige social, on suppose que le besoin en nombre dhtes est infrieur 1000. On a deux rseaux physiques reliant le routeur du sige ceux des agences ; et pour chacun deux le nombre dhtes est de deux (une adresse dhte par routeur). En consultant le tableau 1.3, on dtermine les longueurs de masque de sous-rseau suivantes : lanneau FDDI devrait avoir un masque de longueur /22 ; les deux segments Ethernet des agences A et B devraient avoir un masque de longueur /25 ; les connexions entre les routeurs devraient utiliser un masque de longueur /30. Dans la pratique courante, le calcul des masques de sous-rseaux ne suft pas pour viter les risques de chevauchement ou de gaspillage de lespace dadressage. Cet aspect sort du cadre de notre sujet actuel, mais nous laborderons au chapitre 4 quand il sera question de diviser lespace dadressage selon la mthode du masque de sous-rseau de taille variable ou VLSM (Variable Length Subnet Mask).
30
Le modle de communication organis en couches et le protocole Internet CHAPITRE 1 Tableau 1.4. Types de message ICMP.
Champ type
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20-29 30 31 32 33 34 35 36 37-255
31
possdent des modules rseau responsables de la transmission de donnes, le ping sappuie sur la capacit de rponse en interne de IP, et peut toujours vrier laccessibilit des htes IP, indpendamment de leur logiciel opratoire. Le message destination inaccessible Le message destination inaccessible est envoy en retour un hte source dont le datagramme na pu tre livr au destinataire.
32
Le champ code prcise la raison pour laquelle le datagramme ne peut tre livr. Le tableau 1.5 contient les diffrentes valeurs du champ code avec une description sufsamment explicite pour la plupart dentre elles.
Tableau 1.5. Valeur du champ code pour le message derreur ICMP destination inaccessible.
Code
0 1 2 3 4 5 6 7 8 9 10 11 12
Description
Rseau inaccessible Hte inaccessible Protocole inaccessible Port inaccessible Fragmentation ncessaire et le bit DF ( Dont Fragment) est 1 Echec route source Rseau destinataire inconnu Hte destinataire inconnu Hte source isol Communication avec rseau destinataire adminisitrativement prohibe Communication avec hte destinataire administrativement prohibe Rseau destinataire inaccessible pour type de service Hte destinataire inaccessible pour Type de service
Selon la valeur du champ code, le message ICMP destination inaccessible peut aussi bien tre envoy par un routeur intermdiaire que par le destinataire nal. Par exemple, le code 0 rseau inaccessible , nest envoy que par un routeur qui ne trouve pas le chemin vers la destination. Cependant, le code 3, port inaccessible , peut tre envoy par lhte destinataire lui-mme, si le port du protocole de la couche suprieure auquel sont destines les donnes nest pas disponible. Le message extinction de source (source quench) Le message extinction de source est utilis quand IP doit pratiquer le contrle de congestion. Un routeur intermdiaire ou lhte destinataire envoie habituellement ce message chaque fois quil doit mettre un datagramme au rebut. la rception de ce message, le taux dmission des datagrammes de la source est rduit et va en diminuant tant que celle-ci continue de recevoir ce type de message. Comme il nexiste aucun message ICMP pour indiquer que lauteur des messages extinction de source sest allg, la source commence augmenter le taux ds quelle ne reoit plus de message extinction , et ce jusqu ce que la source atteigne le taux maximum ou reoive de nouveaux messages extinction de source . Le message redirection (redirect) Quand il existe plusieurs routeurs disponibles, la source du datagramme reoit le message de redirection ICMP du routeur qui connat le meilleur chemin vers la destination. Le message contient ladresse IP du meilleur routeur et les 64 premiers bits du datagramme. Tout en envoyant le message redirection, le routeur achemine quand mme le datagramme.
33
Bien que les messages de redirection soient une bonne ide, ils ont une grave lacune. Si un routeur intermdiaire reoit un datagramme dun autre routeur au lieu de la source, et sil a connaissance dun meilleur chemin via un autre routeur, il envoie le message ICMP redirection la source plutt quau routeur en mprise . La raison en est que ICMP fonctionne la couche Internet, et quil ne peut pas utiliser ladresse MAC du routeur dont le datagramme est issu, sachant que cette adresse a t dpouille par le pilote rseau qui fonctionne la couche daccs rseau (le processus inverse de lencapsulation). Par ailleurs, le datagramme ne contient que les adresses source et destination, et ne donne donc aucun moyen de savoir quel routeur intermdiaire la envoy. Les messages ICMP redirection sont par consquent de peu dutilit, sauf sil sagit du premier routeur de la chane vers la destination, qui les envoie la source mme du datagramme. Le message temps dpass (time exceeded) Le message ICMP temps dpass est envoy par un routeur intermdiaire sil constate que le champ dure de vie (TTL) du datagramme reu a atteint zro ; auquel cas il le met au rebut et avertit la source par un message temps dpass.
34
35
Lalgorithme de routage IP est fond sur un principe simple qui restera valable quelles que soient les futures amliorations de la fonction de routage. Ce principe est le suivant : Le routage des datagrammes est fond sur la partie rseau des adresses de destination, et non pas sur les adresses individuelles des htes. On pourra trouver de plus amples dtails sur le routage IP, au chapitre 3. La rsolution dadresse IP La rsolution dadresse est une technique qui consiste apparier les adresses IP celles qui leur correspondent la couche daccs rseau, telles que les adresses MAC. Il faut noter cependant que ladresse de la couche daccs rseau a un sens large et nous en verrons quelques exemples typiques dans la section Solutions de conguration de ce chapitre. Les adresses IP ne doivent tre apparies celles leur correspondant la couche daccs rseau que dans le cas des htes qui sont situs sur des rseaux directement attachs, car sils ne ltaient pas, la couche daccs rseau les considre comme inaccessibles. Les appariements entre adresses MAC et IP sont connus de IP soit par apprentissage soit par conguration manuelle. La procdure normale pour que IP apprenne que telle adresse IP correspond telle adresse MAC, dans un rseau de diffusion directement attach (par exemple, un LAN), est lcoute. Supposons quun hte veuille envoyer des donnes un autre situ sur le mme rseau physique, dont ladresse MAC est inconnue du premier. Celui-ci suppose que son destinataire est toujours en mesure de recevoir une trame envoye ladresse de diffusion. Il envoie donc une trame en prcisant quil a besoin de ladresse MAC de lhte ayant une certaine adresse IP. Tous les htes sur ce rseau physique reoivent la trame, mais seul lhte qui reconnat son adresse IP rpond. Limplmentation de cette mthode se trouve concrtise dans un protocole spcial appel rsolution dadresse ou ARP (Address Resolution Protocol). Seul IP utilise ARP en tant que protocole auxiliaire qui, comme ICMP, rside la couche Internet, mais sans fournir aucun service aux protocoles de la couche transport. En revanche, contrairement ICMP, les PDU de ARP, au lieu dtre dencapsules en datagrammes IP, le sont directement en trames LAN. Le fonctionnement de ARP est simple. Il tient jour une table de correspondance entre adresses MAC et IP. Lors du dmarrage dun hte, sa table ARP est vide. Quand il a besoin denvoyer un datagramme un autre sur le mme rseau, le module IP de lhte fait appel au module ARP pour traduire ladresse IP destinataire en adresse MAC. Comme la table est vide au dmarrage, ARP doit passer par le rseau. Ne sachant rien du destinataire part son adresse IP, il envoie une requte ARP dans une trame de diffusion contenant cette adresse. Comme il sagit dune adresse de diffusion, tous les htes de ce rseau reoivent la trame, mais seul celui qui reconnat ladresse IP comme sienne envoie une rponse directement ladresse MAC du demandeur. Quand le module ARP de lhte reoit la rponse, il linscrit dans sa table sous forme de paire dadresses IP/MAC et notie IP quune correspondance a t trouve. Si une adresse MAC nest pas utilise pendant un certain temps, elle est efface de la table pour viter quelle ne devienne prime (par exemple, ladresse MAC dun hte peut changer si son interface rseau est remplace, suite une panne). La conguration manuelle de ARP devient ncessaire quand la technologie du rseau ne permet pas denvoyer une adresse de diffusion (par exemple, le RNIS).
36
Le ltrage de paquets
La technologie du ltrage de paquets permet de mettre au rebut des PDU qui ne rpondent pas certains critres. Dans le cas de IP, les datagrammes peuvent subir le mme traitement. Limplmentation du ltrage de paquets dans le systme dexploitation rseau de Cisco, IOS (Internetwork Operating System), se fait au moyen des listes daccs. Elles constituent des expressions logiques qui contiennent des conditions appliques aux datagrammes avant quune action soit prise leur encontre. Les listes daccs sont dcrites au chapitre 6.
Outils pratiques
Nous utiliserons plusieurs outils trs pratiques tout au long de cet ouvrage. Une explication succincte de chacun deux peut tre utile. La commande debug du systme IOS de Cisco est loutil par excellence pour savoir exactement ce qui se passe lintrieur du routeur. Mais dans un environnement oprationnel, particulirement si le routeur est charg, il nest pas conseill dactiver la commande debug pour viter de dtriorer sa performance. Il se peut mme quil ne soit plus capable dexcuter les lignes de commande dans de telles conditions, et que le redmarrage froid soit ncessaire, ce qui est rdhibitoire. Lanalyseur LAN de Microsoft (Microsoft Network Monitor) est un outil lmentaire mais ses fonctionnalits sufsent dans la plupart des cas pour le dpannage et le test. Il est moins onreux que dautres analyseurs tel que le Network Associates Sniffer dont lusage est prfrable. Dans cet ouvrage nous ne ferons nanmoins quun usage limit de lanalyseur rseau. Dautres outils sont disponibles sur le site web de Tsunami Computing : http:/www.hugewave .com/blackbook. Visitez-le loccasion. Son contenu va senrichir avec le temps.
Solutions de conguration
Nous supposerons que la plupart des lecteurs ont la connaissance requise sur le systme IOS de Cisco et ses lignes de commandes pour ne pas avoir dtailler chaque tape de la saisie dans les exemples. Nous utiliserons aussi la commande complte au lieu de son abrviation, mais il est recommand dutiliser plutt celle-ci lors des congurations relles pour gagner du temps. Les exemples de cette section nont pas pour vocation de vous enseigner la conguration des interfaces du routeur Cisco. Leur but est de faire la dmonstration des caractristiques majeures de IP vues dans la section prcdente de ce chapitre, et aussi dasseoir la base qui aidera assimiler le contenu des chapitres ultrieurs de cet ouvrage. Lors de la transcription de la syntaxe des diffrentes commandes, nous nous en tiendrons aux conventions les plus proches possibles de celles qui sont dans la documentation de Cisco. Elles sont les suivantes :
37
le style gras est employ pour transcrire les commandes et les mots clefs qui doivent tre saisis comme indiqu ; <les lments en italique entre chevrons simples> sont employs pour transcrire les paramtres des commandes ; ceux-ci peuvent tre des chanes de caractres ou des chiffres ; [les mots entre crochets] sont employs pour transcrire les lments optionnels ; Les mots en gras en accolades spars par des barres verticales, tels que {choix1|choix2 |choix3}, sont employs pour indiquer les mots clefs alternatifs, trois choix possibles dans cet exemple. Comme vous pouvez le constater, il y trs peu de diffrence entre les conventions de Cisco et celles de cet ouvrage, sauf dans lemploi des chevrons simples autour des mots en italique pour indiquer les paramtres des commandes. Nous croyons ainsi mettre en valeur le rle fonctionnel de ces lments.
Router (config)#interface ethernet 0 Router (config-if)#ip address 10.1.0.1 255.255.255.0 Router (config-if)#no shutdown
Linterface Token Ring ncessite une tape supplmentaire : lassignation du dbit de lanneau qui apparat sur le listing 1.2.
Listing 1.2. Assignation dune adresse IP linterface Token Ring 0 et son activation.
Router (config)#interface tokenring 0 Router (config-if)#ip address 10.1.0.1 255.255.255.0 Router (config-if)#no shutdown
Sil ny a aucun problme matriel, linterface devrait tre prte lemploi. Pour utiliser le routeur, les htes du segment Ethernet ou de lanneau Token Ring doivent avoir un pointeur vers ladresse IP quon vient dassigner. La route la plus couramment implante dans les htes est celle de la passerelle par dfaut. Celle-ci est utilise uniquement quand lhte ou le routeur ne peut trouver une entre correspondant ladresse rseau dans sa table de routage. Il est noter que la route pointant sur la passerelle par dfaut (default gateway) est celle qui correspond ladresse rseau 0.0.0.0, qui est aussi ladresse de ce rseau, comme nous lavons vu dans la section prcdente de ce chapitre. On peut cependant trouver une explication logique lutilisation dune telle adresse.
38
Dabord, cette adresse ne doit pas apparatre comme destination, ce qui implique quaucun hte nessayera de lui envoyer un datagramme. Ensuite, cest une adresse unicast admissible. On peut donc lutiliser dans un sens spcique, en la faisant pointer sur la passerelle par dfaut, chaque fois quune recherche dadresse rseau dans la table de routage savre infructueuse. Bien entendu, une adresse de sous-rseau ne peut exister sans le masque de sous-rseau. Par consquent, si le dcoupage en sous-rseaux est utilis, la table de routage doit contenir les masques de sous-rseaux. Par dnition, le masque de sous-rseau utilis pour la route de la passerelle par dfaut, a tous ses bits positionns 0, ce qui donne 0.0.0.0, rduisant ainsi nant ladresse de rseau relle. En principe, nimporte quelle adresse peut tre utilise comme route vers la passerelle par dfaut, tant que tous les bits du masque de sous-rseau associ sont positionns 0. Considrons maintenant le cas illustr sur la gure 1.14. Les interfaces Ethernet sur le routeur R sont congures comme le montre le listing 1.3.
Listing 1.3. Conguration du routeur R.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Ethernet1 ip address 10.1.0.1 255.255.255.0
Les deux stations de travail utilisent un mauvais masque de sous-rseau /8, celui utilis par dfaut dans un rseau de classe A. En supposant que lhte H1 soit une station Windows NT, la conguration de TCP/IP dans la bote de dialogue des proprits rseau (Network Properties) doit ressembler celle de la gure 1.15.
Figure 1.14
R H1
e0
e1
H2
10.1.0.0/24
10.2.0.0/24
La question se pose de savoir si les deux htes H1 et H2 seront capables de communiquer via IP. En principe, la rponse est non. Lhte H1 voit lhte H2 comme appartenant au mme rseau que lui, ce qui va lamener lancer une requte ARP pour rsoudre ladresse IP de lhte H2 en adresse MAC correspondante. Mais nous voyons que lhte H2 est situ sur un autre segment, ce qui va faire chouer la requte ARP lance par lhte H1, par dbordement de temporisation. Le module IP de ce dernier va donc retourner une condition derreur indiquant que la communication est impossible. Dans la pratique, on constate avec surprise que cette conguration fonctionne parfaitement. Par exemple, si lon essaie denvoyer un ping de lhte H1 vers H2, on obtient la sortie du listing 1.4.
39
Figure 1.15
Figure 1.16
40
Listing 1.4. Rsultat du ping qui indique laccessibilit de lhte H2 par lhte H1.
C:\>ping 10.2.0.100 Pinging 10.2.0.100 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.2.0.100: 10.2.0.100: 10.2.0.100: 10.2.0.100: bytes=32 bytes=32 bytes=32 bytes=32 time=10ms time=10ms time=10ms time=10ms TTL=253 TTL=253 TTL=253 TTL=253
Le fait que lhte H1 puisse recevoir la rponse au ping quil a lanc envers lhte H2, prouve que ce dernier a bien reu la requte ARP venant de H1 pour son adresse IP et lui a transmis son adresse MAC en retour. Si nous demandons une sortie de la table ARP de lhte H1, nous y verrons le contenu du listing 1.5.
Listing 1.5. Table ARP de lhte H1.
C:\>arp -a Interface: 10.1.0.100 on Interface 2 Internet Address Physical Address 10.1.0.1 00-e0-b0-64-50-63 10.2.0.100 00-e0-b0-64-50-63 Type dynamic dynamic
Cette table contient une entre pour ladresse IP de lhte H2, ce qui a priori na pas de sens. Lhte H2 tant situ sur un rseau physique diffrent de celui de H1, ne pouvait pas rpondre la requte ARP de ce dernier. Si nous analysons de plus prs la table ARP, nous pouvons y voir une autre entre qui est celle du routeur R. Les adresses MAC pour ces deux entres sont les mmes. Nous pouvons donc en conclure que le routeur R a rpondu la requte ARP, la place de lhte H2. Ce trait curieux de IP est appel Proxy ARP. Il en est fait mention dans la documentation de Cisco, bien quil ait t quelque peu omis dans la plupart des documentations relatives limplmentation de IP sur les htes. Lide sous-jacente au Proxy ARP est simple. Si un routeur reoit une requte ARP pour une adresse IP, diffrente de celle du rseau de provenance, il peut choisir de rpondre la requte avec sa propre adresse MAC, sil connat le chemin vers cette destination. Cependant, sans rpondre systmatiquement toutes les requtes, le routeur ne les prendra en compte que si elles proviennent du rseau dont ladresse IP est la mme que celle de son interface de rception. Par exemple, si ladresse IP sur la gure 1.15 tait 10.1.1.100 au lieu de 10.1.0.100, le routeur aurait ignor la requte ARP, et lhte H1 naurait pas pu communiquer avec lhte H2. La seule diffrence entre une conguration qui utilise le Proxy ARP et celle qui ne lutilise pas, rside dans le masque de sous-rseau congur dans les htes. Celui-ci doit tre plus court (le masque tant contigu, on peut le qualier de plus court ) que le masque rel avec lequel le routeur est congur. Appelons ce cas, conguration implicite de Proxy ARP. Il est aussi possible de le mettre en uvre explicitement, comme on le voit sur la gure 1.16. Il sagit de la mme conguration de TCP/IP dans la bote de dialogue Network Properties que celle quon a vue la gure 1.15, ceci prs que ladresse IP du routeur par dfaut est, dans ce cas, identique celle de linterface rseau. En effectuant ce changement, on arrive faire communiquer un hte avec un autre, indpendamment du rseau sur lequel rside ladresse IP de ce dernier, condition que le routeur intermdiaire possde la fonction Proxy ARP.
41
Le Proxy ARP permet de changer ladresse IP du routeur utilis comme passerelle par dfaut sans recongurer les stations de travail. En outre, sil y a plus dun routeur sur un segment, tous ces routeurs peuvent tre utiliss en tant que passerelle par dfaut par les htes congurs avec le Proxy ARP. En principe, le routeur le moins charg rpond la requte ARP en premier, facilitant ainsi un partage de charge de trac entre les routeurs. Mais en pratique, ce scnario nest pas toujours possible, car si les rseaux comportent plusieurs segments connects par des ponts, le routeur le moins charg peut se trouver derrire un pont et tre retard par ce dernier dans sa rponse un point tel que les routeurs les plus chargs russissent rpondre plus vite. Les rseaux mettant en uvre le Proxy ARP peuvent fonctionner de concert avec les protocoles de routage dynamique de rseaux classe (classful), tels que RIP ou IGRP. Ceux-ci, ne tolrent pas plus dun masque de sous-rseau par adresse rseau classe. Cependant, si on doit utiliser un masque de sous-rseau plus court dans un segment, que celui utilis avec le protocole de routage de rseau classes, le Proxy ARP nous en donne les moyens. Nous tudierons ces protocoles plus en dtail dans le chapitre 4. Lutilisation du Proxy ARP peut parfois sembler justie, bien que non souhaitable. Prenons le cas illustr sur la gure 1.17. Le masque de sous-rseau utilis par RIP, un protocole de routage dynamique de rseau de classe, est /25. Pour un fonctionnement correct de RIP, tous les routeurs doivent avoir leur interfaces o ce protocole est actif, congures avec le masque /25. Prenons un site nayant quun seul segment physique, avec 200 htes y rsidant. Le masque /25 ne permet pas den loger autant. Supposons que vous dcidiez alors dutiliser un masque /24 dans tous les htes, tout en gardant celui de /25 pour linterface Ethernet 0 du routeur, et de mettre en uvre le Proxy ARP pour donner aux htes laccs aux autres rseaux. Supposons maintenant que linterface Ethernet, tiquete e0 utilise ladresse IP primaire . Du point de vue du routeur, les htes dont la plage dadresses IP va de 10.1.0.130 10.1.0.254 sont illgalement connects au segment. Toute requte ARP en provenance de ces htes sera de ce fait ignore par le routeur. Pour y remdier, la solution consiste assigner une deuxime adresse appele secondaire (secondary) linterface e0.
Figure 1.17
Utilisation de Proxy ARP de concert avec les protocoles de routage de rseau classe et les adresses IP secondaires.
Rseaux dont le protocole de routage dynamique RIP utilise le masque de sous-rseau /25
10.1.0.10/24
10.1.0.126/24
10.1.0.130/24
10.1.0.254/24
42
La solution propose est tout fait incohrente avec le schma dadressage IP. Les htes croient quils sont situs sur le rseau 10.1.0.0/24, tandis que le routeur pense avoir deux rseaux logiques attachs sa seule interface. Les autres routeurs qui participent au protocole RIP peroivent le rseau du site comme divis en deux. La mise en uvre du Proxy ARP implique aussi un trac excessif de messages. Dans un environnement rout, les htes ne lancent quune requte ARP pour avoir ladresse MAC de la passerelle par dfaut et linscrire en une seule entre dans leur table. Celle-ci ne sera pas prime, tant que les htes lutiliseront pour laccs vers lextrieur. Par contre, si le Proxy ARP est mis en uvre, les htes auront lancer des requtes ARP mme pour les adresses IP auxquelles ils auraient pu accder via le routeur. Ceci entrane de multiples entres dans la table ARP o toutes les adresses IP sont apparies la mme adresse MAC du routeur. Chacune de ces entres a t cre par une requte ARP superue. tant donn ces inconvnients, comment dsactiver le Proxy ARP dans un routeur ? En mode conguration dinterface LAN, la commande ip Proxy-arp active le Proxy ARP. Celle-ci est active par dfaut mais nest pas afche la conguration du routeur (un changement interviendra peut-tre sur ce point dans les versions futures de lIOS de Cisco). Pour dsactiver cette commande, il suft dentrer no ip Proxy-arp. Le listing 1.7 montre comment la conguration de linterface a t modie.
Listing 1.7. Nouvelle conguration de linterface Ethernet 0 du routeur R avec le Proxy ARP dsactive.
Si linterface Ethernet 0 de la gure 1.14 tait congure de cette manire, lhte H1 ne pourrait pas communiquer avec lhte H2. En gnral, il nest pas ncessaire de dsactiver le Proxy ARP sur les routeurs Cisco, si les htes nen dpendent pas. Il serait mme utile en cas de dpannage, dans la situation o certains htes sont mal congurs avec un masque de sous-rseau par dfaut alors quils devraient avoir leur masque spcique.
Le modle de communication organis en couches et le protocole Internet CHAPITRE 1 Listing 1.8 Types dencapsulation disponibles sur une interface srie.
43
R(config-if)#encapsulation ? atm-dxi ATM-DXI encapsulation bstun Block Serial tunneling (BSTUN) frame-relay Frame Relay networks hdlc Serial HDLC synchronous lapb LAPB (X.25 Level 2) ppp Point-to-Point protocol sdlc SDLC sdlc-primary SDLC (primary) sdlc-secondary SDLC (secondary) smds Switched Megabit Data Service (SMDS) stun Serial tunneling (STUN) x25 X.25
Prenons les deux cas dencapsulation les plus rpandus que sont HDLC et Frame Relay. PPP est aussi trs courant, mais comme il est plus souvent utilis dans les lignes commutes (dial-up), comme le RNIS, nous en parlerons dans la section Conguration de IP sur RNIS plus loin dans ce chapitre. Lencapsulation HDLC Le HDLC (High Level Data Link Control) est un protocole dusage gnral, dvelopp par lISO, qui se situe la couche liaison du modle OSI ou la couche daccs rseau du modle Internet. tant un protocole gnrique, le HDLC ne fournit aucune spcication dtaille, prte tre implmente, mais sert plutt de fondation dautres protocoles tels que le LLC (Logical Link Control), le LAPB (Link Access Procedure Control Balanced) et le LAPD (Link Access Procedure Control for D Channel) de RNIS. Pour les connexions des interfaces srie, Cisco Systems a complt les spcications de HDLC par une version propritaire et la rfrence dans sa documentation par le mme nom. La conguration dune interface srie avec lencapsulation HDLC est vraiment simple. Une interface srie est congure par dfaut avec HDLC, ce qui ne ncessite aucune action particulire. Il sagit dune connexion en point point, qui ne possde aucune procdure automatique dappariement entre les adresses IP et celles de la couche daccs rseau. Limplmentation de HDLC dans la version de Cisco fournit heureusement toute la fonctionnalit requise pour faire cet appariement. Il est automatique et activ par dfaut nous pargnant ainsi toute action manuelle. Congurer une interface srie avec lencapsulation HDLC revient simplement assigner une adresse IP et dmarrer linterface comme indiqu sur le listing 1.9.
Listing 1.9. Conguration dune interface srie avec lencapsulation HDLC et assignation dune adresse IP.
44
45
La conguration dune interface srie en Frame Relay sans sous-interfaces seffectue selon les tapes suivantes : 1. Congurer lencapsulation du Frame Relay par la commande encapsulation Relay. 2. Choisir le cas chant loption type de LMI par la commande Relay lmi-type <type de LMI >. 3. Assigner ladresse IP avec la commande ip address <adresse IP> <masque de sousrseau>. 4. Activer linterface avec la commande no shutdown. Examinons le cas illustr la gure 1.18. Il faut noter que les types de LMI et les DLCI sont diffrents de chaque ct de la connexion au rseau Frame Relay, parce que leur signication est locale. Celle-ci concerne lETTD (le routeur, dans notre cas) et lETCD (les commutateurs Frame Relay, non reprsents). En suivant les instructions de conguration des routeurs quon vient de dcrire, on obtient les listings 1.10 et 1.11.
Listing 1.10. Conguration du routeur R1.
interface Serial0 ip address 10.1.1.2 255.255.255.0 encapsulation frame-relay frame-relay lmi-type ansi
Figure 1.18
Frame Relay
s0
s0
R1
R2
La conguration du routeur R2 diffre de celle du routeur R1 par la commande Relay lmitype ansi. Comme dit prcdemment, la LMI par dfaut est Cisco. La conguration dune interface srie en Frame Relay avec des sous-interfaces seffectue selon les tapes suivantes : 1. Congurer lencapsulation de Frame Relay sur linterface srie adquate par la commande encapsulation Relay. 2. Choisir le cas chant loption type de LMI pour toute linterface, par la commande Relay lmi-type <type de LMI>.
46
3. Dnir une ou plusieurs sous-interfaces point point et/ou multipoint, par la commande interface serial <numro dinterface.numro de sous-interface> [multipoint|point-topoint] (le numro dinterface correspond linterface physique spar par un point du numro de sous-interface logique qui a t choisi). 4. Assigner une adresse IP chaque sous-interface par la commande ip address <adresse IP><masque de sous-rseau>. 5. Pour les sous-interfaces point point, affecter un DLCI par la commande Relay interface-dlci <DLCI> ; pour les sous-interfaces multipoint, si cest le InARP qui est choisi, utiliser la mme commande que dans le cas prcdent ; sinon, pour le mapping statique, la commande se fait par Frame-relay map ip <adresse IP distante> <DLCI>, aussi bien en multipoint quen point point. 6. Loption [broadcast] autorise la diffusion de mises jour dinformations vers ladresse indique, notamment dans le cas du protocole de routage dynamique OSPF. La gure 1.19 montre un exemple de rseau Frame Relay qui utilise des sous-interfaces. Les listings 1.12 1.14 contiennent les congurations des trois routeurs.
Listing 1.12. Conguration du routeur R1.
interface Serial0 no ip address encapsulation frame-relay interface Serial0.1 multipoint ip address 10.1.0.1 255.255.255.0 frame-relay map ip 10.1.0.2 200 broadcast interface Serial0.2 multipoint ip address 10.2.0.1 255.255.255.0 frame-relay interface-dlci 100
Listing 1.13. Conguration du routeur R2.
interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.1.0.2 255.255.255.0 frame-relay interface-dlci 300
Listing 1.14. Conguration du routeur R3.
interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 multipoint ip address 10.2.0.2 255.255.255.0 frame-relay interface-dlci 400
47
R1
DLCI = 200
I= DLCI = 400, LM
, LMI
= CIS
CO
Frame Relay
Sous-interface : s0.1 multipoint Adresse IP : 10.1.0.1 (mappage statique) Sous-interface : s0.1 point point Adresse IP : 10.1.0.2
DL C 0, LM
I=
AN SI
ANSI
I=
30
R2
R3
48
Dans cet ouvrage, il ne sera question que de BRI, bien que les principes de fonctionnement puissent tre tendus au PRI. Dans le RNIS, ladresse de la couche daccs rseau est le numro de tlphone utilis pour lappel. Le couplage entre ladresse IP et le numro RNIS se fait manuellement. Voyons les particularits de RNIS. tant une ligne tlphonique, le cot dune communication RNIS dpend de sa dure. viter une trop grande dure de communication nous incite prendre certaines mesures. Le systme IOS de Cisco permet cet effet de dnir le trac privilgi qui seul peut activer une connexion. Si aucun trac privilgi nest dni au pralable, la connexion RNIS ne pourra se faire, mme si des donnes sont en attente dtre envoyes. Une fois la connexion RNIS tablie, le trac privilgi ou non peut tre transmis. Ds que le trac privilgi cesse, la connexion est coupe aprs une temporisation dont la dure est congurable. chaque reprise de la transmission du trac privilgi, cette temporisation est rinitialise. Une autre mesure optionnelle concerne lauthentication de lappelant. Comme la connexion RNIS passe souvent par un oprateur du rseau public, un individu non autoris peut essayer de se connecter via celui-ci, un site priv. Pour viter une telle intrusion, plusieurs types dauthentication sont disponibles. Dans notre exemple la n du chapitre, cest celui du chap qui est utilis. Le chapitre 7 donne quelques complments dinformation sur la conguration de RNIS. Pour lheure, nous nous limiterons lexemple illustr sur la gure 1.20 et les listings correspondants 1.14 et 1.15.
Figure 1.20
RNIS : Type de commutation : National ISDN-1 Numro : 384000 SPID1: 3840000001 SPID2: 3840000002 Interface: BRI 0 RNIS Encapsulation: PPP Authentification : PPP CHAP Adresse IP : 10.1.0.3/24
RNIS : Type de commutation : National ISDN Numro : 384020 SPID1: 3840200001 SPID2: 3840200002 Interface: BRI 0 Encapsulation: PPP Authentification : PPP CHAP Adresse IP : 10.1.0.4/24
R1
R2
username g4 password 0 tsunami isdn switch-type basic-ni1 interface BRI0 ip address 10.1.0.3 255.255.255.0 encapsulation ppp isdn spid1 3840000001 isdn spid2 3840000002 dialer map ip 10.1.0.4 name g4 broadcast 384020 dialer-group 1 ppp authentication chap dialer-list 1 protocol ip permit
Le modle de communication organis en couches et le protocole Internet CHAPITRE 1 Listing 1.15. Conguration du routeur R2.
49
username g3 password 0 tsunami isdn switch-type basic-ni1 interface BRI0 ip address 10.1.0.4 255.255.255.0 encapsulation ppp isdn spid1 3840200001 isdn spid2 3840200002 dialer map ip 10.1.0.3 name g3 broadcast 348000 dialer-group 1 ppp authentication chap dialer-list 1 protocol ip permit
Dans les listings de conguration des routeurs R1 et R2, la commande isdn switch-type <type de commutateur> dnit le type de commutateur RNIS utilis par loprateur. La commande dialer map est trs comparable en termes de fonctionnalit celle de Relay map que nous avions utilise dans la conguration du Frame Relay. Ces commandes permettent dassocier une adresse IP une adresse de la couche daccs rseau qui, dans le cas du RNIS, est le numro dappel. Les commandes encapsulation ppp, ppp authentication <type dauthentication> et username <nom du routeur distant> password <type de chiffrage> <mot de passe> dnissent le type dencapsulation, lauthentication par chap, et enn, la vrication de lappel entrant. La commande dialer-list <numro de groupe> protocol < nom du protocole> permit dnit le protocole IP comme trac privilgi. Pour avoir un contrle plus n sur ce trac, il est conseill dassocier cette commande, une liste daccs au lieu du permit simple. Enn, la paire de commandes isdn spid <numro de prol du service> concerne chacun des canaux B de linterface BRI. Certains commutateurs RNIS peuvent ne pas en avoir besoin.
2
Le pontage avec les routeurs Cisco
Solutions de conguration prsentes dans ce chapitre Congurer le pontage transparent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en monogroupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en multigroupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer le pontage transparent sur supports physiques mixtes . . . . . . . . . . . . . . en HDLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en Frame Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en RNIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - avec routage et pontage en simultan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - avec routage et pontage intgrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - avec rglage des paramtres de lalgorithme darbre de recouvrement . . . . . . Congurer le pontage routage par la source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en classique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en distant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en traducteur avec pontage transparent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 59 61 62 62 64 67 69 70 71 78 78 79 80
Les ponts sont des appareils qui oprent la couche daccs rseau du modle Internet. Alors que celui-ci ne fournit que des spcications sommaires, le modle OSI est extrmement prcis. la couche daccs rseau du modle Internet correspondent deux couches du modle OSI, la couche liaison et la couche physique. La couche liaison est dcompose en deux souscouches que sont la couche LLC (Logical Link Control) et la couche MAC (Media Access Control) de contrle daccs au support physique.
52
Le dtail de ces spcications sort du cadre de cet ouvrage, mais pour la bonne comprhension du pontage, il faut connatre le mcanisme dadressage, fonctionnalit de la souscouche MAC. Nous utiliserons le terme de couche liaison chaque fois quil sera fait allusion la couche accs rseau du modle Internet. Nous appellerons segments LAN, ceux non relis par des ponts, et LAN ponts, les autres.
Adresses MAC
Dans le datagramme Internet, la trame MAC ou la PDU cre par lentit de la couche liaison, contient linformation dadressage sur la source ou la destination, appele adresse MAC. Nous nexaminerons la structure des adresses MAC que des technologies LAN Ethernet et Token Ring qui sont les plus utilises avec FDDI, en sachant que cet adressage est similaire pour dautres normes. Les adresses MAC sont typiquement utilises pour joindre les htes situs sur les segments rseau. Elles sont graves en mmoire morte ou ROM (Read Only Memory) sur la carte dinterface rseau ou NIC (Network Interface Card). Les adresses MAC dEthernet et de Token Ring ont une longueur de 48 bits, parmi lesquels deux ont une signication particulire prcise plus loin. Une diffrence notable entre les adresses MAC dEthernet et celles de Token Ring est lordre des bits au sein des octets individuels. Lexemple suivant de la mme adresse MAC le montre :
Ethernet : 00000000.11001100.10101111 Token Ring : 00000000.00110011.11110101
Si ladresse MAC a tous ses bits positionns 1, il sagit dune adresse de diffusion (broadcast) permettant de joindre tous les htes dun segment. Les deux bits mentionns plus haut font partie des deux derniers du premier octet dans le cas dEthernet et des deux premiers du mme octet pour Token Ring. Voir gure 2.1.
Figure 2.1
0 24 8 16 31 48 40 0 1 2 3 4 5 6 7 01 2 3 4 5 6 7 0 1 2 3 4 5 6 7 01 2 3 4 5 67 0 1 2 3 4 5 6 7 01 2 3 4 5 6 7
Groupe (1) / Individuelle (0) Globale (0) / Locale (1) Adresse MAC Token Ring
Ces deux bits sont appels Groupe/Individuelle (G/I) et Globale/Locale (G/L), respectivement. Si le bit G/I est zro, ladresse MAC dsigne une adresse individuelle ; sil est un, on est dans le cas dune adresse de groupe logique dhtes appele aussi adresse multidestinataire (multicast). Ladresse MAC multidestinataire ne doit pas apparatre comme adresse source dans len-tte des trames, sauf exception aborde plus loin dans la section conguration du pontage routage par la source (source route bridging) de ce chapitre.
53
Le bit G/L prcise si ladresse MAC a t assigne par lIEEE (Institute of Electronic and Electrical Engineers), un comit des normes amricaines, qui distribue les adresses MAC. Les fabricants de cartes dinterface peuvent acqurir un bloc dadresses de cet organisme. Dans ce cas, le bit G/L est toujours zro, indiquant ainsi que les trois octets suivants ne peuvent tre assigns que par le fabricant. En revanche, les adresses avec le bit G/L un, sont dutilisation libre.
Le pontage transparent
Le pontage transparent est comme son nom lindique, totalement transparent aux htes relis un LAN pont. La spcication formelle de cette technique, rdige dans le document de lIEEE (cf. la norme 802.1D), stipule les rgles suivantes : Un pont possde plusieurs ports qui peuvent tre en tat acheminement ou bloqu ; dans le premier cas, il peut envoyer ou recevoir des trames ; dans le second, il en est incapable ; la mise en tat bloqu dun port permet dviter la duplication des trames due la prsence de deux chemins parallles actifs simultanment. Pour minimiser la quantit de trac sur un LAN pont, les adresses MAC circulant dans chaque segment sont mmorises par le pont dans une base de donnes de ltrage pour chacun de ses ports ; tout envoi dune trame dclenche la consultation de cette base et ne devient effectif travers le port concern que si le pont y trouve ladresse de destination correspondante. Une trame dont ladresse MAC de destination est absente de la base est envoye travers les ports (ooding) en tat acheminement, sauf celui par lequel il a la reue. Mme processus si la trame envoyer contient une adresse multidestinataire (multicast) ou de diffusion gnrale (broadcast). Les ponts changent des informations de topologie pour mettre leurs ports dans un tat bloqu ou acheminement ; ce protocole de pontage se droule suivant un algorithme dit darbre de recouvrement (spanning tree) dcrit dans la section suivante. Lalgorithme darbre de recouvrement Le problme qui se pose est de trouver un ensemble de chemins sans boucle reliant tous les segments du rseau ; la rsolution de ce problme complexe du fait du caractre changeant de la situation (rajout ou panne dun segment) fait appel la thorie des graphes qui dnomme arbre de recouvrement un tel ensemble. Lalgorithme qui un rseau donn associe un arbre de recouvrement sappelle algorithme darbre de recouvrement. Un tel algorithme permet une reconguration dynamique des diffrents composants dun LAN pont, tels quun hte, un segment ou un pont, qui peuvent tre ajouts ou retirs. Il permet aussi de grer les changements intervenus la suite de la dfaillance de lun de ces composants, pour maintenir en permanence un tat de connectivit globale sans boucles en tenant compte des chemins parallles. Chaque fois quun vnement survient, lalgorithme darbre de recouvrement recalcule un nouvel arbre. Lalgorithme darbre de recouvrement se droule ainsi : dans tout LAN pont, un seul pont est lu racine (root) ; tous les autres dterminent lequel parmi leurs ports permet daccder par le plus court chemin ce pont racine, qui devient ainsi le port racine (root port) mis en tat acheminement ; les ponts rattachs chaque segment doivent en dsigner un ayant le plus court chemin au pont racine ; ce pont dsign (designated bridge), seul habilit envoyer des paquets vers le pont racine et en recevoir pour ce segment, choisit un seul de ses ports en tant
54
que port dsign (designated port) pour les oprations de transfert de paquets ; le pont racine est le pont dsign pour tous les segments auxquels il est rattach ; enn, tous les ports de tous les ponts, qui ne sont ni port racine, ni port dsign, sont mis en tat bloqu. Lexemple suivant dcrit le droulement de lalgorithme de larbre de recouvrement sur un rseau dont le plan est illustr la gure 2.2. En supposant que B1 soit un candidat pour le pont racine, le calcul de larbre de recouvrement mne la topologie de la gure 2.3. Les ports en tat acheminement sont relis par des traits pais, et les ports racine sont tiquets avec le sigle RP (root port) entour dun cercle.
Figure 2.2
S1
B1
S2
Segment 1
Segment 2
Segment 3
B2
B3
B4
Segment 4
Segment 5
H1
Figure 2.3
H2 S1 B1
H3 S2
H4
B2
RP
B3
RP
B4
RP
Segment 4
Segment 5
H1
H2
H3
H4
55
Suite au droulement de lalgorithme darbre de recouvrement, B2 et B4 sont devenus les ponts dsigns pour les segments 4 et 5, respectivement. Le pont B3 met donc en tat bloqu, ses deux ports. On y voit aussi que le pont racine B1 est aussi le pont dsign pour tous les segments auxquels il est rattach. Ce qui saute aux yeux aprs lexcution de lalgorithme de larbre de recouvrement est le maintien de la connectivit gnrale permettant tout hte de communiquer avec un autre dans nimporte quel segment ainsi que la cration dune topologie arborescente vitant les paquets dupliqus ou pis encore en multiples exemplaires. Cependant la topologie darbre de recouvrement peut ne pas gnrer un chemin optimal pour les paquets. Par exemple, si les htes H1 et H3 doivent communiquer, leurs donnes doivent transiter par les ponts B2, B1 et B4 au lieu daller directement par le pont B3. Que se passe-t-il si lun des ponts est dfaillant ? Par exemple, si le pont B4 est en panne lalgorithme darbre de recouvrement recalcule la topologie telle quelle est montre la gure 2.4. Le pont B3 devient le pont dsign pour le segment 5, sauvegardant ainsi la connectivit gnrale sans boucles. Lalgorithme darbre de recouvrement fonctionne mme en cas de dfaillance du pont racine ; la topologie rsultante est illustre la gure 2.5. Le pont B2 devient le pont racine, et les ponts B3 et B4 sy adaptent en consquence. Le pont B3 devient le pont dsign pour les segments 2 et 5, et le pont B4 devient le pont dsign uniquement pour le segment 3, maintenant la connectivit requise. Le but ntait pas de couvrir tous les scnarios possibles dans ces exemples, mais de mettre en vidence les caractristiques principales de lalgorithme darbre de recouvrement : maintien de la connectivit gnrale en utilisant les chemins parallles et calcul dune nouvelle topologie arborescente aprs chaque vnement dstabilisant. Les dtails de fonctionnement de lalgorithme de larbre ne sont pas du ressort de cet ouvrage. Nous tudierons cependant les paramtres les plus importants de cet algorithme dans la section suivante de ce chapitre Solutions de conguration .
Figure 2.4
S1
B1
S2
B2
RP
B3
RP
B4
Segment 4
Segment 5
H1
H2
H3
H4
56
Figure 2.5
S1
B1
S2
B2
RP
B3
B4
RP
Segment 4
Segment 5
H1
H2
H3
H4
8 16 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 Longueur
Bits diffusion gnrale Trame la plus grande Direction Rserv
8 16 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Numro danneau Numro de pont
57
La prsence du champ RIF est signale en positionnant le bit G/I un. La trame contenant ce champ nest pas ncessairement propre Token Ring ; il peut sagir dune trame ordinaire de diffusion gnrale contenant une PDU lie une fonction de la couche suprieure, telle une requte ARP. Les bits diffusion gnrale (broadcast) font partie du sous-champ contrle de route du RIF ; ils indiquent sil sagit dune trame de diffusion gnrale multiroute (all routes broadcast), monoroute (single route broadcast) ou route spcique. Les diffrentes valeurs de ce champ se trouvent dans le tableau 2.1.
Table 2.1. Signication des bits de diffusion gnrale.
Bits diffusion gnrale
000 100 110
Description
route spcique (non diffusion) diffusion gnrale multiroute diffusion gnrale monoroute
Le champ longueur indique la longueur totale du RIF en octets. Seuls les nombres pairs de 2 30 sont admis. Selon la spcication de IBM, le nombre maximal de ponts traverss ne peut tre suprieur sept. Le champ direction indique le sens de lecture des signalisations de route (route designators). Si le bit correspondant est positionn un, les ponts doivent interprter ces informations en partant de la dernire signalisation vers la premire. Le champ trame la plus grande (largest frame) indique la MTU supporte par tous les ponts traverss le long du parcours dni dans le RIF. Le tableau 2.2 donne pour chaque valeur de trame la plus grande, la MTU correspondante et la taille maximale du datagramme IP.
Tableau 2.2. Relation entre valeur de trame la plus grande, la MTU et taille maximale de datagramme IP.
Trame la plus grande
000 001 010 011 100
MTU
552 1064 2088 4136 8232
Bien entendu, le nud source doit connatre la route vers la destination, ce quil dcouvre en lanant des trames dexploration de diffusion gnrale multiroute (all routes broadcast) ou monoroute (single route broadcast). Le nud source envoie une trame dexploration multiroute diffuse systmatiquement sur toutes les interfaces des ponts traverss (ooding). Cette trame positionne le premier bit de ladresse source, en loccurrence dnomm RII (Routing Information Indicator), un pour indiquer la prsence du champ RIF dont seul le sous-champ contrle de route est renseign. Le sous-champ diffusion gnrale contient la valeur 100 pour indiquer quil sagit dune diffusion
58
multiroute. Au fur mesure que la trame dexploration traverse le rseau, chaque pont adjoint au champ RIF un enregistrement qui comprend les numros de lanneau de provenance et le sien propre. Le pont nenvoie pas la trame dexploration lanneau suivant si elle contient dj son numro dans le RIF. Sil existe plusieurs chemins vers le destinataire, celui-ci va recevoir plusieurs copies de la trame dexploration, chacune renfermant une route particulire. Il rpond normalement toutes celles qui sont reues. Et la source choisit la route de la premire rponse, suite lenvoi de sa trame dexploration dorigine. Une autre faon de dcouvrir une route vers la destination, cest lenvoi de trames dexploration monoroute (single route explorers) appeles aussi trames dexploration de recouvrement (spanning explorers). Le mode opratoire de cette dernire mthode diffre sur quelques dtails de lexploration multiroute (all routes explorers). Quand le nud cre un champ RIF, il remplit le sous-champ diffusion gnrale avec la valeur 110 qui correspond la diffusion gnrale monoroute. Les ponts traverss y adjoignent les dsignations de route comme dans le cas des trames dexploration multiroute, mais au lieu de les envoyer travers tous les chemins possibles (ooding), ils ne les envoient que par les ports qui ont t congurs manuellement ou automatiquement pour lenvoi en diffusion gnrale monoroute. Le destinataire, quant lui, rpond selon la mme procdure. Comme on peut le constater, le pontage SRB ncessite lintervention des htes. Le pilote de la carte dinterface rseau Token Ring fournit toutes les fonctionnalits ncessaires aux protocoles des couches suprieures qui choisissent de lutiliser, ainsi que le type de trame envoyer. La RFC 1042 est le document de spcications pour le fonctionnement de IP et de ARP dans un environnement pont routage par la source. Les points quon peut en citer sont les suivants : Les protocoles IP et ARP requirent lutilisation de la fonctionnalit de pontage routage par la source. Quand le protocole ARP doit traduire une adresse IP en adresse MAC, il doit recourir en premier ladresse de diffusion gnrale toutes stations (all stations broadcast), cest-dire une adresse destine la diffusion gnrale ne contenant pas de champ RIF (RII = 0) ; sil nobtient pas de rponse dans un dlai prdtermin, il doit envoyer une trame dexploration en diffusion gnrale, soit multiroute, soit monoroute. Les diffusions gnrales de IP doivent utiliser uniquement la trame dexploration monoroute.
Solutions de conguration
Conguration du pontage transparent
Le routage et le pontage sont deux fonctions comparables qui consistent lenvoi de paquets. Mais leur rgles dexcution ne sont pas les mmes, quand elles ne sont pas contradictoires, ce qui rend leur fonctionnement simultan pratiquement impossible au sein dun mme appareil. Au l des ans, les ingnieurs de chez Cisco trouvrent des solutions innovantes pour que ces deux fonctions ne soient pas mutuellement exclusives. Ces solutions se traduisirent par trois versions majeures, chacune delles tant une amlioration de la prcdente. lorigine, le pontage transparent et le routage IP (ou dautres protocoles) ne pouvaient fonctionner simultanment au sein dun routeur Cisco, mme si ces deux fonctions taient
59
incluses. On devait dsactiver lune pour pouvoir utiliser lautre. Dans la version de lIOS 11.0, on vit apparatre le routage et le pontage simultans ou CRB (Concurrent Routing and Bridging). Le CRB permet le routage et le pontage en mme temps, mais sur des interfaces diffrentes, sans aucune communication entre elles. Ctait comme sil y avait deux appareils (un pont et un routeur) en un. En n de compte, cest dans la version 11.2 de lIOS que lon aboutit une meilleure solution, le routage et le pontage intgrs ou IRB (Integrated Routing and Bridging). Celle-ci permet de passer le trac IP ou celui dautres protocoles entre les processus de routage et de pontage. Heureusement, le CRB et le IRB najoutent que quelques nouvelles commandes celles qui taient disponibles auparavant. La section suivante dcrit les versions que sont le pontage seul, le CRB et le IRB. Utilisation dun pontage monogroupe sur un routeur La conguration du pontage la plus lmentaire ncessite de dsactiver le routage IP. Par consquent, toutes les congurations sauf celles se rapportant CRB et IRB, ont en commun la commande no ip routing. Les tapes suivre pour congurer un routeur Cisco en pontage transparent pour IP, sont les suivantes : 1. Dsactiver le routage IP par la commande no ip routing en mode de conguration globale ; 2. Crer un numro de groupe de pontage en mode de conguration globale par la commande bridge <numro de groupe> protocol <protocole> ; chaque numro de groupe dnit un pont logique spar au sein du mme routeur ; le paramtre protocole comporte trois choix possibles : ieee, dec ou ibm ; le premier est conforme la norme IEEE 802.1D, le second est celui de Digital Equipment Corporation, le premier implanter larbre de recouvrement ; le troisime, enn, est la version dIBM, utilise dans un environnement de pontage routage par la source. 3. Assigner les interfaces cres au numro de groupe de pontage par la commande bridgegroup <numro de groupe>.
AVERTISSEMENT La commande ip routing napparat pas la conguration du routeur, ce qui peut entraner un oubli
concernant sa dsactivation par no ip routing. Sans cette dernire commande aucun pontage nest possible, moins dutiliser le CRB ou le IRB. Malheureusement, le routeur ne rendra compte daucune erreur et nafchera aucun message davertissement pour signaler cet oubli. Quand le trac IP cens tre pont, atteindra le routeur, celui-ci essayera de le router sans y parvenir. L encore, aucune erreur ne sera signale pour indiquer cette mauvaise conguration.
La gure 2.7 montre un routeur utilis pour le pontage du trac IP entre deux segments. La conguration de ce routeur se trouve sur le listing 2.1.
Listing 2.1. Conguration du routeur R1.
60
Adresse Source (32 bits) Adresse Destination (32 bits) Options Bourrage
Bien que spars par un routeur, les htes H1 et H2 doivent tre congurs avec la mme adresse de sous-rseau. Comme nous lavons voqu dans la section prcdente, les ponts maintiennent une base de donnes de ltrage dadresses. Un routeur permet dafcher cette base au moyen de la commande show bridge <numro de groupe>. Si on omet ce dernier paramtre, le routeur afche les bases pour tous les groupes qui ont t dnis. Les rsultats de cette commande sur le routeur R1 de la gure 2.7 se trouvent sur le listing 2.2.
Listing 2.2. Rsultats de la commande show
R1#show bridge Total of 300 station blocks, 295 free Codes: P - permanent, S - self Bridge Group 1: Address Action 0260.8c4c.1132 forward 0060.5cc4.f4c5 forward 0060.b01a.9e1c forward Interface Age Ethernet1 3 Ethernet0 0 Ethernet0 3 RX count TX count 41 32 475 0 500 202
Le champ Age indique le nombre de minutes coul depuis la dernire mission ou rception par ladresse MAC correspondante. Les champs RX count et TX count afchent le nombre de trames mises ou reues par cette mme adresse.
ASTUCE
Bien que le routage IP soit dsactiv, les interfaces individuelles peuvent quand mme tre congures avec une adresse IP par la commande ip address <adresse IP> < masque de sous-rseau>, permettant ainsi daccder au routeur via telnet ou dautres tlcommandes. Cette adresse doit appartenir au mme sous-rseau que celui des htes connects linterface du routeur.
61
Utilisation du pontage en multigroupe Il est possible de congurer un pontage en multigroupe dans un mme routeur Cisco. Comme nous lavons dj voqu, les groupes de pontage constituent autant de ponts logiques spars dans un mme routeur. Les tapes suivre pour congurer un routeur en pontage multigroupe sont les suivantes : 1. Dsactiver le routage IP par la commande no ip routing en mode de conguration globale ; 2. Crer un pontage multigroupe en mode de conguration globale par la commande bridge <numro de groupe> protocol <protocole>, autant de fois quil est ncessaire de crer des groupes diffrents ; 3. Assigner les interfaces aux groupes de pontage appropris par la commande bridgegroup <numro de groupe>. Prenons le cas qui est illustr sur la gure 2.8. Le routeur R1est congur selon le listing 2.3.
Figure 2.8
H1
H2
e1
Segment 2
R1
e3
Segment 4
H3
H4
no ip routing bridge 1 protocol ieee bridge 2 protocol ieee interface Ethernet0 bridge-group 1 interface Ethernet1 bridge-group 1 interface Ethernet2 bridge-group 2 interface Ethernet3 bridge-group 2
62
Bien que les quatre segments soient connects au mme routeur, aucune communication nest possible entre la branche comprenant les segments 1/2 et celle comprenant 3/4. Mme si les htes des quatre segments appartiennent au mme sous-rseau, ils ne peuvent communiquer qu lintrieur dune mme branche. Par exemple, les htes H1 et H2 peuvent communiquer entre eux, mais ni lun, ni lautre ne pourront communiquer avec H3 ou H4. Ces derniers, bien videmment, peuvent communiquer entre eux. La commande show bridge utilise sur le routeur R1 sans paramtre a pour effet dafcher les deux bases de donnes de ltrage dadresses montres sur le listing 2.4.
Listing 2.4. Les bases de donnes de ltrage du routeur R1.
R1#show bridge Total of 300 station blocks, 295 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface Age RX count TX count 0260.8c4c.1132 forward Ethernet1 3 41 32 0060.5cc4.f4c5 forward Ethernet0 0 475 0 0060.b01a.9e1c forward Ethernet0 3 500 202 Bridge Group 2: 0060.97fb.566a forward Ethernet3 0260.8ca3.28cd forward Ethernet2 0 0 5 41 4 10
63
La gure 2.9 montre un exemple de deux routeurs en pontage de segments Ethernet sur une ligne srie. Les listings 2.5 et 2.6 contiennent les commandes correspondantes pour ces routeurs.
Figure 2.9
R1
Pontage de deux segments Ethernet avec deux routeurs connects par une ligne srie et congure en encapsulation HDLC.
s0
R2
s1 e0
e0
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial0 bridge-group 1
Listing 2.6. Conguration du routeur R2.
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial1 bridge-group 1
La commande show-bridge dans chaque routeur donne la sortie typique des listings 2.7 et 2.8. Mais au lieu de pointer sur linterface LAN, les adresses MAC pointent sur la ligne srie.
Listing 2.7. Base de donnes de ltrage dadresses de R1.
R1#show bridge Total of 300 station blocks, 296 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0260.8c4c.1132 forward Serial0 Age RX count TX count 0 15 4
64
0 1 0
10 30 42
10 0 4
R2#show bridge Total of 300 station blocks, 296 free Codes: P - permanent, S - self Bridge Group 1: Address 0260.8c4c.1132 0060.b01a.9e1c 00e0.b064.30a9 0260.8ca3.28cd Action forward forward forward forward Interface Ethernet0 Serial1 Serial1 Ethernet0 Age RX count TX count 0 19 6 0 12 11 1 30 0 0 42 4
Pontage sur Frame Relay Par rapport HDLC, les autres types dinterface srie ncessitent un peu plus defforts de la part de ladministrateur rseau. Cest le cas de Frame Relay. Les tapes suivre pour congurer une interface en encapsulation Frame Relay, sont les suivantes : 1. Dsactiver le routage IP par la commande no ip routing en mode de conguration globale. 2. Crer un groupe de pontage ou plus par la commande bridge <numro de groupe> protocol <protocole> en mode de conguration globale. 3. Congurer une interface srie pour le Frame Relay par la commande encapsulation frame-relay, et le cas chant, par la commande frame-relay lmi-type <type de LMI>. vous de choisir suivant vos besoins, sil faut crer ou non des sous-interfaces qui seront point point ou multipoint. 4. Assigner par la commande bridge-group, un numro de groupe de pontage (dni ltape 2), toutes les interfaces concernes ou aux sous-interfaces si elles existent. 5. Si vous utilisez des sous-interfaces multipoint ou si vous nutilisez pas de sous-interfaces, par la commande frame-relay map bridge <DLCI> [broadcast], vous pouvez affecter la fonction de pontage au DLCI correspondant ; (pour les sous-interfaces point point, cela se fait automatiquement).
REMARQUE
Le mot clef broadcast, bien quoptionnel, doit gurer dans la commande pour permettre aux routeurs dchanger des paquets spciaux appels BPDU (Bridge Protocol Data Units).
La gure 2.10 montre comment deux routeurs peuvent connecter, un segment Ethernet chacun, un rseau Frame Relay via un CVP. Les listings 2.9 et 2.10 montrent la conguration des routeurs pour le pontage en utilisant une sous-interface multipoint.
65
Pontage de deux segments Ethernet par deux routeurs connects un rseau Frame Relay.
R1
R2
s0 e0
s1 e0
H1
Listing 2.9. Conguration du routeur R1.
H2
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 multipoint frame-relay map bridge 100 broadcast bridge-group 1
Listing 2.10. Conguration du routeur R2.
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial1 encapsulation frame-relay frame-relay lmi-type ansi interface Serial1.1 multipoint frame-relay map bridge 200 broadcast bridge-group 1
66
On peut aussi dnir alternativement une sous-interface point point, auquel cas on utilise les commandes des listings 2.11 et 2.12.
Listing 2.11. Conguration du routeur R1.
no ip routing bridge 1 protocol ieee interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point frame-relay interface-dlci 100 bridge-group 1
Listing 2.12. Conguration du routeur R2.
no ip routing bridge 1 protocol ieee interface Serial1 encapsulation frame-relay frame-relay lmi-type ansi interface Serial1.1 point-to-point frame-relay interface-dlci 200 bridge-group 1
Les sorties des listings 2.13 et 2.14 sont les rsultats de la commande show bridge sur les routeurs R1 et R2, respectivement. Comme nous pouvons le constater, certaines lignes pointent sur des sous-interfaces.
Listing 2.13. Base de donnes de ltrage dadresses du routeur R1.
R1#show bridge Total of 300 station blocks, 296 free Codes: P - permanent, S - self Bridge Group 1: Address 0260.8c4c.1132 0060.97fb.566a 0060.b01a.9e1c 0260.8ca3.28cd Action forward forward forward forward Interface Serial0.1 Ethernet0 Ethernet0 Serial0.1 Age RX count TX count 2 11 4 0 73 4 0 39 9 0 36 10
67
Codes: P - permanent, S - self Bridge Group 1: Address 0260.8c4c.1132 0060.97fb.566a 0060.b01a.9e1c 0260.8ca3.28cd Action forward forward forward forward Interface Ethernet0 Serial1.1 Serial1.1 Ethernet0 Age RX count TX count 0 12 4 0 73 4 0 34 9 0 36 10
Pontage sur RNIS La conguration du pontage sur une interface daccs de base (BRI) du RNIS est assez comparable celle dune sous-interface multipoint en encapsulation Frame Relay. Le travail consiste en substituer la partie spcique RNIS par les tapes suivantes : 1. Dsactiver le routage IP par la commande no ip routing en mode de conguration globale. 2. Crer un groupe de pontage par la commande bridge <numro de groupe> protocol <protocole>. 3. Affecter le type de commutateur RNIS par la commande isdn switch-type <type de commutateur> en mode de conguration globale. 4. Dnir le trac privilgi par la commande dialer-list <numro de groupe dappel> protocol <protocole> {permit|deny} ou list <numro de liste de code type Ethernet>, en mode de conguration globale ; le paramtre protocole est bridge dans notre cas. 5. Dnir le type dencapsulation, PPP ou HDLC, sur linterface BRI ; si lauthentication est ncessaire, les utilisateurs doivent tre dnis par la commande username <nom utilisateur> passsword <mot de passe> en mode de conguration globale avec le type dauthentication dni par la commande ppp authentication {pap|chap} en mode de conguration interface ; suivant la version du systme IOS de Cisco installe dans les routeurs, des lignes supplmentaires de conguration peuvent tre ncessaires pour lauthentication ; se reporter la documentation du constructeur. 6. Assigner un numro de groupe linterface BRI par la commande dialer-group <numro de groupe dappel> qui est dni dans la commande dialer-list. 7. Le cas chant, utiliser la commande isdn spid <numro de prol de service> pour laffecter chacun des canaux B. 8. Assigner linterface BRI, le numro de groupe de pontage dni ltape 2, par la commande bridge-group <numro de groupe>. 9. Enn, dnir le mapping entre la fonction de pontage et le numro dappel du routeur distant par la commande dialer map <protocol> name <nom du routeur distant> [broadcast] <numro dappel> ; le paramtre protocole est bridge dans notre cas ; pour plus de dtails, se reporter la documentation de Cisco. La gure 2.11 montre un exemple de deux routeurs Cisco en pontage de trac IP entre deux segments Ethernet, travers un rseau RNIS. Le type de commutateur, dans ce cas, est un National ISDN-1. Les listings 2.15 et 2.16 contiennent les commandes de conguration pour les routeurs R1 et R2.
68
Figure 2.11
Pontage de segments Ethernet avec deux routeurs relis via un rseau RNIS.
Rseau RNIS
R1
R2
BRI0 e0
BRI0 e0
H1
Listing 2.15. Conguration du routeur R1.
H2
username R2 password cisco no ip routing isdn switch-type basic-ni1 dialer-list 1 protocol bridge permit bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface BRI0 encapsulation ppp isdn spid1 3840000001 isdn spid2 3840000002 dialer map bridge name R2 broadcast 384020 dialer-group 1 ppp authentication chap bridge-group 1
Listing 2.16. Conguration du routeur R2.
username R1 password cisco no ip routing isdn switch-type basic-ni1 dialer-list 1 protocol bridge permit bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface BRI0 encapsulation ppp isdn spid1 3840200001 isdn spid2 3840200002
69
dialer map bridge name R1 broadcast 384000 dialer-group 1 ppp authentication chap bridge-group 1
La commande show bridge sur les routeurs R1 et R2 donne les rsultats imprims sur les listings 2.17 et 2.18, o on voit les lignes pointer sur linterface BRI du RNIS.
Listing 2.17. Base de donnes de ltrage dadresses du routeur R1.
R1#show bridge Total of 300 station blocks, 296 free Codes: P - permanent, S - self Bridge Group 1: Address 0260.8c4c.1132 0060.97fb.566a 0060.b01a.9e1c 0260.8ca3.28cd Action forward forward forward forward Interface BRI0 Ethernet0 Ethernet0 Ethernet0 Age RX count TX count 1 5 4 0 6 0 0 5 5 0 2 0
R2#show bridge Total of 300 station blocks, 297 free Codes: P - permanent, S - self Bridge Group 1: Address Action Interface 0260.8c4c.1132 forward Ethernet0 0060.b01a.9e1c forward BRI0 0260.8ca3.28cd forward BRI0 Age RX count TX count 0 5 4 0 5 5 3 1 0
Conguration du routage et du pontage en simultan Pour congurer un routeur de faon ce quil excute le routage et le pontage simultanment, il faut recourir au CRB. Cette fonction est active par la commande bridge crb en mode de conguration globale. La commande no ip routing nest plus ncessaire avec le CRB. Le routage IP tant actif, en mme temps que le CRB, certaines interfaces pourront fonctionner en IP, tandis que dautres seront en pontage. Les recommandations pour la conguration du CRB sont les mmes que pour le pontage transparent, mais sans la commande no ip routing. La gure 2.12 montre un routeur congur pour le pontage IP entre les segments 1 et 2, et le routage IP entre les segments 3 et 4. La conguration du routeur R1 est contenue dans le listing 2.19.
Listing 2.19. Conguration du routeur R1.
70
bridge-group 1 interface Ethernet1 bridge-group 1 interface Ethernet2 ip address 10.0.1.1 255.255.255.0 interface Ethernet3 ip address 10.0.2.1 255.255.255.0
Figure 2.12
Groupe de pontage 1
H1
H2
Segment 1
e0
R1
e1
Segment 2
Segment 3
e2
e3
Segment 4
H3 Routage IP
H4
ASTUCE
Quand vous utilisez la commande bridge crb, tous les protocoles, y compris IP, sont en pontage sur les interfaces qui sont dnies avec cette fonction. Pour ractiver le routage sur ces interfaces, il faut utiliser la commande bridge <numro de groupe> route ip. Vous pourrez ainsi basculer toutes les interfaces de ce groupe, du pontage en routage IP.
Conguration du routage et du pontage intgrs Pour que les interfaces en routage et celles en pontage fonctionnent simultanment, et que le trac IP puisse passer entre ces deux types dinterface, on introduit un concept qui dnit le groupe de pontage tout entier comme une interface virtuelle de pontage (virtual bridge interface). La commande bridge irb en mode de conguration globale active cette fonction. Une fois celle-ci active, la commande interface BVI <numro de groupe> permet de dnir une interface virtuelle de pontage comprenant toutes les interfaces du numro du groupe de pontage concern. Ladresse IP de linterface virtuelle doit provenir du sous-rseau auquel appartiennent les htes connects aux segments desservis par les interfaces, membres du groupe concern. Les htes pourront utiliser cette adresse IP comme celle de la passerelle par dfaut, pour accder au reste du rseau. La gure 2.13 illustre le cas du routeur R1 congur en IRB.
71
Routeur R1 congur en IRB avec le routage de trac IP entre les interfaces du groupe de pontage (e0 et e1) et linterface de routage IP (e2).
H3 Segment 3
R1
e2 Adresse IP 10.0.1.1/24
e0
e1
Segment 1
Segment 2
H1
Groupe de pontage 1
H2
interface Ethernet0 bridge-group 1 interface Ethernet1 bridge-group 1 interface Ethernet2 ip address 10.0.1.1 255.255.255.0 interface BVI1 ip address 10.0.2.1 255.255.255.0 bridge irb bridge 1 protocol ieee bridge 1 route ip
REMARQUE
La commande bridge <numro de groupe> route ip est celle qui permet de passer le trac IP entre linterface virtuelle de pontage dnie par la commande interface BVI et linterface de routage IP.
Rglage des paramtres de larbre de recouvrement Les ponts droulent lalgorithme darbre de recouvrement en utilisant un protocole de pontage sans nom. Celui-ci peut tre conforme soit la norme IEEE 802.1D, soit celle de DEC. Ces deux versions utilisent des paquets spciaux appels BPDU (Bridge Protocol Data Unit) pour communiquer les informations de topologie qui permettent de rtablir larbre de recouvrement. Celles-ci sont envoyes une adresse MAC multicast, uniquement rserve aux ponts. Sa valeur, en hexadcimal, selon la notation de Cisco, est 0180.C200.0000.
72
Les ponts eux-mmes ont certains paramtres qui inuent sur lalgorithme darbre de recouvrement, quand il recalcule la topologie. Parmi ces paramtres, les plus importants sont lidentit du pont (bridge ID) et le cot du chemin (path cost) associ ses diffrents ports. Le pont possdant lidentit la plus petite devient le pont racine. Le cot du chemin dtermine ltat dun port, bloqu ou en acheminement. Lidentit du pont se compose de deux parties, son adresse MAC et sa priorit. Cette dernire congure par ladministrateur est plus signicative que la premire. La comparaison didentit des ponts se fait dabord par leur priorit (le pont dont la priorit est la plus petite se voit affecter lidentit la plus petite). Si les priorits sont gales, ce qui arrive quand elles sont laisses leur valeur par dfaut, la comparaison se fait entre les adresses MAC des ponts. Celui ayant la plus petite adresse possde alors lidentit la plus petite. Prenons le cas de la gure 2.14 comme exemple pour tudier comment lalgorithme darbre de recouvrement recalcule sa topologie avec les paramtres par dfaut, et comment on peut lamliorer en rglant ces derniers.
Figure 2.14
Topologie avec trois Cisco routeurs congurs pour le pontage IP. Segment 1
e0
R1
e1
Rseau 1-2
e2
Rseau 1-3
e1
e1
R2
e0
s0
Segment 2
s1 e0
R3
Segment 3
Les congurations des trois routeurs gurent aux listings 2.21 2.23.
Le pontage avec les routeurs Cisco CHAPITRE 2 Listing 2.21. Conguration du routeur R1.
73
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Ethernet1 bridge-group 1 interface Ethernet2 bridge-group 1
Listing 2.22. Conguration du routeur R2.
Router R2 no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial0 bridge-group 1 interface Ethernet1 bridge-group 1
Listing 2.23. Conguration du routeur R3.
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface Serial1 bridge-group 1 interface Ethernet1 bridge-group 1
Jusqu prsent, nous navons pas encore voqu la topologie qui rsulte du droulement de lalgorithme darbre de recouvrement. Car on navait considr que des plans de rseau comportant au plus deux ponts relis par une seule ligne, ce qui implique la mise en tat acheminement de tous leurs ports. Nous abordons maintenant le cas de trois ponts (en fait, des routeurs congurs en ponts), chacun connect aux deux autres. Un port dau moins lun de ces ponts doit tre mis en tat bloqu. Lexamen de la topologie darbre de recouvrement telle quelle est visible dun pont donn, se fait par la commande show spanning-tree <numro de groupe>. Vous pouvez utiliser la mme commande sans renseigner le paramtre pour avoir les topologies de tous les groupes qui ont t dnis. Les rsultats de cette commande sur les 3 routeurs, avec les sorties correspondantes, se trouvent sur les listings 2.24 2.26. Vu le grand nombre de lignes imprimes, les lments principaux ont t mis en italique.
74
R1#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree protocol Bridge Identifier has priority 32768, address 0010.1111.1111 Configured hello time 2, max age 20, forward delay 15 Current root has priority 32768, address 0000.0000.1000 Root port is 7 (Ethernet1), cost of root path is 100 Topology change flag not set, detected flag not set Times: hold 1, topology change 30, notification 30 hello 2, max age 20, forward delay 15, aging 300 Timers: hello 0, topology change 0, notification 0 Port 6 (Ethernet0) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0010.1111.1111 Designated port is 6, path cost 100 Timers: message age 0, forward delay 0, hold 0 Port 7 (Ethernet1) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.1000 Designated port is 2, path cost 0 Timers: message age 0, forward delay 0, hold 0 Port 8 (Ethernet2) of bridge group 1 is blocking Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.2000 Designated port is 2, path cost 100 Timers: message age 2, forward delay 0, hold 0
Listing 2.25. Sortie de la commande show
R2#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree protocol Bridge Identifier has priority 32768, address 0000.0000.1000 Configured hello time 2, max age 20, forward delay 15 We are the root of the spanning tree Topology change flag not set, detected flag not set Times: hold 1, topology change 30, notification 30 hello 2, max age 20, forward delay 15, aging 300 Timers: hello 1, topology change 0, notification 0 Port 2 (Ethernet0) of bridge group 1 is forwarding Port path cost 100, Port priority 128
75
Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.1000 Designated port is 2, path cost 0 Timers: message age 0, forward delay 0, hold 0 Port 4 (Serial0) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.1000 Designated port is 4, path cost 0 Timers: message age 0, forward delay 0, hold 0 Port 3 (Ethernet1) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.1000 Designated port is 3, path cost 0 Timers: message age 0, forward delay 0, hold 0
Listing 2.26. Sortie de la commande show
R3#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree protocol Bridge Identifier has priority 32768, address 0000.0000.2000 Configured hello time 2, max age 20, forward delay 15 Current root has priority 32768, address 0000.0000.1000 Root port is 5 (Serial1), cost of root path is 100 Topology change flag not set, detected flag not set Times: hold 1, topology change 30, notification 30 hello 2, max age 20, forward delay 15, aging 300 Timers: hello 0, topology change 0, notification 0 Port 2 (Ethernet0) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.2000 Designated port is 2, path cost 100 Timers: message age 0, forward delay 0, hold 0 Port 5 (Serial1) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.1000 Designated port is 4, path cost 0 Timers: message age 1, forward delay 0, hold 0 Port 3 (Ethernet1) of bridge group 1 is forwarding Port path cost 100, Port priority 128 Designated root has priority 32768, address 0000.0000.1000 Designated bridge has priority 32768, address 0000.0000.2000 Designated port is 3, path cost 100 Timers: message age 0, forward delay 0, hold 0
76
Supposons que le routeur R1 soit le plus performant des trois, et quon veuille faire transiter par lui le maximum de trac, cest--dire quil devienne, en somme, le routeur racine. Rappelons quun tel routeur est le pont dsign pour tous les segments auxquels il est connect, et est de ce fait en mesure dcouler le maximum de trac. Or, on constate la ligne 4 du listing pour le routeur R2 que cest ce dernier qui est racine. Pourquoi ? Parce que les valeurs par dfaut des priorits dans ces routeurs (congurs en ponts) nont pas t modies. Comme ces priorits sont restes gales, pour choisir le pont racine ayant lidentit la plus petite, cest ladresse MAC qui a servi de facteur discriminant. Parmi les trois ponts R1, R2 et R3 dont les adresses sont respectivement 0010.1111.1111, 0000.0000.1000 et 0000.0000.2000, R2 qui possde la plus petite adresse devient pont racine. En outre, on ne peut garder les interfaces srie des routeurs R1 et R2 en tat acheminement, tandis que linterface Ethernet 2 du routeur R1 est en tat bloqu. Il faut noter que le cot du chemin est de 100, pour toutes les interfaces, quelles soient srie ou Ethernet. Ainsi, parce que linterface srie du routeur R3 donne le chemin le plus court, en termes de cot, vers le pont racine (routeur R2), elle est mise en tat dacheminement. Le moyen le plus facile de changer cette topologie consiste attribuer une valeur plus faible la priorit du routeur R1, qui est sa valeur maximale par dfaut, cest--dire, 32768. En la rduisant, par exemple 1000, ce routeur devient le pont racine. Pour changer la priorit du pont, on utilisera la commande bridge <numro de groupe> priority <priorit> qui affecte le groupe renseign en paramtre. Une fois ce changement effectu, sur les listings 2.27 2.29 on voit le rsultat de la topologie recalcule. Seules les lignes qui prsentent un intrt ici y sont reproduites.
Listing 2.27. Sortie de la commande show spanning-tree sur le routeur R1, aprs changement de priorit.
R1#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree protocol Bridge Identifier has priority 1000, address 0010.1111.1111 ... We are the root of the spanning tree ... Port 6 (Ethernet0) of bridge group 1 is forwarding ... Port 7 (Ethernet1) of bridge group 1 is forwarding ... Port 8 (Ethernet2) of bridge group 1 is forwarding ...
Listing 2.28. Sortie de la commande show spanning-tree sur le routeur R2, aprs changement de priorit.
R2#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree
77
protocol Bridge Identifier has priority 32768, address 0000.0000.1000 ... Current root has priority 1000, address 0010.1111.1111 Root port is 2 (Ethernet0), cost of root path is 100 ... Port 2 (Ethernet0) of bridge group 1 is forwarding ... Port 4 (Serial0) of bridge group 1 is forwarding ... Port 3 (Ethernet1) of bridge group 1 is forwarding ...
Listing 2.29. Sortie de la commande show spanning-tree sur le routeur R3, aprs changement de priorit.
R3#show spanning-tree 1 Bridge Group 1 is executing the IEEE compatible Spanning Tree protocol Bridge Identifier has priority 32768, address 0000.0000.2000 ... Current root has priority 1000, address 0010.1111.1111 Root port is 2 (Ethernet0), cost of root path is 100 ... Port 2 (Ethernet0) of bridge group 1 is forwarding ... Port 5 (Serial1) of bridge group 1 is blocking ... Port 3 (Ethernet1) of bridge group 1 is forwarding ...
La topologie darbre de recouvrement est prsent satisfaisante. R1 est le pont racine, et seuls les ports Ethernet sont en tat acheminement. Nanmoins, on pourrait avoir besoin de renseigner la variable de cot du chemin en lui donnant la bonne valeur pour tous les ports impliqus dans lalgorithme darbre de recouvrement. En principe, la valeur du cot du chemin dpend du dbit de la connexion. Si, par exemple, une ligne srie a un dbit qui est le tiers de celui dEthernet, on peut donner donner une valeur de 300 au cot du chemin de son interface. La commande utilise cet effet est bridge-group <numro de groupe> path-cost <cot du chemin>.
ASTUCE
Il est possible de changer ladresse MAC inscrite sur la carte dinterface rseau dun routeur Cisco. Bien que dconseille, la commande pour effectuer ce changement est mac-address <nouvelle adresse MAC>, en mode de conguration interface. Les adresses MAC qui apparaissent sur les listings ont toutes t assignes par la commande macaddress, pour aider comprendre comment lalgorithme darbre de recouvrement recalcule sa topologie. De plus, la valeur par dfaut du cot du chemin a t change pour linterface srie, avec la commande bridge-group 1 path-cost 100 pour la forcer ltat acheminement, an dillustrer nos propos. Bien que la valeur par dfaut dune interface srie soit plus grande que celle dune interface Ethernet, elle peut ne pas reter son dbit rel, et par consquent ncessiter un rajustement.
REMARQUE
78
no ip routing source-bridge ring-group 1000 interface TokenRing0 ring-speed 16 source-bridge 110 1 1000 multiring ip interface TokenRing1 ring-speed 16 source-bridge 120 2 1000 multiring ip interface TokenRing2 ring-speed 16 source-bridge 130 3 1000 multiring ip
79
Conguration du pontage distant routage par la source Comme le pontage transparent, le pontage routage par la source peut aussi tre utilis sur des rseaux non LAN et non Token Ring. Cette variante est appele pontage distant routage par la source ou RSRB (Remote Source Route Bridging). Contrairement au cas du pontage transparent, dans la conguration du RSRB on ne peut rattacher le service de pontage directement linterface non Token Ring, car celle-ci, en gnral, ne possde pas la fonctionnalit de pontage routage par la source. On a donc recours une extension de lanneau virtuel aux interfaces non Token Ring, de faon ce que tous les routeurs qui y participent apparaissent comme faisant partie de ce mme anneau. Il sagit dune mulation de Token Ring. Cette extension se fait en rattachant lanneau virtuel tous les partenaires distants, par la commande source-bridge remote-peer avec un certain nombre de paramtres, dont le type de transport (TCP, Frame Relay ou autres) et lidentication du partenaire distant qui, dans le cas de TCP, est ladresse IP. Prenons lexemple de la gure 2.15 o lon voit deux routeurs congurs en RSRB qui acheminent le trac IP entre deux anneaux Token Ring relis par une connexion distante en ligne srie.
Figure 2.15
Connexion en ligne srie de deux anneaux Token Ring par deux routeurs congurs en RSRB.
R1
R2
s0
to0
Anneau physique 100
s1
to0
Anneau physique 200
no ip routing source-bridge ring-group 1020 source-bridge remote-peer 1020 tcp 10.1.1.2 local-ack source-bridge remote-peer 1020 tcp 10.1.1.1 interface Serial0 ip address 10.1.1.1 255.255.255.0 interface TokenRing0 ring-speed 16 multiring ip source-bridge 100 11 1020
Listing 2.32. Conguration du routeur R2.
80
source-bridge remote-peer 1020 tcp 10.1.1.1 local-ack source-bridge remote-peer 1020 tcp 10.1.1.2 interface Serial1 ip address 10.1.1.2 255.255.255.0 interface TokenRing0 ring-speed 16 multiring ip source-bridge 200 12 1020
Conguration du pontage traducteur routage par la source et du pontage transparent Le pontage transparent nest pas limit au seul environnement Ethernet, il peut fonctionner aussi dans un cadre exclusivement Token Ring ou mixte (Ethernet/Token Ring). On peut comprendre aisment le fonctionnement du pontage transparent dans le cadre du Token Ring ; lenvironnement mixte, lui, soulve quelques questions. Le pontage routage par la source na t conu que pour les environnements Token Ring. Certains ponts perfectionns peuvent essayer de traduire les informations du SRB en celles du pontage transparent et vice versa, permettant ainsi de fusionner les LAN de ces deux technologies. Cette mthode est appele pontage traducteur routage par la source (source route translational bridging). Comme nous lavons remarqu plus haut, les situations qui justient la mise en uvre dun tel environnement mixte, sont non seulement rares, mais elles induisent aussi des problmes complexes. Tout dabord, nous avons appris dans la section prcdente que les adresses MAC dEthernet et de Token Ring ont un ordre diffrent des bits dans chacun des octets, ce qui ncessite une traduction si un pont doit relier des LAN comportant ces deux technologies. Un exemple de cette traduction se trouve la gure 2.16.
Figure 2.16
00000000 00000000 01100000 00000110 01011100 00111010 11000100 00100011 11110100 00101111 Adresse source MAC 00 60 5C C4 F4 C5 11000101 10100011 Adresse source MAC 00 06 3A 23 2F A3
Traduction de lordre des bits dans les octets dadresse MAC par un routeur en pontage entre un LAN Ethernet et un autre en Token Ring.
Charge utile
En-tte
Charge utile
En-tte
R1
Segment Ethernet Segment Token Ring
81
La traduction en elle-mme ne serait pas un problme majeur, si le protocole ARP ne sauvegardait pas une copie de ladresse MAC source dans sa propre PDU. Au niveau de la couche liaison, la PDU de lARP nest rien dautre quune charge utile encapsuler dans une trame MAC. Le pont, en tant quappareil fonctionnant la couche liaison, na donc aucun moyen dexaminer la PDU et de traduire ainsi la copie de ladresse MAC qui sy trouve. Le module ARP destinataire va utiliser cette adresse MAC source non traduite dans sa rponse, lenvoyant ainsi dans la nature. Le seul moyen dviter ce problme est de congurer toutes les entres ARP manuellement, ce qui serait trs fastidieux. Un autre problme provient de la diffrence de MTU entre Ethernet et Token Ring. Le premier a une MTU de 1500 octets, tandis que celle du second peut compter jusqu 4096 octets. Si un routeur est utilis pour acheminer le trac IP entre un segment Ethernet et un anneau Token Ring, il peut fragmenter les datagrammes en provenance du Token Ring de faon ce quils puissent tenir dans une MTU Ethernet, mais les ponts nayant pas cette capacit, vont tout simplement mettre au rebut sans aviser, tout datagramme trop grand pour tre envoy dans la MTU du rseau destinataire dont la taille nest pas sufsante. Il est noter quune communication peut toujours commencer entre deux stations relies par un pont, dont lune se trouve sur Ethernet et lautre sur Token Ring car au dbut, les protocoles nenvoient pas leur PDU la taille maximale. Cest seulement en cours de session que la taille des PDU augmente progressivement pour atteindre la MTU du rseau physique sous-jacent. Ds que la taille des PDU envoyes par la station sur le Token Ring dpasse la MTU du rseau Ethernet, le pont intermdiaire va les mettre au rebut, provoquant ainsi une coupure de session. Il est donc ncessaire de rduire la MTU sur tous les nuds du Token Ring susceptibles galement de communiquer avec des nuds sur un segment Ethernet. Parce que ces deux types de pontage de trac IP en environnement mixte sont trs rares, on ne montre quun exemple de conguration pour chacun, avec un seul routeur reliant un segment Ethernet et un anneau Token Ring. Le schma auquel pourraient sappliquer ces types de pontage se trouve illustr la gure 2.17.
Figure 2.17
R1
Segment Ethernet e0
82
Le listing 2.33 montre une conguration de routeur reliant un segment Ethernet et un anneau Token Ring, en pontage transparent de trac IP. Le listing 2.34 montre une conguration de routeur reliant un segment Ethernet et un anneau Token Ring, en pontage traducteur.
Listing 2.33. Conguration de pontage transparent dans un environnement de supports physiques mixtes.
no ip routing bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface TokenRing0 ring-speed 16 bridge-group 1
Listing 2.34. Conguration de pontage traducteur dans un environnement de supports physiques mixtes.
no ip routing source-bridge ring-group 1000 source-bridge transparent 1000 200 15 1 bridge 1 protocol ieee interface Ethernet0 bridge-group 1 interface TokenRing0 ring-speed 16 source-bridge 100 1 1000 multiring ip
3
Routage statique
Solutions de conguration prsentes dans ce chapitre Utiliser des interfaces connectes en routage de base . . . . . . . . . . . . . . . . . . . . . . . Congurer le routage de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utiliser une mtrique avec le routage statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer une route statique avec une interface au lieu dun routeur de saut suivant Congurer le routage sans classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer une route par dfaut (default gateway) sur un routeur . . . . . . . . . . . . . . Congurer une route individuelle pour un hte . . . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer le partage de charge cot gal en routage statique . . . . . . . . . . . . . . . Congurer le partage de charge cot ingal en routage statique . . . . . . . . . . . . . . 86 87 90 93 96 98 98 99 103
Dans les chapitres prcdents, nous avons tudi les principes des protocoles couches et les dtails du modle Internet, tels que ladressage IP, lacheminement de datagrammes, la fragmentation, etc. Nous y avons appris que les routeurs IP sont les appareils qui servent acheminer les datagrammes leur destination, travers des rseaux divers. Il est temps de savoir comment ces appareils prennent leur dcision dans la fonction de routage. Les routeurs acheminent les datagrammes entre les segments qui leur sont directement rattachs, et leurs dcisions de routage sont bases sur ladresse rseau et non sur celle de lhte. Dune certaine manire, les routeurs doivent dterminer quelles adresses correspondent quelles interfaces. Bien videmment, il serait commode davoir tous les segments connects un seul routeur, sachant que ce dernier sait exactement quelles sont les adresses rseau de ses interfaces. Mais si plusieurs routeurs sont utiliss pour assurer le trac entre diffrents
84
segments dun rseau, et si le trac doit passer par plus dun saut, les dcisions de routage deviennent difciles. Pour faire face ces difcults, les routeurs doivent : mmoriser les adresses rseau disponibles sur les segments qui ne leur sont pas directement rattachs ; appliquer certaines rgles pour rsoudre des cas dambigut ventuels pouvant survenir quand la mme adresse IP correspond plusieurs adresses rseau ; rappelons que ladresse rseau peut tre celle dun rseau direct, dun sous-rseau, dun hte ou mme celle dun super-rseau dans le modle dadressage sans classe. Concernant le premier point, les routeurs utilisent une base de donnes appele table de routage, quils sont censs tenir jour. Cette table contient des entres ou routes dont chacune comprend une seule adresse rseau avec un masque de sous-rseau (ou, dans le vocabulaire rcent, un prxe rseau et une longueur de prxe rseau ), ainsi quune liste de rfrences pour atteindre cette adresse rseau. Cette liste spcie gnralement ladresse IP du routeur de saut suivant qui devrait tre accessible directement par lune des interfaces locales. Cependant, si ladresse rseau est celle dun segment directement rattach, le champ concernant le routeur de saut suivant est laiss vide. La table de routage peut aussi contenir des informations auxiliaires telles que des mtriques et des signalisations de route. Les routeurs utilisent deux procds pour remplir la table de routage, la conguration de routes statiques et lacquisition de routes dynamiques. Dans le premier cas, cest ladministrateur rseau qui doit manuellement congurer les routes dans la table ; dans le deuxime cas, des protocoles auxiliaires appels protocoles de routage dynamique assurent la dcouverte automatique des routes en changeant des paquets spciaux qui servent aux mises jour de la table. Ce chapitre est consacr au routage statique et la faon de le congurer sur les routeurs Cisco. Le routage dynamique sera trait exhaustivement dans les deux chapitres suivants. Avant de voir les tches de conguration statique, examinons dabord comment les routeurs choisissent les routes adquates partir de leurs tables. Ce rle est dvolu lalgorithme de routage implant sur le routeur.
Algorithme de routage
La premire version de lalgorithme de routage concernait les rseaux classe et fut constamment amliore pour tre enn consigne dans la norme dadressage rseau sans classe. Les dtails de cette norme se trouvent dcrits dans la RFC 1812 traitant des spcications des routeurs pour IPv4. Notre expos sur lalgorithme de routage sera bas sur la version sans classe et relvera les diffrences avec la version originale. Lalgorithme de routage utilise deux arguments, ladresse IP de destination et la table de routage. Le rsultat est une route unique que le routeur utilise pour acheminer les datagrammes. La version simplie de lalgorithme de routage sans classe comporte deux tapes : 1. La correspondance lmentaire (basic match), qui consiste ne conserver que les prxes rseau qui correspondent ladresse de destination et carter tous les autres ; par exemple, si ladresse de destination est 10.234.24.194, le rsultat de lalgorithme peut donner les prxes rseau suivants : 8.0.0.0/5, 10.0.0.0/8 et 10.234.0.0/16 ; les autres, 9.0.0.0/8, 10.200.0.0/16 et 146.123.45.0/24, sils existent dans la table, sont carts.
85
2. La correspondance la plus longue (longest match) applique au rsultat prcdent permet de choisir le prxe rseau le plus long comme rsultat nal ; si la correspondance lmentaire navait produit aucun rsultat, lalgorithme aboutirait la mise au rebut du datagramme ; dans le cas contraire, comme dans notre exemple, la correspondance la plus longue choisirait le prxe 10.234.0.0/16. Les deux tapes prcdentes peuvent tre combines en une seule fonction, cest--dire la recherche directe de la correspondance la plus longue. Mais le document ofciel spcie les deux tapes qui nous permettront de relever plus facilement les diffrences entre la version classe et celle sans classe : 1. La correspondance lmentaire, dans la version classe, extrait en premier ladresse rseau classe de ladresse IP de destination ; si le routeur est directement connect un ou plusieurs des sous-rseaux relevant de cette adresse rseau, lalgorithme va choisir en premier les prxes correspondants, y compris celui de ladresse rseau (gal ladresse elle-mme) pouvant gurer dans la table de routage (parmi ces prxes, seuls seront retenus ceux qui correspondent ladresse de destination) ; si le routeur nest connect aucun des sous-rseaux, lalgorithme va conserver tous les prxes qui correspondent ladresse IP de destination.
REMARQUE
Autrement dit, si le routeur est connect un ou plusieurs sous-rseaux de ladresse rseau classe laquelle appartient ladresse IP de destination, il nacheminera jamais ce datagramme en utilisant les routes de super-rseau de ladresse de destination.
2. La correspondance la plus longue pour la version classe est la mme que pour lalgorithme de routage sans classe. Ltape de la correspondance lmentaire peut paratre un peu complexe et nous allons la clarier par un exemple pratique. Supposons quun routeur contienne les routes pour les prxes : 10.1.1.0/24, 10.1.2.0/24, 10.2.1.0/24, 10.2.2.0/24, 172.16.0.0/16 et 0.0.0.0/0. Supposons aussi que ce routeur soit directement connect aux sous-rseaux correspondant aux deux premiers prxes. Sil reoit un datagramme dont ladresse IP de destination est 10.3.1.10, lalgorithme de routage classe extrait en premier ladresse rseau qui est 10.0.0.0/ 8 ; ensuite, il ne slectionne que les prxes qui sont des sous-rseaux de 10.0.0.0/8 dans sa table : 10.1.1.0/24, 10.1.2.0/24, 10.2.1.0/24 et 10.2.2.0/24. Aucun de ces prxes ne correspond ladresse de destination, ce qui oblige le routeur mettre au rebut le datagramme. Notons que lalgorithme de routage, dans sa version classe, na pas pris pas en compte la route par dfaut, 0.0.0.0/0, contrairement celui de la version sans classe.
Partage de charge
Encore une fois, les routes consignes dans les tables de routage consistent en un prxe rseau associ une liste de rfrences pour atteindre la destination correspondant ce prxe. Dans le cas o plusieurs routes existent pour une mme destination, le routeur doit choisir lune dentre elles voire les utiliser concurremment. Lorsquun routeur utilise plus dune route vers une mme destination, il effectue un partage de charge ou quilibrage de charge (load splitting ou load balancing). Dans un cas, le paquet emprunte des routes cot gal, o le ux des paquets est partag de manire gale entre des
86
routes de mme dbit ; dans lautre, le trac scoule travers des routes cot ingal proportionnellement leur dbit.
REMARQUE
On peut aussi considrer quune table de routage qui contient plusieurs routes vers la mme destination peut les utiliser pour le partage de charge. Vu ainsi, lalgorithme de routage gnre en sortie plusieurs routes au lieu dune seule. Ces deux descriptions sont quivalentes, quoique celle qui gure dans le texte principal semble plus logique.
Les routeurs Cisco permettent en outre demployer deux stratgies de partage de charge, par destination ou par paquet. Dans le premier cas, le routeur choisit alatoirement une route et lutilisera toujours pour acheminer tous les datagrammes vers cette destination. Dans le second cas, le routeur achemine les datagrammes tour de rle (round robin) travers toutes les routes disponibles pour le prxe rseau correspondant. La fonction de partage de charge peut tre dsactive, si elle savre inutile.
Solutions de conguration
Les solutions qui sont proposes dans les sections suivantes supposent que toutes les interfaces des routeurs ont t pralablement bien congures et en mme temps affectes dune adresse IP adquate.
Les messages Ethernet is up et line protocol is up signient que linterface est physiquement et logiquement en tat actif. En supposant que linterface ait t assigne ladresse IP 10.1.1.1, en utilisant la commande show ip route comme sur le listing 3.2, nous pouvons vrier que la table de routage contient bien cette adresse (en italique).
Listing 3.2. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets C 10.2.2.0 is directly connected, TokenRing0 C 10.1.1.0 is directly connected, Ethernet0 C 10.0.255.0 is directly connected, Serial1
87
Dans certains cas, une interface peut tre physiquement active (up) et logiquement inactive (down). Si cela se produit, ladresse IP correspondante est efface de la table de routage. Par exemple, si un routeur utilise une interface Ethernet relie un concentrateur (hub), tant que lchange des messages Keep alive nest pas interrompu pour une raison quelconque (dfaillance du cble, erreur de conguration ou taux derreur excessif), cette interface reste logiquement active. Par contre, une mauvaise communication peut entraner une dsactivation logique de linterface, et la commande show interfaces ethernet 0 du routeur R1 donne ce qui suit :
R1#show interfaces ethernet 0 Ethernet0 is up, line protocol is down
Mme si linterface nest que logiquement inactive, ladresse rseau ou sous-rseau laquelle appartient son adresse IP napparatra pas dans la table de routage, comme le montre la sortie de la commande show ip route du listing 3.3.
Listing 3.3. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/24 is subnetted, 2 subnets C 10.2.2.0 is directly connected, TokenRing0 C 10.0.255.0 is directly connected, Serial1
Les htes de segments interconnects par un mme routeur doivent avoir une route qui pointe sur ladresse IP correspondant linterface de ce dernier, qui devient ainsi la default gateway.
Cette route est emprunte chaque fois que le routeur R2 reoit un paquet de lhte H1 destin lhte H2. Il consulte alors sa table de routage qui donne ladresse du routeur de saut suivant R3, auquel il envoie le paquet. Une fois que ce paquet a atteint sa destination, lhte H2 rpond avec son propre paquet qui est envoy au routeur R3 pour lacheminement travers le rseau intermdiaire.
88
Figure 3.1
H2
Segment 2 : 10.0.2.0/24
Rseau : 10.0.255.0/24
R3 R2
s0: Adresse IP : 10.0.255.3 s1: Adresse IP : 10.0.255.2 s0: Adresse IP : 10.0.254.1 s0: Adresse IP : 10.0.254.2 Rseau : 10.0.254.0/24
R1
Segment 1 : 10.0.2.0/24
H1
Si le routeur R3 est bien congur, il envoie le paquet de lhte H2 au routeur R2. Mais celuici ne connat pas la route vers le segment 1, ce qui loblige mettre le paquet au rebut. Il est facile de corriger cette situation en ajoutant une autre route dans la table de R2 par la commande suivante : R2(config)#ip route 10.0.1.0 255.255.255.0 10.0.254.1 Les congurations en routage statique qui ne concernent quun routeur sont rares ; gnralement, elles en impliquent deux ou plus. La conguration en routage statique dun seul routeur ne cre une connectivit que dans un sens. Le paquet est livr destination, mais lorsque le destinataire rpond, le routeur lautre bout ignore la route vers la source, lobligeant ainsi mettre le paquet de rponse au rebut. Cest le cas de la gure 3.2 o le routeur R1 contient lentre suivante dans sa table de routage : ip route 10.0.2.0 255.255.255.0 10.0.254.2 Quant au routeur R2, il na aucune route statique congure. La communication initie par lhte H1 vers lhte H2 choue parce que la rponse de ce dernier se trouve mise au rebut par le routeur R2. Pour corriger cet tat de fait, il suft dajouter lentre suivante dans la table de routage de R2, par la commande : R2(config)#ip route 10.0.1.0 255.255.255.0 10.0.254.1
89
Seul le routeur R1 est congur avec une route statique pour le segment 2.
H2
Segment 2 : 10.0.2.0/24
Rseau : 10.0.254.0/24
R2
s0: Adresse IP : 10.0.254.1 s0: Adresse IP : 10.0.254.2
R1
Segment 1 : 10.0.1.0/24
H1
Il est noter que ce problme, bien que simple, peut tre difcile diagnostiquer. Si nous utilisons par exemple la commande ping sur le routeur R1 pour vrier laccessibilit de lhte H2, on y arrive parfaitement. Mais au cas o le ping est utilis sur lhte H2 pour vrier laccessibilit de linterface Ethernet du routeur R1, on nobtient aucune rponse. premire vue, de tels symptmes pourraient nous laisser penser quil sagit dun problme de connectivit sens unique : le trac circule du routeur R1 vers lhte H2, mais pas dans le sens inverse. Comme cela se produit sur le routeur R1, et que lhte H2 ne peut accder au segment Ethernet connect derrire ce routeur, cest celui-ci qui semble tre mal congur. Mais si nous tudions le problme de prs, nous nous rendrons compte que ce nest pas le cas. Le ping sur le routeur R1 montre que lhte H2 est accessible, ce qui signie que ce routeur reoit les rponses au ping. Nous pouvons dj en conclure quil ne sagit pas dun problme de connectivit sens unique. Nous savons galement que le routeur R1 utilise son interface la plus proche pour envoyer le ping, dans ce cas linterface srie 0 directement connecte par une ligne linterface srie 0 du routeur R2. Quand lhte H2 rpond, les paquets sont envoys ladresse IP de linterface srie 0 du routeur R1 qui est ladresse de provenance, et pour laquelle le routeur R2 a une connexion directe. Cest seulement dans le cas o lhte H2 cherche envoyer un ping linterface Ethernet du routeur R1, que cette commande ne reoit pas de rponse, parce que le routeur R2 ne connat aucune route vers cette interface. La confusion vient du fait quon a tendance associer une adresse IP au routeur lui-mme, alors quil faudrait plutt lassocier une interface particulire de ce dernier. Les htes qui en gnral nont quune interface ne connaissent pas ce problme.
90
Enn, un autre point important retenir est la conguration des htes. Le routage statique des routeurs ne peut fonctionner convenablement sans une conguration adquate sur les htes qui doivent disposer dune route pointant vers ladresse IP de linterface correspondante du routeur. Une conguration incomplte de lhte et une mauvaise conguration de routage statique sur le routeur le plus proche vont souvent de pair. Autrement dit, un administrateur qui congure le routage statique neffectue souvent que la moiti du travail, oubliant que le site concern doit communiquer avec dautres.
Il faut noter que les valeurs de distance nentrent en ligne de compte que si les longueurs des prxes rseau sont gales. Si elles sont diffrentes, les routes correspondantes sont aussi considres comme diffrentes. Par exemple, sil existe deux routes statiques avec les prxes rseau 10.1.0.0/16 et 10.1.0.0/24, elles seront toutes les deux ajoutes dans la table de routage, indpendamment de leur valeur de distance.
Pourquoi aurait-on besoin de routes qui ne sont pas ajoutes dans la table de routage ? Pour rpondre cette question, on doit faire appel lun des principes qui rgit lajout dune route dans la table de routage. Le routeur najoute pas une route dans sa table sans avoir connaissance du routeur de saut suivant. En outre, si cette route vient disparatre, suite une panne de connexion, elle est efface de la table. Normalement, le routeur de saut suivant est accessible par lun des rseaux directement connects. Par consquent, si linterface correspondant ce rseau est active, le routeur garde une route pour ladresse rseau laquelle appartient ladresse IP assigne cette interface. Si celle-ci tombe en panne, le routeur efface immdiatement la route correspondante. Toute autre route pointant sur un routeur de saut suivant accessible par cette interface, est aussi efface. Entre-temps, elle est immdiatement remplace par la route statique congure pour la mme destination qui remplit le mieux au critre de la valeur de distance. On peut ainsi avoir des routes de rechange en cas de dfaillance de la route principale. Les routes statiques qui ne deviennent effectives quaprs disparition de toutes les autres ayant une valeur de distance infrieure, sappellent routes statiques ottantes (oating static routes). Les routes statiques ottantes sont souvent utilises pour procurer une ligne de secours une connexion principale. La gure 3.3 montre deux routeurs R1 et R2 connects par une paire de lignes srie dont les congurations se trouvent sur les listings 3.4 et 3.5.
Listing 3.4. Conguration du routeur R1.
91
interface Serial1 ip address 195.1.0.1 255.255.255.0 interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 ip route 200.2.0.0 255.255.255.0 195.0.0.2 ip route 200.2.0.0 255.255.255.0 195.1.0.2 10
Listing 3.5. Conguration du routeur R2.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 195.1.0.2 255.255.255.0 interface Serial1 ip address 195.0.0.2 255.255.255.0 ip route 200.1.0.0 255.255.255.0 195.0.0.1 ip route 200.1.0.0 255.255.255.0 195.1.0.1 10
Figure 3.3
Segment 2 200.2.0.0/24
s1 s0
R2
s0
Ligne 2 : 195.1.0.0/24
R1
s1
Segment 1 200.1.0.0/24
Si nous examinons la table de routage de chacun des routeurs, nous constatons que la route dont la valeur de distance est 10, ny gure pas. Voir listings 3.6 et 3.7.
92
R1#show ip route ... C 195.1.0.0 is directly connected, Serial1 C 195.0.0.0 is directly connected, Serial0 C 200.1.0.0 is directly connected, TokenRing0 S 200.2.0.0 [1/0] via 195.0.0.2
Listing 3.7. Table de routage du routeur R2.
is directly connected, Serial0 is directly connected, Serial1 [1/0] via 195.0.0.1 is directly connected, Ethernet0
Si nous provoquons une panne de ligne reliant linterface srie 0 du routeur R1 linterface srie 1 du routeur R2, nous pouvons voir sur le listing 3.8 que la route qui pointait sur linterface srie 0 pointe maintenant sur linterface srie 1 pour le routeur R1, et inversement pour le routeur R2. La ligne de secours a donc t substitue la ligne principale.
Listing 3.8. Panne provoque de la ligne 1 reliant les routeurs R1 et R2 fait disparatre celle-ci de leur table de routage.
R1# %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down %LINK-3-UPDOWN: Interface Serial0, changed state to down R1#show ip route ... C 195.1.0.0 is directly connected, Serial1 C 200.1.0.0 is directly connected, TokenRing0 S 200.2.0.0 [10/0] via 195.1.0.2 R2# %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1, changed state to down %LINK-3-UPDOWN: Interface Serial1, changed state to down R2#show ip route ... C 195.1.0.0/24 is directly connected, Serial0 S 200.1.0.0/24 [10/0] via 195.1.0.1 C 200.2.0.0/24 is directly connected, Ethernet0
Quand la ligne en panne est rtablie, la route qui pointait sur linterface srie de celle-ci, sur les deux routeurs, y pointe de nouveau, comme on peut le voir sur le listing 3.9.
Listing 3.9. Rtablissement de la ligne 1 avec restauration de la route dorigine qui pointe de nouveau sur linterface davant.
93
%LINEPROTO-5-UPDOWN: Line protocol on changed state to up R1#show ip route ... C 195.1.0.0 is directly connected, C 195.0.0.0 is directly connected, C 200.1.0.0 is directly connected, S 200.2.0.0 [1/0] via 195.0.0.2
Interface Serial0,
R2# %LINK-3-UPDOWN: Interface Serial1, changed state to up %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1, changed state to up R2#show ip route ... C 195.1.0.0/24 is directly connected, Serial0 C 195.0.0.0/24 is directly connected, Serial1 S 200.1.0.0/24 [1/0] via 195.0.0.1 C 200.2.0.0/24 is directly connected, Ethernet0
Il existe une relation entre la valeur de distance et les routes tiquetes C (connected) dans la table de routage. Quand une adresse IP est assigne une interface, le routeur ajoute une tiquette de route statique dans sa table de routage. Comme le routeur est directement connect cette interface, il attribue la valeur de distance minimale qui est 0, ce qui signie que cest la meilleure route vers ce rseau. On ne peut pas la remplacer par une route statique dont la valeur de distance minimale est 1.
Routage statique avec utilisation dune interface de sortie au lieu du routeur de saut suivant
Pour congurer une route statique sur une interface, nous devons utiliser la commande ip route <adresse rseau distant> <masque de sous-rseau> <interface de sortie>. Du point de vue du routage, il peut sembler curieux dutiliser une interface plutt que le routeur de saut suivant. En pareil cas, comment le routeur congur avec une route statique pointant sur une interface peut-t-il choisir le routeur de saut suivant ? La rponse peut se trouver assez aisment dans la table de routage, si on lexamine de prs. Les routes connectes qui y gurent, pointent sur des interfaces et non des routeurs de saut suivant. Dans le cas des routes connectes, cela se comprend car le routeur est lui-mme le dernier saut vers ces rseaux. Nul besoin dun autre routeur. Comme nous le savons dun chapitre prcdent, quand le routeur de dernier saut doit acheminer un datagramme sa destination nale, il essaye de traduire ladresse IP en celle de la couche accs rseau, qui est ladresse MAC dans le cas des LAN. Sil y parvient, le routeur envoie directement le datagramme destination. Les routes statiques pointant sur des interfaces se comportent comme des routes connectes. Le routeur considre ces rseaux comme directement connects ses interfaces, et tout le trac qui leur est destin aboutit sur les segments correspondants. Le routeur par consquent sattribue le rle de celui du saut suivant, et mme du dernier saut ; il na donc recours aucun autre routeur. Pour traduire ladresse IP de destination en adresse de la couche accs rseau, cest le protocole ARP qui est utilis dans le cas des LAN. Nous qualierons ces routes statiques spciales de pseudo-connectes.
94
Bien quune route pseudo-connecte se comporte de la mme faon quune route statique normale, le routeur na pas dadresse IP sur ce rseau connect . Bien videmment, si un hte rside sur le rseau pseudo-connect, il ne pourra pas utiliser ce routeur comme passerelle par dfaut parce que ce dernier ny possde pas dadresse. Prenons lexemple de la gure 3.4 o deux routeurs R1 et R2 sont interconnects par un anneau Token Ring (segment 2) ; ils sont congurs avec des routes statiques pseudo-connectes pour les rseaux situs derrire eux (segment 1 pour R1 et segment 3 pour R2) ; chaque route pointe sur son interface respective du segment 2. Les listings 3.10 et 3.11 montrent leurs congurations ; les listings 3.12 et 3.13, leurs tables de routage.
Figure 3.4
Routeurs congurs avec des routes statiques pseudo-connectes qui pointent sur leur interface respective du Token Ring pour la communication entre les htes H1 et H2.
H2
Adresse IP 210.2.0.120
Segment 3 : 210.2.0.0/24
e0
R2
to0
Segment 2 200.1.0.0/24
to0
R1
e0
Segment 1 : 210.1.0.0/24
H1
Adresse IP 210.1.0.50
interface Ethernet0 ip address 210.1.0.1 255.255.255.0 interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 ip route 210.2.0.0 255.255.255.0 TokenRing0
95
interface Ethernet0 ip address 210.2.0.1 255.255.255.0 interface TokenRing0 ip address 200.1.0.2 255.255.255.0 ring-speed 16 ip route 210.1.0.0 255.255.255.0 TokenRing0
Listing 3.12. Table de routage du routeur R1.
R1#show ip route ... C 200.1.0.0 is directly connected, TokenRing0 S 210.2.0.0 is directly connected, TokenRing0 C 210.1.0.0 is directly connected, Ethernet0
Listing 3.13. Table de routage du routeur R2.
R2#show ip route ... C 200.1.0.0/24 is directly connected, TokenRing0 C 210.2.0.0/24 is directly connected, Ethernet0 S 210.1.0.0/24 is directly connected, TokenRing0
Nous constatons dans les tables de routage que les tiquettes des routes connectes normales sont diffrentes de celles des routes pseudo-connectes. Les premires sont codes avec la lettre C pour connecte , tandis que les secondes le sont avec la lettre S pour statique . Lanons une commande ping sur lhte H1 pour vrier laccessibilit de lhte H2. En utilisant la commande debug arp sur le routeur R1, nous pouvons voir safcher sur le listing 3.14, le droulement de lchange entre les routeurs R1 et R2 qui jouent mutuellement le rle de serveur Proxy ARP.
Listing 3.14. Droulement de lchange du protocole ARP entre les routeurs R1 et R2.
R1#debug arp ARP packet debugging is on R1# IP ARP: creating incomplete entry for IP address: 210.2.0.120 IP ARP: sent req src 200.1.0.1 0007.0d26.0a46, dst 210.2.0.120 0000.0000.0000 TokenRing0 IP ARP: rcvd rep src 210.2.0.120 0007.0d26.0c15, dst 200.1.0.1 TokenRing0 IP ARP: rcvd req src 200.1.0.2 0007.0d26.0c15, dst 210.1.0.50 TokenRing0 IP ARP: creating entry for IP address: 200.1.0.2, hw: 0007.0d26.0c15 IP ARP: sent rep src 210.1.0.50 0007.0d26.0a46, dst 200.1.0.2 0007.0d26.0c15 TokenRing0
96
Selon le scnario de cet change, le routeur R1 tente de traduire ladresse IP de lhte H2 en adresse MAC par une requte ARP. Le routeur R2 rpond avec ladresse MAC de son interface Token Ring. Le paquet du ping de lhte H1 qui est lorigine de ce dialogue, est remis lhte H2. Celui-ci envoie une rponse pour laquelle le routeur R2 doit traduire ladresse IP de lhte H1 en adresse MAC. Cest maintenant au tour du routeur R1 de rpondre la requte ARP du routeur R2 en lui envoyant ladresse MAC de son interface Token Ring. Il existe une certaine similitude entre une route statique pseudo-connecte quon vient dvoquer et une adresse IP secondaire qui peut tre assigne une interface, comme celle vue dans un chapitre prcdent. Ces deux moyens permettent de crer une route vers ladresse rseau correspondante dans la table de routage, qui pointe non pas sur un routeur de saut suivant, mais sur une interface. La seule diffrence, cest que ladresse IP secondaire assigne linterface dun routeur peut tre utilise comme default gateway par les htes situs sur le segment connect cette interface, alors que linterface dun routeur pointant sur une route pseudo-connecte ne possde pas dadresse IP sur ce rseau destinataire. Lutilisation de routes pseudo-connectes ne peut tre quun palliatif, si lon veut viter un trac de diffusion gnrale excessif sur les segments concerns. Elle ncessite une gestion complexe et peut tre source de problmes. Il en est de mme pour les adresses IP secondaires.
interface Ethernet0 ip address 150.1.1.1 255.255.255.0 interface Serial0 ip address 150.1.254.1 255.255.255.0 ip route 150.0.0.0 255.0.0.0 150.1.254.2
97
interface Ethernet0 ip address 150.1.2.1 255.255.255.0 interface Serial1 ip address 150.1.254.2 255.255.255.0 ip route 150.1.1.0 255.255.255.0 150.1.254.1
Figure 3.5
Routeur R1 congur uniquement avec une route de superrseau 150.0.0.0/8 pour le segment 2.
H2
Adresse IP : 150.1.2.120 Segment 2: 150.1.2.0/24 e0 Rseau : 150.1.254.0/24
R2
s0 s0
R1
e0 Segment 1 : 150.1.1.0/24
H1
Adresse IP : 150.1.1.50
ce stade, la commande ip classless nest pas active dans la conguration du routeur R1. Si nous lanons un ping de lhte H1 vers lhte H2, nous voyons sur le listing 3.17 quil choue (destination inaccessible).
Listing 3.17. En algorithme de routage classe on ne peut utiliser une route de super-rseau pour ladresse 150.0.0.0/8.
C:\>ping 150.1.2.120 Pinging 150.1.2.120 with 32 bytes of data: Reply from 150.1.1.1: Destination host unreachable. Reply from 150.1.1.1: Destination host unreachable. Reply from 150.1.1.1: Destination host unreachable.
98
Une fois la commande ip classless active sur le routeur R1, le ping peut aboutir, comme le montre le listing 3.18.
Listing 3.18. Changement dalgorithme de routage de classe sans classe pour tablir une route de super-rseau, par la commande ip classless.
C:\>ping 150.1.2.120 Pinging 150.1.2.120 with 32 bytes of data: Reply Reply Reply Reply
REMARQUE
Bien que la documentation de Cisco prcise que la commande ip classless est dsactive par dfaut, les versions ultrieures de lIOS de Cisco peuvent faire linverse.
interface Serial0 ip address 195.0.0.1 255.255.255.0 interface Serial1 ip address 195.1.0.1 255.255.255.0 ip route 200.2.0.0 255.255.255.0 195.0.0.2 ip route 200.2.0.120 255.255.255.255 195.1.0.2
99
R1#show ip route ... C 195.1.0.0/24 is directly connected, C 195.0.0.0/24 is directly connected, C 200.1.0.0/24 is directly connected, 200.2.0.0/24 is variably subnetted, S 200.2.0.120/32 [1/0] via 195.1.0.2 S 200.2.0.0/24 [1/0] via 195.0.0.2
On peut constater sur le listing 3.20 que le routeur utilise une de ses interfaces (ligne srie 1) pour une route individuelle dont ladresse IP est : 200.2.0.120. Les routes individuelles sont gnralement utilises des ns de dbogage ou quand la route principale vers un rseau particulier est devenue inaccessible.
Rappelons que le partage de charge ne sexcute que sur le trac sortant, le routeur nayant aucun contrle sur le trac entrant.
Pour congurer le partage de charge, nous devons entrer des commandes qui contiennent la mme destination, mais pointant sur des interfaces ou des routeurs de saut suivant, diffrents. La gure 3.6 illustre le cas de deux routeurs R1 et R2 interconnects par une paire de lignes srie. Les listings 3.21 et 3.22 montrent leur conguration respective. Les tables de routage sont imprimes sur les listings 3.23 et 3.24 o on peut voir une mme adresse rseau pointer sur deux routeurs de saut suivant, diffrents.
Listing 3.21. Conguration du routeur R1.
interface Serial0 ip address 195.0.0.1 255.255.255.0 interface Serial1 ip address 195.1.0.1 255.255.255.0 interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 ip route 200.2.0.0 255.255.255.0 195.0.0.2 ip route 200.2.0.0 255.255.255.0 195.1.0.2
100
Figure 3.6
Deux routeurs congurs en partage de charge sur une paire de lignes srie.
H2
Segment 2 : 200.2.0.0/24
Ligne 1 : 195.0.0.0/24
s1 s0
R2
s0
Ligne 2 : 195.1.0.0/24
R1
s1
Segment 1 200.1.0.0/24
H1
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 195.1.0.2 255.255.255.0 interface Serial1 ip address 195.0.0.2 255.255.255.0 ip route 200.1.0.0 255.255.255.0 195.0.0.1 ip route 200.1.0.0 255.255.255.0 195.1.0.1
Listing 3.23 Table de routage du routeur R1.
R1#show ip route ... C 195.1.0.0 is directly connected, Serial1 C 195.0.0.0 is directly connected, Serial0 C 200.1.0.0 is directly connected, TokenRing0 S 200.2.0.0 [1/0] via 195.0.0.2 [1/0] via 195.1.0.2
101
R2#show ip route ... C 195.1.0.0/24 is directly connected, Serial0 C 195.0.0.0/24 is directly connected, Serial1 S 200.1.0.0/24 [1/0] via 195.0.0.1 [1/0] via 195.1.0.1 C 200.2.0.0/24 is directly connected, Ethernet0
La conguration de plusieurs routes statiques vers la mme destination, comme dans le cas des routeurs R1 et R2, permet dexcuter le partage de trac uniquement sur ces derniers. Si les autres routeurs sont congurs avec une seule route, le trac nempruntera que celle-ci. Comme nous lavons vu dans la premire section de ce chapitre, les routeurs Cisco ont deux modes dexcution du partage de charge : par destination et par paquet. Le partage de charge par destination sexcute en commutation rapide (fast switching), qui consiste conserver dans une mmoire cache les adresses de destination, pour viter de consulter la table de routage chaque fois quun paquet pour la mme adresse arrive sur une interface. Tant quune adresse de destination se trouve dans cette mmoire, le routeur utilise toujours la mme interface pour y acheminer les paquets. On peut activer la commutation rapide par la commande ip route-cache. Mais celle-ci est normalement active par dfaut, bien quelle napparaisse pas dans la conguration du routeur.
REMARQUE
Les modules VIP (Versatile Interface Processor) des routeurs haut de gamme tel que le Cisco 7500 et les modules RSM (Route Switch Module) des commutateurs Catalyst, possdent dautres commandes de commutation rapide, rpertories dans la documentation Cisco. Sy reporter pour plus dinformations.
Quant au partage de charge par paquet, il ne peut sexcuter quen dsactivant la commutation rapide par la commande no ip route-cache. Dans ce cas, le routeur distribue les paquets allant vers une mme destination, tour de rle, sur toutes les interfaces pointes par cette destination. moins davoir une ligne de faible dbit qui peut tre sature ou des pics de trac importants, il est dconseill de dsactiver la commutation rapide qui demeure la plus performante, sauf quand on doit utiliser la commande debug ip-packet pour visualiser lacheminement des paquets. Si on reste en commutation rapide sous cette commande, on naura en sortie que les paquets en provenance ou destination du routeur. Lautre utilisation de la commande debug ip-packet est la visualisation de lexcution du partage de charge. Les listings 3.25 et 3.26 montrent un exemple pour les routeurs R1 et R2 de la gure 3.6. On peut y voir le droulement dun ping lanc de lhte H1 ladresse 200.1.0.15 vers lhte H2 ladresse 200.2.0.120. Les routeurs alternent les paquets sur leurs deux interfaces congures en partage de charge.
Listing 3.25. Excution de la commande debug sur le routeur R1.
ip-packet
IP: s=200.1.0.15 (TokenRing0), d=200.2.0.120 (Serial0), g=195.0.0.2, len 82, forward IP: s=200.2.0.120 (Serial0), d=200.1.0.15 (TokenRing0), g=200.1.0.15, len 64, forward IP: s=200.1.0.15 (TokenRing0), d=200.2.0.120 (Serial1),
102
g=195.1.0.2, len 82, forward IP: s=200.2.0.120 (Serial1), d=200.1.0.15 (TokenRing0), g=200.1.0.15, len 64, forward IP: s=200.1.0.15 (TokenRing0), d=200.2.0.120 (Serial0), g=195.0.0.2, len 82, forward IP: s=200.2.0.120 (Serial0), d=200.1.0.15 (TokenRing0), g=200.1.0.15, len 64, forward IP: s=200.1.0.15 (TokenRing0), d=200.2.0.120 (Serial1), g=195.1.0.2, len 82, forward IP: s=200.2.0.120 (Serial1), d=200.1.0.15 (TokenRing0), g=200.1.0.15, len 64, forward
Listing 3.26. Excution de la commande debug sur le routeur R2.
ip-packet
IP: s=200.1.0.15 (Serial1), d=200.2.0.120 (Ethernet0), g=200.2.0.120, len 60, forward IP: s=200.2.0.120 (Ethernet0), d=200.1.0.15 (Serial1), g=195.0.0.1, len 60, forward IP: s=200.1.0.15 (Serial0), d=200.2.0.120 (Ethernet0), g=200.2.0.120, len 60, forward IP: s=200.2.0.120 (Ethernet0), d=200.1.0.15 (Serial0), g=195.1.0.1, len 60, forward IP: s=200.1.0.15 (Serial1), d=200.2.0.120 (Ethernet0), g=200.2.0.120, len 60, forward IP: s=200.2.0.120 (Ethernet0), d=200.1.0.15 (Serial1), g=195.0.0.1, len 60, forward IP: s=200.1.0.15 (Serial0), d=200.2.0.120 (Ethernet0), g=200.2.0.120, len 60, forward IP: s=200.2.0.120 (Ethernet0), d=200.1.0.15 (Serial0), g=195.1.0.1, len 60, forward
Le partage de charge ne sapplique pas uniquement au cas dune paire de lignes srie. On peut aussi congurer des routes statiques qui pointent sur deux routeurs de saut suivant, diffrents. Cependant, la complexit de leur conguration augmente avec le nombre de routeurs et de lignes les reliant. Il est prfrable dutiliser les protocoles de routage dynamique capables de mettre jour automatiquement les tables de routage de manire optimale. Le partage de charge en routage statique est donc limit au cas des routeurs relis par une paire de lignes srie (cf. gure 3.6) ou celui dun routeur reli symtriquement deux autres comme dans la gure 3.7. Les routeurs R1 et R4 de cet exemple, peuvent tre congurs facilement en routes statiques de faon ce que le trac entre les segments 1 et 2 soit galement rparti entre les routes transitant par les routeurs R2 et R3.
103
Segment 1
e0
Conguration quatre routeurs qui permet le partage de charge du trac sur des lignes symtriques.
R1
s1 s0
s0
s1
R2
s1 s0
R3
s0
s1
R4
e0
Segment 2
La solution suivante fut suggre par Steve Kann un groupe de discussion sur le web (comp.dcom.sys.cisco). Son caractre lgant mis part, elle a pu branler quelque peu lide reue selon laquelle les technologues suivent servilement les instructions des constructeurs qui soutiennent que le routage statique ne permet que le partage de charge cot gal . Voil une contribution qui mrite dtre souligne !
Cette solution est base sur le fait tout simple quun routeur ne rpartit pas rellement le trac vers une mme destination entre ses interfaces, mais plutt entre les routes qui pointent sur cette destination. Par exemple, si un routeur possde, pour une mme destination, trois routes sur une premire interface, et deux autres sur une deuxime, il va fractionner le trac aux trois cinquimes sur la premire et aux deux cinquimes sur la deuxime. Bien videmment, cette manire de rpartir le trac est limite par le nombre de routes qui peuvent pointer sur une mme destination, au maximum six dans la version actuelle du Systme IOS de Cisco. Le tableau 3.1 donne les diffrents fractionnements utiles dans certains cas.
104
La mthode la plus facile pour implmenter le partage de charge cot ingal dans un routeur, cest de dnir des adresses secondaires sur les interfaces locales et de congurer plusieurs routes statiques pointant sur ladresse primaire et les adresses secondaires des interfaces du routeur de saut suivant. Prenons le cas de la gure 3.8 o les routeurs R1 et R2 sont connects par deux lignes dont les dbits respectifs (768 Kbit/s et 512 Kbit/s) sont dans les proportions de 3/5 et 2/5. Daprs le tableau 3.1, le fractionnement de trac peut seffectuer en pointant trois routes sur les interfaces de la premire ligne et deux autres sur les interfaces de la deuxime ligne. Les listings 3.27 et 3.28 contiennent un exemple de conguration des routeurs R1 et R2 selon le partage de charge dcrit ci-dessus.
Figure 3.8
Le partage de charge cot ingal sur deux lignes reliant les routeurs R1 et R2.
H2
Segment 2 : 200.2.0.0/24
s1 s0
R2
s0
R1
s1
Segment 1 200.1.0.0/24
H1
105
interface Serial0 ip address 195.0.0.1 255.255.255.0 ip address 195.0.0.2 255.255.255.0 secondary ip address 195.0.0.3 255.255.255.0 secondary interface Serial1 ip address 195.1.0.1 255.255.255.0 ip address 195.1.0.2 255.255.255.0 secondary interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 ip ip ip ip ip route route route route route 200.2.0.0 200.2.0.0 200.2.0.0 200.2.0.0 200.2.0.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 195.0.0.4 195.0.0.5 195.0.0.6 195.1.0.3 195.1.0.4
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 195.1.0.3 255.255.255.0 ip address 195.1.0.4 255.255.255.0 secondary interface Serial1 ip address 195.0.0.4 255.255.255.0 ip address 195.0.0.5 255.255.255.0 secondary ip address 195.0.0.6 255.255.255.0 secondary ip ip ip ip ip route route route route route 200.1.0.0 200.1.0.0 200.1.0.0 200.1.0.0 200.1.0.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0 195.0.0.1 195.0.0.2 195.0.0.3 195.1.0.1 195.1.0.2
En dsactivant la commutation rapide et en utilisant la commande debug ip-packet sur le routeur R1, on peut voir sur le listing 3.29 comment R1 excute le partage de charge en alternant les interfaces de sortie (mises en italique sur le listing avec des lignes tronques pour une lecture plus aise).
Listing 3.29. Sortie de la commande debug
106
4
Routage dynamique : protocoles vecteur de distance
Solutions de conguration prsentes dans ce chapitre Congurer les protocoles de routage classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . avec RIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et les adresses individuelles dhte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et la route par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et les adresses IP secondaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et linhibition de mises jour sur une interface . . . . . . . . . . . . . . . . . . . . . . . . - et les mises jour monodestinataire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et la discrimination des mises jour entrantes . . . . . . . . . . . . . . . . . . . . . . . . . - et le partage de charge cot gal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et le changement de mtrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et les rseaux Frame Relay non intgralement maills . . . . . . . . . . . . . . . . . . . avec IGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et sa mtrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et les partages de charge cot gal et ingal . . . . . . . . . . . . . . . . . . . . . . . . . . Congurer les protocoles de routage sans classe . . . . . . . . . . . . . . . . . . . . . . . . . . . avec division de lespace dadressage en VLSM . . . . . . . . . . . . . . . . . . . . . . . . . avec RIP version 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et dsactivation de lauto-agrgation de routes . . . . . . . . . . . . . . . . . . . . . . . . . - et RIP version 1 simultanment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 115 123 124 125 128 130 131 135 136 138 141 144 146 149 149 157 161 162
108
avec EIGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et sa mtrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et dsactivation de lauto-agrgation de routes . . . . . . . . . . . . . . . . . . . . . . . . - et lagrgation de routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - et les rseaux non intgralement maills de Frame Relay . . . . . . . . . . . . . . . .
Les protocoles de routage dynamique ont t spciquement conus pour mettre jour la table de routage dun hte ou dun routeur. Pour ce faire, ils schangent des paquets appels mises jour de routage contenant des informations destines remplir la table de routage. Elles nont de sens que pour un protocole de routage donn, et ne peuvent tre ni reues, ni a fortiori interprtes par un autre protocole.
REMARQUE
Les protocoles de routage ne doivent pas tre confondus avec les protocoles routs (comme IP et IPX parmi dautres). Un protocole de routage utilise une table de routage pour chaque protocole rout. Par exemple, si dans un routeur IPX et IP fonctionnement simultanment, ils ont chacun leur table de routage.
Les protocoles de routage peuvent tre classs en deux catgories : ceux qui sont intradomaine appels IGP (Interior Gateway Protocol) et ceux qui sont inter-domaines appels EGP (Exterior Gateway Protocol). Ces derniers servent au routage entre rseaux relevant dautorits administratives diffrentes telles que des entreprises ou des fournisseurs daccs lInternet ISP (Internet Service Provider). Les protocoles de routage intra-domaine constituent le sujet de ce chapitre. Les protocoles inter-domaines qui concernent principalement le routage dans lInternet sont dune telle complexit, quun livre entier pourrait leur tre consacr. Ces deux catgories de protocoles se subdivisent encore selon lalgorithme sur lequel ils sont bass : vecteur de distance (distance vector) ou tat des liens (link state). Ce chapitre traite des IGP du premier groupe, tandis que le prochain est consacr celui du second groupe, OSPF.
109
Les mtriques indiquent gnralement quelle distance le routeur expditeur se place luimme par rapport au prxe rseau quil annonce. Le routeur en rception insre une route dans sa table, selon le critre de la meilleure mtrique associe ce prxe, ignorant toutes les autres mises jour reues le concernant. Les mtriques dpendent en fait du protocole de routage et varient quant la faon dont elles sont dnies et calcules. Nanmoins, tous les protocoles de routage vecteur de distance appliquent les rgles qui sont les suivantes : Chaque interface dun routeur desservie par un protocole de routage est affecte dun cot qui est spcique ce protocole. Quand un routeur reoit une mise jour pour un prxe rseau par annonces diffuses, il recalcule la mtrique associe ce dernier, en tenant compte du cot de linterface par laquelle il va envoyer son tour le message de mise jour pour ce prxe. Dans la plupart des cas, les interfaces de rception et denvoi sont les mmes. La nouvelle mtrique calcule par le routeur doit tre suprieure celle qui a t reue auparavant, car il doit y inclure le cot de linterface de sortie. De ce qui est expos ci-dessus on peut dduire quun routeur, linitialisation, nannonce que les prxes dont il a une connaissance immdiate, cest--dire ceux des rseaux auxquels il est directement connect. Au fur et mesure quil reoit les prxes annoncs par ses voisins, il en recalcule les mtriques pour les diffuser son tour. Peu peu, tous les routeurs de tous les segments niront par apprendre tous les prxes rseau dans leur totalit.
REMARQUE
Il faut noter que les routeurs qui diffusent les prxes rseau par le protocole vecteur de distance, nont aucune ide des rseaux intermdiaires quil faut traverser pour atteindre ces prxes. Lalgorithme vecteur de distance est parfois quali, pour cette raison, de routage par ou-dire .
Dans un rseau stable, la table de routage de chaque routeur devrait rester la mme, une fois quelle a t remplie. Mais cest rarement le cas, car des changements interviennent dans un rseau mme stable, ajouts, mises hors service, pannes, etc. Les protocoles de routage sont chargs de les grer selon deux procds : Si un nouveau segment est ajout un rseau, le routeur connect ce segment commence par annoncer le prxe de ce dernier ses voisins, et par propagation successive, tous les routeurs du rseau apprendront lexistence de ce nouveau segment. En mme temps, le routeur envoie des mises jour concernant le reste du rseau ce segment dont il recevra en retour celles mises par les routeurs qui sy trouvent. Les pannes de composants rseau ou leur mise hors service sont prises en compte par lchange rgulier de mises jour entre les routeurs, par exemple toutes les 30 secondes. En outre, pour chaque route insre dans sa table, le routeur dmarre un temporisateur qui est rinitialis chaque mise jour successive de cette route. Si le temporisateur arrive chance sans quil y ait eu de nouvelle mise jour, la route concerne est efface de la table.
REMARQUE
Lusage des mises jour et des temporisateurs peut varier dun protocole lautre, et peut ne pas correspondre ce qui est dcrit prcdemment. Les protocoles de premire gnration tels que RIP et IGRP schangent rgulirement des mises jour sur tous les prxes pour lesquels ils ont une route. Ceux qui sont plus perfectionns, tel que le EIGRP, au lieu des mises jour priodiques, schangent plutt des messages de salut (hello) pour se tenir informs de ltat des routeurs voisins. Ils nont pas non plus un temporisateur pour chaque route, mais consignent les messages hello ; au bout dun certain nombre de messages manqus, le routeur voisin correspondant est dclar hors service, et les routes qui en dpendent sont recalcules.
110
Algorithme vecteur de distance amlior : rgle de clivage dhorizon, temporisateur de maintien et mises jour dclenches
Il prend un certain temps pour que les informations sur les changements se propagent sur le rseau tout entier. Pendant ce laps de temps, certains segments devenus inaccessibles et dont les routes de rechange ont dj t transmises, peuvent ne pas avoir atteint les routeurs les plus loigns. La mise en cohrence des tables de routage de tous les routeurs amne ltat dit de convergence. La dure quil faut pour parvenir cet tat sappelle temps de convergence. Cette dure dpend du protocole de routage dynamique utilis. Limplmentation particulire de lalgorithme dun protocole de routage nempche pas quil soit sujet au phnomne du comptage linni. Pour comprendre le comptage linni, prenons le cas de la gure 4.1. Supposons que les trois routeurs R1, R2 et R3 utilisent le mme protocole de routage et que leurs tables aient converg, chaque routeur tant inform des rseaux accessibles par les deux autres. Nous savons que les routeurs annoncent les prxes rseau via toutes leurs interfaces. Par exemple, le routeur R2 diffuse le prxe du segment S1 travers ses deux interfaces. Le routeur R3 nayant pas une meilleure route pour ce segment, prendra en compte la mise jour diffuse par le routeur R2, tandis que le routeur R1, directement connect au segment concern, va lignorer. Supposons maintenant que le segment S2 soit rompu ; le routeur R2 dmarre un temporisateur pour le segment S1 qui, arrive chance, va lui indiquer que ce segment nest plus accessible via le routeur R1. Dans lintervalle, le routeur R2 continue diffuser la mise jour du segment S1, de nouveau prise en compte par le routeur R3 qui ignore que lannonce concernant ce segment est prime. Quand le temporisateur pour le segment S1 arrive enn chance, et que le routeur R2 considre une route alternative pour ce segment, il reoit une mise jour pour celui-ci du routeur R3. Le routeur R2 recalcule sa propre mtrique pour le segment S1 et lenvoie son tour au routeur R3. Ce dernier constatant que la mtrique pour le segment S1 a empir, calcule une nouvelle mtrique pour la retourner au routeur R2. Ce va-et-vient va aggraver la mtrique associe au segment, chaque itration, sans toutefois le faire disparatre.
Figure 4.1
S1 S2 S3 R3
S4
R2
La mthode la plus facile pour rsoudre ce problme est de considrer la route vers un rseau comme impraticable, ds que la mtrique qui lui est associe devient suprieure une certaine valeur, quon appelle inni. Do lexpression, comptage linni . Une fois cette valeur atteinte, le prxe rseau concern nest plus accessible. Le temps datteindre la valeur innie, les routeurs croient encore que la route vers le segment en panne est toujours disponible. Les routeurs se transmettent des messages errons jusqu ce que le champ dure de vie (TTL) des paquets tombe zro provoquant ainsi une boucle de routage. Pendant ce comptage linni, les lignes reliant les routeurs dont les paquets tournent en rond, peuvent tre satures un tel point que le trac utile est retard ou mme mis au rebut.
111
Quelques techniques ont t dveloppes pour liminer ou minimiser le problme du comptage linni.
Clivage dhorizon
La premire technique appele clivage dhorizon (split horizon) dnit une rgle qui interdit tout routeur dannoncer un prxe rseau via linterface par laquelle il a appris lexistence de celui-ci. Dans le cas cit la gure 4.1, les routeurs ne seraient pas confronts au problme du comptage linni, sils appliquaient cette rgle. Une deuxime technique, plus hardie, connue sous le nom de clivage dhorizon lantidote (split horizon with poison reverse), consiste ordonner au routeur de retourner le prxe par linterface au travers de laquelle il la appris, en lui associant une mtrique de valeur innie. Les rgles nonces prcdemment, tout en amliorant le temps de convergence, peuvent navoir aucun effet dans certains cas, comme celui qui est illustr la gure 4.2.
Figure 4.2
R3
Comptage linni dans une topologie de rseau o la rgle du clivage dhorizon lantidote ne rsout pas le problme.
S1 S2
S3
S4 R1 R2 S5
R4
Supposons que tous les routeurs appliquent la rgle combine du clivage dhorizon et dantidote. Le segment S2 tombe en panne, et le temporisateur de route pour le segment S1 via le routeur R1, dmarr par le routeur R2 arrive chance. Avant que cela se produise, le routeur R2 continue annoncer le prxe du segment S1 comme disponible aux routeurs R3 et R4. Ces derniers sannoncent aussi mutuellement le mme prxe. Aprs que le routeur R2 a cess dannoncer le prxe du segment S1, les temporisateurs de route pour ce prxe, dans les routeurs R3 et R4, cette fois, arrivent chance leur tour. Ce qui les amne annoncer le prxe du segment S1 dont ils schangeaient la route jusqu prsent, vers le routeur R2. Ces trois routeurs se trouvent ainsi dans une boucle temporaire.
Temporisateur de maintien
Une autre technique plus simple que le clivage dhorizon est celle du temporisateur de maintien (holddown timer). Toute route, en plus de son temporisateur normal, dispose dun temporisateur additionnel qui dmarre ds que le premier expire. Et la valeur de la mtrique associe la route affecte est mise linni pour indiquer son caractre inaccessible. Tant que le deuxime temporisateur nest pas arriv chance, cette route ne peut tre ni mise jour ni efface de la table. Le but du temporisateur de maintien est dviter les boucles de routage pour empcher toute saturation des lignes.
112
Distance administrative
Un routeur peut excuter en parallle plusieurs protocoles de routage IP. Quand cest le cas, un conit peut survenir quant la route inscrire dans la table de routage, pour une mme destination, exprime sous la forme dun prxe rseau. Pour rsoudre ce genre de conit, une valeur numrique spciale appele distance administrative est affecte chaque protocole. Cette distance indique le degr de crdibilit accord par le routeur au protocole correspondant. Plus sa valeur de distance est faible, plus le protocole est crdible. Si par exemple, un protocole de distance 100 prconise une route pour la destination 10.1.0.0/16 et quune autre route a dj t installe dans la table par un autre protocole de distance 70, la route prconise nest pas prise en compte. Par contre, si le protocole qui prconise la nouvelle route avait une distance de 50, qui est infrieure celle du protocole dtenteur de la route existante, la nouvelle supplanterait lancienne. Comme il est improbable que deux protocoles de routage essaient dinstaller une route pour la mme destination simultanment, la valeur de distance du protocole dtenteur de la route est mmorise chaque fois pour permettre den faire la comparaison avec celle dun protocole candidat ventuel au remplacement de cette route. Celui-ci ne prendra effet que si la valeur de distance du candidat est infrieure celle du dtenteur. La distance administrative est, par consquent, associe non seulement un protocole mais aussi aux routes installes dans la table de routage. Dans le systme IOS de Cisco, la distance administrative est un entier positif qui va de 0 255. En plus des protocoles de routage, les deux autres origines de linformation de routage sont les routes statiques et les routes implicites des interfaces connectes. Toutes ces sources ont une valeur par dfaut pour leur distance administrative quillustre la table 4.1 pour les routeurs Cisco.
Table 4.1. Valeurs par dfaut de la distance administrative.
Origine de la route
Interface connecte Route statique IGRP amlior (route agrge) BGP externe IGRP amlior (interne) IGRP amlior (externe) IGRP OSPF IS-IS RIP EGP BGP interne Inconnu
Distance
0 1 5 20 90 170 100 110 115 120 140 200 255
113
La valeur par dfaut de la distance administrative est modiable pour toutes les origines de linformation de routage sauf celle de linterface connecte (toujours 0) et celle de la route agrge du protocole IGRP amliore (toujours 5). Nous allons rsumer ci-aprs, tous les lments qui concourent au fonctionnement dun routeur : Le routeur nutilise les mtriques que dans le cadre dun protocole de routage particulier. Sil reoit plusieurs messages de mise jour pour le mme prxe, la route la meilleure mtrique prvaudra sur les autres pour tre inscrite dans la table de routage. Si linformation de routage provient de plusieurs origines (par exemple, les protocoles de routage dynamique, les routes statiques et les routes dinterfaces connectes) pour la mme destination, la route installe dans la table sera celle dont lorigine possde la plus petite valeur de distance administrative au dtriment des autres. Le routeur utilise lalgorithme de recherche par la correspondance la plus longue pour trouver la meilleure route vers une destination, dans sa table de routage. Un protocole vecteur de distance nannonce pas une route quil na pas installe dans la table de routage.
REMARQUE
Si un protocole de routage reoit une mise jour mais ne peut installer la route correspondante dans la table de routage, parce quelle y existe dj, dtenue par un autre protocole la valeur de distance plus petite, il sabstiendra de diffuser cette route.
114
Solutions de conguration
Congurer les protocoles vecteur de distance sur les routeurs Cisco est une opration assez facile et rptitive. Les tapes de base sont toujours les suivantes, quel que soit le protocole choisi : 1. Dnir le protocole de routage par la commande router <protocole de routage> en mode de conguration globale. Certains protocoles ncessitent que soit mentionn le numro du systme autonome dont la signication sera prcise dans la section consacre au protocole IGRP. Cette commande nous met en mode de conguration routeur. 2. Spcier les adresses rseau qui doivent tre annonces par le protocole de routage, au moyen de la commande network <adresse IP du rseau>. On peut mentionner nimporte quelle adresse rseau par cette commande, mais le routeur nannoncera que les rseaux auxquels il est directement connect. Autrement dit, pour quune adresse rseau correspondant au paramtre de la commande network soit annonce par le routeur, il doit avoir au moins une interface active avec une adresse IP appartenant ce rseau.
REMARQUE
La commande network permet de spcier uniquement une adresse rseau classe, par exemple 10.0.0.0, 150.0.0.0, etc. Par contre, on ne peut pas prciser le sous-rseau, mme sil est congur sur linterface du routeur.
Ltape 2 demande quelques prcisions. la premire commande network, toutes les interfaces dont les adresses IP appartiennent ladresse rseau renseign en paramtre, sont enregistres dans le processus de routage RIP du routeur. Celui-ci peut maintenant traiter les mises jour reues et aussi en envoyer travers ces interfaces. Pour chaque nouvelle commande network, le routeur rpte lopration dcrite ci-dessus. Les interfaces dont les adresses IP nappartiennent aucune adresse rseau donne en argument la commande network, seront exclues du processus de routage RIP. Le routeur nenverra jamais de mises jour ni ne tiendra compte de celles reues via ces interfaces.
115
Il ne peut y avoir quun seul processus de routage par routeur pour RIP, tandis que IGRP peut executer plusieurs processus de routage dans un mme routeur, chacun servant un domaine diffrent. RIP peut annoncer des adresses individuelles telle que 10.1.0.1/32, ce qui nest pas le cas de IGRP. Conguration de RIP La conguration de base de RIP doit suivre les tapes dnies au dbut de cette section Solutions de conguration . La commande utilise ltape 1 est router avec <rip> en paramtre. Si on prend lexemple de la gure 4.3, les listings 4.1 4.4 montrent les congurations des quatre routeurs concerns.
Figure 4.3
Quatre routeurs congurs en protocole RIP pour connecter six segments du rseau.
Segment 1 200.1.0.0/24
Segment 2 200.2.0.0/24
e0
e0
R1
s1 s0
Segment 3 200.3.0.0/24
R2
s1 s0
Segment 4 200.4.0.0/24
R3
to0
Segment 5 200.5.0.0/24
to0
R4
e0
Segment 6 200.6.0.0/24 Listing 4.1. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial0 ip address 200.3.0.2 255.255.255.0 router rip network 200.1.0.0 network 200.3.0.0
116
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial1 ip address 200.4.0.2 255.255.255.0 router rip network 200.2.0.0 network 200.4.0.0
Listing 4.3. Conguration du routeur R3.
interface Serial0 ip address 200.4.0.1 255.255.255.0 interface Serial1 ip address 200.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip network 200.3.0.0 network 200.4.0.0 network 200.5.0.0
Listing 4.4. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip network 200.5.0.0 network 200.6.0.0
Prenons le cas du routeur R3, et examinons sa table de routage. Comme dans le cas du routage statique, nous pouvons lafcher par la commande show ip route dont la sortie se trouve sur la gure 4.4. Certains lments de la table de routage ont t ignors jusqu prsent, car ils nintervenaient pas dans les cas de routage statique et dinterfaces connectes. Maintenant que nous abordons le sujet du routage dynamique, nous devons tudier de plus prs la table de routage.
117
Protocole de routage
R3# Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default U - per-user static route, o - ODR Gateway of last resort is not set R R C C C R 200.1.0.0/24 200.2.0.0/24 200.3.0.0/24 200.4.0.0/24 200.5.0.0/24 200.6.0.0/24 [120/1] via [120/1] via is directly is directly is directly [120/1] via 200.3.0.2, 200.4.0.2, connected, connected, connected, 200.5.0.2, 00:00:10, Serial1 00:00:05, Serial0 Serial1 Serial0 TokenRing0 00:00:17, TokenRing0
Prfixe
Les points clefs retenir de la sortie de la commande show ip route, sont les suivants : Les six premires lignes afches sous la rubrique codes se rapportent aux abrviations employes dans la suite du listing ; par exemple, R pour RIP, I pour IGRP, etc. Comme ces lignes sont toujours les mmes, nous naurons pas les dtailler chaque fois. La ligne suivante indique si un routeur par dfaut est congur. La passerelle de dernier recours (gateway of last resort) est le terme utilis par Cisco pour dsigner ce routeur. Les lignes restantes afchent le contenu de la table de routage proprement dite, avec chaque entre compose dun certain nombre de champs dont le premier est une lettre qui prcise lorigine de linformation qui a permis dtablir la route. Par exempe, R pour RIP, ce qui signie que la route t apprise via ce protocole ; de mme, S pour statique. Le champ suivant de lentre comporte le prxe rseau et sa longueur. Le format dafchage dpend de la version du systme IOS de Cisco. Les plus rcentes font prcder la longueur du prxe par le caractre / . Les versions plus anciennes afchent le prxe suivi du masque de sous rseau en notation dcimale pointe (par exemple, adresse rseau 150.0.0.0 et masque de sous-rseau 255.255.0.0). Il est possible de modier ce type dafchage pour la dure de la session par la commande terminal ip netmask-format bitcount ; ou de faon permanente par la commande ip netmask-format bit-count, en mode de conguration dinterface ligne. Les deux champs suivants sont afchs entre parenthses carres, separs par le caractre / ; le premier concerne la distance administrative du protocole lorigine de linformation de routage (dans le cas de RIP, la valeur est 120) ; le deuxime se rapporte la mtrique de la route (cest--dire le nombre de sauts pour RIP). Le champ suivant indique le routeur de saut suivant. Lavant-dernier champ afche le temps coul depuis la dernire mise jour de cette route. Le dernier champ identie linterface de sortie.
118
La sortie de la commande show ip route que nous venons de passer en revue, bien quincomplte, suft notre propos. Nous aurons y revenir au cours de notre progression dans cet ouvrage. Le calcul de la mtrique de routes dans RIP est trs simple. Il considre que chaque segment a un cot de 1, et le cumul du nombre de segments traverser pour atteindre une destination est le cot total attribu la route pointant vers celle-ci. Dans lexemple de la gure 4.3, toutes les routes apprises par RIP ont un cot de 1, ce qui sexplique parfaitement : aucune dentre elles nest plus dun saut du routeur R3. Mais si nous afchons la table de routage du routeur R4, les mtriques varient lgrement plus.
Listing 4.5. Table de routage du routeur R4.
R4#show ip route ... R 200.1.0.0 [120/2] via R 200.2.0.0 [120/2] via R 200.3.0.0 [120/1] via R 200.4.0.0 [120/1] via C 200.5.0.0 is directly C 200.6.0.0 is directly
200.5.0.1,00:00:21, TokenRing0 200.5.0.1,00:00:21, TokenRing0 200.5.0.1,00:00:21, TokenRing0 200.5.0.1,00:00:22, TokenRing0 connected,TokenRing0 connected,Ethernet0
Bien videmment, les mtriques dans notre exemple ne sont pas trs diversies, du fait que le rseau a un diamtre plutt rduit. En pratique, elles peuvent prendre des valeurs bien plus grandes. Nous allons maintenant utiliser la commande debug ip rip sur le routeur R3 pour analyser la transaction de RIP lors de ses mises jour, telle quelle est afche sur le listing 4.6.
Listing 4.6. Sortie de la commande debug
R3#debug ip rip RIP protocol debugging is on R3# RIP: received v1 update from 200.3.0.2 on 200.1.0.0 in 1 hops RIP: received v1 update from 200.4.0.2 on 200.2.0.0 in 1 hops RIP: received v1 update from 200.5.0.2 on 200.6.0.0 in 1 hops RIP: sending v1 update to 255.255.255.255 (200.4.0.1) network 200.1.0.0, metric 2 network 200.3.0.0, metric 1 network 200.5.0.0, metric 1 network 200.6.0.0, metric 2 RIP: sending v1 update to 255.255.255.255 (200.3.0.1) network 200.2.0.0, metric 2 network 200.4.0.0, metric 1 network 200.5.0.0, metric 1 network 200.6.0.0, metric 2 RIP: sending v1 update to 255.255.255.255
via Serial1
via TokenRing0
119
2 2 1 1
AVERTISSEMENT Il faut viter dutiliser la commande debug ip rip ou toutes celles qui demandent un traitement intensif sur
des routeurs dun rseau oprationnel. Cest particulirement critique quand ils reoivent bon nombre de mises jour de routage. Les commandes en question ne peuvent que bloquer laccs leur terminal, tout en pnalisant leur performance. Dans ce cas, seul un redmarrage lectrique peut les dbloquer. La plupart des commandes debug conviennent uniquement dans un environnement dessai en laboratoire. Leur utilisation dans cet ouvrage sert lillustrer ce qui se passe dans un routeur dans certains cas difciles expliquer autrement.
La sortie du listing 4.6 est sufsamment explicite par elle-mme. Chaque mise jour commence par une ligne denvoi ou de rception RIP (sending ou received), suivie par les entres des prxes rseau ou sous-rseau annoncs. Un message RIP peut contenir jusqu 25 prxes. Un autre point noter, cest labsence de routes avec la mtrique de valeur innie (16 pour RIP), qui indique que la version de lIOS de Cisco applique la rgle simple du clivage dhorizon, sans lantidote. Jusqu prsent, nous avons utilis des adresses rseau de classe C avec le masque de sousrseau par dfaut. Il sagit dune conguration minimale, et tout sest droul comme prvu, du point de vue du routeur. Remplaons maintenant certaines des adresses de classe C avec des sous-rseaux appartenant la classe A 10.0.0.0. La gure 4.5 illustre ce nouveau cas.
Figure 4.5
Segment 1 10.1.0.0/24
Segment 2 10.2.0.0/24
e0
e0
R1
s1 s0
Segment 3 10.3.0.0/24
R2
s1 s0
Segment 4 10.4.0.0/24
R3
to0
Segment 5 200.5.0.0/24
to0
R4
e0
Segment 6 200.6.0.0/24
120
Les listings 4.7 4.9 montrent les modications apportes la conguration des routeurs concerns par le changement dadressage.
Listing 4.7. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router rip network 10.0.0.0
Listing 4.8. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router rip network 10.0.0.0
Listing 4.9. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip network 10.0.0.0 network 200.5.0.0
Comme prvu, les routeurs R1 et R2 nont quune seule dclaration par la commande network, correspondant lensemble du rseau de classe A (10.0.0.0). Quant au routeur R3, il possde deux dclarations par la mme commande, la premire pour le rseau 10.0.0.0 et la deuxime pour le rseau 200.5.0.0. Le listing 4.10 montre la table de routage du routeur R1.
Listing 4.10. Table de routage du routeur R1.
is subnetted, 4 subnets [120/2] via 10.3.0.1, 00:00:23, Serial0 is directly connected, Serial0 is directly connected, Ethernet0
121
R R R
10.4.0.0 [120/1] via 10.3.0.1, 00:00:23, Serial0 200.5.0.0/24 [120/1] via 10.3.0.1, 00:00:23, Serial0 200.6.0.0/24 [120/2] via 10.3.0.1, 00:00:23, Serial0
La sortie de la commande show ip route montre que le rseau 10.0.0.0 est dcoup en sousrseaux et que le routeur R1 en connat quatre (premire ligne), dont deux directement connects (lignes commenant par C ), et deux autres appris via RIP (lignes commenant par R ). Les deux dernires lignes afchent les rseaux, 200.5.0.0 et 200.6.0.0, appris par le routeur, galement via RIP. Le listing 4.11 montre la table de routage du routeur R4.
Listing 4.11. Table de routage du routeur R4.
R4#show ip route ... R 10.0.0.0 [120/1] via 200.5.0.1, 00:00:08, TokenRing0 C 200.5.0.0 is directly connected, TokenRing0 C 200.6.0.0 is directly connected, Ethernet0
Nous constatons que le routeur R4 a un problme. Non seulement il ne sait pas que le rseau 10.0.0.0 est dcoup en sous-rseaux, mais il pense aussi que ce rseau tout entier nest distant que dun saut. Pourquoi ? La rponse est chercher dans le routeur R3 qui est le seul qui spare le routeur R4 du rseau 10.0.0.0. Pour comprendre ce qui se passe dans le routeur R3, examinons dabord sa table de routage (cf. listing 4.12) ; et afchons les messages de mise jour quil gnre en entrant la commande debug ip rip (cf. listing 4.13).
Listing 4.12. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:04, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:02, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:04, TokenRing0
Listing 4.13. Sortie de la commande debug
ip rip.
R3#debug ip rip RIP protocol debugging is on R3# RIP: sending v1 update to 255.255.255.255 via Serial0 (10.4.0.1) subnet 10.3.0.0, metric 1 subnet 10.1.0.0, metric 2 network 200.5.0.0, metric 1 network 200.6.0.0, metric 2
122
v1 update to 255.255.255.255 via Serial1 (10.3.0.1) 10.2.0.0, metric 2 10.4.0.0, metric 1 200.5.0.0, metric 1 200.6.0.0, metric 2 v1 update to 255.255.255.255 via TokenRing0 (200.5.0.1) 10.0.0.0, metric 1
Le routeur R3 sait visiblement que le rseau 10.0.0.0 est dcoup en quatre sous-rseaux. Mais dans la transaction afche sur le listing 4.13, on constate quil nenvoie quune seule mise jour pour tout ce rseau, avec une mtrique 1, travers linterface de Token Ring. Par contre, quand il sagit des interfaces ligne S0 et S1, les messages de mise jour envoys sont complets. Pour expliquer ce comportement, nous devons nous rappeler que RIP, un protocole de routage classe, ne transmet pas un prxe rseau en mme temps que le masque de sousrseau associ, lors de lenvoi de ses mises jour. En rception de celles-ci, il ne peut par consquent que deviner le masque de sous-rseau dune destination particulire. Pour ce faire, il applique le masque de sous-rseau de linterface travers laquelle il reoit les mises jour pour les routes destination des sous-rseaux appartenant au mme rseau que cette interface. Au cas o certaines adresses IP nen feraient pas partie, elles sont considres soit comme des adresses rseau classe, soit comme des adresses dhtes quand les bits correspondants sont positionns. De mme, le routeur nannonce des sous-rseaux via une interface que si ceux-ci appartiennent au mme rseau que ladresse IP de cette dernire. Sinon, les sous-rseaux sont remplacs par les adresses rseau auxquelles ils appartiennent, avant dtre diffuss via linterface, avec une mtrique de 1. Ce procd sappelle auto-agrgation (auto-summarization). Le protocole RIP nest pas le seul utiliser lauto-agrgation ; tout protocole classe y a recours chaque fois que les mises jour de routage ont traverser les frontires rseau correspondantes. Cela vient du fait que les protocoles de routage classe, tel RIP, ne transmettent pas le masque de sous-rseau avec le prxe rseau. Lauto-agrgation produit leffet de bord suivant : Les protocoles de routage dynamique classe ne peuvent fonctionner correctement que si lespace dadressage IP demeure continu pour chaque adresse rseau classe. Autrement dit, deux groupes de sous-rseaux appartenant un rseau A ne peuvent tre spars par une adresse IP appartenant un autre rseau que celui-ci. Ce qui signie que dans lexemple de la gure 4.6, o lon voit deux groupes de sous-rseaux appartenant au rseau 10.0.0.0 spars par une adresse IP du rseau 200.1.0.0/24, les htes situs sur les segments de part et dautre, ne pourront communiquer. La solution ce problme consiste relier paralllement par une autre paire de routeurs, ces deux segments avec une adresse de sous-rseau 10.255.1.0, appartenant au rseau 10.0.0.0, comme dans la gure 4.7.
Figure 4.6
Groupes de sous-rseaux appartenant au rseau 10.0.0.0, spars par une ligne dadresse rseau 200.1.0.0.
Sous-rseau 10.0.0.0
200.1.0.0/24
Sous-rseau 10.0.0.0
123
Une ligne parallle dadresse de sousrseau appartenant au rseau 10.0.0.0 rsout le problme dinterconnexion.
Sous-rseau 10.0.0.0
200.1.0.0/24
Sous-rseau 10.0.0.0
10.255.1.0/24
Utilisation dadresses dhte individuelles avec RIP Comme indiqu prcdemment, le protocole RIP permet de transmettre dans ses mises jour de routage, des adresses individuelles dhte. La mme rgle de continuit de lespace dadressage sapplique aussi ce cas comme celui des sous-rseaux, pour que linterconnexion se fasse correctement. Une fois cette condition remplie, la conguration seffectue selon les tapes suivantes : 1. Dnir une interface de rebouclage (loopback) par la commande interface loopback <numro>, en mode de conguration globale. 2. Assigner une adresse IP linterface de rebouclage par la commande ip address <adresse IP> 255.255.255.255. Si ladresse IP assigne linterface de rebouclage appartient lun des rseaux dnis par la commande network, en mode de conguration globale, RIP annonce cette adresse en tant quadresse individuelle dhte. Procdons cette assignation sur les routeurs R1, R2 et R3, avec les adresses IP 10.0.0.1/32, 10.0.0.2/32 et 10.0.0.3/32, respectivement. Nous voyons apparatre ces adresses individuelles dhte dans leur table de routage comme celle du routeur R3 qui est afche sur le listing 4.14.
Listing 4.14. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks R 10.0.0.2/32 [120/1] via 10.4.0.2, 00:00:17, Serial0 R 10.2.0.0/24 [120/1] via 10.4.0.2, 00:00:17, Serial0 C 10.0.0.3/32 is directly connected, Loopback0 C 10.3.0.0/24 is directly connected, Serial1 R 10.0.0.1/32 [120/1] via 10.3.0.2, 00:00:11, Serial1 R 10.1.0.0/24 [120/1] via 10.3.0.2, 00:00:11, Serial1 C 10.4.0.0/24 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:01, TokenRing0
Si nous examinons le contenu des messages de mise jour de RIP, par la commande debug ip rip, nous y voyons effectivement les routes individuelles des htes concerns, comme sur le listing 4.15 (mises en italique).
124
Listing 4.15. Sortie de la commande debug ip rip o on voit les adresses individuelles dhte annonces dans les mises jour du routeur R3.
R3#debug ip rip ... RIP: sending v1 update to 255.255.255.255 via Serial0 (10.4.0.1) host 10.0.0.3, metric 1 subnet 10.3.0.0, metric 1 host 10.0.0.1, metric 2 subnet 10.1.0.0, metric 2 network 200.5.0.0, metric 1 network 200.6.0.0, metric 2 ...
Conguration de RIP pour lannonce de la route par dfaut Pour quun routeur annonce la route par dfaut, cest--dire 0.0.0.0/0, la commande defaultinformation originate doit tre utilise en mode de conguration routeur (router rip). Par exemple, supposons que le routeur R4 sur la gure 4.5 soit aussi connect lInternet. Si nous voulons en autoriser laccs tous les htes de tous les segments, il devient utile de contraindre le routeur R4 diffuser la route par dfaut. Le listing 4.16 montre la conguration modie du routeur R4. Nous voyons apparatre, dans la table de routage du routeur R3 afch sur le listing 4.17, une entre correspondant la route par dfaut portant la mention R pour indiquer quelle a t apprise via RIP, suivie dun astrisque pour prciser quelle est candidate pour la route par dfaut.
Listing 4.16. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip network 200.5.0.0 network 200.6.0.0 default-information originate
R3#show ip route 10.0.0.0/24 is subnetted, 4 subnets ... R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:12, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:27, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:09, TokenRing0 R* 0.0.0.0/0 [120/1] via 200.5.0.2, 00:00:09, TokenRing0
125
Bien que conseille, la commande ip classless nest pas indispensable pour la conguration dcrite cidessus. Sans cette commande, le routeur suppose que sil est connect un sous-rseau dune certaine adresse rseau classe, il saura aussi communiquer avec ce rseau classe tout entier. Ceci est valable dans le cas des protocoles de routage dynamique classe, car leur fonctionnement ncessite que lespace dadressage soit continu.
Conguration de RIP avec des adresses IP secondaires Le protocole RIP annonce les adresses IP secondaires si elles sont congures sur lune des interfaces du routeur, et si les rseaux auxquels appartiennent ces adresses, sont rattachs au processus de routage RIP, par la commande network, en mode de conguration routeur. Quand le routeur doit gnrer et envoyer des mises jour de routage travers une interface congure avec des adresses IP secondaires, il applique les rgles suivantes : Il envoie de multiples copies de la mme mise jour travers une interface congure avec des adresses IP secondaires. Le nombre de copies quivaut celui des adresses rseaux classe congures sur linterface, que ces rseaux soient dcoups en sous-rseaux ou non. Chaque copie est envoye comme si elle provenait de ladresse rseau correspondante. Il prlve la premire adresse IP parmi celles congures sur linterface pour chaque rseau. Les adresses IP sont traites dans lordre o elles apparaissent dans la conguration. Ladresse ainsi prleve est utilise comme source du datagramme contenant la copie correspondante de la mise jour de routage. Aucune adresse rseau ou sous-rseau, quelle soit secondaire ou primaire, ne se trouve dans les copies de mise jour de routage. Pour une mise jour donne, toutes les copies sont identiques. Ces rgles peuvent paratre quelque peu compliques. Pour mieux les comprendre, prenons lexemple de la gure 4.5, en modiant la conguration des routeurs R3 et R4, pour y ajouter des adresses IP secondaires (cf. listings 4.18 et 4.19).
Listing 4.18. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 172.16.1.20 255.255.255.0 secondary ip address 172.16.1.15 255.255.255.0 secondary ip address 210.1.0.1 255.255.255.0 secondary ip address 172.16.10.20 255.255.255.0 secondary ip address 172.16.10.15 255.255.255.0 secondary ip address 172.16.10.10 255.255.255.0 secondary ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip network 10.0.0.0 network 200.5.0.0 network 172.16.0.0 network 210.1.0.0
126
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 172.16.1.120 255.255.255.0 secondary ip address 172.16.1.115 255.255.255.0 secondary ip address 210.1.0.2 255.255.255.0 secondary ip address 172.16.10.120 255.255.255.0 secondary ip address 172.16.10.115 255.255.255.0 secondary ip address 172.16.10.110 255.255.255.0 secondary ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip network 200.5.0.0 network 200.6.0.0 network 172.16.0.0 network 210.1.0.0
Les interfaces Token Ring sur les deux routeurs ont maintenant un certain nombre dadresses IP secondaires, et celles-ci, comme les adresses IP primaires, appartiennent trois rseaux dont les adresses sont : 172.16.0.0/16, 200.5.0.0/24 et 210.1.0.0/24. Par consquent, trois copies de la mme mise jour de routage doivent tre envoyes par linterface Token Ring de chaque routeur. Vrions que cest bien le cas, par la commande debug ip rip qui afche le contenu des messages de mise jour de routage envoys par RIP dont on trouve un extrait sur le listing 4.20, pour le routeur R4.
Listing 4.20. Sortie de la commande debug
R4#debug ip rip RIP protocol debugging is on R4# RIP: sending update to 255.255.255.255 (200.6.0.1) network 10.0.0.0, metric 2 network 172.16.0.0, metric 1 network 200.5.0.0, metric 1 network 210.1.0.0, metric 1 RIP: sending update to 255.255.255.255 (200.5.0.2) network 200.6.0.0, metric 1 RIP: sending update to 255.255.255.255 (172.16.1.120) network 200.6.0.0, metric 1 RIP: sending update to 255.255.255.255 (210.1.0.2) network 200.6.0.0, metric 1
via Ethernet0
via TokenRing0
via TokenRing0
via TokenRing0
127
update from 200.5.0.1 on TokenRing0 in 1 hops update from 172.16.1.20 on TokenRing0 in 1 hops update from 210.1.0.1 on TokenRing0 in 1 hops
La sortie de la commande debug ip rip du listing 4.20 conrme que trois copies identiques de la mise jour de routage ont t envoyes travers linterface Token Ring par le routeur R4 (idem pour R3), dmontrant ainsi la mise en application des rgles nonces plus haut. Aucune de ces copies ne contient une adresse de rseau ou de sous-rseau congure sur linterface Token Ring. Les adresses IP utilises comme sources de ces mises jour pour le rseau 176.16.0.0 sont : 176.16.1.20 pour le routeur R3 et 176.16.1.120 pour le routeur R4. Ces adresses IP apparaissent effectivement en premier, congures sur linterface de chacun des routeurs concerns.
AVERTISSEMENT Bien que le rseau 176.16.0.0 soit dcoup en deux sous-rseaux, seule ladresse IP appartenant au
premier (176.16.1.0), a t utilise comme source de la copie de mise jour. Les htes rsidant sur dautres sous-rseaux qui sont lcoute de RIP, recevront des mises jour avec une adresse IP source incorrecte, et devront donc les ignorer ; car ils ne sauront pas communiquer avec le routeur dannonce des prxes rseau pour lesquels celui-ci devrait servir de routeur de saut suivant pour en tablir une route. (La raison pour laquelle les htes sont susceptibles de recevoir les mises jour de RIP, vient du fait quelles sont transmises ladresse de diffusion gnrale 255.255.255.255).
Les tables de routage des routeurs R3 et R4 se trouvent modies par la prsence dans leur conguration dadresses IP secondaires (cf. listings 4.21 et 4.22)
Listing 4.21. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:15, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:06, Serial1 C 10.4.0.0 is directly connected, Serial0 172.16.0.0/24 is subnetted, 2 subnets C 172.16.10.0 is directly connected, TokenRing0 C 172.16.1.0 is directly connected, TokenRing0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:06, TokenRing0 [120/1] via 172.16.1.120, 00:00:06, TokenRing0 [120/1] via 210.1.0.2, 00:00:06, TokenRing0 C 210.1.0.0/24 is directly connected, TokenRing0
Listing 4.22. Table de routage du routeur R4.
R4#show ip route ... R 10.0.0.0 [120/1] via 200.5.0.1, 00:00:13, TokenRing0 [120/1] via 172.16.1.20, 00:00:13, TokenRing0
128
C C C C C
[120/1] via 210.1.0.1, 00:00:13, TokenRing0 172.16.0.0 255.255.255.0 is subnetted, 2 subnets 172.16.10.0 is directly connected, TokenRing0 172.16.1.0 is directly connected, TokenRing0 200.5.0.0 is directly connected, TokenRing0 200.6.0.0 is directly connected, Ethernet0 210.1.0.0 is directly connected, TokenRing0
Les lignes qui indiquent que le routeur pratique le partage de charge sur chemins multiples ont t mises en italique sur les listings 4.21 et 4.22, pour mieux les faire ressortir. Remarquons cependant que toutes ces routes pointent vers la mme interface Token Ring qui, elle seule, supporte tout le trac destin au routeur de saut suivant. On peut en conclure que ce partage de charge est factice, du fait que les routeurs reoivent plusieurs mises jour de routage annonant les mmes prxes rseau (10.0.0.0 et 200.6.0.0) avec la mme mtrique. Nous verrons sous peu comment limplmentation de RIP dans lIOS de Cisco affecte le partage de charge. Contentons-nous simplement de constater pour linstant que les conditions requises taient remplies, mme si le rsultat na fait que semer la confusion dans lesprit de ladministrateur rseau.
AVERTISSEMENT Si des adresses IP secondaires sont utilises avec les protocoles de routage dynamique, tous les routeurs
connects au mme segment, doivent avoir les mmes adresses rseau et sous-rseau, congures sur leurs interfaces respectives. Tout manquement cette rgle risque de mener des boucles de routage. En outre, lordre dans lequel apparaissent les sous-rseaux dun mme rseau dans la conguration des interfaces est lui aussi primordial. Seule la premire adresse IP pour chaque adresse rseau classe est utilise comme adresse source dans les datagrammes transportant les copies de mises jour de routage censes provenir de ce rseau. Par consquent, si cet ordre change dun routeur lautre, les mises jour gnres par ces routeurs risquent de traverser des sous-rseaux diffrents.
Vous voil maintenant dissuad dutiliser des adresses IP secondaires dans un rseau oprationnel, sachant que les routeurs ainsi congurs avec le protocole de routage dynamique peuvent avoir un comportement quelque peu imprvisible. Les rgles quils appliquent pour les mises jour routage en sont dautant compliques, et leur conguration en devient inutilement lourde et fastidieuse. Les seuls cas qui peuvent justier lutilisation dadresses IP secondaires sont soit les migrations, soit le besoin urgent dallouer des adresses IP supplmentaires. Inhibition par RIP de lenvoi des mises jour de routage sur une interface Pour empcher RIP de diffuser les mises jour travers une interface, la commande passiveinterface <numro dinterface> doit tre utilise, en passant en mode de conguration routeur (commande routeur rip). Cette commande va inhiber les mises jour de RIP travers les interfaces qui lui sont donnes en paramtre, mme si les adresses IP de celles-ci appartiennent aux adresses rseau dnies par la commande network. Mais RIP continuera traiter les mises jour entrantes sur ces interfaces. Entrons la commande passive-interface sur linterface Token Ring du routeur R4 pour en observer les effets. Le listing 4.23 en montre la conguration. Les autres routeurs sont congurs selon le schma de la gure 4.5, sans les interfaces de rebouclage, ni les adresses IP secondaires.
Routage dynamique : protocoles vecteur de distance CHAPITRE 4 Listing 4.23. Conguration du routeur R4.
129
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip passive-interface TokenRing0 network 200.5.0.0 network 200.6.0.0
Comme on le voit sur le listing 4.24, la table de routage du routeur R4 na pas chang, ce qui tait prvu, sachant la fonctionnalit de la commande passive-interface.
Listing 4.24. Table de routage du routeur R4.
R4#show ip route ... R 10.0.0.0 [120/1] via 200.5.0.1, 00:00:09, TokenRing0 C 200.5.0.0 is directly connected, TokenRing0 C 200.6.0.0 is directly connected, Ethernet0
Par contre, le listing 4.25 de la table de routage du routeur R3 montre quil nest plus en mesure de voir ladresse rseau du segment Ethernet situ derrire le routeur R4.
Listing 4.25. Table de routage du routeurR3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:02, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:03, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0
Nous pouvons tracer les mises jour envoyes par le routeur R4 par la commande debug ip rip (cf. listing 4.26).
Listing 4.26. Sortie de la commande debug
R4#debug ip rip RIP protocol debugging is on R4# RIP: received update from 200.5.0.1 on TokenRing0 10.0.0.0 in 1 hops RIP: sending update to 255.255.255.255 via Ethernet0 (200.6.0.1) network 10.0.0.0, metric 2 network 200.5.0.0, metric 1
130
RIP: received update from 200.5.0.1 on TokenRing0 10.0.0.0 in 1 hops RIP: sending update to 255.255.255.255 via Ethernet0 (200.6.0.1) network 10.0.0.0, metric 2 network 200.5.0.0, metric 1
Comme on pouvait sy attendre, le routeur R4 ne diffuse plus de mises jour via linterface Token Ring. Ce qui montre que la commande passive-interface a pris effet sur cette interface. On peut aussi lutiliser sur des htes si on veut quils soient uniquement lcoute des messages de mise jour RIP, sans en mettre, pour viter de charger le segment rseau avec un trac de diffusion inutile. Par exemple, dans le cas des stations de travail sous Unix, qui excutent le daemon routed (la tche de fond RIP, version BSD), on peut mettre leur interface rseau en mode passif, sauf indication contraire.
REMARQUE
Mme si lhte qui excute la tche RIP ne possde quune seule interface, il peut nanmoins gnrer des messages de mise jour dantidote, chargeant ainsi inutilement le segment auquel il est connect, avec du trac RIP.
Le trac inutile est surtout d au caractre de diffusion gnrale de RIP. Tout trac destin ladresse de diffusion gnrale, quel que soit le protocole auquel il est destin, est reu par tous les htes rsidant sur un segment, provoquant ainsi un traitement superu sur ces machines, et pnalisant leur performance. Il est donc important de rduire au maximum le trac de diffusion gnrale. Le mode passif peut savrer ncessaire quand un segment ne comprend quun seul routeur et des htes non habilits recevoir ses mises jour RIP. Il serait alors judicieux de mettre cette interface du routeur en coute passive. Envoi de mises jour monodestinataire par RIP Si nous examinons la sortie de la commande debug ip rip, nous pouvons constater que toutes les mises jour sont destines ladresse de diffusion gnrale, 255.255.255.255. Dans certains cas, cits ci-aprs, il est possible denvoyer les mises jour une adresse monodestinataire (unicast). Le systme IOS de Cisco nous en donne les moyens par la commande neighbor <adresse IP> en mode de conguration routeur (router rip). Les mises jour sont ainsi achemines ladresse IP donne en argument.
REMARQUE
La commande neighbor na dutilit que si linterface de ladresse IP concerne est en mode passif. Sinon, le routeur continue envoyer aussi les mises jour ladresse de diffusion gnrale sur cette interface.
La commande passive-interface tokenring 0 sur le routeur R4 a inhib lenvoi de ses mises jour sur cette interface, comme nous lavons vu dans la section prcdente. De ce fait, le routeur R3 navait plus connaissance du rseau Ethernet 200.6.0.0/24. Si nous introduisons maintenant ladresse IP de ce routeur par la commande neighbor sur le routeur R4, les mises jour envoyes par ce dernier vont lui permettre nouveau davoir connaissance du rseau en question. Le listing 4.27 montre cette nouvelle conguration du routeur R4. Et dans le listing 4.28, la table de routage du routeur R3 fait de nouveau apparatre le rseau 200.6.0.0.
Routage dynamique : protocoles vecteur de distance CHAPITRE 4 Listing 4.27. Conguration du routeur R3.
131
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip passive-interface TokenRing0 neighbor 200.5.0.1 network 200.5.0.0 network 200.6.0.0
Listing 4.28. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:12, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:05, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:11, TokenRing0
Sur le listing 4.29 on voit par la commande debug ip rip que les mises jour sont de nouveau envoyes par le routeur R4 sur linterface Token Ring, mais cette fois-ci, uniquement ladresse monodestinataire du routeur R3 (ligne en italique).
Listing 4.29. Sortie de la commande debug
ip rip.
R4#debug ip rip ... RIP: sending update to 255.255.255.255 via Ethernet0 (200.6.0.1) network 10.0.0.0, metric 2 network 200.5.0.0, metric 1 RIP: sending update to 200.5.0.1 via TokenRing0 (200.5.0.2) network 200.6.0.0, metric 1
Discrimination en entre des mises jour de routage Le systme IOS de Cisco procure un moyen de slection ou mme dexclusion complte des mises jour de routage en provenance de certaines sources. Cela consiste assigner une valeur de distance administrative pour les sources de ces mises jour. Pour assigner une nouvelle valeur de distance administrative pour les sources de mises jour entrantes, la commande distance <valeur de distance> [<adresse IP source/masque gnrique>] doit tre utilise, en mode de conguration routeur (router rip). La nouvelle distance administrative sappliquera toutes les routes pointant vers les prxes rseau annoncs par la source dont ladresse IP correspond au deuxime paramtre de la commande. Si ce paramtre (optionnel) est omis, la nouvelle distance sappliquera toutes les mises jour reues,
132
quelle que soit leur origine. Si on assigne cette distance une valeur de 255, les routes diffuses par la source correspondante, ne seront jamais inscrites dans la table de routage, mais tout simplement ignores.
REMARQUE
Dans le vocabulaire de Cisco, le masque gnrique (wild card) appliqu ladresse IP ne doit pas tre pris dans son acception habituelle, mais dans le sens spcique Cisco, comme pour les listes daccs. savoir, tout bit positionn 1 dans le masque indique que le bit correspondant dans ladresse IP, doit tre ignor. En fait, lapplication du masque une adresse IP, dans ce cas, a leffet inverse de celui du masque habituel appliqu aux adresses IP pour en extraire ladresse rseau ou sous-rseau. Plusieurs commandes distance peuvent tre utilises pour tenir compte du niveau de crdibilit accord chaque source des mises jour de routage.
ASTUCE
Supposons que nous ayons ajout une source supplmentaire pour lorigine des mises jour RIP, au schma du rseau de la gure 4.5 qui est reproduit modi, en 4.8. Celle-ci concerne linstallation sur le segment 7 dun hte multidomicili (multihomed) qui excute aussi la tche RIP. Supposons que le segment en question ne relve pas de linfrastructure du rseau oprationnel et que nous voulions ignorer les mises jour qui lont pour origine. Si nous tendons cette restriction tout le segment 5, nous pouvons ignorer les mises jour de toute source trangre qui rsiderait sur ce segment. Pour mieux illustrer notre exemple, nous allons aussi changer la valeur de distance des mises jour mises rciproquement par les routeurs R3 et R4 en la faisant passer de 120 (valeur par dfaut) 200.
Figure 4.8
Segment 1 10.1.0.0/24
Segment 2 10.2.0.0/24
e0
e0
R1
s1 s0
Segment 3 10.3.0.0/24
R2
s1 s0
Segment 4 10.4.0.0/24
R3
to0
Segment 5 200.5.0.0/24
to0
R4
Segment 7 210.100.100.0/24
e0
Segment 6 200.6.0.0/24
133
Les listings 4.30 et 4.31 montrent ltat actuel des tables de routage des routeurs R3 et R4.
Listing 4.30. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:18, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:12, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:24, TokenRing0 R 210.100.100.0/24 [120/2] via 200.5.0.15, 00:00:24, TokenRing0
Listing 4.31. Table de routage du routeur R4.
R4#show ip route ... R 10.0.0.0 [120/1] via 200.5.0.1, 00:00:23, TokenRing0 C 200.5.0.0 is directly connected, TokenRing0 C 200.6.0.0 is directly connected, Ethernet0 R 210.100.100.0 [120/2] via 200.5.0.15, 00:00:24, TokenRing0
REMARQUE
Le routeur R4, bien que congur avec les commandes passive-interface tokenring 0 et neighbor 200.5.0.1, accepte toujours les mises jour en provenance de lhte H1. Ces commandes ne peuvent donc tre utilises pour contraindre le routeur ignorer les sources de mises jour trangres.
Comme les routeurs R3 et R4 sont les seules sources du segment 5 auxquelles nous faisons conance, nous pouvons associer aux adresses IP sur leur interface Token Ring respectives le masque gnrique 0.0.0.0, en tant quargument la commande distance. Pour bien indiquer que toute autre source pour la mise jour RIP ne nous inspire pas conance, nous devons associer ladresse rseau 200.5.0.0 du segment 5, le masque gnrique 0.0.0.255, avant de le passer en argument la commande distance suivante. Les listings 4.32 et 4.33 montrent les congurations des routeurs R3 et R4 aprs modication.
Listing 4.32. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip network 10.0.0.0 network 200.5.0.0 distance 200 200.5.0.2 0.0.0.0 distance 255 200.5.0.0 0.0.0.255
134
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip passive-interface TokenRing0 network 200.5.0.0 network 200.6.0.0 neighbor 200.5.0.1 distance 200 200.5.0.1 0.0.0.0 distance 255 200.5.0.0 0.0.0.255
En examinant les tables de routage des deux routeurs, nous nous apercevons que les mises jour envoyes par lhte H2 ont disparu. En mme temps, la distance administrative des routes apprises rciproquement par les routeurs R3 et R4 est passe la valeur 200 au lieu de 120 prcdemment. Cette valeur est mise en italique dans les listings 4.34 et 4.35.
Listing 4.34. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets R 10.2.0.0 [120/1] via 10.4.0.2, 00:00:15, Serial0 C 10.3.0.0 is directly connected, Serial1 R 10.1.0.0 [120/1] via 10.3.0.2, 00:00:18, Serial1 C 10.4.0.0 is directly connected, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [200/1] via 200.5.0.2, 00:00:16, TokenRing0
Listing 4.35. Table de routage du routeur R4.
R4#show ip route ... R 10.0.0.0 [200/1] via 200.5.0.1, 00:00:18, TokenRing0 C 200.5.0.0 is directly connected, TokenRing0 C 200.6.0.0 is directly connected, Ethernet0
AVERTISSEMENT Lordre dans lequel doivent tre introduites les commandes distance est primordial. Seule la premire
commande dont largument <adresse IP source/masque gnrique> correspond ladresse IP de la source de lenvoi des mises jour, est prise en compte. Une fois cette condition remplie, les commandes suivantes nont plus deffet. Dans notre exemple, si nous avions interverti les commandes, le routeur aurait ignor toutes les mises jour en provenance du segment 5, quelle que soit leur source, car la commande distance 255 200.5.0.0 0.0.0.255 correspond toutes les adresses de ce segment dont la valeur de distance administrative vaut 255, ce qui signie quil faut ignorer les mises jour les ayant pour origine.
REMARQUE
La commande distance est indpendante des protocoles utiliss, et peut donc agir sur le fonctionnement de chacun deux.
135
Conguration de RIP avec le partage de charge cot gal Limplmentation de RIP dans lIOS de Cisco peut rpartir le trac sur plusieurs chemins vers la mme destination exprime sous forme de prxe rseau, si ces diffrents chemins ont la mme mtrique.
REMARQUE
Le routeur qui pratique le partage de charge na cependant aucun contrle sur le trac entrant qui peut lui tre achemin sur une seule de ses interfaces.
Prenons le cas de la gure 4.9 o le routeur R3 possde deux chemins vers le segment 1 du Token Ring. Ceux-ci sont considrs comme identiques par RIP quel que soit leur dbit propre, et il leur attribue la mme mtrique 1. Le listing 4.36 en apporte une conrmation.
Figure 4.9
H1
to0
to0
R1
s1 s0
Segment 2 200.100.0.0/24
R2
s1 s0
Segment 3 200.101.0.0/24
R3
e0
Segment 4 200.2.0.0/24
H2
Listing 4.36. Table de routage du routeur R3.
R3#show ip route ... C 200.100.0.0/24 is directly connected, Serial1 C 200.101.0.0/24 is directly connected, Serial0 R 200.1.0.0/24 [120/1] via 200.100.0.2, 00:00:05, Serial1 [120/1] via 200.101.0.2, 00:00:21, Serial0 C 200.2.0.0/24 is directly connected, Ethernet0
136
Les lignes en italique de la sortie de la commande show ip route sur le routeur R3 devraient nous sembler familires. En effet, elles sont les mmes que celles du chapitre 3 o nous avons congur le partage de charge en routage statique sur un routeur. Dans le listing 4.37 on peut voir la sortie de la mme commande sur le routeur R1 qui pratique galement le partage de charge en rpartissant le trac destin au rseau de la ligne srie reliant les routeurs R2 et R3. De toute vidence, ce genre de partage de charge a peu dutilit, sachant que le dbit de lun des chemins (le segment Token Ring) est bien plus important que celui de lautre chemin (la ligne srie). En loccurrence, le partage de charge va saturer la ligne srie, alors que le Token Ring sera sous-utilis. Heureusement, il est trs improbable (sauf acte de malveillance) que la ligne srie reoive un trac important, vu quil sagit dun rseau qui na que deux htes qui sont tous les deux des routeurs. La table de routage du routeur R1 se trouve sur le listing 4.37.
Listing 4.37. Table de routage du routeur R1.
R1#show ip route ... C 200.1.0.0/24 is directly connected, TokenRing0 R 200.2.0.0/24 [120/1] via 200.100.0.1, 00:00:07, Serial0 C 200.100.0.0/24 is directly connected, Serial0 R 200.101.0.0/24 [120/1] via 200.100.0.1, 00:00:07, Serial0 [120/1] via 200.1.0.2, 00:00:05, TokenRing0
ASTUCE
Les routeurs Cisco peuvent utiliser jusqu quatre chemins (valeur par dfaut) pour le partage de charge. La valeur par dfaut peut tre modie par la commande maximum-paths <nombre>, o ce paramtre est un entier allant de 1 6. Pour empcher le routeur de pratiquer le partage de charge, il faut renseigner le paramtre la valeur 1.
Changement de mtrique RIP Il est parfois utile de contraindre RIP choisir une route plutt quune autre, surtout si deux liaisons parallles entre deux routeurs ont des dbits asymtriques. Dans ce cas, il serait prfrable que RIP choisisse la liaison qui possde le plus grand dbit. Nous savons dun chapitre prcdent que RIP ne fait pas de distinction entre les segments auxquels il est reli. Il attribue systmatiquement ces derniers, une mtrique de 1, sans tenir compte de leurs caractristiques. Dans la gure 4.9, le schma du rseau qui y est reprsent, incitera RIP rpartir un trac gal sur les deux liaisons, ce qui ne nous conviendrait pas. Par exemple, si le dbit de la premire est trois fois plus important que celui de la deuxime, en partage de charge, la premire elle seule aura un potentiel de trac suprieur celui qui est effectivement achemin. Le systme IOS de Cisco procure un moyen trs puissant pour modier la mtrique de 1 que RIP attribue aux interfaces quil dessert. Il sagit de la commande offset-list, disponible en mode de conguration routeur, qui ne modie pas la mtrique de linterface elle-mme, mais change slectivement la mtrique des mises jour reues ou mises, en appliquant une majoration prcise (offset). Cette slectivit de la commande permet de prciser en option, parmi les routes, celles qui auront leurs mtriques modies pour chaque interface. Le format de la commande est le suivant : offset-list <liste daccs> {in|out} <valeur de majoration> [<interface>]
137
Le premier paramtre peut prendre comme valeur 0 ou le numro dune liste daccs (qui peut aussi tre un nom, dans les dernires versions de lIOS de Cisco). Si celle-ci existe, la majoration de la mtrique ne sera applique quaux routes correspondantes. Dans le cas contraire ou si le paramtre est 0, la majoration sappliquera toutes les routes. Nous aurons tudier en dtail les listes daccs au chapitre 6. Les mots cls alternatifs in ou out prcisent si la commande sapplique en entre ou en sortie des mises jour RIP. Le dernier paramtre qui est optionnel permet daffecter la commande une interface spcique sur laquelle RIP appliquera la majoration de la mtrique en conformit avec les autres lments mentionns ci-dessus. Selon la documentation de Cisco, la commande offset-list, devient tendue (extended), quand elle concerne une interface spcique. Quand la mme route est comprise aussi bien dans une commande tendue que dans une commande non tendue, cest la premire qui prime sur la seconde. Autrement dit, cest la majoration de la mtrique prcise dans la premire commande qui sera applique la route concerne. Chaque interface peut possder une commande offset-list spare, en entre et en sortie. Il peut exister en outre des commandes non tendues, qui sappliquent aussi bien en entre quen sortie. Toute commande offset-list introduite la suite supprime celle davant, paramtres et mot cl identiques. Dans le schma de rseau de la gure 4.9, supposons que le segment 3 ait un dbit trois fois plus rduit que celui du segment 2. La routeur, en ltat actuel, pratique le partage de charge sur ces deux segments. Notre but est de majorer la mtrique de RIP pour le segment 3 en changeant sa valeur par dfaut qui est 1, pour la faire passer 3. La commande offset-list concerne apparat sur le listing 4.38 qui montre la conguration modie du routeur R3.
Listing 4.38. Conguration modie du routeur R3.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.101.0.1 255.255.255.0 interface Serial1 ip address 200.100.0.1 255.255.255.0 router rip offset-list 0 in 3 Serial0 network 200.2.0.0 network 200.100.0.0 network 200.101.0.0
Lindication du partage de charge de lexemple prcdent (cf. listing 4.3) a disparu du listing 4.39 qui montre la table de routage du routeur R3. Nous pouvons en avoir conrmation la lecture du listing 4.40 o la mtrique des mises jour reues en entre de linterface srie du segment 3, par le routeur R3, a bien t majore 3.
138
R3#show ip route ... C 200.100.0.0/24 is directly connected, Serial1 C 200.101.0.0/24 is directly connected, Serial0 R 200.1.0.0/24 [120/1] via 200.100.0.2, 00:00:11, Serial1 C 200.2.0.0/24 is directly connected, Ethernet0
Listing 4.40. Sortie de la commande debug
ip rip.
R3#debug ip rip RIP protocol debugging is on R3# RIP: received v1 update from 200.101.0.2 on Serial0 200.1.0.0 in 4 hops RIP: received v1 update from 200.100.0.2 on Serial1 200.1.0.0 in 1 hops
Conguration de RIP sur un rseau Frame Relay non intgralement maill Quel que soit le protocole, la conguration de Frame Relay prsente un cas qui diffre des autres supports de transmission, car cest un rseau de non diffusion accs multiple ou NBMA (NonBroadcast Multiple Access). La plupart des protocoles de routage ont recours aux adresses de diffusion gnrale (broadcast) ou de diffusion multidestinataire (multicast) qui ne sont pas directement utilisables dans Frame Relay, ce qui ncessite des solutions de rechange. Ces solutions savrent particulirement indispensables quand il sagit du protocole OSPF, comme nous le verrons dans le chapitre 5. Bien que les rseaux NBMA soient mieux tolrs par les protocoles vecteur de distance, ceux-ci peuvent cependant comporter des surprises, surtout quand les rseaux en question ne sont pas intgralement maills (non fully meshed). Prenons lexemple de la gure 4.10 qui reprsente un rseau Frame Relay non intgralement maill avec trois routeurs. Pour des raisons inconnues, le routeur R1 ne peut tre congur
Figure 4.10
Segment 1 200.1.0.0/24
e0
e0
R1
s1
DLCI 102
R3
s0
DLCI 301
s0
R2
DLCI 201
Rseau Frame Relay LMI = ANSI sur toutes les interfaces Rseau IP 200.200.0.0/24
e0
Segment 2 200.2.0.0/24
139
avec des sous-interfaces pour ses deux CVP (circuit virtuel permanent) qui le relient aux deux autres, R2 et R3. Les trois routeurs sont congurs avec RIP, et daprs ce quon en sait, RIP est incapable dassurer une connectivit globale du rseau. La rgle du clivage dhorizon va empcher le routeur R1 de passer les mises jour du routeur R2 au routeur R3, et vice versa. Car celles-ci ncessitent dtre transmises via linterface qui les a reues. Observons cependant ce qui se produit en ralit. Les listings 4.41 4.43 montrent les congurations des trois routeurs.
Listing 4.41. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.200.0.1 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.2 102 broadcast frame-relay map ip 200.200.0.3 103 broadcast frame-relay lmi-type ansi router rip network 200.1.0.0 network 200.200.0.0
Listing 4.42. Conguration du routeur R2.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.200.0.2 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.1 201 broadcast frame-relay lmi-type ansi router rip network 200.2.0.0 network 200.200.0.0
Listing 4.43. Conguration du routeur R3.
interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.200.0.3 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.1 301 broadcast frame-relay lmi-type ansi router rip network 200.3.0.0 network 200.200.0.0
140
Nous constatons que le routeur R1 na aucun problme pour voir les segments attachs aux routeurs R2 et R3. Nous doutons nanmoins que le routeur R2 soit capable de voir le segment Ethernet attach au routeur R3, et rciproquement. Pour en avoir conrmation, examinons la table de routage du routeur R2 (ligne en italique) sur le listing 4.44.
Listing 4.44. Table de routage du routeur R2.
R2#show ip route ... C 200.200.0.0/24 is directly connected, Serial0 R 200.1.0.0/24 [120/1] via 200.200.0.1, 00:00:18, Serial0 C 200.2.0.0/24 is directly connected, Ethernet0 R 200.3.0.0/24 [120/2] via 200.200.0.1, 00:00:18, Serial0
Visiblement nous avions tort ; le RIP sur le routeur R1 a malgr tout pass outre la rgle du clivage dhorizon pour envoyer les mises jour en provenance du routeur R3 vers le routeur R2, via sa mme interface. On peut en trouver lexplication en lanant la commande show ip interface sur le routeur R1 (cf. listing 4.45). Celle-ci, contrairement la commande show interfaces, afche les informations spciques IP de linterface donne en argument. Sur le listing 4.45, la ligne en italique montre linformation qui nous concerne particulirement. On y voit que le clivage dhorizon est tout simplement dsactiv, et par consquent ignor par le routeur R1. Ce qui nest pas un hasard, sachant que dans lIOS de Cisco, sur toutes les interfaces congures avec Frame Relay, cette dsactivation est faite par dfaut.
Listing 4.45. Sortie de la commande show
R1#show ip interface Serial 1 Serial1 is up, line protocol is up Internet address is 200.200.0.1/24 Broadcast address is 255.255.255.255 Address determined by non-volatile memory MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is enabled Multicast reserved groups joined: 224.0.0.9 Outgoing access list is not set Inbound access list is not set Proxy ARP is enabled Security level is default Split horizon is disabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP fast switching on the same interface is enabled IP multicast fast switching is disabled Router Discovery is disabled IP output packet accounting is disabled IP access violation accounting is disabled TCP/IP header compression is disabled Probe proxy name replies are disabled
141
Gateway Discovery is disabled Policy routing is disabled Network address translation is disabled
Une autre surprise nous attend, si nous lanons un ping du routeur R2 vers linterface Ethernet du routeur R3. Le rsultat est afch sur le listing 4.46.
Listing 4.46. chec de la commande ping
R2#ping 200.3.0.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 200.3.0.1, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
Pour une raison quelconque, la commande ping naboutit pas. Nous allons savoir pourquoi, en lanant la commande debug ip packet sur le routeur R2 (cf. listing 4.47).
Listing 4.47. Explication de lchec du ping par la commande debug
ip packet.
R2#debug ip packet IP packet debugging is on R2#ping 200.3.0.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 200.3.0.1, timeout is 2 seconds: IP: s=200.200.0.2 IP: s=200.200.0.2 IP: s=200.200.0.2 IP: s=200.200.0.2 IP: s=200.200.0.2 Success rate is 0 (local), d=200.3.0.1 (local), d=200.3.0.1 (local), d=200.3.0.1 (local), d=200.3.0.1 (local), d=200.3.0.1 percent (0/5) (Serial0)... (Serial0)... (Serial0)... (Serial0)... (Serial0)...
Les parties en italique mettent en vidence ladresse IP 200.200.0.2 que le routeur R2 insre dans chaque paquet ping avant de lenvoyer au routeur R3. Mais celui-ci na aucune route vers cette adresse. Rappelons-nous la commande frame-relay map ip du chapitre 1 qui tablit un lien entre une adresse IP distante et le DLCI (numro de CVP du Frame Relay). Aucun des deux routeurs R2 et R3 na cette commande dans sa conguration pour pointer mutuellement sur ladresse IP de leur interface srie respective. Conguration de IGRP Nous allons utiliser la topologie de la gure 4.3 qui a dj servi pour RIP, car le protocole IGRP lui ressemble sur bien des points en conguration de base. Une fois passs en revue les traits communs, nous aborderons certaines fonctionnalits de IGRP non disponibles dans RIP. Pour congurer IGRP, les tapes suivre sont les mmes que pour RIP, cette diffrence prs quil faut introduire un renseignement supplmentaire par la commande router igrp <numro de systme autonome>. Ce paramtre dsigne le systme autonome ou AS (Autonomous System) desservi par le processus IGRP qui sera lanc sur le routeur. Dans notre exemple, le AS aura le numro 10.
142
Les listings 4.48 4.51 montrent les congurations modies pour les quatre routeurs de la gure 4.3.
Listing 4.48. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial0 ip address 200.3.0.2 255.255.255.0 router igrp 10 network 200.1.0.0 network 200.3.0.0
Listing 4.49. Conguration du routeur R2.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial1 ip address 200.4.0.2 255.255.255.0 router igrp 10 network 200.2.0.0 network 200.4.0.0
Listing 4.50. Conguration du routeur R3.
interface Serial0 ip address 200.4.0.1 255.255.255.0 interface Serial1 ip address 200.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router igrp 10 network 200.3.0.0 network 200.4.0.0 network 200.5.0.0
Listing 4.51. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router igrp 10 network 200.5.0.0 network 200.6.0.0
143
La commande debug ip igrp transactions est lquivalent pour IGRP de la commande de RIP, debug ip rip. On peut voir la sortie de cette commande afche par le routeur R3, sur le listing 4.52.
Listing 4.52. Sortie de la commande debug
ip igrp transactions.
R3#debug ip igrp transactions IGRP protocol debugging is on R3# IGRP: received update from 200.4.0.2 on Serial0 network 200.2.0.0, metric 8576 (neighbor 1100) IGRP: received update from 200.5.0.2 on TokenRing0 network 200.6.0.0, metric 1163 (neighbor 1100) IGRP: received update from 200.3.0.2 on Serial1 network 200.1.0.0, metric 8576 (neighbor 1100) IGRP: sending update to 255.255.255.255 via Serial0 (200.4.0.1) network 200.1.0.0, metric=8576 network 200.3.0.0, metric=8476 network 200.5.0.0, metric=688 network 200.6.0.0, metric=1163 IGRP: sending update to 255.255.255.255 via Serial1 (200.3.0.1) network 200.2.0.0, metric=8576 network 200.4.0.0, metric=8476 network 200.5.0.0, metric=688 network 200.6.0.0, metric=1163 IGRP: sending update to 255.255.255.255 via TokenRing0 (200.5.0.1) network 200.1.0.0, metric=8576 network 200.2.0.0, metric=8576 network 200.3.0.0, metric=8476 network 200.4.0.0, metric=8476
Les autres commandes disponibles dans IGRP avec les mmes fonctionnalits que dans RIP, sont : neighbor, distance et passive-interface. La liste des diffrences entre RIP et IGRP est donne ci-dessous : La commande router igrp <numro de systme autonome> permet de lancer plusieurs processus IGRP sur le mme routeur, ce qui nest pas le cas de la commande router rip qui ne lance quun seul processus RIP. Les diffrents processus IGRP identis par leur numro dAS sont hermtiques les uns par rapport aux autres. Ils ne se transmettent pas les informations de routage entre eux. Autrement dit, les routes tablies par un processus IGRP ne sont pas diffuses un autre processus IGRP. Contrairement RIP, IGRP ne peut annoncer aucune adresse individuelle dhte. Les adresses IP secondaires congures sur les interfaces ne sont jamais utilises par IGRP pour lenvoi des mises jour ; seule ladresse primaire sert cet effet. Les adresses rseau et sous-rseau congures sur une interface ne sont jamais contenues dans une mise jour. Visiblement, Cisco a bien tir les enseignements de RIP. Sagissant de grer les adresses IP secondaires en environnement rel on peut difcilement trouver mieux que ce que fait IGRP.
144
IGRP et sa mtrique IGRP est connu sous le sobriquet de RIP aux hormones , ce qui nest pas sans raisons. Lune delles se rapporte la mtrique de IGRP qui admet des rseaux dun diamtre bien plus important que celle de RIP. La mtrique de IGRP, contrairement celle de RIP, est plus complexe et permet de faire la distinction entre chemins aux caractristiques diffrentes, alors que pour RIP ils pourraient sembler identiques. Comprendre la mtrique de IGRP est important car certaines fonctionnalits tel que le partage de charge cot ingal sont bases sur cette mtrique. La formule que IGRP utilise pour calculer la mtrique de chaque route est la suivante : MIGRP = [k1BIGRP + (k2BIGRP)/(256L) + k3DIGRP] k5/(R+k4) Si le coefcient k5 vaut 0, la formule est rduite lexpression ci-aprs : MIGRP = [k1BIGRP + (k2BIGRP)/(256L) + k3DIGRP] BIGRP est le dbit IGRP du chemin, calcul selon la formule ci-dessous : BIGRP = 107 / BMIN BMIN est le dbit logique minimal du chemin exprim en kilobits par seconde (Kbit/s). Ce paramtre statique est introduit par la commande bandwidth en mode de conguration dinterface. Il faut noter cependant que cette valeur devient BMIN pour un chemin spcique, uniquement si ce dbit logique est le minimum parmi ceux de tous les autres segments qui constituent ce chemin. Pour chaque interface, il y a une valeur par dfaut, qui normalement correspond son dbit rel. Pour les lignes srie, la valeur par dfaut est toujours 1544, ce qui peut ncessiter un ajustement par la commande indique plus haut.
REMARQUE
La commande bandwidth ne modie pas le dbit rel de linterface, mais lui associe une valeur logique. Celle-ci est utilise pour calculer la mtrique dune route par les protocoles tels que IGRP, EIGRP, OSPF, etc. Dautres processus peuvent galement utiliser cette valeur logique. Si la commande bandwidth est utilise, elle doit ltre sur toutes les interfaces de tous les routeurs connects un mme segment. Par exemple, si deux routeurs sont relis par une ligne srie, la modication de linterface srie de lun doit aussi tre rpercute sur celle de lautre.
La valeur logique courante du dbit dune interface, ainsi que les autres facteurs qui interviennent dans le calcul dune mtrique dans IGRP peuvent tre visualiss par la commande show interfaces <interface> (cf. listing 4.53).
Listing 4.53. Valeurs logiques de IGRP pour le calcul de la mtrique afches la quatrime ligne (en italique).
R3#show interfaces Serial 1 Serial1 is up, line protocol is up Hardware is HD64570 Internet address is 200.100.0.1/24 MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 1/255 ...
Sur le listing 4.53 les valeurs suivantes sont afches, avec leurs codes correspondants : lunit maximale de transfert permise au niveau du rseau physique, code MTU, en nombre doctets ; BIGRP, cod BW, dbit logique modiable par la commande bandwidth, en mode de conguration interface ;
145
DIGRP, cod DLY, dlai (exprim en multiple de 10 microsecondes) du chemin, somme des dlais de tous les segments traverss ; modiable par la commande delay, en mode de conguration interface ; transmis comme une variable de 32 bits (valeur 0xFFFFFFFF en hexadcimal), si une route est inaccessible ; R, cod rely, abilit de linterface, mesure dynamiquement par IGRP dont la valeur va de 1 255 (haute abilit) ; L, code load, charge correspondant linterface, mesure dynamiquement par IGRP dont la valeur varie entre 1 et 255 (charge maximale 100 %). Le protocole IGRP ne modie pas intempestivement les paramtres R et L, pour assurer la stabilit de lopration de routage quand le trac passe par des pics. Ceux-ci en consquence peuvent uctuer beaucoup sans que IGRP en tienne compte, pour viter que les routes correspondantes soient mises sous temporisation de maintien (hold down). Les paramtres L et R dune interface donne peuvent tre afchs grce la commande show interfaces (les deux derniers paramtres en italique du listing 4.53). Les facteurs de pondration, k1, k2, k3, k4 et k5 peuvent tre congurs administrativement ; leurs valeurs par dfaut se trouvent dans la table 4.2.
Table 4.2. Valeur par dfaut des facteurs de pondration.
Facteur
K1 K2 K3 K4 K5
Si on applique la valeur par dfaut pour les facteurs k, la formule prcdente se rduit la suivante : MIGRP = BIGRP + DIGRP Par exemple, calculons la mtrique de IGRP, en remplaant dans la formule, les paramtres avec leurs valeurs correspondantes, telles quelles sont annonces pour linterface srie 1 du listing 4.53. On obtient : MIGRP = 107/1544 + 20000/10 = 6476 + 2000 = 8476 Lutilisation de la commande debug ip igrp transactions permet de vrier lexactitude du calcul, ce que conrme le rsultat mis en italique sur le listing 4.54.
Listing 4.54. Sortie de la commande debug
ip igrp transactions.
R3#debug ip igrp transactions IGRP protocol debugging is on R3# IGRP: sending update to 255.255.255.255 via Ethernet0 (200.2.0.1) network 200.100.0.0, metric=8476 network 200.101.0.0, metric=8476 network 200.1.0.0, metric=8539
146
Conguration de IGRP avec le partage de charge cot gal et ingal Tout comme RIP, IGRP peut aussi pratiquer par dfaut le partage de charge sur des chemins cot gal. Par exemple, si nous changions de protocole pour le rseau de la gure 4.9, en passant de RIP IGRP, nous devrions modier les congurations des routeurs selon les listings 4.55 4.57.
Listing 4.55. Conguration du routeur R1.
interface Serial0 ip address 200.100.0.2 255.255.255.0 interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 router igrp 10 network 200.1.0.0 network 200.100.0.0
Listing 4.56. Conguration du routeur R2.
interface Serial1 ip address 200.101.0.2 255.255.255.0 interface TokenRing0 ip address 200.1.0.2 255.255.255.0 ring-speed 16 router igrp 10 network 200.1.0.0 network 200.101.0.0
Listing 4.57. Conguration du routeur R3.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.101.0.1 255.255.255.0 interface Serial1 ip address 200.100.0.1 255.255.255.0 router igrp 10 network 200.2.0.0 network 200.100.0.0 network 200.101.0.0
Si nous afchions la table de routage du router R3, nous aurions la sortie du listing 4.58.
Routage dynamique : protocoles vecteur de distance CHAPITRE 4 Listing 4.58. Conguration du routeur R3.
147
R3#show ip route ... C 200.100.0.0/24 is directly connected, Serial1 C 200.101.0.0/24 is directly connected, Serial0 I 200.1.0.0/24 [100/8539] via 200.100.0.2, 00:00:36, Serial1 [100/8539] via 200.101.0.2, 00:00:15, Serial0 C 200.2.0.0/24 is directly connected, Ethernet0
ASTUCE
La commande offset-list est aussi disponible sous IGRP. Mais elle agit sur le paramtre dlai des mises jour entrantes ou sortantes de linterface donne en argument. Si nous lappliquons sous la forme offset-list 0 in 3 serial 0 sur le routeur R3 du schma prcdent (cf. gure 4.9), aprs la commande router igrp 10, le partage de charge cot gal sera supprim, car la mtrique des mises jour reues sur linterface srie 0 sen trouvera augmente.
Supposons maintenant que le dbit du segment 2 soit de 1024 Kbit/s et que celui du segment 3 soit de 512 Kbit/s. Nous savons de ce qui a t dit plus haut que la commande bandwidth permet dajuster la valeur du dbit logique que IGRP utilise pour le calcul de sa mtrique. Les listings 4.59 4.61 montrent les congurations modies des routeurs R1, R2 et R3.
Listing 4.59. Conguration du routeur R1.
interface Serial0 ip address 200.100.0.2 255.255.255.0 bandwidth 1024 interface TokenRing0 ip address 200.1.0.1 255.255.255.0 ring-speed 16 router igrp 10 network 200.1.0.0 network 200.100.0.0
Listing 4.60. Conguration du routeur R2.
interface Serial1 ip address 200.101.0.2 255.255.255.0 bandwidth 512 interface TokenRing0 ip address 200.1.0.2 255.255.255.0 ring-speed 16 router igrp 10 network 200.1.0.0 network 200.101.0.0
Listing 4.61. Conguration du routeur R3.
148
ip address 200.101.0.1 255.255.255.0 bandwidth 512 interface Serial1 ip address 200.100.0.1 255.255.255.0 bandwidth 1024 router igrp 10 network 200.2.0.0 network 200.100.0.0 network 200.101.0.0
Lindication du partage de charge cot gal a disparu du listing 4.62 pour le routeur R3, suite aux modications faites plus haut.
Listing 4.62. Table de routage du routeur R3.
R3#show ip route ... C 200.100.0.0/24 is directly connected, Serial1 C 200.101.0.0/24 is directly connected, Serial0 I 200.1.0.0/24 [100/11828] via 200.100.0.2, 00:00:55,Serial1 C 200.2.0.0/24 is directly connected, Ethernet0
Contrairement RIP, IGRP peut pratiquer le partage de charge cot ingal, ce qui permet un routeur de rpartir le trac vers une mme destination selon un critre de proportionnalit de la mtrique de chacun des diffrents chemins. Le partage de charge cot ingal nest pas actif par dfaut. Pour quil le soit, il faut entrer la commande variance <multiplicande> en mode routeur (router igrp <numro dAS>). La valeur du paramtre va de 1 128. Une fois que cette commande est introduite dans un routeur, les routes qui satisfont les conditions suivantes sont ajoutes la table de routage : Le routeur de saut suivant doit avoir une route candidate pour une mme destination, avec une meilleure mtrique que celle de la route locale. La mtrique de la route candidate doit tre infrieure ou gale celle de la route locale multiplie par le paramtre de la commande variance. Essayons de modier la conguration du routeur R3 de lexemple prcdent (cf. gure 4.9) pour quil puisse pratiquer le partage de trac cot ingal sur les segments 2 et 3, dirig vers le segment 1. Calculons dabord la mtrique des chemins que le processus IGRP permet au routeur R3 dattribuer vers le segment destinataire. Le dbit le plus petit de la route via le segment 2 est 1024 Kbit/s. Les dlais congurs sont 630 pour le segment 1 et 20000 pour le segment 2. La mtrique de cette route se calcule comme suit : M1 = 107/1024 + (630 + 20000)/10 = 9765 + 2063 = 11828 La route via le segment 3 ne diffre que par le plus petit dbit qui est 512 Kbit/s. Le calcul de la mtrique de cette route se fait comme prcdemment : M2 = 107/512 + (630 + 20000)/10 = 19531 + 2063 = 21594
149
Le rapport entre la mtrique de la meilleure route et celle de la route candidate est infrieur 2, ce qui permet par la commande variance 2 de faire du partage de charge cot ingal, comme le montre la table de routage du routeur R3 sur le listing 4.63.
Listing 4.63. Table de routage du routeur R3.
R3#show ip route ... C 200.100.0.0/24 is directly connected, Serial1 C 200.101.0.0/24 is directly connected, Serial0 I 200.1.0.0/24 [100/11828] via 200.100.0.2, 00:00:22,Serial1 [100/21594] via 200.101.0.2, 00:00:22,Serial0 C 200.2.0.0/24 is directly connected, Ethernet0
Les deux numros en italique conrment les calculs et la prsence de deux routes pour le rseau 200.1.0.0/24 prouve que le routeur R3 opre un quilibrage de charge pour ce rseau.
150
Ainsi le document en question propose cinq mthodes pour le dcoupage en sous-rseaux, qui sont les suivantes : le champ de taille variable ; le champ de taille xe ; le champ de taille variable auto-encodage ; le champ de taille xe auto-encodage ; et, les bits masqus. Les trois premires mthodes utilisent un nombre xe de bits pour le dcoupage en sousrseaux. La dernire, une fois implmente, prit le nom de masque de sous-rseau. Cest de la troisime dont on va sinspirer pour le VLSM.
REMARQUE
Les mthodes cites ci-dessus ne doivent pas tre confondues avec la division dun espace dadressage en VLSM. Si elles sont mentionnes, bien quelles concernent plus particulirement le dcoupage des sous-rseaux en tant que tel, cest bien parce que lune delles (la troisime) nous servira de modle pour illustrer notre mthode VLSM.
Cette troisime mthode est elle-mme drive de lencodage du rseau classe o les bits de poids fort dterminent la signication des bits de poids faible suivants, comme dans les rseaux de classe A, B, C, etc. Prenons le cas dun rseau de classe B dadresse 172.16.0.0/16 qui comporte deux types de segments : Ethernet et lignes point point HDLC. Le premier doit comporter jusqu 200 htes, et le deuxime en comporte seulement deux. Nous pouvons utiliser le bit de poids le plus fort du troisime octet de chaque adresse pour dsigner soit les segments Ethernet, soit les segments de ligne point point, de la faon suivante : Si le bit de poids le plus fort du troisime octet est 0, le masque par convention sera /24, ce qui engendre 254 htes par sous-rseau, nombre sufsant pour ce qui est des segments Ethernet. Une telle division donnera une srie dadresses allant de 172.16.1.0/24 172.16.127.0/24. Si le bit de poids le plus fort du troisime octet est 1, le masque par convention sera /30, ce qui engendre 2 htes par sous-rseau, exactement ce qui est spci pour les lignes point point. Nous aurons dans ce cas une srie dadresses allant de 172.16.128.4/30 172.16.255.252/30. Mais la mthode quon vient dvoquer nest pas optimale quant lutilisation de lespace dadressage allou. La premire srie attribue 127 sous-rseaux pour les segments Ethernet, tandis que la seconde attribue 8 190 sous-rseaux pour les lignes point point. Si le chiffre 127 peut tre considr comme raliste, 8 190 ne lest certainement pas, surtout compar au premier. Voyons maintenant si au lieu dutiliser un seul bit de poids le plus fort, en utilisant plutt un bloc de bits pour encoder la signication des bits suivants, on amliore un peu la mthode. Pour ce faire, tout le troisime octet sera rserv lencodage ; si tous ses bits sont 0, cela signiera que le masque est /30 ; toute autre disposition de ces mmes bits portera le masque /24. Cette fois-ci, le nombre de sous-rseaux attribus aux segments Ethernet est de 254, et
151
celui attribu aux lignes point point est de 63. Sans tre parfaite dans tous les cas, cette mthode parat meilleure que la premire. En outre, elle utilise ladresse de sous-rseau zro (172.16.0.0/24), ce qui ntait pas le cas pour la premire mthode. Lune ou lautre de ces mthodes peut convenir plus ou moins tel ou tel cas, mais elles sont toutes les deux inadaptes par le ct irrgulier et peu systmatique de leur mise en uvre. Nous allons donc laborer une mthode VLSM de division dun espace dadressage dj dni, en sous-rseaux dont la taille devra satisfaire au nombre dhtes requis sur chaque segment. Cette mthode alloue les adresses de faon trs conomique, avec comme seule restriction, lusage de lidentit de sous-rseau zro, pour viter une complexit inutile. Avant de dcrire la mthode VLSM elle-mme, pour mieux la formaliser, nous allons introduire la terminologie qui suit : Lespace dadressage auquel appartiennent les sous-rseaux allous est dnomm A. Il sagit simplement de la paire prxe rseau/longueur de prxe (ou pour utiliser un terme plus classique, la paire adresse rseau/masque de sous-rseau). Le prxe rseau est dnomm LA. Le symbole S est utilis pour dsigner le masque de sous-rseau. La table 4.3 donne les principales valeurs (longueur de prxe et masque), en tenant compte du nombre dhtes requis. La longueur du masque de sous-rseau S est note LS. En divisant un espace dadressage selon la mthode VLSM, nous devons calculer le nombre de sous-rseaux qui utiliseront ce mme masque S. Ensuite, nous devons dterminer le nombre de bits ncessaires lencodage de chaque sous-rseau qui utilise ce masque. Ce nombre not NS, peut tre obtenu partir de la table 4.4.
Table 4.3. Relation entre longueur de prxe sous-rseau et le nombre dhtes quelle peut contenir.
Nombre dhtes
1 Jusqu 2 Jusqu 6 Jusqu 14 Jusqu 30 Jusqu 62 Jusqu 126 Jusqu 254 Jusqu 510 Jusqu 1022 Jusqu 2046
Masque sous-rseau
255.255.255.255 255.255.255.252 255.255.255.248 255.255.255.240 255.255.255.224 255.255.255.192 255.255.255.128 255.255.255.0 255.255.254.0 255.255.252.0 255.255.248.0
152
Table 4.4. Relation entre le nombre de bits et le nombre de sous-rseaux quil peut contenir.
Nombre maximum de sous-rseaux
3 7 15 31 63 127 255 511 1023
Nombre de bits
2 3 4 5 6 7 8 9 10
Nous pouvons maintenant dnir les tapes suivre pour implmenter cette mthode : 1. Estimation du nombre de sous-rseaux prvoir pour le futur. 2. Estimation du nombre maximum dhtes sur chaque sous-rseau existant et prvoir. Avec ce nombre, dterminer le masque de sous-rseau adquat, en consultant la table 4.3. 3. Pour chaque masque de sous-rseau S, calcul du nombre de sous-rseaux qui lutiliseront. Au moyen de la table 4.4, trouver le nombre minimum de bits (not NS) pour pouvoir numrer tous ces sous-rseaux rattachs au masque S. Sil ny a quun seul sous-rseau pour utiliser un masque donn, NS vaudra 0. 4. Pour calculer le nombre total de bits, dnomm TS, ncessaire chaque groupe de sousrseaux qui utilisent le mme masque, on utilise la formule TS = NS + 32 LS. Si le calcul donne le mme TS pour deux masques diffrents, le NS de lun deux doit tre augment de 1, et ce procd rpt autant de fois quil faudra, an darriver une situation o on na plus de TS de mme valeur. 5. Lingalit max(TS) + 1 32 LA permet de vrier que tous les sous-rseaux rsultants peuvent tre contenus dans lespace dadressage allou A. Sinon celui-ci doit tre tendu par la diminution de LA (longueur de prxe rseau) jusqu ce que la condition soit remplie. 6. Tous les TS doivent tre tris dans lordre dcroissant et placs dans une table, comme celle de la gure 4.11. Les cases en gris sont celles rserves aux htes. Dans chaque range, une double barre verticale spare les cases TS + 1 et TS ; celle-ci est la dernire des cases du groupe de bits du mme nom ; TS + 1 est la case situe juste avant. Cette barre en quelque sorte marque la frontire entre les bits utiliss pour numrer les sous-rseaux de mme masque S, et les bits inutiliss. 7. Pour chaque S, il faut placer 1 dans la case TS + 1, et 0 dans toutes celles qui sont en dessous. Pour chaque case vide devant TS + 1, mettre un 0 comme le montre la gure 4.12. Les ches indiquent la direction de rangement de 0 dans les cases en dessous de TS + 1. 8. Le bloc de bits entre la premire case et TS permet didentier de manire unique, tous les sous-rseaux de mme masque S. Les bits situs entre la case TS + 1 et les cases en gris identient les sous-rseaux individuels. Ces bits peuvent tre attribus de plusieurs faons
153
dont celle qui consiste utiliser une table auxiliaire comme dans la gure 4.13, o chaque range est unique. La combinaison des bits de sous-rseau, les blocs de bits dnis ltape 7 et les bits de lespace dadressage de dpart, avec le masque correspondant, gnrent les adresses de sous-rseau pour tous les segments futurs.
Figure 4.11
TS1
cellule TS1+1
S1 S2 S3
N S1 cellule TS1
32 L S1
SN-1 SN
32 L A
Figure 4.12
TS1
cellule TS1+1
S1 S2 S3
0 0 0 1 0 0 1
Rsultats de ltape 7.
N S1 cellule TS1
32 L S1
SN-1 SN
0 0
0 0
0 0
1 0 0 1
32 L A
Figure 4.13
0 1 1 0
1 0 1 0
REMARQUE
Les deux dernires ranges de la table de la gure 4.12 montrent deux cas particuliers o dans le premier, le masque SN-1 nest utilis que par un seul sous-rseau ; le Ns correspondant ce masque vaut donc zro. Dans le second cas, le masque SN vaut /32, et de ce fait, nayant pas dhtes, la range correspondant ce masque na aucune case grise.
154
Cette procdure peut paratre complique, mais elle ne lest pas tellement. Pour bien comprendre son fonctionnement, prenons lexemple du rseau de la gure 4.14.
Figure 4.14
Segment 4 50 htes
Br1
R4 R2
Br3
R6
Rseau Frame Relay 4 htes
Br5
R1
Liaison point point 2 Segment 8 100 htes
Sige central
R3
R8
R5
Segment 3 200 htes Segment 5 50 htes Segment 7 100 htes
R7
Br2
Br4
Une entreprise XYZ possde un sige central reli cinq branches, tous logs dans des btiments spars avec une infrastructure rseau qui leur est propre. Celui du sige central comprend un anneau FDDI et deux segments Ethernet. Chaque branche comprend un segment Ethernet. La gure 4.14 montre le nombre maximum dhtes par segment. Supposons pour simplier, que le rseau vient dtre install et que lespace dadressage dni par 200.170.176.0/20 na pas encore t implment. Nous allons donc mettre en pratique les tapes dnies prcdemment. Premire tape Lextension future du rseau prvoit le plan dactions suivant : Ajouter au sige central trois segments Ethernet, chacun avec 200 htes maximum. Relier par le Frame Relay au sige central sept branches de plus, chacune avec un segment Ethernet de 100 htes. Relier par liaisons point point au sige central quatre branches supplmentaires, chacune avec un segment Ethernet de 50 htes maximum. En conformit avec la politique de la Direction des systmes dinformation (DSI) de lentreprise, prvoir une adresse IP individuelle par routeur, pour un total de 60 ne pas dpasser.
155
Deuxime tape Linfrastructure rseau de lentreprise comprend sept catgories de segments qui sont rpertories dans la table 4.5 avec le nombre maximum dhtes prvu pour chacun.
Table 4.5. Types de segments rseau de lentreprise XYZ dont les noms abrgs sont entre parenthses.
Type de rseau
FDDI Ethernet grand (Eg) Ethernet moyen (Em) Ethernet petit (Ep) Frame Relay (Fr) Lignes point point (PP) Adresses IP individuelles (I)
Troisime tape Les donnes de ltape 2 sont compltes dans la table 4.6, en y incluant les informations sur les masques de sous-rseaux et le nombre de segments par catgorie.
Table 4.6. Rsultats de ltape 3.
Type de rseau
FDDI Eg Em Ep Fr PP I
Nombre dhtes
800 200 100 50 10 2 1
Masque de sous-rseau
/22 /24 /25 /26 /28 /30 /32
Nombres de segments
1 5 10 6 1 6 60
32 - LS
10 8 7 6 4 2 0
Ns
0 3 4 3 0 4 6
Quatrime tape Toutes les valeurs de TS sont calcules et les rsultats se trouvent dans la table 4.7. Dans cette table on constate aux lignes 2, 3 et 6, 7, que les TS ont la mme valeur (chiffres TS en gras). Selon notre mthode, pour rsoudre ce conit, nous pouvons augmenter de 1, par exemple le NS des lignes 2 et 7.
156
Table 4.7. Valeurs des TS incluses, avec deux conits en lignes 2,3 et 6,7.
Type de rseau
FDDI Ethernet Ethernet Ethernet FR Point Point I
Nombre dhtes
800 200 100 50 10 2 1
Masque de sous-rseau
/22 /24 /25 /26 /28 /30 /32
Nombre de segments
1 5 10 6 1 6 60
32 LS
10 8 7 6 4 2 0
NS
0 3 4 3 0 4 6
TS
10 11 11 9 4 6 6
La table 4.8 afche les rsultats aprs cette modication (chiffres NS en gras).
Table 4.8. Rsolution des ambiguts. Les nombres en gras montrent les valeurs modies.
Type de rseau
FDDI Ethernet Ethernet Ethernet FR Point Point I
Nombre dhtes
800 200 100 50 10 2 1
Masque de sous-rseau
/22 /24 /25 /26 /28 /30 /32
Nombre de segments
1 5 10 6 1 6 60
32 LS
10 8 7 6 4 2 0
NS
0 4 4 3 0 4 7
TS
10 12 11 9 4 6 7
Cinquime tape Vrions maintenant si lespace dadressage allou est sufsant pour contenir tous les sousrseaux. En appliquant lingalit de ltape 5, le max(TS) + 1 est gal 13 ; et 32 LA est gal 12. La condition ntant pas remplie, le LA doit tre diminu de 1, ce qui donne le nouvel espace dadressage de 200.170.160.0/19, avec les deux membres de lingalit qui valent maintenant 13. Sixime tape Les rsultats de ltape 4, tris par ordre dcroissant de TS, se trouvent sur la gure 4.15.
Figure 4.15
/ / / / / / /
24 25 22 26 32 30 28
157
Septime tape Entre la premire case et TS, toutes les cases intermdiaires ont t remplies avec la valeur du bit approprie, comme le montre la gure 4.16.
Figure 4.16
/ / / / / / /
24 25 22 26 32 30 28
1 0 0 0 0 0 0
1 0 0 0 0 0
1 0 0 0 0
1 0 0 0
0 0 0
1 0 0
1 0
Huitime tape Tous les sous-rseaux sont numrs en utilisant le bloc de bits qui leur a t attribu, et les adresses qui en sont drives, sont ranges dans la gure 4.17.
Figure 4.17
/ 24
Segment 2 Segment 3
/ 25
Segment 6 Segment 7 Segment 8
/ 22
Segment 1
/ 26
Segment 4 Segment 5
/ 32
Routeur R1 Routeur R2 Routeur R3 Routeur R4 Routeur R5 Routeur R6 Routeur R7 Routeur R8
/ 30
Liaison P2P 1 Liaison P2P 2
/ 28
Rseau F/R
1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0
1 0 0 1 1 1 0 1
1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0
200.170.162.64/26 200.170.162.128/26 200.170.160.129/32 200.170.160.130/32 200.170.160.131/32 200.170.160.132/32 200.170.160.133/32 200.170.160.134/32 200.170.160.135/32 200.170.160.136/32 200.170.160.68/30 200.170.160.72/30 200.170.160.16/28
Conguration de RIP version 2 Le protocole RIP version 2 nest pas vraiment un protocole part, mais plutt une version amliore de RIP version 1. Il possde une nouvelle fonction importante qui permet denvoyer les prxes rseau en mme temps que leurs longueurs (ou masques) dans les mises jour de
158
routage une adresse multicast (224.0.0.9), la place de ladresse de diffusion gnrale (255.255.255.255). Pour mettre en vidence le caractre sans classe de RIP version 2, apportons les modications ncessaires au rseau (cf. gure 4.5) que nous avons utilis pour la version 1. Ce rseau modi est illustr sur la gure 4.18. Appliquons maintenant la mthode VLSM pour dnir les adresses IP attribuer pour chaque segment du rseau 10.0.0.0, en suivant les mmes tapes que dans le cas prcdent : Nous navons aucune prvision concernant lextension future de ce rseau, nest-ce pas ? Passons donc ltape suivante.
Figure 4.18
e0
e0
R1
s1 s0
Segment 3, 2 htes Rseau 10.0.0.0
R2
s1 s0
Segment 4, 2 htes Rseau 10.0.0.0
R3
to0
Segment 5, 200 htes Rseau 200.5.0.0
to0
R4
e0
Segment 6, 200 htes Rseau 200.6.0.0
Les segments rseau sont en fait rduits quatre, avec en plus les trois adresses individuelles des routeurs. Les rsultats de cette tape se trouvent dans la table 4.9. laide des tables 4.3, 4.4 et 4.9, nous pouvons dduire toutes les valeurs ncessaires de tous les segments du rseau, telles quelles gurent dans la table 4.10. Le calcul des TS pour chaque masque de sous-rseau donne les valeurs de la table 4.11. Comme il nest constat aucun conit dgalit de valeur parmi ces TS, nous pouvons passer ltape 5. Lespace dadressage tout entier du rseau 10.0.0.0 a t allou, dont la longueur de prxe est 8. Le max(TS) + 1, dans notre cas vaut 7 + 1 = 8, qui est infrieur 32 LA, qui vaut 24 ; la condition dingalit est donc remplie.
159
6, 7 et 8. Vu le faible nombre de segments, nous pouvons combiner les trois dernires tapes en une seule, dont les rsultats se trouvent sur la gure 4.19.
Table 4.9. Types de segments rseau selon la gure 4.18.
Type de rseau
Segment 2 (Eg) Segment 1 (Ep) Segments 3 et 4 (PP) Adresses IP individuelles (I)
Figure 4.19
/ 25
Segment 2
/ 26
Segment 1
/ 30
Segment 3 Segment 4
/ 32
routeur R1 routeur R2 routeur R3
1 1 0 0 0 0 0 0 0 0 0
Nombre dhtes
100 50 2 3
Masque de sous-rseau
/25 /26 /30 /32
Nombre de segments
1 1 2 3
32 LS
7 6 2 0
NS
0 0 2 2
Nombre dhtes
100 50 2 3
Masque de sous-rseau
/25 /26 /30 /32
Nombre de segments
1 1 2 3
32 LS
7 6 2 0
NS
0 0 2 2
TS
7 6 4 2
Les adresses IP du rseau tant dnies, nous pouvons maintenant procder la conguration des routeurs selon les listings 4.64 4.67.
160
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.0.0.65 255.255.255.192 interface Serial0 ip address 10.0.0.21 255.255.255.252 router rip version 2 network 10.0.0.0
Listing 4.65. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.6 255.255.255.255 ! interface Ethernet0 ip address 10.0.0.129 255.255.255.128 interface Serial1 ip address 10.0.0.25 255.255.255.252 router rip version 2 network 10.0.0.0
Listing 4.66. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.26 255.255.255.252 interface Serial1 ip address 10.0.0.22 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip version 2 network 10.0.0.0 network 200.5.0.0
Listing 4.67. Conguration du routeur R4.
161
ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip version 2 network 200.5.0.0 network 200.6.0.0
Le listing 4.68 donne la sortie de la table de routage du routeur R1. Nous pouvons y voir tous les sous-rseaux congurs avec le bon masque. Mais la table de routage du routeur R4 sur le listing 4.69 donne un aperu du rseau qui est diffrent.
Listing 4.68. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks R 10.0.0.6/32 [120/2] via 10.0.0.22, 00:00:01, Serial0 R 10.0.0.7/32 [120/1] via 10.0.0.22, 00:00:01, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 R 10.0.0.24/30 [120/1] via 10.0.0.22, 00:00:01, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 R 10.0.0.128/25 [120/2] via 10.0.0.22, 00:00:01, Serial0 R 200.5.0.0/24 [120/1] via 10.0.0.22, 00:00:01, Serial0 R 200.6.0.0/24 [120/2] via 10.0.0.22, 00:00:01, Serial0
Listing 4.69. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 10.0.0.0/8 [120/1] via 200.5.0.1, 00:00:03, TokenRing0
Tout en fonctionnant sous un protocole sans classe, le routeur R3 pratique nanmoins lagrgation des routes en nannonant que le prxe rseau lors de lenvoi de la mise jour de routage le concernant via linterface Token Ring dont ladresse IP nappartient pas ce prxe rseau, comme le met en vidence le listing 4.69 de la table de routage du routeur R4. Dsactivation de lauto-agrgation dans RIP version 2 Les deux versions de RIP pratiquent lauto-agrgation par dfaut, mais on peut la dsactiver dans la version 2.
REMARQUE
La version 1 de RIP est un protocole de routage classe, ce qui loblige pratiquer lauto-agrgation ; la version 2 qui est sans classe peut, quant elle, dpasser certaines restrictions telle que lauto-agrgation.
tant un protocole sans classe, le RIP version 2 peut envoyer les prxes sous-rseau en mme temps que leurs longueurs (ou masques) dans ses mises jour de routage. Ce qui lui permet dannoncer les sous-rseaux via une interface dont ladresse IP nappartient pas au mme prxe rseau que ceux-ci.
162
Pour permettre RIP en version 2 denvoyer les mises jour sans tenir compte du prxe rseau auquel appartient linterface de sortie, il faut dsactiver lauto-agrgation par la commande no auto-summary en mode de conguration routeur (router rip). Observons ce qui se passe si cette commande est entre sur le routeur R3 de la section prcdente. Nous constatons dans la table de routage du routeur R4 que celui-ci reoit bien la mise jour complte de tous les sous-rseaux ayant pour prxe 10.0.0.0 (cf. listing 4.70). Le routeur R3 ne pratique donc plus lauto-agrgation.
Listing 4.70. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks R 10.0.0.6/32 [120/2] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.7/32 [120/1] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.5/32 [120/2] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.24/30 [120/1] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.20/30 [120/1] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.64/26 [120/2] via 200.5.0.1, 00:00:05, TokenRing0 R 10.0.0.128/25 [120/2] via 200.5.0.1, 00:00:05,TokenRing0
Nous pouvons signaler en passant, que RIP version 2 peut aussi annoncer des super-rseaux qui seront traits au chapitre 6. Utilisation simultane de RIP en version 1 et 2 Limplmentation de RIP dans le systme IOS de Cisco permet lutilisation simultane des deux versions 1 et 2. En outre, cela peut se faire interface par interface. Deux commandes sont disponibles pour mettre en uvre cette fonction. La premire concerne lenvoi des mises jour selon la version dsire, par ip send version {1|2} ; la deuxime concerne leur rception selon la version, par la commande ip receive version {1|2}. Ces deux commandes doivent tre entres en mode de conguration interface.
REMARQUE
La commande pour grer les versions RIP a pour format complet ip rip version {1|2} [{1|2}], ce qui permet dutiliser les deux versions de RIP simultanment sur une interface si on la congure en renseignant le paramtre en option. Cette dernire doit tre utilise avec prcaution car le routeur congur sur une interface avec les deux versions simultanment doit envoyer sa mise jour pour chacune delles, ce qui double son travail.
Quelle que soit la version (1 par dfaut) active de RIP sous le mode de conguration routeur par router rip ou suivie de version pour passer 2, les deux commandes ip send/receive priment sur les interfaces o elles ont t introduites. Nous allons modier la conguration du routeur R4 dans lexemple consacr RIP version 2 pour le faire passer 1, et nous allons faire en sorte que le routeur R3 tourne sous les deux versions en mme temps. Pour ce dernier, seule linterface Token Ring sera congure pour envoyer et recevoir les mises jour en RIP version 1, les autres restant en version 2. Les modications apporter au routeur R3 se trouvent sur le listing 4.71.
Routage dynamique : protocoles vecteur de distance CHAPITRE 4 Listing 4.71. Conguration du routeur R3.
163
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.26 255.255.255.252 interface Serial1 ip address 10.0.0.22 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ip rip send version 1 ip rip receive version 1 ring-speed 16 router rip version 2 network 10.0.0.0 network 200.5.0.0
Le listing 4.72 de la table de routage R4, montre un envoi de mise jour provenant du routeur R3, qui ne comporte que le prxe rseau 10.0.0.0. Ce qui prouve que ce dernier tourne en RIP version 1 pour son interface Token Ring.
Listing 4.72. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 10.0.0.0/8 [120/1] via 200.5.0.1, 00:00:02, TokenRing0
Conguration de EIGRP Le protocole de routage EIGRP est plus able que les protocoles vecteur de distance. Dans le cadre de cet ouvrage, sans en donner une couverture complte, nous nous limiterons ses caractristiques essentielles. Contrairement RIP version 2 qui est une amlioration de RIP version 1, EIGRP est un protocole intermdiaire entre les protocoles lmentaires vecteur de distance et ceux, plus labors, tat des liens. EIGRP fait des emprunts ces deux catgories. Il est donc bien plus quune amlioration (Enhanced IGRP) par rapport IGRP. Il nenvoie pas de mises jour rgulires comme les protocoles vecteur de distance, mais change des messages de salut (hello) avec ses voisins pour connatre leur existence et savoir sils sont toujours actifs. Les mises jour sont envoyes par EIGRP uniquement dans le cas dvnements qui modient la topologie du rseau. Par exemple, si lune des interfaces dun routeur tombe en panne ou si celui-ci manque trois messages hello conscutifs dun de ses voisins, dclar de ce fait indisponible. Tout changement de topologie entrane le droulement dun algorithme spcial dit de diffusion de mise jour ou DUAL (Diffusing Update ALgorithm) qui permet de passer par des chemins de secours (conservs en rserve) pour les prxes rseau affects. Cet algorithme
164
permet de rduire le temps de convergence qui passe ainsi de quelques minutes pour RIP et IGRP quelques dizaines de secondes seulement pour EIGRP. Le protocole EIGRP utilise aussi certaines des techniques des protocoles vecteur de distance telles que le clivage dhorizon, le temporisateur de maintien de route et les mises jour dclenches. La conguration de base de EIGRP, malgr son caractre de protocole sans classe, est la mme que celle de IGRP. Tout comme pour ce dernier, la commande network ne permet dassigner aux processus de routage, que les prxes rseau auxquels appartiennent les adresses IP des interfaces du routeur, sans quon puisse y prciser les sous-rseaux. Les commandes neighbor, distance et passive-interface sont galement disponibles avec les mmes fonctionnalits que dans RIP et IGRP. Prenons un cas pratique pour illustrer le fonctionnement de EIGRP. Pour ce faire, nous allons utiliser le mme schma de rseau que pour RIP version 2 de la gure 4.18. Les deux protocoles tant sans classe, nous pouvons conserver le mme adressage. Les congurations respectives des routeurs R1, R2, R3 et R4 se trouvent sur les listings de 4.73 4.76.
Listing 4.73. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.0.0.65 255.255.255.192 interface Serial0 ip address 10.0.0.21 255.255.255.252 router eigrp 15 network 10.0.0.0
Listing 4.74. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.6 255.255.255.255 interface Ethernet0 ip address 10.0.0.129 255.255.255.128 interface Serial1 ip address 10.0.0.25 255.255.255.252 router eigrp 15 network 10.0.0.0
Listing 4.75. Conguration du routeur R3.
165
ip address 10.0.0.26 255.255.255.252 interface Serial1 ip address 10.0.0.22 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router eigrp 15 network 10.0.0.0 network 200.5.0.0
Listing 4.76. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router eigrp 15 network 200.5.0.0 network 200.6.0.0
Les listings 4.77 et 4.78 montrent les tables de routage des routeurs R1 et R4.
Listing 4.77. Table de routage du routeur R1 avec prsence de routes apprises via EIGRP.
R1#show ip route ... 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks D 10.0.0.6/32 [90/2809856] via 10.0.0.22, 00:03:52, Serial0 D 10.0.0.7/32 [90/2297856] via 10.0.0.22, 00:03:52, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 D 10.0.0.24/30 [90/2681856] via 10.0.0.22, 00:03:52, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 D 10.0.0.128/25 [90/2707456] via 10.0.0.22, 00:03:52,Serial0 D 200.5.0.0/24 [90/2185984] via 10.0.0.22, 00:03:52, Serial0 D 200.6.0.0/24 [90/2211584] via 10.0.0.22, 00:03:34, Serial0
Listing 4.78. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 D 10.0.0.0/8 [90/304128] via 200.5.0.1, 00:08:18, TokenRing0
166
Ces deux tables de routage ressemblent celles quon avait dj vues dans le cas de RIP version 2. Pas de surprise donc. La seule diffrence quon peut y constater, cest le changement de code pour les routes apprises en dynamique, qui devient D pour EIGRP au lieu de R pour RIP. EIGRP et sa mtrique La mtrique calcule par EIGRP est base sur la mme formule que celle de IGRP, avec une multiplication du rsultat par 256, ce qui donne : MEIGRP = MIGRP 256 Pour dsactiver la fonction dauto-agrgation on procde de la mme faon que pour RIP, par la commande no auto-summary en mode de conguration routeur, pour empcher le protocole dagrger les routes sur une frontire de classe en nannonant que le prxe rseau. Si nous entrons cette commande sur le routeur R3 sous router eigrp 15 et si nous examinons la table de routage du routeur R4, nous verrons le contenu du listing 4.79 qui montre que ce routeur voit les mmes routes que le routeur R1.
Listing 4.79. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected,TokenRing0 C 200.6.0.0/24 is directly connected,Ethernet0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks D 10.0.0.6/32 [90/231984] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.7/32 [90/304128] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.5/32 [90/231984] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.24/30 [90/218984] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.20/30 [90/218984] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.64/26 [90/221584] via 200.5.0.1,00:00:02,TokenRing0 D 10.0.0.128/25 [90/221584]via 200.5.0.1,00:00:02,TokenRing0
Conguration de lagrgation de route avec EIGRP Une commande particulirement utile dans EIGRP est lagrgation manuelle de route que lon introduit par ip summary-address eigrp <numro de systme autonome> <adresse IP/ masque de sous-rseau> en mode de conguration dinterface. Le routeur cesse denvoyer les mises jour de routage normales et diffuse leur place, ladresse agrge qui est renseign en deuxime paramtre. Par exemple, procdons au changement des adresses sur les routeurs R1, R2 et R3 de la gure 4.80, en substituant au rseau 10.0.0.X celui de 210.0.0.X. Modions ensuite la conguration du routeur R3 comme indiqu en italique sur le listing 4.80.
Listing 4.80. Conguration du routeur R3.
interface Loopback0 ip address 210.0.0.7 255.255.255.255 interface Serial0 ip address 210.0.0.26 255.255.255.252
167
interface Serial1 ip address 210.0.0.22 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ip summary-address eigrp 15 210.0.0.0 255.255.0.0 ring-speed 16 router eigrp 15 network 200.5.0.0 network 210.0.0.0
La table de routage du routeur R4 (cf. listing 4.81) conrme que le routeur R3 effectue lagrgation manuelle de route lors de lenvoi des mises jour EIGRP via linterface de Token Ring 0.
Listing 4.81. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 D 210.0.0.0/16 [90/304128] via 200.5.0.1,00:01:18,TokenRing0
ASTUCE
Il est conseill daccompagner la commande dagrgation manuelle de route par celle de ip classless.
Si nous examinons maintenant la table de routage du routeur R3, nous y verrons comme sur le listing 4.82, en plus des autres mises jour de routage (non reprsentes), lagrgation telle quelle est diffuse.
Listing 4.82. Agrgation de route par EIGRP dans la table de routage du routeur R3.
La premire chose que lon peut noter, cest que la route pointe sur une interface nulle, cest-dire que les paquets qui lui sont destins seront mis au rebut. Nous devons nous rappeler cependant que le routeur, quand il consulte la table de routage, cherche la correspondance la plus longue pour une destination donne. Ce qui va lamener utiliser une route au prxe plus long que celle qui pointe vers linterface Null, faisant de cette dernire, une candidate parfaite lagrgation. Les paquets dont la destination na aucune correspondance plus longue seront donc mis au rebut vitant ainsi de saturer le rseau. Lagrgation de route permet nanmoins au routeur de lannoncer dans ses mises jour en utilisant le protocole qui la install dans la table de routage. Conguration de EIGRP sur un rseau Frame Relay non intgralement maill Comme nous lavons vu auparavant, le protocole RIP utilis sur un rseau Frame Relay non intgralement maill peut avoir un comportement imprvisible d la dsactivation par dfaut du clivage dhorizon. Le protocole EIGRP se comporte diffremment en masquant mutuellement les rseaux de routeurs non connects via des CVP.
168
Pour une raison inconnue Cisco a dcid quil ntait pas utile de dsactiver par dfaut le clivage dhorizon sur les interfaces congures en Frame Relay. La commande qui permet de dsactiver cette fonction a un format (diffrent de celui de RIP) qui est no ip split-horizon eigrp <numro de systme autonome>. Nous allons prendre le mme schma de rseau que pour RIP qui se trouve la gure 4.10, en changeant le protocole EIGRP. Les listings 4.83 4.85 montrent les nouvelles congurations des routeurs.
Listing 4.83. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.200.0.1 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.2 102 broadcast frame-relay map ip 200.200.0.3 103 broadcast frame-relay lmi-type ansi router eigrp 15 network 200.1.0.0 network 200.200.0.0
Listing 4.84. Conguration du routeur R2.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.200.0.2 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.1 201 broadcast frame-relay lmi-type ansi router eigrp 15 network 200.2.0.0 network 200.200.0.0
Listing 4.85. Conguration du routeur R3.
interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.200.0.3 255.255.255.0 encapsulation frame-relay frame-relay map ip 200.200.0.1 301 broadcast frame-relay lmi-type ansi router eigrp 15 network 200.3.0.0 network 200.200.0.0
169
La sortie de la table de routage du routeur R2 sur le listing 4.86 conrme ce quon attendait : la rgle du clivage dhorizon applique sur les lignes srie congures en Frame Relay du routeur R1 lempche de voir le segment 3 du routeur R3. Dsactivons la fonction de clivage dhorizon sur le routeur R1 par la commande no ip splithorizon eigrp 15 en mode de conguration interface ligne srie 1 pour voir si les choses changent (cf. listing 4.87). La table de routage du routeur R2 sur le listing 4.88 afche maintenant le segment 3 du routeur R3 qui tait masqu auparavant.
Listing 4.86. Table de routage du routeur R2.
R2#show ip route ... C 200.200.0.0/24 is directly connected, Serial0 D 200.1.0.0/24 [90/2195456] via 200.200.0.1,00:06:24,Serial0 C 200.2.0.0/24 is directly connected, Ethernet0
Listing 4.87. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.200.0.1 255.255.255.0 encapsulation frame-relay no ip split-horizon eigrp 15 frame-relay map ip 200.200.0.2 102 broadcast frame-relay map ip 200.200.0.3 103 broadcast frame-relay lmi-type ansi router eigrp 15 network 200.1.0.0 network 200.200.0.0
Listing 4.88. Table de routage du routeur R1.
R2#show ip route ... C 200.200.0.0/24 is directly connected, Serial0 D 200.1.0.0/24 [90/2195456] via 200.200.0.1,00:01:09,Serial0 C 200.2.0.0/24 is directly connected, Ethernet0 D 200.3.0.0/24 [90/2707456] via 200.200.0.1,00:00:14,Serial0
5
Routage dynamique : protocoles tat des liens
Solutions de conguration prsentes dans ce chapitre Congurer OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . avec aire unique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en tenant compte de son cot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . avec aires multiples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . avec annonce de la route par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . et consulter sa base de donnes dtat des liens . . . . . . . . . . . . . . . . . . . . . . . . . avec aires connes (stub areas) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . avec liaisons virtuelles pour restaurer un rseau dorsal sectionn . . . . . . . . . . . avec liaisons virtuelles pour relier des aires isoles . . . . . . . . . . . . . . . . . . . . . . sur rseaux NBMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - intgralement maills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - non intgralement maills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 178 182 182 186 187 188 191 199 203 203 210
Les protocoles tat des liens appartiennent une catgorie bien part, base sur des algorithmes de routage dynamique totalement diffrents de ceux des protocoles vecteur de distance. Contrairement ces derniers, les protocoles tat des liens sont compltement informs de la topologie de la partie (ou mme de la totalit, sil ny a pas dcoupage logique) du rseau sur lequel ils oprent.
172
Les protocoles tat des liens sont implments dans le systme IOS de Cisco selon deux normes diffrentes, dune part avec le protocole dit douverture prioritaire du plus court chemin ou OSPF (Open Shortest Path First) dni par lorganisme Internet, et dautre part le protocole dit de systme intermdiaire systme intermdiaire ou IS-IS (Intermediate System to Intermediate System) de lISO. Le protocole OSPF est dcrit dans la RFC 2328. Depuis son introduction, OSPF est devenu le plus rpandu des protocoles de routage dynamique. Plusieurs raisons expliquent ce succs, parmi lesquelles un temps de convergence rapide, une capacit sadapter des rseaux de grande dimension et le fait quil sagisse dune norme ouverte. Le protocole IS-IS, bien que possdant toutes ces qualits, est rarement utilis ; nous ne traiterons dans cet ouvrage que du premier.
Protocole OSPF
Dans les sections suivantes, on ne donne quun aperu succinct du protocole OSPF et des principes de base qui le rgissent. Sagissant dun sujet trs vaste, son traitement complet sortirait du cadre de cet ouvrage. Pour lapprofondir, le meilleur moyen est de se reporter la RFC 2328 intitule OSPF version 2 .
REMARQUE
La RFC 2328 nest malheureusement disponible que sous forme textuelle. Or la comprhension du protocole OSPF est grandement facilite par les schmas graphiques. Les nombreux schmas disponibles (en format Postscript) dans la RFC 1583, ancienne version dOSPF, restant valables pour la RFC 2328 ; il est recommand de sy rfrer.
Aperu du protocole
tant un protocole tat des liens, OSPF possde une vision complte soit de la topologie du rseau entier, soit dune partie spcique appele aire OSPF . Bien videmment, la table de routage elle seule ne peut apporter cette connaissance ; le protocole doit donc tenir jour un ensemble dinformations appel base de donnes dtat des liens ou LSD (Link State Database) qui sert alimenter la table de routage. La structure de la LSD est conue pour stocker les informations de topologie tandis que celle de la table de routage facilite la recherche dadresses IP. Pour remplir cette table, les informations de la LSD sont dabord converties par lalgorithme de Dijkstra dcrit dans la section suivante. Cet algorithme sexcute chaque changement intervenu dans la LSD pour remettre jour la table de routage. Les informations de topologie stockes dans la LSD doivent tre transmises tous les routeurs qui participent au protocole de routage OSPF. La procdure de communication est la suivante : 1. Les routeurs OSPF utilisent un protocole de communication appele OSPF Hello , dabord pour se dcouvrir mutuellement et ensuite pour maintenir ltat de leurs liens par une surveillance rciproque. 2. Deux routeurs impliqus dans une dcouverte synchronisent leur LSD en liminant les incohrences quelles peuvent contenir de faon disposer en permanence de donnes jour. Pour un routeur qui dmarre, cette procdure permet dtre inform rapidement de la topologie courante.
173
3. Le routeur OSPF annonce la partie du rseau laquelle il est directement connect, intervalles rguliers (prdni 30 minutes), envers tous ses voisins de proximit (adjacent neighbors) (cette notion sera explicite dans la section sur les types de rseau OSPF). Ces voisins de proximit propagent leur tour les annonces reues vers leur propres voisins de proximit, et ainsi de suite. Cest ainsi que la topologie du rseau entier est porte la connaissance de tous les routeurs. 4. En sus de ces annonces rgulires, les routeurs se communiquent ponctuellement les changements ds quils surviennent. Le protocole OSPF est vritablement sans classe (classless), cest--dire quil ne prjuge pas de la classe (A, B ou C) laquelle peut appartenir une adresse IP ou le masque de sous-rseau qui lui est dvolu par dfaut. Pour nir, sachons que chaque routeur OSPF est identi par un numro unique (OSPF router ID ou simplement router ID). Si le systme autonome OSPF comprend plusieurs aires de routage (dcrites dans la section modle de routage hirarchique ), chacune delles sera de mme identie par un numro daire (area ID).
Il est important de prciser que dans les itrations successives, la distance dont il est question est la distance au nud racine et non au nud source.
174
La version tendue de lalgorithme de Dijkstra utilise dans le protocole OSPF (ou dans les protocoles dtat des liens) consiste calculer le plus court chemin pour tous les nuds du graphe vers les autres nuds. Pour mieux comprendre le mcanisme de lalgorithme, prenons lexemple du graphe illustr sur la gure 5.1. Les nuds sont reprsents par des cercles numrots. Les arcs sont reprsents par des lignes, chacune avec le poids associ.
Figure 5.1
80
50
50
3 30 5
La gure 5.2 droule les tapes de lalgorithme. Les nuds qui sont rangs dans la CSP sont relis par des lignes en pointill, tandis que ceux qui viennent dtre rangs dans la SP le sont par des lignes continues. Le chiffre voisin de chaque nud correspond la distance au nud source. Des dmonstrations animes peuvent tre visualises sur le web par lexcution interactive de lalgorithme de Dijkstra, soit pas pas soit en squence continue. Les paramtres tels que le nombre de nuds, la charge des arcs que comporte un chemin peuvent tre modis chaque excution de cet algorithme. Lun de ces logiciels de dmonstration se trouve implment sous forme dapplet Java et accessible sur le site http://carnap.ss.uci.edu/java/dijkstra/DijkstraApplet.html.
90
30
175
1
50
1
50
2
50
Longueur : 50
1
50
Longueur : 50
: 3 Longueur 50
Longueur : 50
Longueur : 130
3
50
1
50
4
50
Longueur : 50
80
1
50
Longueur : 50
Longueur : 50
2
90
3
30
Longueur : 50
2
90
3
30
80
80
Longueur : 130
Longueur : 140
5
Longueur : 80
Longueur : 140
5
30
Longueur : 80
5
50
Longueur : 50
1
50
Longueur : 50
2
90
3
30
80
Longueur : 130
Longueur : 140
5
30
Longueur: 80
Longueur : 110
Figure 5.2
Droulement de lalgorithme de Dijkstra pour le calcul du plus court chemin de chaque nud du graphe.
176
devient larc du graphe. Comme le nud rseau reprsentant le support physique ne peut pas participer activement au routage OSPF, lun des routeurs se substitue lui. Ce routeur prend le nom de routeur dsign ou DR (Designated Router). La spcication de OSPF prvoit galement un routeur de secours appel routeur dsign supplant ou BDR (Backup Designated Router). Les rseaux NBMA peuvent tre reprsents soit comme une liaison accs multiples (similaire au LAN) si tous les routeurs sont relis deux deux (rseaux intgralement maills), soit comme plusieurs liaisons point point (rseaux non intgralement maills). La gure 5.3 illustre les diffrentes reprsentations logiques des rseaux physiques tels quils sont traduits dans OSPF, o les lettres R et N (Network) se rapportent aux nuds routeur et rseau respectivement.
Figure 5.3
R R Rseau accs multiple non diffus ou NBMA (Non Broadcast Multiple Access)
Le fonctionnement de OSPF ncessite que les routeurs forment une relation particulire appele proximit (adjacency). Pour en faire une reprsentation logique, on relie par un arc du graphe les deux nuds que sont les routeurs. OSPF applique les rgles suivantes la cration dune relation de proximit : Seuls deux routeurs directement connects peuvent former une proximit. Dans le cas de deux routeurs relis en point point, ceux-ci sont toujours proximit. Dans le cas des rseaux accs multiple, chaque routeur forme une proximit avec aussi bien le routeur dsign que son supplant. La relation de proximit est utilise dans OSPF pour propager les informations de topologie tout le systme autonome.
177
Les LSA
Le protocole OSPF annonce les informations de topologie par des donnes structures appeles LSA (Link State Advertisement) qui constituent des enregistrements dans sa base de donnes spcique appele LSD (Link State Database). Les LSA contiennent des informations sur ltat local dun routeur ou du rseau. Dans le cas dun routeur il peut sagir par exemple de ltat de ses interfaces ou de celui de ses voisins. Les LSA sont gnres par les routeurs OSPF et propages sur tous leurs voisins, sauf celui lorigine de ces LSA. Si cest le routeur lui-mme qui est lorigine dune LSA, il la propage sur tous ses voisins.
178
Tous les routeurs OSPF ne gnrent pas tous les types de LSA. Le tableau 5.1 dresse la liste de qui gnre quoi.
Tableau 5.1. Types de LSA gnres par les routeurs OSPF.
Type de LSA
Type 1 Type 2 Type 3
Nom de LSA
Router-LSA Network-LSA Summary-LSA
Description
Gnre par tous les routeurs. Dcrit ltat des interfaces du routeur dans laire. Arrose uniquement sur toute laire correspondante. Gnre pour les rseaux accs multiple et NBMA uniquement par les routeurs dsigns respectifs. Arrose uniquement sur toute laire correspondante. Gnre par les ABR uniquement. Dcrit les routes vers les destinations situes en dehors de laire, mais lintrieur du systme autonome (par exemple une route agrge pour une autre aire). Arrose sur toute laire uniquement. Gnre par les ABR uniquement. Dcrit les routes vers les ASBR situs en dehors de laire. Arrose sur toute laire uniquement. Gnre par les ASBR uniquement. Dcrit les routes externes qui peuvent tre utilises comme routes par dfaut. Arrose sur tout le systme autonome.
Type 4 Type 5
Summary-LSA AS-external-LSA
Pour rcapituler les informations du tableau 5.1, nous pouvons dire que les router-LSA et les network-LSA dcrivent les interconnexions entre routeurs et rseaux lintrieur dune aire, que les summary-LSA dcrivent les routes inter-aire, et que les AS-external-LSA dcrivent les routes externes injectes dans le systme autonome.
Solutions de conguration
Conguration de OSPF avec aire unique
Pour congurer OSPF avec une aire unique, nous devons suivre les tapes suivantes qui sont assez simples : 1. Crer une identit OSPF (OSPF ID) par la conguration dune interface en rebouclage (loopback) et lui assigner une adresse IP.
REMARQUE
Cette tape est facultative, bien que recommande. Si lidentit OSPF nest pas prcise, le routeur prend comme telle, ladresse IP la plus leve parmi celles congures sur les interfaces actives. Si cette interface tombe en panne, elle sera remplace par ladresse IP la plus leve parmi les interfaces restantes. Mais si des interfaces sont congures en rebouclage, cest ladresse IP la plus haute de ces interfaces qui est prise pour lidentit OSPF. Lavantage de linterface de rebouclage, cest quelle est interne au routeur, et vu son caractre logique, ne peut jamais tomber en panne. Si la commande de cration de linterface en rebouclage est omise lors de la conguration de OSPF, et quelle est introduite par la suite, le routeur ne basculera pas lidentit OSPF sur ladresse IP de cette interface. Un basculement de lidentit OSPF sur une interface de rebouclage cre aprs coup ne peut intervenir que lors du redmarrage du routeur lui-mme ou de linterface physique qui servait jusque l comme identit OSPF.
179
2. Par la commande router ospf <identit de processus>, crer un processus OSPF sur les routeurs. Le paramtre peut tre un chiffre quelconque entre 1 et 65535. 3. Par la commande network <adresse IP/masque gnrique> area 0 en mode de conguration router ospf, activer le traitement des mises jour sur les interfaces adquates, cest--dire sur toutes celles qui sont renseignes en paramtre de cette commande. Le masque gnrique (en notation dcimale pointe) est constitu de bits dont chaque position 1 signie que le bit correspondant dans ladresse IP doit tre ignor lors de son application. La disposition des bits du masque gnrique, contrairement au masque de sous-rseau, na pas tre continue.
REMARQUE
Contrairement la commande router de IGRP et de EIGRP, celle de OSPF ne comporte pas en paramtre le systme autonome, mais plutt lidentit du processus qui na quune signication locale au routeur. Cette identit ntant pas transporte dans les PDU de OSPF, les routeurs distants sont incapables de savoir de quel processus elle provient. Le numro de cette identit peut donc tre quelconque dun routeur lautre participant au routage OSPF, mais pour une question de cohrence, il est prfrable de choisir le mme numro pour tous les routeurs OSPF.
Pour bien voir le fonctionnement de OSPF, prenons le schma de rseau dj utilis dans lexemple de RIP version 2 (chapitre 4), illustr en gure 5.4 avec le mme adressage IP.
Figure 5.4
e0
e0
R1
s1 s0
Segment 3, 2 htes Rseau 10.0.0.0
R2
s1 s0
Segment 4, 2 htes Rseau 10.0.0.0
R3
to0
Segment 5, 200 htes Rseau 200.5.0.0
to0
R4
e0
Segment 6, 200 htes Rseau 200.6.0.0
Les listings 5.1 5.4 montrent les congurations des quatre routeurs.
180
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.0.0.65 255.255.255.192 interface Serial0 ip address 10.0.0.22 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 0
Listing 5.2. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.6 255.255.255.255 interface Ethernet0 ip address 10.0.0.129 255.255.255.128 interface Serial1 ip address 10.0.0.26 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 0
Listing 5.3. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.25 255.255.255.252 interface Serial1 ip address 10.0.0.21 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 0 network 200.0.0.0 0.255.255.255 area 0
Listing 5.4. Conguration du routeur R4.
interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0
181
Notons le format de la commande network utilis dans OSPF. Il ncessite un masque gnrique qui permet de dterminer les interfaces desservies par OSPF, tandis que les prxes rseau annoncer et leur longueur sont prlevs directement sur les interfaces correspondantes. Le mot cl area de la commande spcie laire de routage laquelle appartient le prxe annonc.
ASTUCE
Pour plus de commodit, on peut utiliser les adresses IP dhtes pour enregistrer les interfaces desservir par OSPF. Pour ce faire, la commande network doit tre rpte autant de fois quil y a dinterfaces, avec pour chacune, son adresse IP exacte suivie du masque gnrique 0.0.0.0. On peut ainsi activer OSPF interface par interface sans avoir dterminer le masque gnrique qui engloberait toutes ces interfaces. Le seul inconvnient, cest la rptition de la commande network.
Le listing 5.5 afche la sortie de la commande show ip route sur le routeur R4. On peut y voir que toutes les routes apprises par OSPF sont codes avec la lettre O . Ce routeur voit galement tous les sous-rseaux qui appartiennent au rseau 10.0.0.0 bien quaucune de ses interfaces ne soit congure avec une adresse IP de ce rseau. Il sagit l dune facult importante de OSPF qui, contrairement aux protocoles vecteur de distance, ne pratique pas lauto-agrgation.
ASTUCE
Si toutes les interfaces de tous les routeurs congures avec OSPF appartiennent la mme aire, un numro autre que 0 peut lui tre attribu, mme si le 0 est fortement recommand. OSPF pratique le partage de charge cot gal comme tous les autres protocoles de routage dynamique et le routage statique.
REMARQUE
AVERTISSEMENT Si des adresses IP secondaires sont utilises sur des routeurs congurs avec OSPF et que celles-ci sont
enregistres dans son processus de routage, elles doivent appartenir la mme aire que ladresse primaire
R4#show ip route ... 200.0.0.0/32 is subnetted, 1 subnets C 200.0.0.1 is directly connected, Loopback0 C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O 10.0.0.6/32 [110/71] via 200.5.0.1, 01:35:32, TokenRing0 O 10.0.0.7/32 [110/7] via 200.5.0.1, 01:35:32, TokenRing0 O 10.0.0.5/32 [110/71] via 200.5.0.1, 01:35:32, TokenRing0 O 10.0.0.24/30 [110/70] via 200.5.0.1, 01:35:32, TokenRing0 O 10.0.0.20/30 [110/70] via 200.5.0.1, 01:35:32, TokenRing0 O 10.0.0.64/26 [110/80] via 200.5.0.1, 01:35:32, TokenRing0 0 10.0.0.128/25 [110/80] via 200.5.0.1, 01:35:33, TokenRing0
182
La commande area sattend un masque de sous-rseau et non pas un masque gnrique comme network. On peut utiliser plusieurs commandes area si on veut dnir plus dun prxe agrg pour une mme aire, en renseignant le paramtre aprs le mot cl range avec un argument diffrent. Tous ces prxes agrgs ainsi dnis seront annoncs par les routeurs de bordure daire ou ABR (Area Border Router) en direction des aires autres que celle qui est donne en argument au paramtre <aire> de cette commande.
ASTUCE
Modions la topologie du rseau utilise dans lexemple prcdent qui ne comprenait quune seule aire en la dcomposant en deux comme sur la gure 5.5. En tenant compte de la carac-
183
tristique sans classe de OSPF nous pouvons dnir les adresses agrges de ces aires de la faon suivante : aire 0, adresse agrge 200.0.0.0/8 ; aire 100, adresse agrge 10.0.0.0/24.
Figure 5.5
Aire 10
e0
e0
R1
s1 s0
Segment 3, 2 htes Rseau 10.0.0.0
R2
s1 s0
Segment 4, 2 htes Rseau 10.0.0.0
R3
to0
Segment 5, 200 htes Rseau 200.5.0.0
to0
R4
Aire 0
e0
Segment 6, 200 htes Rseau 200.6.0.0
Pour bien comprendre comment agit la commande area <aire> range <adresse IP/masque de sous-rseau>, congurons dabord le routeur R3 (le seul dailleurs qui require une telle commande), sans cette commande. Les listings 5.6 5.8 montrent les congurations rvises des routeurs R1, R2 et R3 (le routeur R4 ne change pas de conguration car il reste dans la mme aire 0).
ASTUCE
Nous pouvons reconnatre quun routeur est un ABR si dans ses commandes network existent au moins deux numros daire diffrents.
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.0.0.65 255.255.255.192
184
interface Serial0 ip address 10.0.0.22 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 10
Listing 5.7. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.6 255.255.255.255 interface Ethernet0 ip address 10.0.0.129 255.255.255.128 interface Serial1 ip address 10.0.0.26 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 10
Listing 5.8. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.25 255.255.255.252 interface Serial1 ip address 10.0.0.21 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 network 200.0.0.0 0.255.255.255 area 0
Pour voir ce quapportent ces congurations sur les routeurs R1, R2 et R3, afchons la table de routage du routeur R4 (cf. listing 5.9). La seule diffrence quon peut y constater par rapport la table de routage du listing 5.5 du mme routeur, cest la prsence du code IA qui veut dire Inter-Area (inter-aires) devant toutes les routes qui appartiennent une aire autre (dans ce cas 10) que celle du routeur R4 qui, quant lui, appartient laire dorsale. Tous nos efforts pour dnir dabord un plan dadressage avec aires multiples et congurer ensuite les routeurs en consquence sont peine perdue pour ce maigre rsultat. Ajoutons maintenant la commande area <aire> range <adresse IP/masque de sous-rseau> la conguration du routeur R3. Les arguments passs au paramtre de cette commande devraient crer des adresses agrges pour les aires dorsale et 10, comme nous lavons vu dans une section prcdente. Le listing 5.10 montre la conguration correspondante du routeur R3.
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.9. Table de routage du routeur R4.
185
R4#show ip route ... 200.0.0.0/32 is subnetted, 1 subnets C 200.0.0.1 is directly connected, Loopback0 C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O IA 10.0.0.6/32 [110/71] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.7/32 [110/7] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.5/32 [110/71] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.24/30 [110/70] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.20/30 [110/70] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.64/26 [110/80] via 200.5.0.1, 00:27:11,TokenRing0 O IA 10.0.0.128/25 [110/80] via 200.5.0.1,00:27:11,TokenRing0
Listing 5.10. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.25 255.255.255.252 interface Serial1 ip address 10.0.0.21 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 network 200.0.0.0 0.255.255.255 area 0 area 0 range 200.0.0.0 255.0.0.0 area 10 range 10.0.0.0 255.255.255.0
Une fois que la commande area a t introduite dans le routeur R3, examinons de nouveau la table de routage du routeur R4 sur le listing 5.11. Cette fois-ci, nos efforts de planication et de conguration des routeurs selon le modle hirarchique de OSPF trouvent enn leur justication. Le routeur R4 ne voit plus quune route pour ladresse agrge de laire 10.
Listing 5.11. Table de routage du routeur R4 aprs introduction de la commande area sur le routeur R3.
R4#show ip route ... 200.0.0.0/32 is subnetted, 1 subnets C 200.0.0.1 is directly connected, Loopback0 C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 10.0.0.0/24 is subnetted, 1 subnets O IA 10.0.0.0 [110/80] via 200.5.0.1, 00:23:10, TokenRing0
186
Examinons maintenant la table de routage du routeur R1 (cf. 5.12). On peut y constater quil voit toutes les routes disponibles dans sa propre aire 10, mais na connaissance que dune seule route pour laire dorsale dont ladresse agrge est 200.0.0.0/8.
REMARQUE
La RFC 1879 recommande expressment dinclure la commande ip classless en congurant OSPF, ce qui amne le routeur se conformer la RFC 1812. Ce document qui est la dernire spcication sur les routeurs en mode IP version 4, est par ailleurs trs utile pour comprendre les principes du routage actuel.
R1#show ip route ... 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O 10.0.0.6/32 [110/129] via 10.0.0.21, 19:19:57, Serial0 O 10.0.0.7/32 [110/65] via 10.0.0.21, 19:19:57, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 O 10.0.0.24/30 [110/128] via 10.0.0.21, 19:19:57, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 O 10.0.0.128/25 [110/138] via 10.0.0.21, 19:19:57, Serial0 O IA 200.0.0.0/8 [110/80] via 10.0.0.21, 00:25:30, Serial0
interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router ospf 1 network 200.0.0.0 0.255.255.255 area 0 default-information originate always
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.14. Table de routage du routeur R1.
187
R1#show ip route ... Gateway of last resort is 10.0.0.21 to network 0.0.0.0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O 10.0.0.6/32 [110/129] via 10.0.0.21, 00:30:51, Serial0 O 10.0.0.7/32 [110/65] via 10.0.0.21, 00:30:51, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 O 10.0.0.24/30 [110/128] via 10.0.0.21, 00:30:51, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 O 10.0.0.128/25 [110/138] via 10.0.0.21, 00:30:51, Serial0 O*E2 0.0.0.0/0 [110/1] via 10.0.0.21, 00:19:27, Serial0 O IA 200.0.0.0/8 [110/80] via 10.0.0.21, 00:19:27, Serial0
Router Link States (Area 0) Link ID ADV Router Age 10.0.0.7 10.0.0.7 1627 200.0.0.1 200.0.0.1 786 Seq# Checksum Link count 0x80000003 0x92D8 1 0x80000005 0x70C1 3
Net Link States (Area 0) Link ID ADV Router Age 200.5.0.1 10.0.0.7 1627 Seq# Checksum 0x80000001 0xDDA1
Summary Net Link States (Area 0) Link ID ADV Router Age 10.0.0.0 10.0.0.7 1382 Seq# Checksum 0x80000001 0x696E
Type-5 AS External Link States Link ID 0.0.0.0 ADV Router Age 200.0.0.1 787 Seq# Checksum Tag 0x80000001 0x26C2 1
188
Chaque aire est afche individuellement. Le routeur R4 ntant connect qu la seule aire 0, la commande ne sort que son contenu avec les annonces dtat des liens ou LSA (Link State Advertisement) groupes par types tels quils sont dnis dans la table 5.1. Nous voyons sur ce listing 5.15 les quatre types de LSA, chacun comprenant les informations sur lidentit du lien (link ID), lidentit du routeur annonceur (router ID), lge du lien (age), le numro de squence et la somme de contrle (checksum). Pour plus dexplications sur le contenu de la base de donnes LSA de OSPF, veuillez consulter la RFC 2428.
Si un systme autonome ne reoit pas beaucoup de LSA de type 5, il nest pas toujours utile de congurer certaines de ses aires en connement. Cependant dans le cas dun systme autonome reli au rseau Internet, les protocoles inter-domaines du genre EGP ( Exterior Gateway Protocol) et plus particulirement BGP (Border Gateway Protocol) utiliss redistribuent leurs routes vers le domaine OSPF, ce qui ncessite de congurer certaines des aires de ce dernier en connement (stub).
Pour congurer une aire OSPF en connement, tous les routeurs appartenant celle-ci doivent avoir la mme commande area <aire> stub sous le mode de conguration router ospf. Le paramtre doit tre renseign avec le numro daire. Dans lexemple du rseau de la gure 5.5, congurons laire 10 en connement. Les listings 5.16 5.18 montrent les congurations des routeurs R1, R2 et R3.
Listing 5.16. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.0.0.65 255.255.255.192 interface Serial0 ip address 10.0.0.22 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 area 10 stub
Listing 5.17. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.6 255.255.255.255 interface Ethernet0 ip address 10.0.0.129 255.255.255.128 interface Serial1
189
ip address 10.0.0.26 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 area 10 stub
Listing 5.18. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.25 255.255.255.252 interface Serial1 ip address 10.0.0.21 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 network 200.0.0.0 0.255.255.255 area 0 area 0 range 200.0.0.0 255.0.0.0 area 10 stub area 10 range 10.0.0.0 255.255.255.0
Notons que sur le routeur R3 qui est un ABR, seule laire 10 est congure en connement.
REMARQUE
Si un seul des routeurs dune aire conne ne porte pas la commande area <aire> stub, il ne verra aucune route disponible via OSPF.
Examinons la table de routage du routeur R1 sur le listing 5.19 pour constater que la route par dfaut nest plus code comme externe.
Listing 5.19. Table de routage du routeur R1.
R1#show ip route ... Gateway of last resort is 10.0.0.21 to network 0.0.0.0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O 10.0.0.6/32 [110/129] via 10.0.0.21, 00:02:35, Serial0 O 10.0.0.7/32 [110/65] via 10.0.0.21, 00:02:35, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 O 10.0.0.24/30 [110/128] via 10.0.0.21, 00:02:35, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 O 10.0.0.128/25 [110/138] via 10.0.0.21, 00:02:35, Serial0 O*IA 0.0.0.0/0 [110/65] via 10.0.0.21, 00:02:35, Serial0 O IA 200.0.0.0/8 [110/80] via 10.0.0.21, 00:02:35, Serial0
190
Le systme IOS de Cisco procure aussi un moyen de congurer une aire en connement total (totally stubby area) qui est une extension propritaire de Cisco. Une aire ainsi congure ne recevra aucune route sous le code IA , mais seulement une seule route par dfaut pour toutes les adresses IP situes en dehors de cette aire.
REMARQUE
La conguration de certaines aires en connement total rduit le nombre de LSA que les routeurs auront traiter.
La commande area <aire> stub no-summary doit tre introduite sur le routeur ABR pour rendre une aire totalement conne. Le listing 5.20 montre le routeur R3 congur avec laire 10 en connement total.
Listing 5.20. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.7 255.255.255.255 interface Serial0 ip address 10.0.0.25 255.255.255.252 interface Serial1 ip address 10.0.0.21 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 10 network 200.0.0.0 0.255.255.255 area 0 area 0 range 200.0.0.0 255.0.0.0 area 10 stub no-summary area 10 range 10.0.0.0 255.255.255.0
Si on examine la table de routage du routeur R1, on peut y voir cette fois-ci, quil ny a quune seule route (celle par dfaut) sous le code IA (cf. listing 5.21).
Listing 5.21. Table de routage du routeur R1.
R1#show ip route ... Gateway of last resort is 10.0.0.21 to network 0.0.0.0 10.0.0.0/8 is variably subnetted, 7 subnets, 4 masks O 10.0.0.6/32 [110/129] via 10.0.0.21, 00:01:13, Serial0 O 10.0.0.7/32 [110/65] via 10.0.0.21, 00:01:13, Serial0 C 10.0.0.5/32 is directly connected, Loopback0 O 10.0.0.24/30 [110/128] via 10.0.0.21, 00:01:13, Serial0 C 10.0.0.20/30 is directly connected, Serial0 C 10.0.0.64/26 is directly connected, Ethernet0 O 10.0.0.128/25 [110/138] via 10.0.0.21, 00:01:13, Serial0 O*IA 0.0.0.0/0 [110/65] via 10.0.0.21, 00:01:13, Serial0
191
Lidentit OSPF nest pas une adresse IP du routeur de lautre section, mais il sagit du numro le plus lev prlev en priorit parmi les adresses IP congures en rebouclage (loopback) sur ce routeur ou si celles-ci nexistent pas, parmi les adresses IP des interfaces de celui-ci.
Prenons le cas de la topologie du rseau illustre sur la gure 5.6. La dorsale OSPF (aire 0) est sectionne en deux sections chacune relie une aire commune (aire 100) par les routeurs R1 et R2.
Figure 5.6
10.100.1.0/24
e0
10.100.128.4/30
e0
s0
R5
R6 s0
s0
10.100.128.8/30
R1
s0
Aire 100
R2
e0 10.0.1.0/24 e0
e0 10.0.2.0/24
Aire 0
Aire 0
e0
R3
to0
to0
R4
10.10.1.0/24
10.20.1.0/24
Aire 10
copyright ditions Eyrolles
Aire 20
192
Les rgles dadressage IP dans cet exemple sont les suivantes : Tous les rseaux ont un prxe de longueur suprieure ou gale 24. Chaque numro daire est cod sur le deuxime octet de toutes les adresses IP qui lui appartiennent. Une adresse IP avec le troisime octet 0 ne peut tre assigne qu une interface en rebouclage. Pour mesurer limportance de sauvegarder la connectivit dune aire dorsale, voyons dabord ce qui se passe si les routeurs R1 et R2 sont congurs sans liaisons virtuelles entre leurs sections respectives. Les listings 5.22 5.27 montrent leur conguration actuelle.
Listing 5.22. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0 ip address 10.100.128.5 255.255.255.252 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 100 range 10.100.0.0 255.255.0.0
Listing 5.23. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Serial0 ip address 10.100.128.9 255.255.255.252 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 100 range 10.100.0.0 255.255.0.0
Listing 5.24. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.3 255.255.255.255 interface Ethernet0 ip address 10.0.1.2 255.255.255.0 interface TokenRing0 ip address 10.10.1.1 255.255.255.0
193
ring-speed 16 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.10.0.0 0.0.255.255 area 10 area 0 range 10.0.0.0 255.255.0.0 area 10 range 10.10.0.0 255.255.0.0
Listing 5.25. Conguration du routeur R4.
interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.0.2.2 255.255.255.0 interface TokenRing0 ip address 10.20.1.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.20.0.0 0.0.255.255 area 20 area 0 range 10.0.0.0 255.255.0.0 area 20 range 10.20.0.0 255.255.0.0
Listing 5.26. Conguration du routeur R5.
interface Loopback0 ip address 10.100.0.5 255.255.255.255 interface Ethernet0 ip address 10.100.1.1 255.255.255.0 interface Serial0 ip address 10.100.128.6 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 100
Listing 5.27. Conguration du routeur R6.
interface Loopback0 ip address 10.100.0.6 255.255.255.255 interface Ethernet0 ip address 10.100.1.2 255.255.255.0 interface Serial0 ip address 10.100.128.10 255.255.255.252 router ospf 1 network 10.0.0.0 0.255.255.255 area 100
Afchons la table de routage du routeur R3 par la commande show ip route dont la sortie se trouve sur le listing 5.28. Cest sans surprise que nous y constatons que le routeur R3 ne peut
194
avoir connaissance du rseau tout entier. Par exemple laire 20 (adresse agrge 10.20.0.0/16) est absente de sa table. Le sectionnement de laire dorsale en est la cause.
Listing 5.28. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/8 is variably subnetted, 5 subnets, 3 masks C 10.10.1.0/24 is directly connected, TokenRing0 C 10.0.0.3/32 is directly connected, Loopback0 O 10.0.0.1/32 [110/11] via 10.0.1.1, 00:14:18, Ethernet0 C 10.0.1.0/24 is directly connected, Ethernet0 O IA 10.100.0.0/16 [110/74] via 10.0.1.1, 00:14:18, Ethernet0
Introduisons la commande area <aire> virtual-link <OSPF ID> (en mode router ospf 1) sur les routeurs R1 et R2 pour restaurer la connectivit de laire dorsale. Les listings 5.29 et 5.30 montrent les congurations contenant cette commande.
Listing 5.29. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0 ip address 10.100.128.5 255.255.255.252 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 100 range 10.100.0.0 255.255.0.0 area 100 virtual-link 10.0.0.2
Listing 5.30. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Serial0 ip address 10.100.128.9 255.255.255.252 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 100 range 10.100.0.0 255.255.0.0 area 100 virtual-link 10.0.0.1
Si nous examinons la table de routage sur le listing 5.31, nous voyons que le routeur R3 a maintenant connaissance des adresses agrges de toutes les aires.
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.31. Table de routage du routeur R3 aprs conguration des liaisons virtuelles OSPF sur les routeurs R1 et R2.
195
R3#show ip route ... 10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks C 10.10.1.0/24 is directly connected, TokenRing0 O 10.0.0.2/32 [110/149] via 10.0.1.1, 01:55:46, Ethernet0 O 10.0.2.0/24 [110/158] via 10.0.1.1, 01:55:46, Ethernet0 C 10.0.0.3/32 is directly connected, Loopback0 O 10.0.0.1/32 [110/11] via 10.0.1.1, 01:55:46, Ethernet0 C 10.0.1.0/24 is directly connected, Ethernet0 O 10.0.0.4/32 [110/159] via 10.0.1.1, 01:55:46, Ethernet0 O IA 10.20.0.0/16 [110/164] via 10.0.1.1, 01:55:46, Ethernet0 O IA 10.100.0.0/16 [110/74] via 10.0.1.1, 01:55:46, Ethernet0
La commande show ip ospf virtual-links peut tre utilise pour vrier ltat dune liaison virtuelle comme le montre le listing 5.32. La ligne en italique y indique ltat actif (up) ou inactif (down) de la liaison. Pour plus de dtails, se reporter la documentation de Cisco.
Listing 5.32. Sortie de la commande show
R1#show ip ospf virtual-links Virtual Link OSPF_VL0 to router 10.0.0.2 is up Run as demand circuit DoNotAge LSA allowed. Transit area 100, via interface Serial0, Cost of using 138 Transmit Delay is 1 sec, State POINT_TO_POINT, Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Hello due in 00:00:07 Adjacency State FULL (Hello suppressed)
REMARQUE
Bien que les liaisons virtuelles fassent partie des spcications OSPF, leur utilisation doit se limiter uniquement aux cas durgence ou de dploiement large chelle. Jamais en tant que solution permanente.
Voici un exemple de risque potentiel qui peut tre associ lutilisation des liaisons virtuelles. Sans doute avez-vous remarqu dans lexemple de la gure 5.6 que ladresse agrge de laire dorsale manquait dans les congurations des routeurs R1 et R2 (cf. listings 5.29 et 5.30). Nous allons savoir pourquoi, en ajoutant cette adresse agrge aux congurations des deux routeurs comme sur les listings 5.33 et 5.34.
Listing 5.33. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0 ip address 10.100.128.5 255.255.255.252
196
router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 0 range 10.0.0.0 255.255.0.0 area 100 range 10.100.0.0 255.255.0.0 area 100 virtual-link 10.0.0.2
Listing 5.34. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Serial0 ip address 10.100.128.9 255.255.255.252 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.100.0.0 0.0.255.255 area 100 area 0 range 10.0.0.0 255.255.0.0 area 100 range 10.100.0.0 255.255.0.0 area 100 virtual-link 10.0.0.1
Afchons prsent la table de routage du routeur R3 dont la sortie sur le listing 5.35 ressemble trangement celle davant. Pour mieux voir ce quil en est exactement, nous allons lancer un ping sur ladresse de rebouclage du routeur R1. Le listing 5.36 en afche le rsultat qui parat tout fait normal.
Listing 5.35. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks C 10.10.1.0/24 is directly connected, TokenRing0 O 10.0.0.2/32 [110/149] via 10.0.1.1, 00:02:43, Ethernet0 O 10.0.2.0/24 [110/158] via 10.0.1.1, 00:02:43, Ethernet0 C 10.0.0.3/32 is directly connected, Loopback0 O 10.0.0.1/32 [110/11] via 10.0.1.1, 00:02:43, Ethernet0 C 10.0.1.0/24 is directly connected, Ethernet0 O 10.0.0.4/32 [110/159] via 10.0.1.1, 00:02:43, Ethernet0 O IA 10.20.0.0/16 [110/164] via 10.0.1.1, 00:02:43, Ethernet0 O IA 10.100.0.0/16 [110/74] via 10.0.1.1, 00:02:43, Ethernet0
Listing 5.36. Sortie de la commande ping
R3#ping 10.0.0.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.0.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
197
Lanons maintenant un ping sur linterface de rebouclage du routeur R2. Le rsultat est afch sur le listing 5.37.
Listing 5.37. Sortie de la commande ping
R3#ping 10.0.0.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
Le problme ne semble pas provenir du routeur R3 qui possde bien une route pointant vers ladresse 10.0.0.2. Utilisons la commande traceroute pour cette adresse sur ce routeur an den savoir plus. Le rsultat est afch sur le listing 5.38.
Listing 5.38. Sortie de la commande traceroute
R3#traceroute 10.0.0.2 Type escape sequence to abort. Tracing the route to 10.0.0.2 1 2 3 4 5 6 7 8 9 10 ... 10.0.1.1 4 msec 10.100.128.6 20 10.100.128.5 16 10.100.128.6 32 10.100.128.5 32 10.100.128.6 48 10.100.128.5 44 10.100.128.6 60 10.100.128.5 60 10.100.128.6 76 4 msec 4 msec msec 16 msec 20 msec 20 msec 16 msec 32 msec 32 msec 32 msec 32 msec 44 msec 44 msec 48 msec 44 msec 60 msec 60 msec 60 msec 60 msec 76 msec 72 msec msec msec msec msec msec msec msec msec
On peut constater ci-dessus que les paquets gnrs par traceroute semblent boucler sur la ligne srie qui relie les routeurs R1 et R5. Examinons la table de routage de ce dernier sur le listing 5.39.
Listing 5.39. Table de routage du routeur R5.
R5#show ip route ... 10.0.0.0/8 is variably subnetted, 8 subnets, 4 masks O IA 10.10.0.0/16 [110/80] via 10.100.128.5, 00:50:30,Serial0 O IA 10.0.0.0/16 [110/65] via 10.100.128.5, 00:18:19,Serial0 O IA 10.20.0.0/16 [110/90] via 10.100.1.2, 03:04:14,Ethernet0 O 10.100.0.6/32 [110/11] via 10.100.1.2,03:04:37,Ethernet0 C 10.100.0.5/32 is directly connected, Loopback0 C 10.100.1.0/24 is directly connected, Ethernet0 O 10.100.128.8/30 [110/74] via 10.100.1.2, 03:04:37, Ethernet0 C 10.100.128.4/30 is directly connected, Serial0
198
La ligne en italique de la table de routage ci-dessus nous rvle sans surprise que le routeur R5 na quune seule route vers laire dorsale qui passe, par le routeur R1 plus proche de cette aire. Tout paquet en provenance du routeur R5 destin une adresse de laire dorsale doit passer par R1, mme quand il sagit de lautre section, ce qui cre une boucle de routage, mise en vidence par la sortie de la commande traceroute du listing 5.38. Le routeur R6 est dans le mme cas vis vis du routeur R2. Si nous faisons un retour en arrire en enlevant des congurations des routeurs R1 et R2 ladresse agrge de laire dorsale, nous pouvons constater en lanant un ping du routeur R3 vers ladresse de rebouclage du routeur R2, que cette commande aboutit bien comme le montre le listing 5.40.
Listing 5.40. Rsultat de la commande ping 10.0.0.2 aprs retrait de ladresse agrge de laire dorsale dans les congurations des routeurs R1 et R2.
R3#ping 10.0.0.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 56/61/72 ms
Bien que cette modication de la conguration puisse paratre minime sur les routeurs R1 et R2, nous devons en mesurer les consquences. Il introduit une incohrence dans la conguration des routeurs. R3 et R4 possdent une adresse agrge de laire dorsale alors que les routeurs R1 et R2 nen ont pas. Plus grave encore, le retrait de la conguration de ces derniers de ladresse agrge, annule la raison dtre du routage hirarchique. Si nous examinons la table de routage du routeur R5 sur le listing 5.41 (aprs retrait de ladresse agrge de laire dorsale des routeurs R1 et R2), nous y voyons apparatre toutes les routes de laire dorsale sans que ce routeur soit directement connect celle-ci. Cela vient du fait que le routeur R1, ntant plus congur pour agrger les routes de laire dorsale, les envoie toutes vers laire 100 du routeur R5. Le modle hirarchique devient donc caduc.
Listing 5.41. Table de routage du routeur R5 aprs retrait de ladresse agrge des routeurs R1 et R2.
R5#show ip route ... 10.0.0.0/8 is variably subnetted, 13 subnets, 4 masks O IA 10.10.0.0/16 [110/80] via 10.100.128.5, 01:14:17, Serial0 O IA 10.0.2.0/24 [110/84] via 10.100.1.2, 00:08:58, Ethernet0 O IA 10.0.0.2/32 [110/75] via 10.100.1.2, 00:08:58, Ethernet0 O IA 10.0.0.3/32 [110/75] via 10.100.128.5, 00:08:58, Serial0 O IA 10.0.1.0/24 [110/74] via 10.100.128.5, 00:08:58, Serial0 O IA 10.0.0.1/32 [110/65] via 10.100.128.5, 00:08:58, Serial0 O IA 10.0.0.4/32 [110/85] via 10.100.1.2, 00:08:58, Ethernet0 O IA 10.20.0.0/16 [110/90] via 10.100.1.2, 03:28:02, Ethernet0 O 10.100.0.6/32 [110/11] via 10.100.1.2, 03:28:24, Ethernet0 C 10.100.0.5/32 is directly connected, Loopback0
199
C O C
10.100.1.0/24 is directly connected, Ethernet0 10.100.128.8/30 [110/74] via 10.100.1.2, 03:28:24, Ethernet0 10.100.128.4/30 is directly connected, Serial0
10.0.1.0/24
e0
R1
s0
10.0.128.4/30
Aire 0
s1
to0
10.10.1.0/24
R2 Aire 10
to0 s0
10.100.128.4/30
R3
s1
R4
e0
10.100.1.0/24
Aire 100
Laire 100 ne peut tre relie laire dorsale que via laire 10. Voyons ce qui se passe si les routeurs R2 et R3 ne sont pas congurs avec une liaison virtuelle. Les listings 5.42 5.45 montrent les congurations de tous ces routeurs.
Listing 5.42. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0
200
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Serial1 ip address 10.0.128.6 255.255.255.252 interface TokenRing0 ip address 10.10.1.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.10.0.0 0.0.255.255 area 10 area 0 range 10.0.0.0 255.255.0.0 area 10 range 10.10.0.0 255.255.0.0
Listing 5.44. Conguration du routeur R3.
interface Loopback0 ip address 10.10.0.3 255.255.255.255 interface Serial0 ip address 10.100.128.5 255.255.255.252 interface TokenRing0 ip address 10.10.1.2 255.255.255.0 ring-speed 16 router ospf 1 network 10.10.0.0 0.0.255.255 area 10 network 10.100.0.0 0.0.255.255 area 100 area 10 range 10.10.0.0 255.255.0.0 area 100 range 10.100.0.0 255.255.0.0
Listing 5.45. Conguration du routeur R4.
interface Loopback0 ip address 10.100.0.4 255.255.255.255 interface Ethernet0 ip address 10.100.1.1 255.255.255.0 interface Serial1 ip address 10.100.128.6 255.255.255.252 router ospf 1 network 10.100.0.0 0.0.255.255 area 100
201
Les tables de routage des routeurs R1 et R4 sont afches sur les listings 5.46 et 5.47.
Listing 5.46. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/8 is variably subnetted, 5 subnets, 4 masks O IA 10.10.0.0/16 [110/71] via 10.0.128.6, 00:13:01, Serial0 O 10.0.0.2/32 [110/65] via 10.0.128.6, 00:13:01, Serial0 C 10.0.1.0/24 is directly connected, Ethernet0 C 10.0.0.1/32 is directly connected, Loopback0 C 10.0.128.4/30 is directly connected, Serial0
Listing 5.47. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 3 subnets, 3 masks C 10.100.0.4/32 is directly connected, Loopback0 C 10.100.1.0/24 is directly connected, Ethernet0 C 10.100.128.4/30 is directly connected, Serial1
Visiblement le routage ne se fait pas correctement sans la liaison virtuelle. Le routeur R1 ignore lexistence de laire 100 tout entire, tandis que le routeur R4 ne peut voir que les rseaux qui lui sont directement connects. Ajoutons maintenant une liaison virtuelle entre les routeurs R2 et R3 comme indiqu sur les listings 5.48 et 5.49.
Listing 5.48. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Serial1 ip address 10.0.128.6 255.255.255.252 interface TokenRing0 ip address 10.10.1.1 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.0.255.255 area 0 network 10.10.0.0 0.0.255.255 area 10 area 0 range 10.0.0.0 255.255.0.0 area 10 range 10.10.0.0 255.255.0.0 area 10 virtual-link 10.10.0.3
Listing 5.49. Conguration du routeur R3.
202
ip address 10.100.128.5 255.255.255.252 interface TokenRing0 ip address 10.10.1.2 255.255.255.0 ring-speed 16 router ospf 1 network 10.10.0.0 0.0.255.255 area 10 network 10.100.0.0 0.0.255.255 area 100 area 10 range 10.10.0.0 255.255.0.0 area 10 virtual-link 10.0.0.2 area 100 range 10.100.0.0 255.255.0.0
Si nous afchons maintenant la table de routage des routeurs R1 et R4, elles auront laspect des listings 5.50 et 5.51.
Listing 5.50. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/8 is variably subnetted, 6 subnets, 4 masks O IA 10.10.0.0/16 [110/71] via 10.0.128.6, 00:02:12, Serial0 O 10.0.0.2/32 [110/65] via 10.0.128.6, 00:02:12, Serial0 C 10.0.1.0/24 is directly connected, Ethernet0 C 10.0.0.1/32 is directly connected, Loopback0 O IA 10.100.0.0/16 [110/144] via 10.0.128.6, 00:02:12,Serial0 C 10.0.128.4/30 is directly connected, Serial0
Listing 5.51. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 8 subnets, 4 masks O IA 10.10.0.0/16 [110/70] via 10.100.128.5, 00:01:58,Serial1 O IA 10.0.0.2/32 [110/71] via 10.100.128.5, 00:01:44,Serial1 O IA 10.0.0.1/32 [110/135] via 10.100.128.5, 00:01:44,Serial1 O IA 10.0.1.0/24 [110/144] via 10.100.128.5, 00:01:44,Serial1 C 10.100.0.4/32 is directly connected, Loopback0 C 10.100.1.0/24 is directly connected, Ethernet0 O IA 10.0.128.4/30 [110/134]via 10.100.128.5,00:01:44,Serial1 C 10.100.128.4/30 is directly connected, Serial1
Le routage semble mieux fonctionner, sans tre parfait. La table de routage du routeur R1 est correcte, avec une route dadresse agrge vers laire 100. Il reste amliorer encore la table du routeur R4 qui est remplie avec chaque route individuelle de laire dorsale sans que ce routeur y soit directement connect. On peut expliquer facilement ce phnomne si on se rappelle quune liaison virtuelle est une extension de laire dorsale qui va, dans ce cas, jusquau routeur R3 qui ne pratique pas lagrgation de route pour cette aire. Ce qui nous amne la conclusion que la commande area 0 range doit tre introduite dans la conguration du routeur R3. Ajoutons cette commande sur ce routeur comme indiqu sur le listing 5.52. La table de routage du routeur R4 sur le listing 5.53 elle aussi est correcte.
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.52. Conguration du routeur R3.
203
interface Loopback0 ip address 10.10.0.3 255.255.255.255 interface Serial0 ip address 10.100.128.5 255.255.255.252 interface TokenRing0 ip address 10.10.1.2 255.255.255.0 ring-speed 16 router ospf 1 network 10.10.0.0 0.0.255.255 area 10 network 10.100.0.0 0.0.255.255 area 100 area 0 range 10.0.0.0 255.255.0.0 area 10 range 10.10.0.0 255.255.0.0 area 10 virtual-link 10.0.0.2 area 100 range 10.100.0.0 255.255.0.0
Listing 5.53. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 5 subnets, 4 masks O IA 10.10.0.0/16 [110/70] via 10.100.128.5, 00:31:38,Serial1 O IA 10.0.0.0/16 [110/144] via 10.100.128.5, 00:04:38,Serial1 C 10.100.0.4/32 is directly connected, Loopback0 C 10.100.1.0/24 is directly connected, Ethernet0 C 10.100.128.4/30 is directly connected, Serial1
204
Il y cependant un inconvnient cette reprsentation car les routeurs OSPF sappuient sur le protocole de communication hello pour se dcouvrir mutuellement et former un lien de proximit. Ce protocole utilise ladressage par diffusion multidestinataire (multicast), qui peut ne pas tre disponible dans un rseau NBMA, auquel cas, les routeurs sont incapables de former le lien de proximit pour un routage correct. Nous allons voir ci-aprs comment corriger cette dcience.
Figure 5.8
Segment 1 200.1.0.0/24
Aire 1
R1
e0
Aire 3
e0
R3
s1
DLCI 102 DLCI 201 Rseau Frame Relay LMI = ANSI sur toutes les interfaces Rseau IP 200.0.1.0/24 DLCI 203
s0
DLCI 302
s0
R2
Aire 2
e0
Segment 2 200.2.0.0/24
La commande neighbor Pour aider les routeurs OSPF dans un rseau NBMA former un lien de proximit entre eux, nous pouvons congurer les adresses IP de leurs voisins sur chacun, ce qui leur permettrait de ne plus dpendre de la diffusion multidestinataire. Sous le mode de conguration router ospf, nous devons utiliser la commande neighbor <adresse IP distante> autant de fois que ce routeur a de voisins.
REMARQUE
Tous les routeurs voisins ne forment pas un lien de proximit ; cela est particulirement vrai quand, dans un seul rseau accs multiples, on a plus de deux routeurs connects.
Les listings 5.54 5.56 montrent les congurations des routeurs selon le schma de rseau de la gure 5.8. Chaque routeur est congur avec deux voisins (accessibles via Frame Relay).
Listing 5.54. Conguration du routeur R1.
205
ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.0.1.1 255.255.255.248 encapsulation frame-relay frame-relay map ip 200.0.1.2 102 broadcast frame-relay map ip 200.0.1.3 103 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.1.0.0 0.0.255.255 area 1 neighbor 200.0.1.3 neighbor 200.0.1.2 area 0 range 200.0.0.0 255.255.0.0 area 1 range 200.1.0.0 255.255.0.0 ip classless
Listing 5.55. Conguration du routeur R2.
ip subnet-zero interface Loopback0 ip address 200.0.0.2 255.255.255.255 interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.2 255.255.255.248 encapsulation frame-relay frame-relay map ip 200.0.1.1 201 broadcast frame-relay map ip 200.0.1.3 203 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.2.0.0 0.0.255.255 area 2 neighbor 200.0.1.3 neighbor 200.0.1.1 area 0 range 200.0.0.0 255.255.0.0 area 2 range 200.2.0.0 255.255.0.0 ip classless
Listing 5.56. Conguration du routeur R3.
206
interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.3 255.255.255.248 encapsulation frame-relay frame-relay map ip 200.0.1.1 301 broadcast frame-relay map ip 200.0.1.2 302 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.3.0.0 0.0.255.255 area 3 neighbor 200.0.1.1 neighbor 200.0.1.2 area 0 range 200.0.0.0 255.255.0.0 area 3 range 200.3.0.0 255.255.0.0 ip classless
REMARQUE
Toutes les congurations actuelles contiennent deux commandes jamais utilises auparavant. Il sagit de ip classless laquelle on a dj fait allusion ; elle est ncessaire pour passer de lalgorithme de routage classe celui de sans classe, quand des super-rseaux doivent tre agrgs en 200.0.0.0/16, par exemple. Lautre commande ip subnet-zero est introduite pour utiliser des adresses de sous-rseau ne comportant que des zros. Nous avons besoin de cette commande par exemple pour le rseau 200.0.1.0/29 auquel appartiennent les interfaces Frame Relay des routeurs de la gure 5.8.
R2#show ip route ... 200.0.0.0/32 is subnetted, 3 subnets O 200.0.0.1 [110/65] via 200.0.1.1, 00:07:55, C 200.0.0.2 is directly connected, Loopback0 O 200.0.0.3 [110/65] via 200.0.1.3, 00:07:55, C 200.2.0.0/24 is directly connected, Ethernet0 200.0.1.0/29 is subnetted, 1 subnets C 200.0.1.0 is directly connected, Serial0 O IA 200.1.0.0/16 [110/74] via 200.0.1.1, 00:07:55, O IA 200.3.0.0/16 [110/74] via 200.0.1.3, 00:07:55,
Serial0 Serial0
Serial0 Serial0
Comme nous pouvions nous y attendre, le routeur R2 voit maintenant les adresses agrges des aires 1 et 3. La commande show ip ospf neighbor permet de vrier sur un routeur ltat de disponibilit de ses voisins. Les listings 5.58 5.60 montrent la sortie de cette commande sur les routeurs R1, R2 et R3.
Listing 5.58. Voisins OSPF du routeur R1.
R1#show ip ospf neighbor Neighbor ID Pri State 200.0.0.3 1 FULL/DR 200.0.0.2 1 FULL/BDR Dead Time Address Interface 00:01:53 200.0.1.3 Serial1 00:01:49 200.0.1.2 Serial1
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.59. Voisins OSPF du routeur R2.
207
R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 200.0.0.3 1 FULL/DR 00:01:33 200.0.1.3 Serial0 200.0.0.1 1 FULL/DROTHER 00:01:58 200.0.1.1 Serial0
Listing 5.60. Voisins OSPF du routeur R3.
R3#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 200.0.0.1 1 FULL/DROTHER 00:01:48 200.0.1.1 Serial0 200.0.0.2 1 FULL/BDR 00:01:50 200.0.1.2 Serial0
Notons sur les listings ci-dessus comment est mis en vidence le rle fonctionnel des routeurs voisins. DR (Designated Router) est le routeur dsign ; BDR (Backup DR) est son supplant. DROTHER signie que ce routeur voisin est autre , cest--dire ni DR, ni BDR, et quil doit former un lien de proximit avec eux.
REMARQUE
Pour de plus amples informations sur les tats possibles des routeurs voisins OSPF, se reporter aux spcications de OSPF (cf. RFC 2328) et la documentation de Cisco.
La commande ip ospf network broadcast Bien que les rseaux NBMA ne permettent pas ladressage par diffusion gnrale ou par diffusion multidestinataire la couche accs rseau, les routeurs peuvent toujours utiliser la diffusion gnrale au moins la couche Internet. Nous avons dj eu loccasion dappliquer la commande frame-relay map ip <adresse IP distante> <DLCI> qui comporte loption [broadcast]. Si cette dernire est utilise, le routeur envoie le trac destin la diffusion gnrale (adresse : 255.255.255.255) sur le CVP (Circuit Virtuel Permanent) normalement utilis pour le trac monodestinataire. Si plusieurs CVP sont congurs sur une interface srie ou sa sous-interface, ce trac est envoy sur tous les CVP dont le numro est suivi par le mot clef broadcast dans cette commande. Celui-ci tout seul ne suft cependant pas OSPF pour commencer traiter linterface comme tant connecte un rseau de diffusion gnrale accs multiples. Pour ce faire, la commande supplmentaire, ip ospf network broadcast doit tre ajoute (en mode de conguration dinterface) la place de neighbor (en mode de conguration router) du cas prcdent. Les congurations rvises des routeurs se trouvent sur les listings 5.61 5.63.
Listing 5.61. Conguration du routeur R1.
ip subnet-zero interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.1.0.1 255.255.255.0
208
interface Serial1 ip address 200.0.1.1 255.255.255.248 encapsulation frame-relay ip ospf network broadcast frame-relay map ip 200.0.1.2 102 broadcast frame-relay map ip 200.0.1.3 103 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.1.0.0 0.0.255.255 area 1 area 0 range 200.0.0.0 255.255.0.0 area 1 range 200.1.0.0 255.255.0.0 ip classless
Listing 5.62. Conguration du routeur R2.
ip subnet-zero interface Loopback0 ip address 200.0.0.2 255.255.255.255 interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.2 255.255.255.248 encapsulation frame-relay ip ospf network broadcast frame-relay map ip 200.0.1.1 201 broadcast frame-relay map ip 200.0.1.3 203 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.2.0.0 0.0.255.255 area 2 area 0 range 200.0.0.0 255.255.0.0 area 2 range 200.2.0.0 255.255.0.0 ip classless
Listing 5.63. Conguration du routeur R3.
ip subnet-zero interface Loopback0 ip address 200.0.0.3 255.255.255.255 interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.3 255.255.255.248 encapsulation frame-relay
209
ip ospf network broadcast frame-relay map ip 200.0.1.1 301 broadcast frame-relay map ip 200.0.1.2 302 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.3.0.0 0.0.255.255 area 3 area 0 range 200.0.0.0 255.255.0.0 area 3 range 200.3.0.0 255.255.0.0 ip classless
Dans tous ces listings, les lignes et les mots en italique indiquent les emplacements de la nouvelle commande et du mot clef optionnel. Le listing 5.64 afche la table de routage du routeur R2 qui est la mme que celle du listing 5.57 du cas prcdent.
Listing 5.64. Table de routage du routeur R2.
R2#show ip route ... 200.0.0.0/32 O 200.0.0.1 C 200.0.0.2 O 200.0.0.3 C 200.2.0.0/24 200.0.1.0/29 C 200.0.1.0 O IA 200.1.0.0/16 O IA 200.3.0.0/16
is subnetted, 3 subnets [110/65] via 200.0.1.1, 00:07:34, is directly connected, Loopback0 [110/65] via 200.0.1.3, 00:07:34, is directly connected, Ethernet0 is subnetted, 1 subnets is directly connected, Serial0 [110/74] via 200.0.1.1, 00:07:34, [110/74] via 200.0.1.3, 00:07:34,
Serial0 Serial0
Serial0 Serial0
Les listings 5.65 5.67 afchent la sortie de la commande show ip ospf neighbor sur les trois routeurs. Aucun changement par rapport au cas prcdent.
Listing 5.65. Voisins OSPF du routeur R1.
R1#show ip ospf neighbor Neighbor ID Pri State 200.0.0.3 1 FULL/DR 200.0.0.2 1 FULL/BDR Dead Time Address Interface 00:00:39 200.0.1.3 Serial1 00:00:38 200.0.1.2 Serial1
R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 200.0.0.1 1 FULL/DROTHER 00:00:39 200.0.1.1 Serial0 200.0.0.3 1 FULL/DR 00:00:36 200.0.1.3 Serial0
210
R3#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 200.0.0.1 1 FULL/DROTHER 00:00:32 200.0.1.1 Serial0 200.0.0.2 1 FULL/BDR 00:00:39 200.0.1.2 Serial0
Conguration de OSPF sur un rseau NBMA non intgralement maill Pour faciliter la tche de conguration des routeurs Cisco avec OSPF sur un rseau NBMA non intgralement maill, considre comme la plus difcile, il est utile davoir bien assimil les rgles de base sur lesquelles sappuie ce protocole. Les trois sections suivantes proposent chacune une mthode pour congurer OSPF sur des routeurs Cisco, en se rfrant au schma de rseau illustr la gure 5.9.
Figure 5.9
Segment 1 200.1.0.0/24
Aire 1
R1
e0
Aire 3
e0
R3
s1
DLCI 102
s0
DLCI 301
s0
R2
DLCI 201
Rseau Frame Relay LMI = ANSI sur toutes les interfaces Rseau IP 200.0.1.0/24
Aire 2
e0
Segment 2 200.2.0.0/24
Utilisation de sous-interfaces Cette mthode est la plus simple, sans doute aussi la meilleure. Quil sagisse de rseau intgralement ou non intgralement maill, il est toujours possible dassigner des CVP des sousinterfaces de routeurs, chacune ayant une adresse IP appartenant un sous-rseau spar. Du point de vue de OSPF, chaque paire de sous-interfaces connecte via un CVP de Frame Relay devient une liaison point point. Les listings 5.68 5.70 montrent les congurations des trois routeurs de la gure 5.9.
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.68. Conguration du routeur R1.
211
ip subnet-zero interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 encapsulation frame-relay frame-relay lmi-type ansi interface Serial1.2 point-to-point description connects R1 to R2 via PVC 102 ip address 200.0.1.1 255.255.255.252 frame-relay interface-dlci 102 interface Serial1.3 point-to-point description connects R1 to R3 via PVC 103 ip address 200.0.1.5 255.255.255.252 frame-relay interface-dlci 103 router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.1.0.0 0.0.255.255 area 1 area 0 range 200.0.0.0 255.255.0.0 area 1 range 200.1.0.0 255.255.0.0 ip classless
Listing 5.69. Conguration du routeur R2.
ip subnet-zero interface Loopback0 ip address 200.0.0.2 255.255.255.255 interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 200.0.1.2 255.255.255.252 frame-relay interface-dlci 201 router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.2.0.0 0.0.255.255 area 2 area 0 range 200.0.0.0 255.255.0.0 area 2 range 200.2.0.0 255.255.0.0 ip classless
212
ip subnet-zero interface Loopback0 ip address 200.0.0.3 255.255.255.255 interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 200.0.1.6 255.255.255.252 frame-relay interface-dlci 301 router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.3.0.0 0.0.255.255 area 3 area 0 range 200.0.0.0 255.255.0.0 area 3 range 200.3.0.0 255.255.0.0 ip classless
Le listing 5.71 afche la table de routage du routeur R2. Ce routeur peut voir les deux aires distantes comme avant mais cette fois-ci via la mme sous-interface du routeur R1 laquelle il est reli.
Listing 5.71. Table de routage du routeur R2.
R2#show ip route ... 200.0.0.0/32 is subnetted, 3 subnets O 200.0.0.1 [110/65] via 200.0.1.1, 00:12:55, Serial0.1 C 200.0.0.2 is directly connected, Loopback0 O 200.0.0.3 [110/129] via 200.0.1.1, 00:12:55, Serial0.1 C 200.2.0.0/24 is directly connected, Ethernet0 200.0.1.0/30 is subnetted, 2 subnets C 200.0.1.0 is directly connected, Serial0.1 O 200.0.1.4 [110/128] via 200.0.1.1, 00:12:55, Serial0.1 O IA 200.1.0.0/16 [110/74] via 200.0.1.1, 00:12:55, Serial0.1 O IA 200.3.0.0/16 [110/138] via 200.0.1.1, 00:12:55,Serial0.1
Les sorties de la commande show ip ospf neighbor (cf. listings 5.72 5.74) donnent ltat des voisins de chaque routeur qui est FULL/ -, ce qui signie quaucun deux na t dsign comme DR ou BDR, consquence des liaisons point point.
Listing 5.72. Voisins OSPF du routeur R1.
R1#show ip ospf neighbor Neighbor ID Pri 200.0.0.2 1 200.0.0.3 1 State Dead Time FULL/ - 00:00:30 FULL/ - 00:00:30 Address Interface 200.0.1.2 Serial1.2 200.0.1.6 Serial1.3
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.73. Voisins OSPF du routeur R2.
213
R2#show ip ospf neighbor Neighbor ID Pri 200.0.0.1 1 State Dead Time FULL/ - 00:00:35 Address Interface 200.0.1.1 Serial0.1
Les sous-interfaces peuvent tre congures en multipoint au lieu du point point. Mais il faut ajouter la conguration, comme dans le cas des interfaces simples, soit la commande neighbor, soit la commande ip ospf network broadcast.
La commande ip ospf network point-to-multipoint La mthode ci-aprs ne ncessite pas de sous-interfaces. Nanmoins elle repose sur la mme astuce selon laquelle chaque CVP est considr comme une liaison point point. Pour que le processus OSPF du routeur traite une interface Frame Relay congure avec plusieurs CVP, comme autant de liaisons point point, la commande ip ospf network point-to-multipoint doit tre introduite en mode de conguration dinterface. Ces liaisons point point nexistent que dans les structures internes au processus OSPF. Cette procdure est semblable celle qui utilise la commande ip ospf network broadcast, telle quon peut la voir sur les listings 5.75 5.77.
Listing 5.75. Conguration du routeur R1.
ip subnet-zero interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.0.1.1 255.255.255.248 encapsulation frame-relay ip ospf network point-to-multipoint frame-relay map ip 200.0.1.2 102 broadcast frame-relay map ip 200.0.1.3 103 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.1.0.0 0.0.255.255 area 1 area 0 range 200.0.0.0 255.255.0.0 area 1 range 200.1.0.0 255.255.0.0 ip classless
214
ip subnet-zero interface Loopback0 ip address 200.0.0.2 255.255.255.255 interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.2 255.255.255.248 encapsulation frame-relay ip ospf network point-to-multipoint frame-relay map ip 200.0.1.1 201 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.2.0.0 0.0.255.255 area 2 area 0 range 200.0.0.0 255.255.0.0 area 2 range 200.2.0.0 255.255.0.0 ip classless
Listing 5.77. Conguration du routeur R3.
ip subnet-zero interface Loopback0 ip address 200.0.0.3 255.255.255.255 interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.3 255.255.255.248 encapsulation frame-relay ip ospf network point-to-multipoint frame-relay map ip 200.0.1.1 301 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.3.0.0 0.0.255.255 area 3 area 0 range 200.0.0.0 255.255.0.0
Le listing 5.78 de la table de routage du routeur R2 ainsi que les listings 5.79 5.80 qui montrent ltat des voisins de chaque routeur, sont les mmes que prcdemment ; ces derniers indiquent en outre quil sagit de liaisons point point (aucun DR ou BDR lu).
Routage dynamique : protocoles tat des liens CHAPITRE 5 Listing 5.78. Table de routage du routeur R2.
215
R2#show ip route ... 200.0.0.0/32 is subnetted, 3 subnets O 200.0.0.1 [110/65] via 200.0.1.1, 00:39:15, Serial0 C 200.0.0.2 is directly connected, Loopback0 O 200.0.0.3 [110/129] via 200.0.1.1, 00:39:15, Serial0 C 200.2.0.0/24 is directly connected, Ethernet0 200.0.1.0/24 is variably subnetted, 3 subnets, 2 masks O 200.0.1.1/32 [110/64] via 200.0.1.1, 00:39:15, Serial0 C 200.0.1.0/29 is directly connected, Serial0 O 200.0.1.3/32 [110/128] via 200.0.1.1, 00:39:15, Serial0 O IA 200.1.0.0/16 [110/74] via 200.0.1.1, 00:38:37, Serial0 O IA 200.3.0.0/16 [110/138] via 200.0.1.1, 00:38:37, Serial0
Listing 5.79. Sortie de la commande show
R1#show ip ospf neighbor Neighbor ID Pri State Dead Time 200.0.0.2 1 FULL/ - 00:01:40 200.0.0.3 1 FULL/ - 00:01:50 Address Interface 200.0.1.2 Serial1 200.0.1.3 Serial1
R2#show ip ospf neighbor Neighbor ID Pri State Dead Time 200.0.0.1 1 FULL/ - 00:01:57
REMARQUE
La commande quon vient de dcrire est valable dans nimporte quel rseau NBMA. La topologie de la gure 5.9 avec deux routeurs connects par des CVP un routeur central nest quun cas parmi dautres.
Priorits dans les routeurs OSPF Un rseau NBMA na pas tre considr comme ayant de multiples liaisons point point. Mme quand il nest pas intgralement maill, il est possible de lui affecter un routeur en tant que DR. Le trait principal dun DR, cest le lien de proximit que tous les autres routeurs doivent former avec lui. De ce point de vue, le routeur R1 de la gure 5.9 semble le parfait candidat pour devenir ce routeur dsign. Mais le DR doit tre lu par les autres routeurs. Et a priori nous ne savons pas lequel parmi les trois de la gure 5.9 sera choisi. Fort opportunment, les spcications de OSPF tiennent compte de ce problme en donnant la possibilit dattribuer aux routeurs une priorit qui inuence leur choix. Cest le routeur la plus haute priorit, valeur congurable par ladministrateur rseau, qui lemporte. Le systme IOS de Cisco en conformit avec ces spcications dispose de la commande ip ospf priority <priorit> pour inuencer le choix dun routeur plutt quun autre. Si nous ne voulons pas quun routeur soit dsign, nous devons lui assigner la priorit 0. Dans notre cas,
216
les routeurs R2 et R3 auront donc cette priorit, de faon favoriser le routeur R1 qui, quant lui, aura la priorit 10 pour tre choisi comme DR. Les rseaux accs multiples qui ne disposent pas de la diffusion gnrale doivent prciser les voisins OSPF manuellement. Nous utilisons cet effet la commande neighbor en mode de conguration router ospf (cf. listing 5.81), comme nous lavons dj fait dans le cas des rseaux NBMA intgralement maills. Dans les listings de conguration 5.81 5.83 les nouvelles commandes sont marques par des lignes en italique.
Listing 5.81. Conguration du routeur R1.
ip subnet-zero interface Loopback0 ip address 200.0.0.1 255.255.255.255 interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial1 ip address 200.0.1.1 255.255.255.248 encapsulation frame-relay ip ospf network non-broadcast ip ospf priority 10 frame-relay map ip 200.0.1.2 102 broadcast frame-relay map ip 200.0.1.3 103 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.1.0.0 0.0.255.255 area 1 neighbor 200.0.1.2 neighbor 200.0.1.3 area 0 range 200.0.0.0 255.255.0.0 area 1 range 200.1.0.0 255.255.0.0 ip classless
Listing 5.82. Conguration du routeur R2.
ip subnet-zero interface Loopback0 ip address 200.0.0.2 255.255.255.255 interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.2 255.255.255.248 encapsulation frame-relay
217
ip ospf network non-broadcast ip ospf priority 0 frame-relay map ip 200.0.1.1 201 broadcast frame-relay map ip 200.0.1.3 201 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.2.0.0 0.0.255.255 area 2 area 0 range 200.0.0.0 255.255.0.0 area 2 range 200.2.0.0 255.255.0.0 ! neighbor 200.0.1.1 is no longer required. ip classless
Listing 5.83. Conguration du Routeur R3.
ip subnet-zero interface Loopback0 ip address 200.0.0.3 255.255.255.255 interface Ethernet0 ip address 200.3.0.1 255.255.255.0 interface Serial0 ip address 200.0.1.3 255.255.255.248 encapsulation frame-relay ip ospf priority 0 frame-relay map ip 200.0.1.1 301 broadcast frame-relay map ip 200.0.1.2 301 broadcast frame-relay lmi-type ansi router ospf 1 network 200.0.0.0 0.0.255.255 area 0 network 200.3.0.0 0.0.255.255 area 3 area 0 range 200.0.0.0 255.255.0.0 area 3 range 200.3.0.0 255.255.0.0 ! neighbor 200.0.1.1 is no longer required. ip classless
Les listings 5.84 5.86 de la commande show ip ospf neighbor sur les routeurs indiquent labsence du BDR qui na pas t dsign. Et nous pouvons y voir aussi que le routeur R1 a bien t lu comme DR, ce que nous souhaitions.
Listing 5.84. Sortie de la commande show
R1#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 200.0.0.2 0 FULL/DROTHER 00:01:45 200.0.1.2 Serial1 200.0.0.3 0 FULL/DROTHER 00:01:47 200.0.1.3 Serial1
218
R2#show ip ospf neighbor Neighbor ID Pri State 200.1.0.1 10 FULL/DR Dead Time Address Interface 00:01:45 200.0.1.1 Serial0
R3#show ip ospf neighbor Neighbor ID Pri State 200.1.0.1 10 FULL/DR Dead Time Address Interface 00:01:50 200.0.1.1 Serial0
La table de routage du routeur R2 sur le listing 5.87 montre que la connectivit globale est assure comme avant. Bien que laire 3 soit toujours accessible, cette fois-ci cest le routeur R3 qui est celui du saut suivant, et non plus le routeur R1. Celui-ci, en tant que DR, se base sur un rseau cens relier directement tous les routeurs, et fait transiter lannonce des routes disponibles dans laire 3 par le routeur R3 lui-mme. Pour que le routage se fasse correctement, nous devons donc fournir cette connexion directe , en ajoutant la commande supplmentaire frame-relay map ip <adresse IP distante> <DLCI>. Voir listings 5.82 et 5.83 (lignes en italique).
Listing 5.87. Table de routage du routeur R2.
R2#show ip route ... 200.0.0.0/32 O 200.0.0.1 C 200.0.0.2 O 200.0.0.3 C 200.2.0.0/24 200.0.1.0/29 C 200.0.1.0 O IA 200.1.0.0/16 O IA 200.3.0.0/16
is subnetted, 3 subnets [110/65] via 200.0.1.1, 00:16:52, is directly connected, Loopback0 [110/65] via 200.0.1.3, 00:16:52, is directly connected, Ethernet0 is subnetted, 1 subnets is directly connected, Serial0 [110/74] via 200.0.1.1, 00:16:52, [110/74] via 200.0.1.3, 00:16:52,
Serial0 Serial0
Serial0 Serial0
AVERTISSEMENT Cette dernire mthode pour congurer OSPF sur un rseau NBMA ne doit jamais tre utilise dans un
rseau oprationnel. Elle nest pas conforme aux spcications OSPF qui ncessitent que soient assures dans les rseaux accs multiples, la connectivit directe entre tous les routeurs, la dsignation dun BDR, etc. Dans cet ouvrage, cette mthode nest incluse que dans un but pdagogique.
6
Matrise du ux de donnes et des mises jour de routage
Solutions de conguration prsentes dans ce chapitre Filtrage avec les listes daccs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Listes daccs standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Listes daccs tendues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Listes daccs nommes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Contrler les mises jour de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution avec une mtrique par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution sens unique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redistribution avec ltrage des mises jour par listes daccs . . . . . . . . . . . . . Redistribution avec ltrage des mises jour par route-map . . . . . . . . . . . . . . . Redistribution avec linterface Null pour lagrgation de routes . . . . . . . . . . . . La redistribution avec EIGRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . De EIGRP vers IGRP dans un mme systme autonome (AS) . . . . . . . . . . . . . De EIGRP vers IGRP dans des systmes autonomes diffrents . . . . . . . . . . . . La redistribution avec OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . via des ASBR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . travers une aire de routage peu conne ou NSSA (Not So Stubby Area) . . . . 222 223 225 228 228 231 231 238 239 242 244 246 250 250 254 257 257 265
220
Il est parfois ncessaire dimplanter plusieurs protocoles de routage sur un mme routeur. Faire communiquer deux rseaux dentreprise utilisant respectivement IGRP et RIP ncessite par exemple dinstaller des routeurs multiprotocole entre ces rseaux. Autre cas de gure ncessitant des routeurs multiprotocole, celui dun rseau bas sur IGRP englobant des serveurs Unix qui requirent dobtenir les informations de routage compltes directement, au lieu de les obtenir par le routeur par dfaut (default gateway). La plupart des htes capables deffectuer du routage oprent avec des protocoles ouverts tels que RIP. Les informations de routage IGRP qui leur parviennent doivent donc tre pralablement converties en format RIP par des routeurs. Pour permettre lchange et la conversion dinformations de routage entre diffrents protocoles excuts sur le mme routeur, celui-ci doit tre explicitement congur cet effet. Un tel change nest pas automatique pour la simple raison que les protocoles qui se droulent dans un mme routeur ont des usages diffrents ; quils schangent des informations nest ni prvu ni souhaitable. En outre, les protocoles calculent leur mtrique diffremment, souvent dune manire incompatible avec les autres. RIP par exemple se base sur le nombre de sauts pour sa mtrique, tandis que des protocoles plus perfectionns tels que IGRP et EIGRP utilisent une formule complexe, dans laquelle interviennent des paramtres de dbit, de dlai, etc. Ces mtriques tant incompatibles, il faut convertir leurs valeurs. Ajoutons enn quil est impossible du fait de la codication des adresses IP de passer dun protocole sans classe un protocole classe sans conversion, linverse tant possible.
221
route dans ces derniers cas se fait par assignation dune valeur statique la mtrique, faisant perdre celle qui tait accumule dans le protocole source, lors du transfert vers le protocole rcepteur. Dans cet ouvrage, un rseau continu au sein duquel un protocole donn propage les mises jour de routage et dont la mtrique augmente, sera appel son domaine de mtrique . Si cette mtrique doit tre revalorise, on a atteint la frontire de ce domaine de mtrique. Par exemple, des rseaux interconnects dont les adresses de sous-rseau appartiennent un mme rseau desservi par un protocole classe et o les routes apprises ont une mtrique qui exprime un cot adquat, relvent du domaine de mtrique de ce protocole. Une aire du protocole OSPF est un autre exemple de domaine de mtrique propre celui-ci. Nous pouvons reformuler cette importante proprit des mtriques comme suit : Hormis le cas particulier de la redistribution entre IGRP et EIGRP, les domaines de mtrique des protocoles de routage sont dlimits par les routeurs qui pratiquent la redistribution.
La distance administrative de IGRP est infrieure celle de RIP, donc les routes IGRP "incorrectes" vont remplacer les routes originales RIP "correctes".
R1
s2
RIP
Les routes RIP sont redistribues vers IGRP par le routeur R1
IGRP
R4
s1
R3
copyright ditions Eyrolles
IGRP
IGRP
IGRP
222
Le rseau est compos de deux domaines, lun desservi par RIP, et lautre par IGRP. Supposons que le routeur R2 du domaine RIP change des informations de routage via ce protocole avec R1 qui les redistribue en IGRP dans son propre domaine bas sur ce dernier protocole. Si le routeur R1 y possde plus dune connexion, une boucle de routage peut se former. Les mises jour de routage IGRP que ce routeur envoie par lune de ses interfaces peuvent lui revenir par une deuxime interface aprs avoir travers le domaine IGRP. lorigine, le routeur R1 a appris les routes transportes dans ces mises jour par RIP, et elles ont t enregistres dans sa table de routage avec la distance administrative correspondante. Quand ces mmes routes lui reviennent, elles portent la distance administrative de IGRP, qui est infrieure celle de RIP. Ces routes de retour vont donc supplanter celles de RIP qui se trouvaient dans la table du routeur R1, pointant maintenant vers le domaine IGRP lui-mme, et supprimant ainsi la connectivit avec celui de RIP. La boucle nest pas perptuelle car lun des routeurs du domaine IGRP nira par augmenter la mtrique de ces routes factices, provoquant une avalanche de mises jour dclenches qui feront passer la mtrique de ces routes la valeur innie, ce qui les placera sous temporisation de maintien. Une fois celle-ci coule, la connectivit avec le domaine RIP sera rtablie pour un laps de temps et le cycle recommencera tant quaucune mesure ne sera prise pour le prvenir. Il existe aussi dautres circonstances de redistribution qui peuvent entraner ce phnomne de boucle et nous en donnerons un certain nombre dexemples dans la suite de ce chapitre. La boucle de routage nest pas un phnomne inluctable et peut ne jamais survenir. Dans lintroduction du chapitre 4, nous avons pass en revue les rgles appliques par les routeurs lors de lannonce de leurs mises jour. Lune delles stipule quun protocole classe qui nest pas lorigine dune route installe dans la table de routage ne doit pas la diffuser. Dans le cas de la gure 6.1, la mise jour de IGRP son retour ne parviendra probablement jamais sur linterface serial 2 du routeur R1. Quand la mise jour IGRP distante dun saut atteint le routeur R4, celuici a dj une route installe pour ce prxe dans sa table, apprise via IGRP en provenance du routeur R1. Cette route existante ayant une mtrique infrieure celle de la route candidate, ne sera pas remplace par cette dernire. Ce qui devrait empcher le routeur R4 dannoncer des routes factices vers le routeur R1. Mais celui-ci peut tomber en panne et avoir oubli lors de son redmarrage les routes apprises quand il tait en activit, lincitant prendre en compte les mauvaises routes venant du routeur R4, pour produire ce phnomne de boucle. La redistribution est viter autant que possible ou si elle est incontournable, une bonne prparation devrait viter les problmes voqus ci-dessus.
Solutions de conguration
Filtrage de trac avec listes daccs
Une liste daccs est une srie dexpressions conditionnelles dautorisation (permit) ou dinterdiction (deny) qui, appliques certaines caractristiques du trac, produit un rsultat logique vrai ou faux. La liste daccs peut servir diffrents usages comme, par exemple, ltrer le trac de donnes. Par exemple, les datagrammes IP transportant des donnes utilisateur sont mis au rebut sils font lobjet dune condition dinterdiction qui est vrie dans la liste daccs.
223
Plusieurs lignes dexpressions conditionnelles peuvent tre labores pour constituer une liste daccs avec chacune comportant une autorisation ou une interdiction. Quand le routeur applique cette liste sur un trac, il trouve une correspondance vrie pour lune des lignes de la liste et ignore le reste immdiatement. Listes daccs standard La liste daccs standard ne permet de comparer que ladresse IP source un agencement de bits particulier. Pour congurer une telle liste, les tapes sont les suivantes : 1. Cration dune liste daccs par la commande access-list <numro de liste entre 1 et 99> {permit|deny} <adresse IP source/masque gnrique>. Le masque gnrique (en notation dcimale pointe) est constitu de bits dont chaque position 1 signie que le bit correspondant dans ladresse IP source doit tre ignor lors de lapplication de ce masque. Il sagit dune convention inverse celle dun masque de rseau ou sous-rseau. Le dernier paramtre peut tre remplac par le mot clef host suivi du paramtre <adresse IP> qui quivaut <adresse IP> 0.0.0.0 correspondant une adresse IP individuelle. Si ladresse IP source est indiffrente, le mot clef any peut tre utilis, ayant la mme signication que 0.0.0.0 255.255.255.255, qui correspond toute adresse IP. Aprs une liste daccs contenant ou non plusieurs lignes dnies par la commande access-list <numro de liste entre 1 et 99>, le routeur insre automatiquement cette mme commande suivie des mots clefs deny any ( exclure tout ), mais non visible dans la conguration. Le routeur passe en revue une liste daccs jusqu trouver la premire correspondance, aprs laquelle il arrte sa recherche. Il renvoie alors la condition permit ou deny correspondante.
AVERTISSEMENT Une liste daccs qui comprend plusieurs lignes ne peut tre efface que globalement par la commande
inverse no access-list <numro de liste effacer>. Avant de modier une liste daccs, toute rfrence la concernant doit tre dsactive sur les interfaces. La rfrence une liste daccs inexistante peut produire un rsultat imprvisible suivant le contexte dexcution du systme IOS de Cisco.
2. En mode de conguration dinterface, par la commande ip access-group <numro de liste> [{in|out}], affecter la liste daccs linterface choisie. Les mots clefs in et out permettent de ltrer le trac en entre ou en sortie, respectivement. Si les mots clefs sont omis, la liste sapplique la sortie.
REMARQUE
Il est indispensable de dnir les lignes dont la correspondance savre vraie plus souvent en tte de liste daccs, de faon diligenter lexcution. Par exemple, si lon ne doit autoriser quun seul hte dun sousrseau particulier accder via un routeur, un service situ sur un autre sous-rseau, la liste doit commencer par ladresse individuelle de cet hte prcde du mot clef permit. Linterdiction se fait ensuite par le mot clef deny pour toutes les autres adresses du sous-rseau de cet hte.
En tenant compte de la remarque ci-dessus, examinons sur le listing 6.1 comment le routeur R de la gure 6.2 est congur pour nautoriser que lhte H3 accder lhte H1 situ sur le Token Ring.
224
Figure 6.2
Routeur R congur pour nautoriser que lhte H3 communiquer avec lhte H1.
H1 Adresse IP 10.1.0.15 R
H2 Adresse IP 10.2.0.111
H3 Adresse IP 10.2.0.120
10.1.0.0/24
10.2.0.0/24
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface TokenRing0 ip address 10.1.0.1 255.255.255.0 ip access-group 1 out ring-speed 16 access-list 1 permit 10.2.0.120 access-list 1 deny 10.2.0.0 0.0.0.255 access-list 1 permit any
La dernire ligne du listing 6.1 nest pas utile, mais elle a t nanmoins incluse au cas o dautres segments connects au routeur R auraient besoin daccder lhte H1. La commande ping envers lhte H1 partir de lhte H2 naboutit pas. Comme on peut le voir sur le listing 6.2, les paquets ping ne sont pas simplement mis au rebut. Si ctait le cas, le message derreur serait Request timed out ( temporisation de requte coule) au lieu de destination unreachable (destination inaccessible) qui est afch en sortie.
Listing 6.2. Sortie de la commande ping
C:\>ping 10.1.0.15 Pinging 10.1.0.15 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.2.0.1: 10.2.0.1: 10.2.0.1: 10.2.0.1: Destination Destination Destination Destination net net net net unreachable. unreachable. unreachable. unreachable.
Sur la gure 6.3, on peut voir sur la fentre de lanalyseur de protocole (Microsoft Network Monitor) utilis en mme temps que lexcution de la commande ping sur lhte H2, quil reoit en retour ses paquets ping, le message derreur de type 3 du protocole ICMP qui correspond destination unreachable (destination inaccessible), et dont le code hexadcimal 0x0D (13 en dcimal) ne correspond aucune valeur rpertorie dans la table 1.5 du chapitre 1.
225
La fentre principale du Network Monitor afche la trace de la trame ICMP qui contient le message derreur de type 3 destination unreachable envoy par le routeur R lhte H2.
Listes daccs tendues Pour un contrle daccs plus granulaire, les listes daccs tendues permettent de ltrer les paquets au niveau de la couche transport du modle OSI (les ports source et destination), tout en prcisant ladresse IP de destination, ainsi que dautres paramtres. La procdure est la mme que pour la liste daccs standard, avec la syntaxe suivante : access-list <numro de liste entre 100 et 199> {permit|deny} <protocole sur IP> <adresse IP source/masque gnrique> [<oprateur>[<port>]] <adresse IP destination/masque gnrique> [<oprateur> [<port>]] [established] [log] Le protocole sur IP est un nombre entre 0 et 255 ou son nom quivalent parmi ceux du tableau 6.1 ; loprateur est une fonction conditionnelle sous la forme eq (gal ), lt (plus petit que), gt (plus grand que), ne (non gal ) ou range (inclusif). Si ce dernier mot clef est utilis, il doit tre suivi de deux numros de port. Le mot clef established nest valable que pour TCP ; le dernier mot clef log permet de prciser si les correspondances trouves pour la liste daccs doivent tre consignes sur le serveur syslog.
REMARQUE
Le numro de port peut aussi tre remplac par son nom. Par exemple, telnet au lieu de 23.
Seuls les protocoles qui utilisent directement IP sont pris en compte. Par exemple, RIP napparat pas dans le tableau 6.1 car il utilise UDP. Pour les options propres chaque protocole, se reporter la documentation de Cisco.
226
Description
Tout protocole (cest--dire que le champ protocole ne sera pas analys) Transmission Control Protocol User Datagram Protocol Internet Control Message Protocol Interior Gateway Routing Protocol de Cisco Enhanced IGRP (version amliore de IGRP) Open Shortest Path First protocol Protocole de mise en tunnel Cisco Protocole de mise en tunnel ip dans ip Inernet Gateway Message Protocol Protocole de mise en tunnel ip dans ip compatible KA9Q NOS Protocole dauthentication den-tte (Athentication Header Protocol) Encapsulation scuritaire de la charge utile (Encapsulation Security Payload) Protocole de compression de charge utile (Payload Compression Protocol)
Comme dans le cas de la liste daccs standard, le mot clef host dsigne ladresse individuelle dun hte et le mot clef any quivaut toute adresse ; une ligne implicite access-list ip deny any se trouve galement en n de liste.
REMARQUE
Le tableau 6.1 est extrait du Cisco IOS 12.0 (2a). En fonction de la version utilise, la liste des mots cls peut tre diffrente.
Nous allons maintenant modier la liste daccs du rseau de la gure 6.2 pour nautoriser que la session telnet et les services de jour (daytime) de lhte H1 vers lhte H3. Toute autre communication dans le rseau doit tre compltement disponible. Le listing 6.3 donne un moyen parmi dautres de dnir la liste daccs (les quatre dernires lignes en italique) selon les directives cites plus haut. Elle est applique en entre du trac de linterface Token Ring par la commande ip access-group <numro de liste> in.
Listing 6.3. Conguration du routeur R.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface TokenRing0 ip address 10.1.0.1 255.255.255.0 ip access-group 100 in ring-speed 16 access-list access-list access-list access-list 100 100 100 100 permit permit deny permit tcp any host 10.2.0.120 eq telnet tcp any host 10.2.0.120 eq daytime ip any host 10.2.0.120 ip any any
227
La commande ping vers lhte H3 partir de lhte H1 choue, comme on peut le voir sur le listing 6.4.
Listing 6.4. Liste daccs tendue applique au trac entrant sur linterface Token Ring du routeur R qui interdit la commande ping de lhte H1 vers lhte H3.
C:\>ping 10.2.0.120 Pinging 10.2.0.120 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.1.0.1: 10.1.0.1: 10.1.0.1: 10.1.0.1: Destination Destination Destination Destination net net net net unreachable. unreachable. unreachable. unreachable.
Mais si nous ouvrons une session telnet de lhte H1 vers lhte H3, la communication est possible, comme le montre le listing 6.5.
Listing 6.5. Pas de blocage du trac telnet entre les htes H1 et H3.
C:\>telnet 10.2.0.120 Trying 10.2.0.120... Connected to 10.2.0.120. Escape key is Ctrl-]. Welcome to the Telnet Service on THUNDER Username:
Ni la session telnet, ni la commande ping ne sont bloques, quand elles sont utilises de lhte H1 vers lhte H2 (cf. listing 6.6).
Listing 6.6. Session telnet et commande ping accessibles partir de lhte H1 vers lhte H2.
C:\>ping 10.2.0.111 Pinging 10.2.0.111 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.2.0.111: 10.2.0.111: 10.2.0.111: 10.2.0.111: bytes=32 bytes=32 bytes=32 bytes=32 time<10ms time<10ms time<10ms time<10ms TTL=127 TTL=127 TTL=127 TTL=127
C:\>telnet 10.2.0.111 Trying 10.2.0.111... Connected to 10.2.0.111. Escape key is Ctrl-]. Welcome to the Telnet Service on HUGEWAVE Username:
228
Listes daccs nommes Un nouveau format de liste daccs a t introduit partir de la version 11.2 du systme IOS de Cisco, appel liste nomme, ce qui signie quun nom peut tre attribu la liste tout entire au lieu dun numro. Les fonctionnalits restent cependant les mmes. Pour crer une liste daccs nomme, on doit procder aux tapes suivantes : 1. La commande ip access-list {standard|extended} <nom de liste> permet dentrer en mode de conguration de liste. 2. Une fois quon se trouve sous le mode de conguration de liste, on dnit une ou plusieurs lignes de contrle daccs suivant le format appropri qui dpend de loption choisie dans la premire tape : standard ou tendue (extended).
REMARQUE
Une ligne implicite access-list ip deny any (any) est place automatiquement en n de liste comme pour les listes standard et tendue.
Nous utiliserons dans les exemples qui suivent, aussi bien les listes daccs par numro que par nom.
REMARQUE
Il est possible de donner un numro la place dun nom comme argument la commande ip access-list ; dans ce cas, IOS reformate la liste en tant que liste standard ou tendue, suivant le numro, avant de la stocker en RAM et NVRAM.
Il nest pas conseill dappliquer un ltre en sortie pour des mises jour envoyes par des protocoles tat des liens tel que OSPF car celui-ci ncessite denvoyer la base de donnes dtat des liens dans son intgralit ses voisins de proximit.
Prenons lexemple du rseau illustr sur la gure 6.4. Tous les routeurs y sont congurs avec le protocole IGRP. Notre but est dinterdire au routeur R3 denvoyer ses mises jour concernant les liaisons srie qui le relient aux routeurs R1 et R2 vers le routeur R4. Les listings 6.7 6.10 montrent la conguration de chacun de ces routeurs. Sur le listing 6.9, les lignes en
229
italique mettent en vidence la dnition de la liste daccs et son enregistrement dans le processus de routage IGRP.
Figure 6.4
Segment 1 10.1.0.0/24 Segment 2 10.2.0.0/24
Filtrage des mises jour du routeur R3 en sortie de son interface Token Ring pour les rseaux 10.3.0.0/24 et 10.4.0.0/24.
e0
R1 R2
e0
s1
s0
s1 R3 s0
s1
s0
Segment 3 10.3.0.0/24
Segment 4 10.4.0.0/24
to0
Segment 5 10.5.0.0/24
to0
R4
e0
Segment 6 10.6.0.0/24
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.8. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.9. Conguration du routeur R3.
230
ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 10.5.0.1 255.255.255.0 ring-speed 16 router igrp 10 network 10.0.0.0 distribute-list 1 out TokenRing0 access-list 1 deny 10.3.0.0 0.0.255.255 access-list 1 deny 10.4.0.0 0.0.255.255 access-list 1 permit any
Listing 6.10. Conguration du routeur R4.
interface Ethernet0 ip address 10.6.0.1 255.255.255.0 interface TokenRing0 ip address 10.5.0.2 255.255.255.0 ring-speed 16 router igrp 10 network 10.0.0.0
Si nous examinons la table de routage du routeur R4 sur le listing 6.11, nous y constatons quil ne reoit aucune mise jour pour les prxes rseau 10.3.0.0/24 et 10.4.0.0/24.
Listing 6.11. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets I 10.2.0.0 [100/8639] via 10.5.0.1, 00:00:35, TokenRing0 I 10.1.0.0 [100/8639] via 10.5.0.1, 00:00:35, TokenRing0 C 10.6.0.0 is directly connected, Ethernet0 C 10.5.0.0 is directly connected, TokenRing0
Si nous entrons la commande debug ip igrp transactions sur le routeur R3, nous voyons quil nenvoie pas les prxes rseau des liaisons srie comme en atteste lextrait sur le listing 6.12.
Listing 6.12. Sortie de la commande debug ip igrp transactions sur le routeur R3 indique que les prxes 10.3.0.0/24 et 10.4.0.0/24 sont exclus des mises jour envoyes sur linterface Token Ring.
... IGRP: sending update to 255.255.255.255 via TokenRing0 (10.5.0.1) subnet 10.2.0.0, metric=8576 subnet 10.1.0.0, metric=8576
231
La redistribution
Plusieurs sources dinformations de routage peuvent tre redistribues lune vers lautre. Les principales sont les protocoles dynamiques, les routes statiques et les routes dinterfaces connectes. Nous allons tudier comment se comportent ces sources quand il y a redistribution, la faon den contrler les informations de routage, ainsi que les problmes potentiels de boucle qui en rsultent. La redistribution de base Nous avons vu dans la premire partie de ce chapitre que la redistribution consiste convertir une information de routage dune source de protocole une autre, et inversement, le cas chant. Cependant, certaines sources ne peuvent tre redistribues que dans un sens. Il sagit de routes statiques et celles dinterfaces connectes dont la redistribution se fait vers un protocole de routage dynamique. La rciproque tant sans objet. La commande pour la redistribution de base se fait par redistribute <source de linformation de routage> metric <mtrique spcique au protocole>, en mode de conguration routeur. Le premier paramtre dsigne la source du protocole dont les mots clefs se trouvent dans le tableau 6.2.
REMARQUE
Le tableau 6.2 est extrait du Cisco IOS 12.0 (2a). Suivant la version utilise les mots clefs disponibles peuvent tre diffrents.
Le paramtre <mtrique spcique> possde un format variable qui peut comporter plusieurs lments suivant le protocole dans lequel linformation de routage se trouve redistribue. Pour IGRP ceux-ci sont le dbit (0 ou le nombre de Kbit/s), le dlai (en unit de 10s), la abilit (0 255), la charge (0 255) et la MTU de 1500 octets.
REMARQUE
Le mot clef metric et son paramtre associ sont optionnels. Sil est omis, la mtrique spcique prend comme valeur par dfaut 0 ; sauf si la commande default-metric est utilise. Celle-ci est dcrite dans les sections suivantes.
Tableau 6.2. Mots clefs disponibles pour le paramtre <source de linformation de routage> de la commande redistribute.
Mot clef
bgp connected egp eigrp igrp iso-igrp isis odr ospf rip static mobiles
232
Prenons lexemple de la gure 6.5 o le rseau est compos de deux domaines de routage. Les routeurs R1 et R2 sont du domaine 1 (IGRP), le routeur R4 est du domaine 2 (RIP), tandis que le routeur R3, appartenant aussi bien lun qu lautre, est charg par consquent de la redistribution dinformations de routage entre ces deux protocoles.
Figure 6.5
Redistribution dinformations de routage entre les deux domaines RIP et IGRP par le routeur R3.
Segment 1 10.1.0.0/24
Segment 2 10.2.0.0/24
e0
R1
Domaine de routage 1
R2
e0
s1
s0 Segment 3 10.3.0.0/24
s1 R3 s0
s0 s1 Segment 4 10.4.0.0/24
to0
Segment 5 200.5.0.0/24
e0
Segment 6 200.6.0.0/24
Les listings 6.13 6.16 contiennent les congurations des quatre routeurs ; les lignes en italique du listing 6.15 mettent en vidence la commande redistribute sur le routeur R3.
Listing 6.13. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.14. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.15. Conguration du routeur R3.
233
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip redistribute igrp 10 metric 1 network 200.5.0.0 router igrp 10 redistribute rip metric 10000 1 255 1 1500 network 10.0.0.0
Listing 6.16. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip network 200.5.0.0 network 200.6.0.0
Si nous examinons la table de routage du routeur R4 sur le listing 6.17, nous ny voyons quune seule route apprise via RIP (code avec la lettre R ), qui est 10.0.0.0. Cette route visiblement provient de la redistribution mutuelle entre les deux domaines RIP et IGRP, dont le routeur R3 a la charge. De mme, la table de routage du routeur R1 sur le listing 6.18 contient deux routes codes avec la lettre I pour IGRP, qui sont 200.5.0.0/24 et 200.6.0.0/24.
Listing 6.17. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 10.0.0.0/8 [120/1] via 200.5.0.1, 00:00:10, TokenRing0
Listing 6.18. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/24 is subnetted, 4 subnets I 10.2.0.0 [100/10576] via 10.3.0.1, 00:00:04, C 10.3.0.0 is directly connected, Serial0 C 10.1.0.0 is directly connected, Ethernet0 I 10.4.0.0 [100/10476] via 10.3.0.1, 00:00:04, I 200.5.0.0/24 [100/8539] via 10.3.0.1, 00:00:04, I 200.6.0.0/24 [100/8477] via 10.3.0.1, 00:00:04,
234
La table de routage du routeur R3, quant elle, contient toutes les routes de tous les rseaux apprises via les sources de protocole dorigine (IGRP, RIP et interfaces connectes).
Listing 6.19. Table de routage du routeur R3.
R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:14, TokenRing0 10.0.0.0/24 is subnetted, 4 subnets I 10.2.0.0 [100/8576] via 10.4.0.2, 00:00:20, Serial0 C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:01:00, Serial1 C 10.4.0.0 is directly connected, Serial0
ASTUCE
Plusieurs commandes redistribute peuvent tre introduites en mode de conguration routeur pour le mme protocole, chacune pour une source diffrente dinformations de routage.
Phnomne de boucle rsultant de la redistribution Nous avons dj voqu au dbut de ce chapitre une situation typique o un phnomne de boucle de routage peut se produire lors de la redistribution. Nous allons lillustrer dans ce qui suit par un exemple concret qui montre galement son caractre oscillatoire. Le rseau de la gure 6.6 a t lgrement modi. Les segments 1 et 2 ont t fusionns pour ne faire quun seul qui relie prsent les routeurs R1 et R2. Ils vont donc changer des mises jour de routage du protocole IGRP. Le reste de la topologie est celui de la gure 6.5. Voyons maintenant ce qui induit la boucle de routage.
Figure 6.6
Segment 1 10.1.0.0/24
Domaine de routage 1 avec protocole IGRP se trouve coup du domaine de routage 2 avec protocole RIP en cas de boucle.
e0
R1
Domaine de routage 1
R2
e0
s1
s0 Segment 3 10.3.0.0/24
s1 R3 s0
s0 s1 Segment 4 10.4.0.0/24
to0
Segment 5 200.5.0.0/24
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.20. Conguration modie du routeur R2.
235
interface Ethernet0 ip address 10.1.0.2 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Le routeur R1 est connect en premier au segment 1, puis au segment 3. Il reoit de ce fait la mise jour en provenance du routeur R2 en premier. Vrions la table de routage du routeur R3 sur le listing 6.21 qui prsente les symptmes du phnomne de boucle. Le prxe rseau 200.6.0.0/24 pointe sur les routeurs R1 et R2 alors que cest le routeur R3 lui-mme qui peut y accder.
Listing 6.21. Phnomne de boucle visible dans la table de routage du routeur R3.
R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 I 200.6.0.0/24 [100/10577] via 10.4.0.2, 00:04:43, Serial0 [100/10577] via 10.3.0.2, 00:01:12, Serial1 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.4.0.2, 00:00:30, Serial0 [100/8576] via 10.3.0.2, 00:01:13, Serial1 C 10.4.0.0 is directly connected, Serial0
Le contenu de la table de routage du routeur R3 vient de subir un changement comme on peut la voir sur le listing 6.22. Apparemment, lun des routeurs impliqus dans cette duperie a augment la mtrique de la route pour le rseau 200.6.0.0/24 provoquant ainsi une avalanche de mises jour dclenches faisant passer la mtrique une valeur innie. La route se trouve mise sous temporisation de maintien (hold down) comme latteste lindication possibly down de la table de routage la concernant.
Listing 6.22. Table de routage du routeur R3 indiquant que la route pour le rseau 200.6.0.0 est sous temporisation de maintien.
R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 I 200.6.0.0/24 is possibly down,routing via 10.4.0.2,Serial0 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.4.0.2, 00:00:02, Serial0 [100/8576] via 10.3.0.2, 00:00:57, Serial1 C 10.4.0.0 is directly connected, Serial0
Procdons maintenant au vidage de la table de routage du routeur R3 par la commande clear ip route * et afchons de nouveau son contenu. Il semble retourner la normale, mais pas pour longtemps.
236
R3#clear ip route * R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:07, TokenRing0 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.4.0.2, 00:00:07, Serial0 [100/8576] via 10.3.0.2, 00:00:07, Serial1 C 10.4.0.0 is directly connected, Serial0
Afchons les tables de routage des routeurs R1 et R2 (cf. listings 6.24 et 6.25) ; celle du routeur R1 parat correcte, mais celle du routeur R2 prsente une anomalie. En effet, la route pour le rseau 200.6.0.0/24 y est mise pour le moment sous temporisation de maintien, bien quelle soit tout fait accessible via le routeur R3 ; ceci est une consquence de la boucle qui avait disparu auparavant.
Listing 6.24. Table de routage du routeur R1.
R1#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial0 C 10.1.0.0 is directly connected, Ethernet0 I 10.4.0.0 [100/8576] via 10.1.0.2, 00:00:17, Ethernet0 I 200.5.0.0/24 [100/8539] via 10.3.0.1, 00:00:35, Serial0 I 200.6.0.0/24 [100/8477] via 10.3.0.1, 00:04:42, Serial0
Listing 6.25. Table de routage du routeur R2 indiquant que la route pour le rseau 200.6.0.0 est sous temporisation de maintien (possibly down).
R2#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets I 10.3.0.0 [100/8576] via 10.1.0.1, 00:00:48, Ethernet0 C 10.1.0.0 is directly connected, Ethernet0 C 10.4.0.0 is directly connected, Serial1 I 200.5.0.0/24 [100/8539] via 10.4.0.1, 00:00:12, Serial1 I 200.6.0.0/24 is possibly down,routing via 10.4.0.1,Serial1
Aussitt que la temporisation de maintien aura expir pour la route pointant vers le rseau 200.6.0.0, le routeur R2 enverra une mise jour positive au routeur R3 qui va supplanter la route apprise via RIP, qui tait correcte. Ceci va crer une boucle temporaire jusqu ce que lun des routeurs augmente la mtrique de cette route, provoquant une avalanche de mises jour dclenches, le passage de sa mtrique la valeur innie (0xFFFFFFFF en hexadcimal), sa mise sous temporisation de maintien pour 280 secondes. Celle-ci, arrive chance va dclencher nouveau le mme cycle.
237
Tant que la temporisation de maintien pour une route nest pas coule, le routeur annonce celle-ci avec une mtrique de valeur innie, mais nen accepte aucune mise jour. Par consquent, si un protocole autre que celui qui a plac cette route sous temporisation, mais dont la distance administrative est plus grande, tente de la remplacer par une route correcte vers la mme destination, cette route ne sera pas prise en compte.
Redistribution de routes statiques et dinterfaces connectes En mode de conguration routeur du protocole dynamique vers lequel on veut redistribuer les routes statiques et dinterfaces connectes, les commandes redistribute static et redistribute connected sont utiliser, respectivement. Il existe cependant un cas particulier qui concerne les routes statiques pointant sur une interface. Ces routes sont automatiquement redistribues vers le protocole dynamique si leur prxe rseau correspond largument de la commande network introduite en mode de conguration routeur de ce protocole. Dans le cas contraire, une commande explicite redistribute static est ncessaire. Sur la gure 6.7 les routeurs R1 et R2 utilisent le protocole de routage IGRP, en plus de certaines routes statiques congures sur le premier dont deux pointent sur des interfaces. Les listings 6.26 et 6.27 montrent leur conguration.
Figure 6.7
Exemple de rseau o le routeur R1 possde plusieurs routes statiques redistribues vers le protocole de routage dynamique IGRP.
R1
s0 e0
Segment 3 10.3.0.0/24
s1 e0
R2
Segment 1 10.1.0.0/24
Segment 2 10.2.0.0/24
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 100 network 10.0.0.0 ip route 10.100.0.0 255.255.255.0 Ethernet0 ip route 10.110.0.0 255.255.255.0 10.1.0.2 ip route 172.16.1.0 255.255.255.0 Ethernet0
Listing 6.27. Conguration du routeur R2.
238
ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 router igrp 100 network 10.0.0.0
La table de routage du routeur R2 sur le listing 6.28 ne possde quune seule route statique (10.100.0.0/24 pointant sur linterface Ethernet 0) redistribue parmi les trois du routeur R1 car elle est la seule correspondre la commande network introduite sous le mode de conguration routeur du protocole IGRP sur ce routeur R1, conrmant la rgle nonce plus haut..
Listing 6.28. Table de routage du routeur R2.
R2#show ip route ... 10.0.0.0/24 is subnetted, 5 subnets C 10.2.0.0 is directly connected, Ethernet0 C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:00:08, Serial1 C 10.4.0.0 is directly connected, Serial0 I 10.100.0.0 [100/8576] via 10.3.0.2, 00:00:08, Serial1
Si nous ajoutons la commande redistribute static metric 10000 1 255 1 1500 en mode de conguration routeur (commande router igrp 100) sur le routeur R1, nous verrons que ses trois routes statiques vont apparatre avec le code I sur la table de routage du routeur R2 (cf. listing 6.29).
Listing 6.29. Table de routage du routeur R2.
R2#show ip route ... I 172.16.0.0/16 [100/8477] via 10.3.0.2, 00:00:28, Serial1 10.0.0.0/24 is subnetted, 6 subnets C 10.2.0.0 is directly connected, Ethernet0 C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:00:29, Serial1 C 10.4.0.0 is directly connected, Serial0 I 10.110.0.0 [100/8477] via 10.3.0.2, 00:00:29, Serial1 I 10.100.0.0 [100/8477] via 10.3.0.2, 00:00:29, Serial1
REMARQUE
Les routes statiques pointant sur des interfaces ne sont pas automatiquement redistribues vers le protocole OSPF mme si leurs prxes rseau correspondent aux commandes OSPF network.
Redistribution avec mtrique par dfaut Il est possible dattribuer une mtrique par dfaut si on omet le mot clef metric et son paramtre associ dans la commande redistribute. Une deuxime commande default-metric <mtrique spcique au protocole> doit tre introduite la suite, toujours en mode de conguration routeur du protocole concern, et son paramtre renseign selon le format adquat.
239
La modication de la conguration du routeur R3 de la gure 6.5 daprs ce qui est dit plus haut se trouve sur le listing 6.30.
Listing 6.30. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip redistribute igrp 10 network 200.5.0.0 default-metric 3 router igrp 10 redistribute rip network 10.0.0.0 default-metric 10000 1 255 1 1500
Nous pouvons constater sur le listing 6.31 de la table de routage du routeur R2 (caractre en italique) que la mtrique pour la route du rseau 10.0.0.0/8 apprise via IGRP, nest plus 1 comme auparavant (cf. listing 6.17) mais 3 qui est largument de la commande default-metric sur le routeur R3.
Listing 6.31. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 10.0.0.0/8 [120/3] via 200.5.0.1, 00:00:03, TokenRing0
Redistribution sens unique Comme nous lavons voqu au tout dbut de ce chapitre, il arrive que des htes dans un rseau aient besoin dinformations de routage par un protocole dynamique, au lieu dtre congurs avec une adresse de passerelle par dfaut. Dans la plupart de ces cas, il sagit dun protocole de routage dit ouvert comme RIP. Pour les routeurs, il peut sagir dun autre protocole non compatible tel que IGRP. Les routes apprises par ce dernier doivent donc tre redistribues vers le protocole RIP sur tous les segments o rsident les htes, et non linverse. Lors dune telle redistribution sens unique, il serait prfrable de sassurer que les routeurs ne prennent pas en compte les mises jour RIP quils reoivent de ces htes, en retour. En mode de conguration routeur du protocole RIP, par la commande distance 255 on peut mettre ces mises jour au rebut. Cette action est indispensable si lon veut empcher que la table de routage de ces routeurs soit remplie par ces informations.
240
Prenons lexemple du rseau de la gure 6.8 o lhte H1 multidomicili reoit les mises jour par RIP tandis que les routeurs excutent le protocole IGRP. Cest un cas qui ressemble celui du chapitre 4 de la section portant sur la discrimination des mises jour entrantes , la diffrence que lhte H1 et les routeurs y excutaient le mme protocole RIP. Notre but prsent est dliminer les mises jour concernant le prxe rseau du segment 7 en provenance de lhte H1 vers le routeur tout en chargeant celui-ci de la tche de redistribution des informations de IGRP vers RIP.
Figure 6.8
Hte H1 multidomicili dont le protocole RIP reoit les mises jour de routage redistribues par les routeurs connects au segment Token ring.
Segment 1 10.1.0.0/24
Segment 2 10.2.0.0/24
e0
R1 R2
e0
s1
s0
s1 R3 s0
s1
s0
Segment 3 10.3.0.0/24
Segment 4 10.4.0.0/24
to0
Segment 5 10.5.0.0/24
to0
R4 Segment 7 172.16.1.0/24
e0
Segment 6 10.6.0.0/24
Les listings 6.32 6.35 contiennent les congurations des quatre routeurs.
Listing 6.32. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.33. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.34. Conguration du routeur R3.
241
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 10.5.0.1 255.255.255.0 router rip redistribute igrp 10 metric 3 passive-interface Serial0 passive-interface Serial1 network 10.0.0.0 distance 255 router igrp 10 network 10.0.0.0
Listing 6.35. Conguration du routeur R4.
interface Ethernet0 ip address 10.6.0.1 255.255.255.0 interface TokenRing0 ip address 10.5.0.2 255.255.255.0 ring-speed 16 router rip redistribute igrp 10 metric 3 passive-interface Ethernet0 network 10.0.0.0 router igrp 10 network 10.0.0.0
Notons au passage que le routeur R4 ne contient pas la commande distance 255 en mode de conguration routeur du protocole RIP (routeur rip). Cest une omission volontaire qui a pour but de montrer que sa table de routage va contenir du fait de labsence de cette commande les mises jour en provenance de lhte H1. On peut voir sur le listing 6.36 que le routeur R4 a effectivement une route pour le segment 7 (ligne en italique).
Listing 6.36. Table de routage du routeur R4.
R4#show ip route ... R 172.16.0.0/16 [120/2] via 10.5.0.15, 00:00:07, 10.0.0.0/24 is subnetted, 6 subnets I 10.2.0.0 [100/8639] via 10.5.0.1, 00:01:10, I 10.3.0.0 [100/8539] via 10.5.0.1, 00:01:10, I 10.1.0.0 [100/8639] via 10.5.0.1, 00:01:10, C 10.6.0.0 is directly connected, Ethernet0 I 10.4.0.0 [100/8539] via 10.5.0.1, 00:01:10, C 10.5.0.0 is directly connected, TokenRing0
242
Par contre, la table de routage du routeur R3 sur le listing 6.37 na aucune route pour le prxe rseau 172.16.0.0/16 car la commande distance 255 a bien t introduite sur ce routeur.
Listing 6.37. Table de routage du routeur R3.
R3#show ip route ... 10.0.0.0/24 is subnetted, 6 subnets I 10.2.0.0 [100/8576] via 10.4.0.2, 00:01:05, Serial0 C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:00:10, Serial1 I 10.6.0.0 [100/1163] via 10.5.0.2, 00:00:08, TokenRing0 C 10.4.0.0 is directly connected, Serial0 C 10.5.0.0 is directly connected, TokenRing0
la page : 131
Redistribution avec ltrage des mises jour de routage par listes daccs Nous avons dj voqu plus haut la ncessit dune redistribution plus contrle. On pourrait envisager de ne redistribuer que certaines routes prcisment au moyen dune liste daccs. La procdure suivre est la suivante : Par la commande access-list dnir la liste daccs comportant les lignes qui autorisent ou refusent les prxes rseau, suivant le mot clef permit ou deny. Par la commande distribute-list <numro de liste daccs> out <source de linformation de routage>, appliquer la liste dnie ltape prcdente au protocole correspondant largument du dernier paramtre qui, le cas chant, peut requrir un numro de processus ou de systme autonome. Cette source peut tre une interface connecte (connected) ou une route statique (static). Prenons comme exemple le rseau de la gure 6.5 en ajoutant, cette fois-ci, aux routeurs R1 et R2 des interfaces de rebouclage (loopback) dont les adresses IP sont 172.16.0.0/24 et 172.17.0.0/24, respectivement. Ces routeurs sont congurs pour diffuser les mises jour de ces prxes via IGRP. Nous allons donc les ltrer sur le routeur R3 de faon ce quils ne soient pas redistribus dans RIP. Les listings 6.38 6.41 montrent le contenu des congurations pour ces routeurs. Notons que la liste daccs est nomme au lieu dtre identie par un numro.
Listing 6.38. Conguration du routeur R1.
interface Loopback0 ip address 172.16.1.1 255.255.255.0 interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 10 network 10.0.0.0 network 172.16.0.0
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.39. Conguration du routeur R2.
243
interface Loopback0 ip address 172.17.1.1 255.255.255.0 interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0 network 172.17.0.0
Listing 6.40. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip redistribute igrp 10 metric 1 network 200.5.0.0 distribute-list no172 out igrp 10 router igrp 10 redistribute rip metric 10000 1 255 1 1500 network 10.0.0.0 ip access-list standard no172 deny 172.16.0.0 0.15.255.255 permit any
Listing 6.41. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip network 200.5.0.0 network 200.6.0.0
244
La table de routage du routeur R4 sur le listing 6.42 ne contient aucune route pour les adresses IP dinterfaces de rebouclage dnies sur les routeurs R1 et R2, suite lapplication du ltre.
Listing 6.42. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 10.0.0.0/8 [120/1] via 200.5.0.1, 00:00:05, TokenRing0
Si on consulte la table de routage du routeur R3 sur le listing 6.43, on peut bien y voir les deux prxes rseau dinterface de rebouclage dont les routes ont t apprises via IGRP.
Listing 6.43. Table de routage du routeur R3.
R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:05, TokenRing0 I 172.17.0.0/16 [100/8976] via 10.4.0.2, 00:01:18, Serial0 I 172.16.0.0/16 [100/8976] via 10.3.0.2, 00:00:09, Serial1 10.0.0.0/24 is subnetted, 4 subnets I 10.2.0.0 [100/8576] via 10.4.0.2, 00:01:18, Serial0 C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:00:09, Serial1 C 10.4.0.0 is directly connected, Serial0
Redistribution avec ltrage des mises jour de routage par squence conditionnelle Un autre moyen de ltrer les mises jour consiste dnir une squence conditionnelle (route map) comportant une clause (ou plusieurs) dexpressions dont chacune, si elle est vrie, permet de modier par une action (set) ou plus, les caractristiques des routes redistribues. Dans une clause, chaque ligne doit produire un rsultat logique vrai pour que la route correspondante soit redistribue en excutant un jeu dactions ou une seule selon le cas. Si une clause de la squence conditionnelle ne se vrie pas, le routeur passe la suivante, jusqu en trouver une dont chaque ligne produit un rsultat vrai. Si aucune ne se vrie, la route concerne nest pas redistribue. Une clause qui ne comporte aucune expression donne ladmission toutes les routes.
REMARQUE
La dnition sur la squence conditionnelle donne dans le texte ne prsente quun aspect de celle-ci en tant que ltre de mises jour. Dautres fonctions y sont prvues mais ne sont pas mentionnes pour faciliter la comprhension dans le contexte dutilisation qui nous concerne.
Par dfaut, chaque squence conditionnelle est cense ne produire un rsultat logique vrai ou faux que sur une autorisation qui peut tre explicite (permit). On peut galement dnir une clause dinterdiction (deny) qui, si elle savre vraie, fera en sorte que la route correspondante ne soit pas redistribue, tout en terminant la consultation de la squence qui ne sera pas poursuivie plus loin.
245
Pour utiliser la squence conditionnelle en tant que ltre de mises jour, les tapes sont les suivantes : 1. Par la commande route-map <nom den-tte de squence> [{permit|deny}] <numro de clause>, il faut crer un nom den-tte avec un numro de clause. 2. Par la commande match (comparaison) suivie des paramtres adquats, dnir la condition remplir, ce qui se fait souvent par match ip address {<numro de liste daccs>|<nom de liste daccs>}. Une comparaison sera faite entre le prxe rseau et la plage dadresses IP contenue dans la liste daccs. Pour les autres formats de la commande match, se reporter la documentation de Cisco. 3. Introduire par la commande set laction accomplir autant de fois que cest ncessaire. Pour plus de renseignements sur les autres paramtres de cette commande, consulter la documentation de Cisco. 4. Si la squence conditionnelle comporte plusieurs clauses, rpter les tapes 1 3 en renseignant le paramtre <nom den-tte de squence> avec le mme nom, mais en donnant un numro de clause diffrent chaque fois. La clause au chiffre le plus petit est vrie en premier. 5. En mode de conguration routeur du protocole vers lequel se fait la redistribution, renseigner dans la commande redistribute, le mot clef route-map suivi du nom de len-tte de squence dni ltape 1. Procdons la rvision de la conguration du routeur R3 du rseau de lexemple de la gure 6.5 pour quil ne ltre plus les prxes rseau 172.16.0.0/16 et 172.17.0.0/16 mais modie leur mtrique. Le listing 6.44 montre la nouvelle conguration du routeur R3, avec les lignes en italique qui concernent lapplication de la squence conditionnelle elle-mme, ainsi que la dnition de ses deux clauses.
Listing 6.44. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip redistribute igrp 10 metric 1 route-map setm172 network 200.5.0.0 router igrp 10 redistribute rip metric 10000 1 255 1 1500 network 10.0.0.0 ip access-list standard net172-16 permit 172.16.0.0 0.0.255.255
246
ip access-list standard net172-17 permit 172.17.0.0 0.0.255.255 route-map setm172 permit 10 match ip address net172-16 set metric +5 route-map setm172 permit 20 match ip address net172-17 set metric +10
En examinant la table de routage du routeur R4 sur le listing 6.45, nous pouvons y constater que les deux prxes dinterface de rebouclage des routeurs R1 et R2 apparaissent bien, cette fois-ci, redistribus sur RIP, en provenance de IGRP.
REMARQUE
Si dans la dnition dune clause de squence conditionnelle par route-map, la commande match retourne un rsultat vrai, et quune action par set est prvue, celle-ci peut modier la mtrique comme dans lexemple propos dans le texte. Sinon, cest soit la mtrique associe au mot clef metric, soit celle de la commande default-metric qui sera prise en compte. Faute davoir t renseigne par lun de ces moyens, la mtrique de la route sera redistribue avec la valeur innie.
Agrgation de routes avec linterface Null Dans le chapitre 4, nous avons dj voqu la possibilit dannoncer des routes de superrseau via RIP version 2. Toutefois, limplmentation de ce protocole dans les routeurs Cisco ne fournit aucun moyen commode pour congurer des adresses de super-rseau comme les commandes area <aire> range de OSPF et ip summary-address eigrp de EIGRP. Nous allons cependant proposer une solution portant sur la redistribution dune route statique de super-rseau vers RIP v2. En tant que protocole sans classe, celui-ci est en mesure dannoncer une telle route. Si un paquet arrive pour une destination existante appartenant lun des prxes du super-rseau, il est achemin ; autrement, cest la mise au rebut. Pour pouvoir mettre au rebut les datagrammes adresss des prxes rseau inexistants, une interface logique particulire appele Null doit tre congure. Tout paquet destin cette interface se trouve mis au rebut. La solution propose serait parfaite si RIP v2 nannonait pas les prxes rseau spciques en mme temps que le prxe du super-rseau. Mais comment ltrer ces prxes tout en admettant celui du super-rseau, le seul quali tre annonc ? Cette question est importante car le prxe de super-rseau correspond par dnition nimporte quel prxe spcique. En voulant ltrer ce dernier par une liste daccs qui correspond la plage des prxes auquel il appartient, on tombera forcment sur lquivalence avec le prxe de super-rseau qui sera ltr lui aussi. Pour sortir de ce dilemme, on vitera dassigner ladresse de super-rseau avec un masque de sous-rseau spcique tout segment existant. Ce faisant, on peut composer une liste daccs qui ltre tous les prxes rseau spciques tout en autorisant le passage au seul prxe de super-rseau, de la manire suivante : 1. La liste daccs doit comporter, comme premire condition, la correspondance exacte pour ladresse de super-rseau annoncer, par le mot clef permit et le masque gnrique 0.0.0.0. 2. La deuxime condition de la liste daccs doit interdire tout prxe spcique appartenant au super-rseau par le mot clef deny avec le masque gnrique 0.255.255.255.
247
3. La troisime condition de la liste daccs doit inclure les mots clefs permit any. Pour la conguration de routes de super-rseaux dans RIP v2, effectuer les actions suivantes : 1. En mode de conguration globale, entrer la commande ip classless. 2. En mode de conguration router rip, introduire les commandes version 2 et no autosummary. 3. Pour chaque adresse de super-rseau, crer une route statique pointant sur linterface Null 0. 4. En suivant la procdure de composition de la phase prcdente (dcrite plus haut), crer une seule liste daccs pour chaque super-rseau. 5. En introduisant la commande redistribute static, la route statique sera redistribue dans RIP v2. 6. Pour chaque interface travers laquelle RIP v2 doit annoncer ladresse du super-rseau, crer un ltre de mises jour par la commande distribute-list <numro de liste> out <interface>. Le premier paramtre est le numro donn la liste daccs de la phase prcdente et le second paramtre correspond linterface sur laquelle cette liste doit tre applique. 7. Cette tape optionnelle permet de faire le ltrage inverse. Pour interdire certaines interfaces dont ladresse IP appartient au super-rseau dannoncer celui-ci, il faut crer une liste daccs spare avec les instructions inverses de la phase prcdente et lappliquer aux interfaces concernes. Prenons comme exemple pratique le rseau de la gure 6.9. Le routeur R3 ny est autoris annoncer que le prxe de super-rseau travers son interface Token Ring.
Figure 6.9
Segment 1 200.1.0.0/24 Segment 2 200.2.0.0/24
Annonce via linterface Token Ring du superrseau 200.0.0.0/8 par le routeur R3.
e0
R1 R2
e0
s1
s0
s1 R3 s0
s1
s0
Segment 3 200.128.0.4/30
Segment 4 200.129.0.4/30
to0
Segment 5 200.5.0.0/24
to0
R4
e0
Segment 6 200.6.0.0/24
Les listings 6.46 6.49 montrent les congurations des quatre routeurs. Noter particulirement les lignes en italique de la conguration du routeur R3 qui mettent en uvre la solution prconise.
248
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 172.17.0.0/16 [120/10] via 200.5.0.1, 00:00:07, TokenRing0 R 172.16.0.0/16 [120/5] via 200.5.0.1, 00:00:07, TokenRing0
Listing 6.46. Conguration du routeur R1.
interface Ethernet0 ip address 200.1.0.1 255.255.255.0 interface Serial0 ip address 200.128.0.6 255.255.255.252 router rip version 2 network 200.128.0.0 network 200.1.0.0 no auto-summary ip classless
Listing 6.47. Conguration du routeur R2.
interface Ethernet0 ip address 200.2.0.1 255.255.255.0 interface Serial1 ip address 200.129.0.6 255.255.255.252 router rip version 2 network 200.129.0.0 network 200.2.0.0 no auto-summary ip classless
Listing 6.48. Conguration du routeur R3.
interface Serial0 ip address 200.129.0.5 255.255.255.252 interface Serial1 ip address 200.128.0.5 255.255.255.252 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router rip version 2
249
redistribute static metric 1 network 200.5.0.0 network 200.128.0.0 network 200.129.0.0 distribute-list 1 out TokenRing0 distribute-list 2 out Serial0 distribute-list 2 out Serial1 no auto-summary ip classless ip route 200.0.0.0 255.0.0.0 Null0 access-list 1 permit 200.0.0.0 0.0.0.0 access-list 1 deny 200.0.0.0 0.255.255.255 access-list 1 permit any access-list 2 deny 200.0.0.0 0.0.0.0 access-list 2 permit 200.0.0.0 0.255.255.255 access-list 2 permit any
Listing 6.49. Conguration du routeur R4.
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router rip version 2 network 200.5.0.0 network 200.6.0.0 no auto-summary ip classless
Dans la table de routage du routeur R4 sur le listing 6.50, on ne voit effectivement que le prxe du super-rseau et non les prxes spciques des rseaux situs derrire le routeur R3.
Listing 6.50. Table de routage du routeur R4.
R4#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 R 200.0.0.0/8 [120/1] via 200.5.0.1, 00:00:25, TokenRing0
La table de routage du routeur R3 sur le listing 6.51, quant elle, possde des routes pour tous les prxes spciques, en particulier une pour le prxe de super-rseau, pointant sur linterface Null 0.
250
R3#show ip route ... 200.128.0.0/30 is subnetted, 1 subnets C 200.128.0.4 is directly connected, Serial1 200.129.0.0/30 is subnetted, 1 subnets C 200.129.0.4 is directly connected, Serial1 R 200.1.0.0/24 [120/1] via 200.128.0.6, 00:00:26, Serial1 R 200.2.0.0/24 [120/1] via 200.129.0.6, 00:00:26, Serial0 C 200.5.0.0/24 is directly connected, TokenRing0 R 200.6.0.0/24 [120/1] via 200.5.0.2, 00:00:05, TokenRing0 S 200.0.0.0/8 is directly connected, Null0
REMARQUE
Notons que la route agrge du prxe de super-rseau pointant sur linterface Null0 ressemble celle dj vue au chapitre 4 portant sur la mme fonction dans EIGRP, cette diffrence prs que le code est diffrent : S pour agrgation (summary) au lieu de D (cf. listing 4.82).
sont pas. Car le premier est un protocole sans classe tandis que le second est classe. De ce fait, lors du passage des prxes rseau de longueur variable de EIGRP, tous ceux qui ne correspondent pas la longueur xe dnie dans IGRP, seront perdus.
251
La distance administrative des routes externes de EIGRP est de 170, suprieure celle de IGRP (100). Mais quand un conit se produit entre une route candidate dune source de distance administrative infrieure celle de la route externe (dj inscrite en provenance de EIGRP ou IGRP), cest la mtrique la plus petite qui prvaudra dans un routeur droulant les processus IGRP et EIGRP. Nanmoins lors dune rception normale de mises jour de source EIGRP, ses routes auront la primaut sur celles externes de source IGRP ou EIGRP, pour une mme destination. Pour bien assimiler cette rgle, prenons lexemple concret illustr sur la gure 6.10. Il sagit dune topologie comparable celle de la gure 6.6 qui avait tendance se mettre en boucle. Dans le cas prsent, il sagit de routes redistribues du processus IGRP vers celui de EIGRP dans le routeur R4 et affectes dune distance administrative de 170. On peut sinterroger sur le risque dun phnomne de boucle si le routeur R3 redistribue son tour ces routes aux routeurs R1 et R2 comme tant de source IGRP, savoir avec la distance administrative 100. Que se passera-t-il si ces routeurs, en retour, annoncent ces mmes routes avec la mme distance vers le routeur R3 ? Les listings 6.52 6.55 montrent les congurations des quatre routeurs.
Listing 6.52. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 ip address 10.3.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.53. Conguration du routeur R2.
interface Ethernet0 ip address 10.1.0.2 255.255.255.0 interface Serial1 ip address 10.4.0.2 255.255.255.0 router igrp 10 network 10.0.0.0
Listing 6.54. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router eigrp 10 network 200.5.0.0 router igrp 10 network 10.0.0.0
252
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router eigrp 10 network 200.5.0.0 router igrp 10 network 200.6.0.0
En vriant la table de routage du routeur R3 sur le listing 6.56, nous pouvons constater quelle ne prsente aucun signe du phnomne de boucle. Remarquez le code par lequel le prxe rseau 200.6.0.0/24 est dsign ( D EX pour EIGRP externe), et la distance administrative de sa route qui vaut 170. Ces deux lments sont en italique sur la deuxime ligne.
Listing 6.56. Table de routage du routeur R3.
R3#show ip route ... C 200.5.0.0/24 is directly connected, TokenRing0 D EX 200.6.0.0/24 [170/176128] via 200.5.0.2, 00:32:36, TokenRing0 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.4.0.2, 00:00:54, Serial0 [100/8576] via 10.3.0.2, 00:01:03, Serial1 C 10.4.0.0 is directly connected, Serial0
Voyons maintenant comment le routeur R3 traite les mises jour IGRP en provenance des routeurs R1 et R2. La sortie de la commande correspondante se trouve sur le listing 6.57. Pour le moment, il ne reoit aucune mise jour pour le prxe rseau 200.6.0.0/24 des deux autres.
Listing 6.57. Sortie de la commande debug
ip igrp transactions.
R3#debug ip igrp transactions IGRP protocol debugging is on R3# ... IGRP: received update from 10.3.0.2 on Serial1 subnet 10.1.0.0, metric 8576 (neighbor 1100) subnet 10.4.0.0, metric 10576 (neighbor 8576) IGRP: received update from 10.4.0.2 on Serial0 subnet 10.3.0.0, metric 10576 (neighbor 8576) subnet 10.1.0.0, metric 8576 (neighbor 1100) ...
Procdons au vidage de la table de routage du routeur R1. Ce dernier va-t-il apprendre une route pour le prxe rseau 200.6.0.0/24 du routeur R2 et lannoncer son tour au routeur
253
R3 ? Celui-ci remplacera-t-il alors la route pour ce mme prxe qui est dj dans sa table par la nouvelle dont la distance est infrieure ? Le listing 6.58 afche la sortie de la commande debug ip igrp transactions sur le routeur R1, immdiatement suivie de la commande clear ip route *.
Listing 6.58. Sortie de la commande debug ip igrp transactions sur le routeur R1, immdiatement suivie de la commande clear ip route *.
R1#debug ip igrp transactions IGRP protocol debugging is on R1#clear ip route * R1# IGRP: broadcasting request on Ethernet0 IGRP: broadcasting request on Serial0 IGRP: received update from 10.1.0.2 on Ethernet0 subnet 10.1.0.0, metric 1200 (neighbor 1100) subnet 10.4.0.0, metric 8576 (neighbor 8476) network 200.5.0.0, metric 8639 (neighbor 8539) network 200.6.0.0, metric 8639 (neighbor 8539) IGRP: edition is now 13 IGRP: sending update to 255.255.255.255 via Ethernet0 (10.1.0.1) subnet 10.3.0.0, metric=8476 IGRP: sending update to 255.255.255.255 via Serial0 (10.3.0.2) subnet 10.1.0.0, metric=1100 subnet 10.4.0.0, metric=8576 network 200.5.0.0, metric=8639 network 200.6.0.0, metric=8639 IGRP: received update from 10.3.0.1 on Serial0 subnet 10.4.0.0, metric 10476 (neighbor 8476) network 200.5.0.0, metric 8539 (neighbor 688) network 200.6.0.0, metric 8539 (neighbor 688) ...
Le routeur R1 tente visiblement (cf. listing 6.58) dannoncer une route factice pour le prxe rseau 200.6.0.0/24 vers le routeur R3, mais ce dernier lacceptera-t-il ? Le listing 6.59 montre la sortie de la commande debug ip igrp transactions sur le routeur R3 juste aprs le vidage de la table du routeur R1.
Listing 6.59. Sortie de la commande debug ip igrp transactions sur le routeur R3 juste aprs la commande clear ip route * introduite sur le routeur R1.
R3#debug ip igrp transactions IGRP protocol debugging is on R3# IGRP: received request from 10.3.0.2 on Serial1 IGRP: sending update to 10.3.0.2 via Serial1 (10.3.0.1) subnet 10.4.0.0, metric=8476 network 200.5.0.0, metric=688 network 200.6.0.0, metric=688
254
IGRP: received update from 10.3.0.2 on Serial1 subnet 10.1.0.0, metric 8576 (neighbor 1100) subnet 10.4.0.0, metric 10576 (neighbor 8576) network 200.5.0.0, metric 10639 (neighbor 8639) network 200.6.0.0, metric 10639 (neighbor 8639) ...
On voit sur le listing 6.59 que le routeur R3 reoit effectivement la route factice pour le prxe rseau 200.6.0.0/24, mais sans la prendre en compte. La route code D EX demeure dans sa table de routage qui reste la mme que celle du listing 6.56. Le routeur R3 ne fait quappliquer la rgle selon laquelle la distance ne doit pas intervenir dans la rsolution de conit entre une route candidate de distance mme infrieure celle dune route externe de source IGRP ou EIGRP, dj prsente dans sa table de routage. Dans pareille situation, cest la mtrique la plus faible qui doit prvaloir. Dans notre cas, la route externe EIGRP a une mtrique de 176128, tandis que celle de la route IGRP vaut 10639. Pour la comparaison des mtriques IGRP et EIGRP, on multiplie celle-l par 256 ; ce qui donne comme rsultat 2723584, chiffre suprieur 176128. La route externe EIGRP nest donc pas remplace. Redistribution entre EIGRP et IGRP de systmes autonomes diffrents Quel que soit le mode de redistribution entre EIGRP et IGRP (automatique ou manuel) la mtrique des routes, lors du transfert dun protocole lautre, est toujours convertie au lieu dtre raffecte dune valeur prdtermine, comme cest le cas avec dautres protocoles. Mais il y a une diffrence de comportement dans la redistribution manuelle suivant les versions du systme IOS de Cisco (antrieures ou partir de 11.2.X). Dans celles-ci, la rgle portant sur la distance administrative est la mme, quil sagisse de redistribution manuelle ou automatique. Dans les anciennes versions, la redistribution manuelle est rgie par la rgle normale de distance administrative selon laquelle, en cas de conit entre une route installe dans une table et une autre candidate son remplacement, cest celle possdant la plus petite distance administrative qui lemporte. Voyons maintenant ce qui se passe en ralit. Les routeurs de la gure 6.10 tournent en version 11.1.24. Les listings 6.60 et 6.61 montrent les congurations des routeurs R3 et R4.
Listing 6.60. Conguration du routeur R3.
interface Serial0 ip address 10.4.0.1 255.255.255.0 interface Serial1 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.1 255.255.255.0 ring-speed 16 router eigrp 200 redistribute igrp 10 network 200.5.0.0 router igrp 10 redistribute eigrp 200 network 10.0.0.0
255
Les routeurs R3 et R4 redistribuent automatiquement les informations de routage entre les protocoles EIGRP et IGRP.
Segment 1 10.1.0.0/24
e0
R1
Domaine IGRP 1
R2
e0
s1
s0 Segment 3 10.3.0.0/24
s1 R3 s0
s0 s1 Segment 4 10.4.0.0/24
to0
R4
e0 Domaine IGRP 2
Segment 6 200.6.0.0/24
interface Ethernet0 ip address 200.6.0.1 255.255.255.0 interface TokenRing0 ip address 200.5.0.2 255.255.255.0 ring-speed 16 router eigrp 200 redistribute igrp 10 network 200.5.0.0 router igrp 10 redistribute eigrp 200 network 200.6.0.0
La table de routage du routeur R4 sur le listing 6.62 afche les trois routes redistribues de IGRP EIGRP sur le routeur R3, affecte dune mtrique calcule automatiquement sans que dans la commande redistribute le mot clef metric et son paramtre ne soient prsents. Ce qui nous ramne au cas prcdent dextension automatique des domaines mtriques, EIGRP et IGRP relevant dun mme systme autonome.
REMARQUE
Mme si une mtrique est affecte manuellement par la commande redistribute en renseignant le paramtre du mot clef metric, ou par la commande default-metric, les processus IGRP et EIGRP conserveront la mtrique dune route calcule dans leur domaine respectif avant son transfert de lun vers lautre, au lieu de la remplacer par la valeur affecte par lune de ces deux commandes.
256
R4#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets D EX 10.3.0.0 [170/176128] via 200.5.0.1,00:08:48,TokenRing0 D EX 10.1.0.0 [170/2211584] via 200.5.0.1,00:08:48,TokenRing0 D EX 10.4.0.0 [170/176128] via 200.5.0.1,00:08:49,TokenRing0 C 200.1.0.0/24 is directly connected, TokenRing0 C 200.5.0.0/24 is directly connected, TokenRing0 C 200.6.0.0/24 is directly connected, Ethernet0 C 200.7.0.0/24 is directly connected, Loopback0
Les versions 11.1.X de lIOS et les prcdentes sont toujours exposes au phnomne de boucle qui peut rsulter de la redistribution manuelle entre IGRP et EIGRP. En ltat actuel, le routage stant stabilis, la boucle na pas encore eu loccasion de se manifester. Examinons cet effet, la table de routage du routeur R3 sur le listing 6.63 qui, pour le moment, semble tout fait correcte (ligne en italique).
Listing 6.63. Table de routage du routeur R3 avant que la commande clear ne soit introduite dans le routeur R1.
ip route *
R3#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:01:08, Serial1 [100/8576] via 10.4.0.2, 00:00:25, Serial0 C 10.4.0.0 is directly connected, Serial0 C 200.1.0.0/24 is directly connected, TokenRing0 C 200.5.0.0/24 is directly connected, TokenRing0 D EX 200.6.0.0/24 [170/176128] via 200.5.0.2, 00:03:15, TokenRing0
Procdons maintenant au vidage de la table de routage du routeur R1, pour le contraindre envoyer une requte IGRP sur toutes ses interfaces sur lesquelles ce protocole est actif. Comme auparavant, le routeur R1 recevra probablement une rponse en premier du routeur R2 du fait que le segment Ethernet qui le relie ce dernier a un dbit plus rapide que la ligne srie le reliant au routeur R3. Ds quil reoit une mise jour pour le prxe 200.6.0.0/24 du routeur R2, le routeur R1 va linstaller dans sa table de routage avec, comme routeur de saut suivant, lexpditeur accessible par son interface Ethernet 0. Immdiatement aprs, ce routeur va annoncer son tour ce mme prxe au routeur R3 avec une valeur de distance administrative de la route, infrieure celle qui se trouve dj dans la table de routage du routeur R3. Ce dernier va donc remplacer la bonne route externe EIGRP par celle qui est factice, en provenance du routeur R1. Le reste du phnomne de boucle est identique ce quon a dj voqu dans la section qui lui tait consacre. La table de routage du routeur R3 sur le listing 6.64 (ligne en italique) prsente le signe dj connu du phnomne de boucle, une fois quon a vid la table de routage du routeur R1 pour le forcer la remplir, provoquant ainsi lannonce de la route factice vers le routeur R3.
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.64. Table de routage du routeur R3 aprs que la commande clear a t introduite sur le routeur R1.
257
ip route *
R3#show ip route ... 10.0.0.0/24 is subnetted, 3 subnets C 10.3.0.0 is directly connected, Serial1 I 10.1.0.0 [100/8576] via 10.3.0.2, 00:00:30, Serial1 [100/8576] via 10.4.0.2, 00:00:10, Serial0 C 10.4.0.0 is directly connected, Serial0 C 200.1.0.0/24 is directly connected, TokenRing0 C 200.5.0.0/24 is directly connected, TokenRing0 I 200.6.0.0/24 is possibly down, routing via 10.4.0.2, Serial0
258
Une fois que le type de LSA (5 ou 7) diffuser dans OSPF est choisi pour les routes en provenance dun autre protocole, il faut utiliser la commande redistribute pour demander la redistribution des informations vers OSPF partir de lautre protocole. Il est possible de spcier alors dans quel type de routes externes les routes redistribues doivent tre converties, en spciant le paramtre metric-type {1|2}. Le type de route par dfaut est le type 2. Autre paramtre pouvant tre spci pour la commande redistribute, le mot clef subnets autorise expressment OSPF recevoir des sous-rseaux spciques en provenance dautres protocoles, car ils ne sont pas admis implicitement La gure 6.11 illustre une topologie de rseau comportant un systme autonome OSPF comprenant quatre routeurs R1 R4 , interconnects par des segments et deux routeurs externes R5 et R6. La tche ici est de congurer les routeurs R1 et R2 en tant que routeurs frontaliers ASBR de faon ce quils puissent annoncer les routes externes EIGRP de R5 et IGRP de R6 dans OSPF, en utilisant les deux types de mtrique 1 et 2, respectivement.
Figure 6.11
Segment 1 10.10.1.0/24 Segment 2 10.10.2.0/24
Segment 4 10.203.0.0/16
e0
R1
Aire 10
R2
e0
Segment 4 10.204.0.0/16
s1
R5
s0 e0
s0
s1 R3 s0
s1
s0 s0 e0
Segment 8 10.202.0.0/16 R6
Segment 3 10.10.255.4/30
Segment 4 10.10.255.8/30
Segment 7 10.201.0.0/16
to0
Segment 5 10.0.1.0/24
to0
Aire 0
e0
R4
Segment 6 10.0.2.0/24
Les listings 6.65 6.70 donnent la conguration pour les six routeurs.
Listing 6.65. Conguration du routeur R1.
interface Loopback0 ip address 10.10.0.1 255.255.255.255 interface Ethernet0 ip address 10.10.1.1 255.255.255.0 interface Serial0 ip address 10.10.255.6 255.255.255.252 interface Serial1
259
ip address 10.203.0.1 255.255.0.0 router eigrp 10 redistribute ospf passive-interface passive-interface passive-interface network 10.0.0.0 10 metric 10000 1 255 1 1500 Ethernet0 Loopback0 Serial0
router ospf 10 redistribute eigrp 10 metric 10 metric-type 1 subnets network 10.10.0.0 0.0.255.255 area 10 distribute-list 10 out eigrp 10 ip classless access-list 10 deny 10.10.0.0 0.0.255.255 access-list 10 permit any
Listing 6.66. Conguration du routeur R2.
interface Loopback0 ip address 10.10.0.2 255.255.255.255 interface Ethernet0 ip address 10.10.2.1 255.255.255.0 interface Serial0 ip address 10.204.0.1 255.255.0.0 interface Serial1 ip address 10.10.255.10 255.255.255.252 router ospf 10 redistribute igrp 10 metric 10 subnets network 10.10.0.0 0.0.255.255 area 10 distribute-list 10 out igrp 10 router igrp 10 redistribute ospf passive-interface passive-interface passive-interface network 10.0.0.0 ip classless access-list 10 deny 10.10.0.0 0.0.255.255 access-list 10 permit any
Listing 6.67. Conguration du routeur R3.
260
ip address 10.10.255.9 255.255.255.252 interface Serial1 ip address 10.10.255.5 255.255.255.252 interface TokenRing0 ip address 10.0.1.1 255.255.255.0 ring-speed 16 router ospf 10 network 10.0.0.0 0.0.255.255 area 0 network 10.10.0.0 0.0.255.255 area 10 area 0 range 10.0.0.0 255.255.0.0 area 10 range 10.10.0.0 255.255.0.0 ip classless
Listing 6.68. Conguration du routeur R4.
interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface TokenRing0 ip address 10.0.1.2 255.255.255.0 ring-speed 16 router ospf 10 network 10.0.0.0 0.0.255.255 area 0 no ip classless
Listing 6.69. Conguration du routeur R5.
interface Ethernet0 ip address 10.201.0.1 255.255.0.0 interface Serial0 ip address 10.203.0.2 255.255.0.0 router eigrp 10 network 10.0.0.0
Listing 6.70. Conguration du routeur R6.
interface Ethernet0 ip address 10.202.0.1 255.255.0.0 interface Serial0 ip address 10.204.0.2 255.255.0.0 router igrp 10 network 10.0.0.0
261
Examinons maintenant la table de routage du routeur R4 (listing 6.71). Les routes externes de OSPF y sont reprsentes suivies des codes E1 et E2 pour indiquer quelles sont de mtrique de type 1 et 2 respectivement.
Listing 6.71. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks O IA 10.10.0.0/16 [110/80] via 10.0.1.1, 00:21:27, TokenRing0 C 10.0.2.0/24 is directly connected, Ethernet0 O 10.0.0.3/32 [110/7] via 10.0.1.1, 00:21:27, TokenRing0 C 10.0.1.0/24 is directly connected, TokenRing0 C 10.0.0.4/32 is directly connected, Loopback0 O E1 10.201.0.0/16 [110/80] via 10.0.1.1, 00:21:08,TokenRing0 O E1 10.203.0.0/16 [110/80] via 10.0.1.1, 00:21:08,TokenRing0 O E2 10.202.0.0/16 [110/10] via 10.0.1.1, 00:16:31,TokenRing0 O E2 10.204.0.0/16 [110/10] via 10.0.1.1, 00:21:27,TokenRing0
Notez la diffrence qui existe entre les mtriques des routes OSPF de type 1 et 2. Il suft de reprendre la conguration des routeurs R1 et R2 (cf. listings 6.65 et 6.66) pour voir que les routes avaient t distribues avec la mme mtrique 10. Les routes de type 2 ont gard cette mtrique tandis que les routes de type 1 ont une valeur de mtrique suprieure en raison des sauts quelles ont traverss avant datteindre le routeur R4. Si nous analysons les congurations des routeurs R1 et R2 nous ne manquerons pas dy remarquer quelles contiennent chacune une liste daccs pour ltrer les informations, soit de EIGRP, soit de IGRP, selon le cas, avant leur redistribution dans OSPF. La raison en tait la suivante : la diffrence dOSPF, ni IGRP ni EIGRP ne permettent de spcier exactement sur quelles interfaces traiter la mise jour de leurs informations de routage respectives. Ce qui oblige utiliser la commande network suivie dune adresse de rseau classe pour demander les mises jour sur toutes les interfaces de routeur relevant de cette adresse rseau. Cela signie galement que le processus de routage annonce le prxe rseau congur sur cette interface vers toutes les autres interfaces et le redistribue vers les autres protocoles pour lesquels la redistribution est congure. Les listes daccs assurent cette dernire opration. Elles empchent la redistribution de tout prxe IP appartenant au prxe rseau agrg de laire 10 (10.10.0.0/16) vers le processus de routage OSPF. dfaut, ces routes seraient enregistres en tant que LSA de type 5 et arroses sur tout le systme autonome lexclusion des aires connes. Dans notre cas, les protocoles OSPF et EIGRP ou IGRP sont actifs sur toutes les interfaces appartenant au prxe agrg 10.10.0.0/16 des routeurs R1 et R2. Sans les listes daccs, OSPF pense que les prxes issus de ce rseau congurs sur ces interfaces sont aussi bien originaires de son propre processus que de provenance externe. Dans laire 10, les routes de ces prxes seront inscrites dans la table de routage en tant que routes intra-aire et externes. Elles seront par consquent annonces sous forme de LSA de type 5 tout le systme autonome, entranant leur prise en compte par les routeurs des autres aires comme des routes externes OSPF.
262
Observons ce qui se passe si lon te la commande distribute-list 10 out eigrp 10 de la conguration du routeur R1. Voyons avant cette action, lafchage des LSA de type 5 dans la base dtat des liens du routeur R1 (listing 6.72).
Listing 6.72. LSA de type 5 de la base dtat des liens du routeur R1.
R1#show ip ospf database ... Type-5 AS External Link States Link ID 10.201.0.0 10.202.0.0 10.203.0.0 10.204.0.0 ADV Router 10.10.0.1 10.10.0.2 10.10.0.1 10.10.0.2 Age 1588 1314 1593 1672 Seq# 0x80000007 0x80000001 0x80000004 0x80000002 Checksum 0x4BF0 0xC8F6 0x3904 0xAE0E Tag 0 0 0 0
Rien que de trs normal dans cette table. Retirons prsent la commande distribute-list du routeur R1 pour constater le changement qui intervient dans la base LSD de ce routeur sur le listing 6.73.
Listing 6.73. LSA de type 5 de la base du routeur R1, aprs retrait de la commande
distribute-list 10 out eigrp 10 dans la conguration du routeur en mode router ospf 10.
R1#show ip ospf database ... Type-5 AS External Link States Link ID 10.10.0.1 10.10.1.0 10.10.255.4 10.201.0.0 10.202.0.0 10.203.0.0 10.204.0.0 ADV Router 10.10.0.1 10.10.0.1 10.10.0.1 10.10.0.1 10.10.0.2 10.10.0.1 10.10.0.2 Age 5 5 5 128 85 130 87 Seq# 0x80000001 0x80000001 0x80000001 0x80000008 0x80000002 0x80000005 0x80000003 Checksum 0x4AB6 0x49B7 0x1AE6 0x49F1 0xC6F7 0x3705 0xAC0F Tag 0 0 0 0 0 0 0
Les trois routes en italique, codes E1 au dbut du listing 6.74, appartiennent visiblement laire 10 de OSPF, mais elles se trouvent nanmoins redistribues via EIGRP et donc stockes dans la base LSD du routeur R1 en tant que routes externes pour tre diffuses en tant que LSA de type 5 de type de mtrique 1 ; ce qui explique leur prsence dans la table de routage du routeur R4 avec ce code. Nous pouvons y voir galement une route pour le prxe abrg de cette mme aire 10, code IA .
Listing 6.74. Table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 12 subnets, 4 O IA 10.10.0.0/16 [110/80] via 10.0.1.1, 00:32:44, O E1 10.10.1.0/24 [110/80] via 10.0.1.1, 00:02:28, O E1 10.10.0.1/32 [110/80] via 10.0.1.1, 00:02:28,
263
O C O C C O O O O
E1 10.10.255.4/30 [110/80] via 10.0.1.1,00:02:29,TokenRing0 10.0.2.0/24 is directly connected, Ethernet0 10.0.0.3/32 [110/7] via 10.0.1.1, 00:32:44, TokenRing0 10.0.1.0/24 is directly connected, TokenRing0 10.0.0.4/32 is directly connected, Loopback0 E2 10.202.0.0/16 [110/10] via 10.0.1.1, 00:27:48,TokenRing0 E1 10.203.0.0/16 [110/80] via 10.0.1.1, 00:32:25,TokenRing0 E1 10.201.0.0/16 [110/80] via 10.0.1.1, 00:32:25,TokenRing0 E2 10.204.0.0/16 [110/10] via 10.0.1.1, 00:32:45,TokenRing0
La commande summary-address Le premier usage de la commande summary-address est lagrgation des informations de routage, soit celles redistribues par OSPF vers dautres protocoles, soit celles externes importes dans ce protocole via un ASBR. Cette commande permet les oprations suivantes : lagrgation de routes OSPF pour la redistribution vers un autre protocole de routage ; lagrgation de routes externes injectes dans un systme autonome OSPF via un routeur ASBR. La syntaxe de cette commande est la suivante : summary-address <adresse IP> <masque de sous-rseau>. Les paramtres <adresse IP> et <masque de sous-rseau> spcient le prxe rseau agrg. Dautres paramtres optionnels existent, que nous ne dtaillerons pas ici. Ils sont dcrits dans la documentation Cisco. Nous allons maintenant voir comment cette commande peut tre applique la situation dcrite sur la gure 6.11. Il convient dabord dtudier la table de routage du routeur R6 (cf. listing 6.75). On constate curieusement labsence de routes relevant du prxe rseau 10.0.0.0/16 (adresse CIDR de laire 0) ou du prxe 10.10.0.0/16 (adresse CIDR de laire 10). Cela semble trange puisque la longueur de prxe rseau attendue par IGRP est /16, justement celle utilise pour les deux adresses agrges.
Listing 6.75. Table de routage du routeur R6.
R6#show ip route ... 10.0.0.0/16 is subnetted, 5 subnets C 10.202.0.0 is directly connected, Ethernet0 I 10.203.0.0 [100/8477] via 10.204.0.1, 00:00:24, Serial0 I 10.201.0.0 [100/8477] via 10.204.0.1, 00:00:24, Serial0 C 10.204.0.0 is directly connected, Serial0
Le protocole IGRP de par sa nature classe ne peut distinguer aucun sous-rseau avec tous ses bits zro (zero subnet), ce qui explique que le prxe de laire 0 est absent. Par contre, celui de laire 10 devrait lui tre visible. Pourquoi ne lest-il pas ? Le routeur R2, auquel le routeur R6 est connect, nest pas un routeur ABR et ne peut donc oprer dagrgation de route. Mme sil sagissait dun routeur ABR, R6 ne verrait toujours pas ladresse agrge de laire 10 car lagrgation automatique de route ne se fait quentre routeurs ABR droulant la processus OSPF. Pour les routeurs ABR, la commande explicite summary-address doit donc tre utilise sur des ASBR pour agrger des routes vers un autre protocole, en loccurrence IGRP.
264
Le listing 6.76 montre la nouvelle conguration du routeur R4, la ligne en italique mettant en vidence lutilisation de la commande summary-address.
Listing 6.76. Conguration du routeur R2.
interface Loopback0 ip address 10.10.0.2 255.255.255.255 interface Ethernet0 ip address 10.10.2.1 255.255.255.0 interface Serial0 ip address 10.204.0.1 255.255.0.0 interface Serial1 ip address 10.10.255.10 255.255.255.252 router ospf 10 summary-address 10.10.0.0 255.255.0.0 redistribute igrp 10 metric 10 subnets network 10.10.0.0 0.0.255.255 area 10 distribute-list 10 out igrp 10 router igrp 10 redistribute ospf passive-interface passive-interface passive-interface network 10.0.0.0 ip classless access-list 10 deny 10.10.0.0 0.0.255.255 access-list 10 permit any
La table de routage du routeur R6 montre bien la prsence, cette fois-ci, dune route pour ladresse agrge de laire 10 (cf. listing 6.77).
Listing 6.77. Table de routage du routeur R6.
R6#show ip route ... 10.0.0.0/16 is subnetted, 5 subnets I 10.10.0.0 [100/8477] via 10.204.0.1, 00:00:24, Serial0 C 10.202.0.0 is directly connected, Ethernet0 I 10.203.0.0 [100/8477] via 10.204.0.1, 00:00:24, Serial0 I 10.201.0.0 [100/8477] via 10.204.0.1, 00:00:24, Serial0 C 10.204.0.0 is directly connected, Serial0
265
Les aires de routage peu connes (NSSA Not-So-Stubby Area) et leur conguration
Il arrive quune aire soit une trs bonne candidate au connement, tout en ncessitant limportation de routes externes en quantit limite. Si une telle aire avait un statut normal, elle recevrait toutes les LSA de type 5 relevant du systme autonome tout entier, sans ncessit. Cest pour de telles situations que fut conue une aire au statut spcial peu conne ou NSSA (Not So Stubby Area), avec un type de LSA particulier, le type 7. Une aire NSSA est trs similaire une aire conne normale. Elle nest pas autorise recevoir des annonces de type 5 mais peut hberger des routeurs excutant des protocoles de routage dynamique autres que OSPF. Les informations de routage provenant de ces protocoles sont redistribues vers OSPF, qui les annonce son tour via des LSA de type 7. Les LSA de type 7 sont trs similaires aux LSA de type 5 en ce quelles dcrivent aussi des routes externes. Mais elles en diffrent sur les points suivants : Les LSA de type 7 sont arroses uniquement dans laire NSSA, tandis que les LSA de type 5 sont envoyes vers tout le systme autonome, aires connes exceptes. Les routeurs ABR dune aire NSSA traduisent les LSA de type 7 en LSA de type 5, pour ensuite les arroser vers lensemble du systme autonome. Sur la gure 6.12, vous pouvez voir un exemple de rseau dans lequel laire 10 peut tre congure comme aire peu conne (NSSA). Le protocole prdominant dans cette aire est IGRP.
Figure 6.12
Segment 1 172.16.1.0/24
e1
Segment 2 172.16.2.0/24
IGRP R1
e1
R2
e0
e0
Segment 3 172.16.3.0/24
e0
Aire OSPF10
R3
s0 s1
R4
to0
Segment 4 172.17.0.4/30
Segment 5 10.1.0.0/24
to0
Aire OSPF 0
e0
R5
Segment 6 10.2.0.0/24
266
Les informations de routage IGRP sont redistribues vers OSPF au niveau du routeur R3, puis annonces au reste du rseau via un segment 4 de faible dbit. Voyons prsent comment congurer les routeurs pour faire de laire 10 une aire NSSA peu conne. Les listings 6.78 6.82 donnent la conguration pour chacun des cinq routeurs.
Listing 6.78. Conguration du routeur R1.
interface Ethernet0 ip address 172.16.3.1 255.255.255.0 interface Serial0 ip address 172.16.1.1 255.255.255.0 router igrp 172 network 172.16.0.0
Listing 6.79. Conguration du routeur R2.
interface Ethernet0 ip address 172.16.3.2 255.255.255.0 interface Serial0 ip address 172.16.2.1 255.255.255.0 router igrp 172 network 172.16.0.0
Listing 6.80. Conguration du routeur R3.
interface Loopback0 ip address 172.17.255.3 255.255.255.255 interface Ethernet0 ip address 172.16.3.3 255.255.255.0 interface Serial0 ip address 172.17.0.5 255.255.255.252 router ospf 10 redistribute igrp 172 metric 10 metric-type 1 subnets network 172.17.0.0 0.0.255.255 area 10 area 10 nssa router igrp 172 redistribute ospf 10 network 172.16.0.0 default-metric 10000 1 255 1 1500 ip classless
Matrise du flux de donnes et des mises jour de routage CHAPITRE 6 Listing 6.81. Conguration du routeur R4.
267
interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Serial1 ip address 172.17.0.6 255.255.255.252 interface TokenRing0 ip address 10.1.0.1 255.255.255.0 ring-speed 16 router ospf 10 network 10.0.0.0 0.255.255.255 area 0 network 172.0.0.0 0.255.255.255 area 10 area 0 range 10.0.0.0 255.0.0.0 area 10 nssa ip classless
Listing 6.82. Conguration du routeur R5.
interface Loopback0 ip address 10.0.0.5 255.255.255.255 interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface TokenRing0 ip address 10.1.0.2 255.255.255.0 ring-speed 16 router ospf 1 network 10.0.0.0 0.255.255.255 area 0 ip classless
REMARQUE
Tout comme les routes OSPF externes normales, les routes externes NSSA peuvent tre de type 1 ou de type 2.
La table de routage du routeur R3 ne prsente pas encore de routes OSPF externes (cf. listing 6.83). Mais la base LSD de ce routeur que montre le listing 6.84 contient dj les LSA de type 7.
Listing 6.83. Table de routage du routeur R3.
R3#show ip route ... O IA 10.0.0.0/8 [110/80] via 172.17.0.6, 00:29:12, Serial0 172.16.0.0/24 is subnetted, 3 subnets I 172.16.1.0 [100/8576] via 172.16.3.1, 00:00:42,Ethernet0 I 172.16.2.0 [100/8576] via 172.16.3.2, 00:01:11,Ethernet0 C 172.16.3.0 is directly connected, Ethernet0 172.17.0.0/16 is variably subnetted, 3 subnets, 3 masks
268
C C O
172.17.255.3/32 is directly connected, Loopback0 172.17.0.4/30 is directly connected, Serial0 172.17.0.0/16 is a summary, 00:01:23, Null0
Remarquez que les LSA de type 7, la diffrence de celles de type 5, continuent dappartenir leur aire dorigine.
Listing 6.84. Partie de la base dtat des liens OSPF du routeur R3, contenant les informations des LSA de type 7.
R3#show ip ospf database OSPF Router with ID (172.17.255.3) (Process ID 10) ... Type-7 AS External Link States (Area 10) Link ID 172.16.1.0 172.16.2.0 172.16.3.0 ADV Router 172.17.255.3 172.17.255.3 172.17.255.3 Age 1115 1115 1115 Seq# 0x80000001 0x80000001 0x80000001 Checksum 0x9051 0x855B 0x7A65 Tag 0 0 0
Examinons maintenant la table de routage du routeur R4 (cf. listing 6.85). Les trois lignes en italique montrent les routes externes OSPF NSSA de type 1. la diffrence des routes OSPF externes normales, celles-ci portent le code N1 . De mme, le routes externes OSPF NSSA de type 2 sont tiquetes N2 .
Listing 6.85. Table de routage du routeur R4.
R4#show ip route ... 172.17.0.0/16 is variably subnetted, 2 subnets, 2 masks O 172.17.255.3/32 [110/65] via 172.17.0.5,00:16:42,Serial1 C 172.17.0.4/30 is directly connected, Serial1 172.16.0.0/24 is subnetted, 3 subnets O N1 172.16.1.0 [110/75] via 172.17.0.5, 00:00:48, Serial1 O N1 172.16.2.0 [110/75] via 172.17.0.5, 00:00:48, Serial1 O N1 172.16.3.0 [110/75] via 172.17.0.5, 00:00:48, Serial1 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks O 10.2.0.0/24 [110/16] via 10.1.0.2, 00:16:42, TokenRing0 C 10.1.0.0/24 is directly connected, TokenRing0 C 10.0.0.4/32 is directly connected, Loopback0 O 10.0.0.5/32 [110/7] via 10.1.0.2, 00:16:43, TokenRing0
Le routeur R4 tant un ABR de NSSA pour laire 10, il doit traduire les LSA de type 7 en LSA de type 5, ce qui apparat dans la base dtat des liens du routeur R4 (cf. listing 6.86). Remarquez que cette base contient la fois les LSA originales de type 7 et les LSA nouvelles de type 5, avec les mmes identiants de liens (Link ID).
Listing 6.86. Partie de la base dtat des liens OSPF du routeur R4 contenant les informations des LSA de type 5 et de type 7.
269
... Type-7 AS External Link States (Area 10) Link ID 172.16.1.0 172.16.2.0 172.16.3.0 ADV Router 172.17.255.3 172.17.255.3 172.17.255.3 Age 1018 1019 1019 Seq# 0x80000001 0x80000001 0x80000001 Checksum 0x9051 0x855B 0x7A65 Tag 0 0 0
Type-5 AS External Link States Link ID 172.16.1.0 172.16.2.0 172.16.3.0 ADV Router 10.0.0.4 10.0.0.4 10.0.0.4 Age 970 970 970 Seq# 0x80000001 0x80000001 0x80000001 Checksum 0x5F3F 0x5449 0x4953 Tag 0 0 0
Enn, la table de routage du routeur R5 (cf. listing 6.87) ne contient que des routes externes OSPF normales codes E1 annonces lorigine par le routeur R3 en LSA de type 7 et traduites en LSA de type 5 par le routeur R4 pour tre reues par ce routeur.
Listing 6.87. Table de routage du routeur R5.
R5#show ip route ... 172.17.0.0/16 is variably subnetted, 2 subnets, 2 masks O IA 172.17.255.3/32 [110/71]via 10.1.0.1,00:13:48,TokenRing0 O IA 172.17.0.4/30 [110/70] via 10.1.0.1, 00:13:53,TokenRing0 172.16.0.0/24 is subnetted, 3 subnets O E1 172.16.1.0 [110/81] via 10.1.0.1, 00:13:47, TokenRing0 O E1 172.16.2.0 [110/81] via 10.1.0.1, 00:13:47, TokenRing0 O E1 172.16.3.0 [110/81] via 10.1.0.1, 00:13:47, TokenRing0 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks C 10.2.0.0/24 is directly connected, Ethernet0 C 10.1.0.0/24 is directly connected, TokenRing0 O 10.0.0.4/32 [110/7] via 10.1.0.1, 00:14:01, TokenRing0 C 10.0.0.5/32 is directly connected, Loopback0
Dailleurs, on ne verra que des routes externes de type 5 dans la base dtat des liens du routeur R5 (cf. listing 6.88) car ce routeur est situ dans laire 0, tandis que les LSA de type 7 provenaient de laire 10.
Listing 6.88. La base dtat des liens OSPF du routeur R5.
R5#show ip ospf database OSPF Router with ID (10.0.0.5) (Process ID 1) ... Type-5 AS External Link States Link ID 172.16.1.0 172.16.2.0 172.16.3.0 ADV Router 10.0.0.4 10.0.0.4 10.0.0.4 Age 913 914 914 Seq# 0x80000001 0x80000001 0x80000001 Checksum 0x5F3F 0x5449 0x4953 Tag 0 0 0
270
Agrgation de routes externes dans OSPF avec la commande summary-address Nous avons dj utilis la commande summary-address dans une prcdente section quand il fallait envoyer un prxe agrg de OSPF vers un autre protocole. Dans le cas prsent, il sagit dagrger des routes externes apprises travers dautres protocoles. Or, il nest pas toujours possible de connatre tous les prxes rseau disponibles dans les autres systmes autonomes surtout que certains prxes rseau peuvent tre ajouts ou supprims par la suite. Cependant, une NSSA fait partie intgrante dun mme systme autonome, mme si elle utilise dautres protocoles que OSPF pour leur routage dynamique. On naura donc souvent aucun mal connatre tous les prxes rseau des NSSA et donc les agrger. Dans le rseau illustr gure 6.12, le routeur R3 peut procder une telle agrgation pour les routes externes disponibles dans le domaine IGRP de laire 10 en utilisant le prxe rseau 172.16.0.0/16. Le listing 6.89 montre la nouvelle conguration du routeur R3. La ligne en italique montre comment est utilise la commande summary-address.
Listing 6.89. Conguration du routeur R3, qui procde lagrgation des informations de routage redistribues partir de IGRP.
interface Loopback0 ip address 172.17.255.3 255.255.255.255 interface Ethernet0 ip address 172.16.3.3 255.255.255.0 interface Serial0 ip address 172.17.0.5 255.255.255.252 router ospf 10 summary-address 172.16.0.0 255.255.0.0 redistribute igrp 172 metric 10 metric-type 1 subnets network 172.17.0.0 0.0.255.255 area 10 area 10 nssa router igrp 172 redistribute ospf 10 network 172.16.0.0 default-metric 10000 1 255 1 1500 ip classless
La base dtat des liens du routeur R3 ne contient quune LSA de type 7 qui dcrit les prxes agrgs de toutes les routes externes.
Listing 6.90. LSA de type 7 de la base dtat des liens du routeur R3.
R3#show ip ospf database OSPF Router with ID (172.17.255.3) (Process ID 10) ... Type-7 AS External Link States (Area 10) Link ID ADV Router Age Seq# Checksum Tag
271
172.16.0.0
172.17.255.3
153
0x80000001 0x9B47
Type-5 AS External Link States Link ID 172.17.0.0 ADV Router 172.17.255.3 Age 191 Seq# Checksum Tag 0x80000001 0x5D59 0
De mme, la base dtat des liens du routeur R4 (cf. listing 6.91) contient une seule LSA de type 7 et une seule LSA de type 5.
Listing 6.91. Base dtat des liens du routeur R4, qui contient les LSA dcrivant les liens externes.
R4#show ip ospf database OSPF Router with ID (10.0.0.4) (Process ID 10) ... Type-7 AS External Link States (Area 10) Link ID 172.16.0.0 ADV Router 172.17.255.3 Age 201 Seq# Checksum Tag 0x80000001 0x9B47 0
Type-5 AS External Link States Link ID 172.16.0.0 ADV Router 10.0.0.4 Age 201 Seq# Checksum Tag 0x80000001 0x6A35 0
Bien entendu, la table de routage du routeur R4 (cf. listing 6.92) ne contient plus quune route externe OSPF NSSA pour le prxe rseau agrg.
Listing 6.92. Table de routage du routeur R4.
R4#show ip route ... 172.17.0.0/16 is variably subnetted, 2 subnets, 2 masks O 172.17.255.3/32 [110/65] via 172.17.0.5, 00:14:23, Serial1 C 172.17.0.4/30 is directly connected, Serial1 O N1 172.16.0.0/16 [110/75] via 172.17.0.5, 00:04:22, Serial1 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks O 10.2.0.0/24 [110/16] via 10.1.0.2, 00:14:23, TokenRing0 C 10.1.0.0/24 is directly connected, TokenRing0 C 10.0.0.4/32 is directly connected, Loopback0 O 10.0.0.5/32 [110/7] via 10.1.0.2, 00:14:23, TokenRing0
Enn, la table de routage du routeur R5 (cf. listing 6.93) contient maintenant une seule route externe OSPF pour le prxe rseau 172.16.0.0/16, prxe rseau agrg pour tous les prxes rseau grs par IGRP disponibles dans laire 10.
272
R5#show ip route ... 172.17.0.0/16 is variably subnetted, 2 subnets, 2 masks O IA 172.17.255.3/32 [110/71] via 10.1.0.1, 00:13:56, TokenRing0 O IA 172.17.0.4/30 [110/70] via 10.1.0.1, 00:13:56, TokenRing0 O E1 172.16.0.0/16 [110/81] via 10.1.0.1, 00:03:55,TokenRing0 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks C 10.2.0.0/24 is directly connected, Ethernet0 C 10.1.0.0/24 is directly connected, TokenRing0 O 10.0.0.4/32 [110/7] via 10.1.0.1, 00:34:40, TokenRing0 C 10.0.0.5/32 is directly connected, Loopback0
7
Cas spciaux de routage
Solutions de conguration prsentes dans ce chapitre Conguration du routage slectif (Policy Based Routing) . . . . . . . . . . . . . . . . . . . . Routage via une liaison ddie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Aiguillage des requtes en fonction de lapplication . . . . . . . . . . . . . . . . . . . . . . Conguration de la NAT (traduction dadresses rseau) . . . . . . . . . . . . . . . . . . . . . NAT statique dadresses IP internes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NAT dynamique dadresses IP internes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Espace dadresses IP internes globales surcharg . . . . . . . . . . . . . . . . . . . . . . . . Recouvrement des espaces dadresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . quilibrage de charge TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de HSRP (Hot Standby Router Protocol) . . . . . . . . . . . . . . . . . . . . . Conguration de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MHSRP pour lquilibrage de charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration du routage compos la demande (Dial-on-Demand Routing) . . . . Routage la vole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rappel automatique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 280 283 287 287 291 299 301 304 307 307 313 316 316 320
Introduction
Dans ce chapitre, nous aborderons diffrents cas particuliers de routage, considrs en gnral comme des variantes des procdures normales de routage. Il sagit du routage slectif (policybased routing), de la traduction dadresses rseaux (NAT), du protocole HSRP (Hot Standby Router Protocol) pour la tolrance aux pannes du routeur par dfaut et du routage la demande (sur ligne commute Dial-On-Demand Routing).
274
275
Terminologie NAT
Du point de vue de la NAT, les rseaux se divisent en deux catgories : les rseaux internes et les rseaux externes. Les rseaux internes sont des rseaux dont les adresses IP ne sont pas lgitimes, elles doivent tre traduites en des adresses IP lgitimes. Les rseaux externes sont des rseaux dont les adresses IP sont considres comme lgitimes.
REMARQUE
Dans le contexte de la NAT, le concept de lgitimit nimplique pas forcment le rattachement ofciel une autorit. Par exemple, si deux rseaux utilisant les mmes plages dadresses prives sont fusionns, lun de ces rseaux devient un rseau interne, lautre le rseau externe. De ce fait, les adresses IP du premier rseau ne sont plus lgitimes.
Les termes suivants sont utiliss pour dcrire le type dadresse IP dans le contexte de la NAT : Adresses internes locales Ce sont les adresses IP des machines htes connectes sur le rseau interne. Ces adresses sont congures sur les cartes rseaux des machines et doivent tre traduites. Les adresses locales internes nont pas tre affectes ofciellement et peuvent ne pas tre connues du ct du rseau externe (ainsi, les routeurs connects sur le rseau externe peuvent ne pas avoir de routes explicites vers les adresses internes locales). Adresses internes globales Ce sont les adresses IP en lesquelles les adresses locales internes vont tre traduites. Les adresses globales internes sont lgitimes, et ainsi, doivent tre connues du ct du rseau externe. Ceci suppose que les routeurs connects sur le rseau externe doivent connatre les routes pour ces adresses internes globales. Adresses externes locales Ce sont les adresses IP de lespace dadressage interne, par lesquelles sont connues les machines connectes au rseau externe. Ces adresses peuvent ne pas tre lgitimes. Elles doivent tre routables dans lespace dadressage interne local. Adresses externes globales Ce sont les adresses IP des machines connectes au rseau externe. Ces adresses doivent tre lgitimes et doivent tre routables dans lespace dadressage global externe.
REMARQUE
Toutes ces catgories dadresses ne sont pas systmatiquement utilises dans une conguration NAT.
Les routeurs congurs pour la NAT tiennent jour une table appele table NAT. Chaque entre de cette table NAT contient cinq champs, le protocole, ladresse IP locale interne, ladresse IP globale interne, ladresse IP locale externe et ladresse IP globale externe. La fonction des quatre derniers champs est de garder la correspondance entre les adresses. Le premier champ repre le protocole IP dont la connexion doit tre traduite en utilisant les adresses IP contenues dans lenregistrement. Selon la formule de NAT employe, ces champs peuvent tre requis en partie ou en totalit. Les entres de la table NAT peuvent tre remplies de deux faons diffrentes. La premire est statique ; les entres contenues dans la table sont congures manuellement. Une fois les entres enregistres dans le routeur, elles apparaissent instantanment dans la table NAT. La deuxime est dynamique ; les entres de la table NAT sont cres dynamiquement chaque fois quun datagramme IP, dont les caractristiques satisfont les rgles pralablement congures dans le routeur, parvient ce routeur.
276
Le protocol HSRP
HSRP est un protocole propritaire Cisco, il offre un mcanisme de tolrance aux pannes de la passerelle par dfaut (cest--dire le routeur dsign dans les routes par dfaut sur les postes du rseau) aux diffrentes machines du rseau qui sont incapables de dcouvrir dynamiquement les routeurs qui leur sont affects.
REMARQUE
Il est recommand de ne pas utiliser HSRP si les machines peuvent dcouvrir dynamiquement leur routeur. Cependant, HSRP tant trs rpandu, est souvent prfr aux mthodes dynamiques comme ICMP Router Discovery Protocol (IRDP). La popularit de HSRP peut tre explique par sa facilit de conguration et le fait quil ncessite trs peu ou pas du tout de modications sur les machines.
HSRP est entirement dcrit dans la RFC 2281, HSRP (Cisco Hot Standby Router Protocol). Ce document est class pour information , ce qui veut dire que HSRP nest pas un standard Internet. Lide sous-jacente HSRP est simple. Supposons que deux routeurs au moins soient connects un mme segment, et que lun de ces routeurs serve comme passerelle par dfaut pour lensemble des htes de ce segment. A priori, seul ce routeur peut envoyer le trac sortant gnr par les machines du segment. (Le trac entrant peut, quant lui, arriver par nimporte quel routeur de ce segment). Supposons que les autres routeurs surveillent lactivit du dit routeur jouant passerelle par dfaut pour le rseau. Si ce routeur venait tomber, un des autres routeurs prendrait alors son adresse IP. Les machines ne verraient ainsi aucun dysfonctionnement dans lacheminement de leurs datagrammes vers lextrieur. Dans HSRP, le routeur prenant ladresse IP du routeur dfaillant, soctroie aussi son adresse MAC. Ceci est important, car sans cette fonctionnalit, les machines doivent dabord supprimer lentre ARP correspondant lancien routeur dans leur table, puis ensuite initier une autre requte ARP pour retrouver la nouvelle adresse MAC du routeur supplant. Le routeur HSRP ayant le rle de routeur par dfaut pour les postes dun segment est appel routeur actif (active router). Ladresse IP que les machines htes utilisent pour leur routeur par dfaut est appele adresse IP virtuelle, elle est diffrente de ladresse IP congure sur linterface rseau du routeur par dfaut. Ladresse MAC correspondant ladresse IP virtuelle du routeur par dfaut est appele adresse MAC virtuelle, elle peut tre identique ladresse MAC relle mais ce nest pas toujours le cas. En sus du routeur actif, HSRP dsigne aussi un routeur en attente (standby router) qui nest autre que le routeur qui va prendre ladresse MAC et ladresse IP du routeur actif en cas de dfaillance de celui-ci. Il ne peut y avoir quun seul routeur actif et un seul routeur en attente sur un mme segment. HSRP lui-mme est un protocole trs simple similaire au hello protocol. Le routeur actif et le routeur en attente envoient rgulirement tous les autres routeurs HSRP du segment des paquets HSRP. Le principal motif de ces envois est davertir les autres routeurs HSRP de lexistence des routeurs actif et en attente. Si les autres routeurs HSRP ne reoivent plus ces donnes HSRP pendant une certaine dure, un des routeurs HSRP est dsign comme remplaant du routeur dfaillant. Linformation vhicule dans les paquets HSRP est la suivante : Priorit dattente (standby priority) dsigne la priorit dattente du routeur envoyant la trame ; cest un entier compris entre 0 et 255 utilis pour dterminer qui sera le routeur
277
HSRP actif et qui sera le routeur en attente. Le routeur ayant la priorit dattente la plus leve devient le routeur actif. Le routeur ayant la priorit dattente juste infrieure celle du routeur actif mais suprieure celle de tous les autres routeurs devient le routeur en attente.
REMARQUE
Si deux routeurs HSRP ou plus ont la mme priorit dattente, cest le routeur qui a la plus haute adresse IP sur linterface HSRP active qui a prsance.
Lidentiant du groupe dattente (Standby group) dsigne lidentiant du groupe dattente du routeur envoyant la trame. Cest un entier compris entre 0 et 2 sur les interfaces Token Ring, et entre 0 et 255 pour les autres mdias. Les routeurs ayant le mme identiant de groupe dattente simuleront la mme adresse MAC virtuelle et une adresse IP virtuelle primaire et ventuellement des adresses IP virtuelles secondaires. Les nombreux routeurs connects un segment pouvant tre congurs comme lments de plusieurs groupes dattente, il peut y avoir recouvrement, cest dire quun mme routeur peut tre membre de plusieurs groupes dattente. Llection dun routeur actif et dun routeur en attente se fait par groupe dattente indpendamment les uns des autres. En dautres termes, le champ groupe dattente dans les paquets HSRP est utilis pour dmultiplexer les paquets HSRP entre les diffrents groupes dattente. Chacun de ces groupes dattente a son propre routeur actif et son propre routeur en attente. Ltat dun routeur en tant que membre dun groupe dattente est indpendant de son tat en tant que membre dun autre groupe dattente. Lorsque HSRP est congur sur linterface dun routeur, celui-ci coute les trames HSRP manant du segment sur lequel est connecte linterface. Si le routeur dcouvre quil est le seul routeur HSRP du segment, il devient le routeur actif. Sil dcouvre un routeur dj actif avec une plus haute priorit que lui et pas de routeur en attente, le nouveau routeur devient le routeur en attente. Si le nouveau routeur dcouvre que sa priorit est plus leve que celle du routeur actif ou du routeur en attente, il devient alors le nouveau routeur actif ou le nouveau routeur en attente, pour autant quil soit congur avec les fonctions de premption. Cette fonction de premption est une valeur binaire qui indique si un routeur avec une priorit plus haute que le routeur actif ou que le routeur en attente peut les remplacer. Si le routeur remplac nest plus ni actif ni en attente, il arrte denvoyer des trames HSRP. HSRP est un protocole au-dessus de UDP dans le modle DoD. Les trames HSRP sont encapsules dans les datagrammes UDP, qui sont envoys ladresse multicast 224.0.0.2 sur le port 1985. La valeur du champ TTL (Time To Live) dans le datagramme IP est mise 1. En dautres termes, ce datagramme reste local au segment sur lequel HSRP est mis en place. En fonction du type de mdia de linterface congure pour HSRP, une adresse MAC spcique est utilise comme adresse MAC virtuelle. Les adresses MAC virtuelles dans un Token Ring sont C0-00-00-01-00-00, C0-00-00-02-00-00 ou C0-00-00-04-00-00, qui correspondent respectivement aux groupes 0, 1 ou 2. Sur les autres mdias, les adresses MAC virtuelles doivent tre 00-00-0C-07-AC-XX o XX dsigne le numro de groupe dattente HSRP. Le routeur actif doit utiliser ladresse MAC virtuelle comme adresse source pour les paquets de niveau liaison (Data Link Layer) transportant les datagrammes UDP, eux-mmes contenant les trames HSRP. Aucun autre routeur HSRP, pas mme le routeur en attente ne doit utiliser cette adresse MAC virtuelle comme adresse source dans les paquets mis. Ceci est ncessaire pour que HSRP puisse fonctionner dans le cas dune installation avec des ponts transparents.
278
Solutions de conguration
La conguration du routage slectif (Policy-Based Routing)
La conguration du routage slectif sur les routeurs Cisco est base sur le concept de squences conditionnelles ou route-maps, qui sont appliques comme des rgles de routage sur les interfaces des routeurs. Ainsi les rgles ditinraires sont appliques sur chacun des datagrammes arrivant sur les interfaces. Pour congurer le routage slectif, il faut procder aux tapes suivantes : 1. Crer une route-map dont la clause contient linstruction match ip address {<numro de LA>|<nom de LA>}, ainsi que lun des groupes dactions suivantes : set interface <interface> suivi de set ip next-hop <adresse IP> ou set default interface <interface> suivi de set ip default next-hop <adresse IP>. Utilisez la syntaxe dcrite au chapitre 6 pour diter une rgle de routage. Le paramtre {<numro de LA>|<nom de LA>} dsigne le numro ou le nom de la liste daccs qui dnit les datagrammes qui doivent subir les rgles de routage. Si la liste daccs renvoie permit, les actions entres par set seront entreprises, sinon, les caractristiques du datagramme seront compares la clause match suivante. Les actions set interface <interface> et set ip next-hop <adresse IP> sont utilises par le routeur pour dcider du routage applicable aux datagrammes valids par la clause match. Ces datagrammes sont routs via linterface <interface> et au travers du prochain routeur dont ladresse IP est <adresse IP>. Laction set contient le mot cl default, et seuls les datagrammes destins aux adresses IP dont les routes sont absentes des tables de routage sont aiguills selon les actions set.
AVERTISSEMENT Bien que les instructions set interface <interface> et set ip next-hop <adresse IP> soient facultatives,
vriez que vous les utilisez ensemble. Si lune ou lautre est omise, le routeur remplace linstruction absente par linformation correspondante dans sa table de routage. Cependant cette adresse IP peut ne pas tre visible via linterface congure par laction set interface <interface>. Dans ce cas, les datagrammes ne seront aiguills par aucun routeur, et la connexion ne sera pas tablie.
2. Appliquer la route-map sur linterface approprie en utilisant la commande ip policy route-map <nom de la RM>, o le paramtre <nom de la RM> dsigne le nom de la route-map. Les datagrammes reus sur cette interface sont compars la route-map. Si lune des clauses de la route-map renvoie permit, le datagramme subit les rgles de routage. Sinon, le datagramme est rout selon la table de routage.
279
Les rgles ditinraires (route-maps) en tant que rgles de routage ne sappliquent que sur le trac entrant, contrairement aux listes daccs
Le routage slectif a de nombreuses applications, qui ne peuvent pas toutes tre voques dans ce livre. Nous expliciterons son fonctionnement au travers de deux exemples bass sur la mme topologie rseau. Ce rseau est compos dun sige social avec son propre rseau (la partie grise appele SC ) et de nombreuses agences, dont deux seulement sont reprsentes sur la gure 7.1 (les zones grises appeles Ag.1 et Ag.2 ). Cette topologie est en toile (hub-and-spoke), cest--dire que les liales sont interconnectes au travers du rseau central
Figure 7.1
H3
Segment 4 10.255.0.4/30
Ag.2
R4
e0
Segment 7 172.16.0.4/30
s1
s0
s1 e0
R3
Segment 6 10.0.1.0/24
R2
s0
e0
R1
e0
Segment 1 10.1.1.0/24
s1 to0
s0
Ag.1
SC
Segment 2 10.1.2.0/24
Segment 5 10.255.0.8/30
H1
H2
Cependant, deux agences ont mis en place une maille supplmentaire (appele segment 7 dans la gure 7.1), dont lutilit sera prcise plus loin dans les exemples. Nous choisissons ces deux exemples car ils sont caractristiques des cas dutilisation du routage slectif.
280
Utilisation du routage slectif (policy-based routing) pour du routage sur ligne spcialise Supposons que les agences Ag.1 et Ag.2 aient des utilisateurs se plaignant frquemment des faibles performances de leurs machines pendant les heures charges du sige social. Supposons aussi que ces utilisateurs soient rpartis sur les deux agences et quils doivent aussi communiquer entre eux. Les agences ont dcid dinstaller une ligne spcialise (segment 7) spciquement pour runir les deux rseaux sans passer par le site central. Supposons que les utilisateurs autoriss utiliser le segment 7 sont branchs sur le segment 1 dans lagence Ag.1 et sur le segment 3 dans lagence Ag.2. On peut croire de prime abord que lon peut rsoudre ce problme en utilisant un routage statique. Mais en y regardant de plus prs, nous nous apercevons quun routage statique ne fera pas de distinction entre les trames provenant du segment 1 ou du segment 2 de lagence Ag.1. Si elles sont destines au segment 3 de lagence Ag.2, un routage classique les fera passer par le segment 7. Dans notre cas, nous ne voulons router au travers du segment 7 que les trames manant du segment 1 et tout autre trac doit tre rout selon les tables de routage. En revanche, cette tche peut tre facilement rsolue avec le routage slectif. Lide est de dnir des rgles de routage sur les interfaces Ethernet des routeurs R1 et R4 en utilisant des rgles ditinraires (route-map) concordant avec les trames des segments 1 et 3. Les listings 7.1 7.4 montrent les congurations des quatre routeurs. Le routage slectif nest en place que sur les routeurs R1 et R4. On voit les congurations spciques en caractres italiques.
Listing 7.1. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.1.1.1 255.255.255.0 ip policy route-map Seg1-Seg6 interface Serial0 ip address 172.16.0.5 255.255.255.252 interface Serial1 ip address 10.255.0.10 255.255.255.252 interface TokenRing0 ip address 10.1.2.1 255.255.255.0 ring-speed 16 router eigrp 10 network 10.0.0.0 access-list 100 permit ip any 10.2.1.0 0.0.0.255 route-map Seg1-Seg6 permit 10 match ip address 100 set interface Serial0 set ip next-hop 172.16.0.6
281
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0 ip address 10.255.0.9 255.255.255.252 router eigrp 10 network 10.0.0.0
Listing 7.3. Conguration du routeur R3.
interface Loopback0 ip address 10.0.0.3 255.255.255.255 interface Ethernet0 ip address 10.0.1.2 255.255.255.0 interface Serial1 ip address 10.255.0.5 255.255.255.252 router eigrp 10 network 10.0.0.0
Listing 7.4. Conguration du routeur R4.
interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.2.1.1 255.255.255.0 ip policy route-map Seg6-Seg1 interface Serial0 ip address 10.255.0.6 255.255.255.252 interface Serial1 ip address 172.16.0.6 255.255.255.252 router eigrp 10 network 10.0.0.0 access-list 100 permit ip any 10.1.1.0 0.0.0.255 route-map Seg6-Seg1 permit 10 match ip address 100 set interface Serial1 set ip next-hop 172.16.0.5
282
Bien que nous soyons intresss par une rglementation du routage en fonction de la source des trames, notez que nous ne spcions pas cette origine dans la liste daccs (access-list 100 sur les deux routeurs). Ceci est d au fait que nous faisons du routage slectif par interface. Dans notre cas, toutes les trames arrivant sur une certaine interface et destination dune autre interface doivent tre routes de manire slective. Ainsi, nous pouvons collecter toutes les trames en ne spciant que leur destination dans la liste daccs. Mais si nous voulons rglementer plus nement, cest dire autoriser les trames de certaines machines seulement du segment 1 et non pas toutes, passer au travers du segment 7 pour arriver sur le segment 3, il faudra expliciter leur adresse IP dans la liste daccs et ne plus utiliser le mot cl any.
AVERTISSEMENT Les listes daccs standard peuvent tre utilises dans la dnition des itinraires (route-maps) mais elles
Le routage slectif est assez similaire au routage statique. Dans la plupart des cas, il sera donc ncessaire de congurer correctement tous les routeurs en jeu.
Le routage slectif naffecte en rien les tables de routage des routeurs en place. Le listing 7.5 montre la table de routage du routeur R1.
Listing 7.5. La table de routage du routeur R1.
R1#show ip route ... 172.16.0.0/30 is subnetted, 1 subnets C 172.16.0.4 is directly connected, Serial0 10.0.0.0/8 is variably subnetted, 10 subnets, 3 masks D 10.0.0.2/32 [90/2297856] via 10.255.0.9, 06:46:53, Serial1 C 10.1.2.0/24 is directly connected, TokenRing0 D 10.2.1.0/24 [90/2733056] via 10.255.0.9, 06:46:53, Serial1 D 10.0.0.3/32 [90/2323456] via 10.255.0.9, 06:46:53, Serial1 C 10.1.1.0/24 is directly connected, Ethernet0 D 10.0.1.0/24 [90/2195456] via 10.255.0.9, 06:46:53, Serial1 C 10.0.0.1/32 is directly connected, Loopback0 D 10.0.0.4/32 [90/2835456] via 10.255.0.9, 06:46:53, Serial1 D 10.255.0.4/30 [90/2707456] via 10.255.0.9,06:46:53,Serial1 C 10.255.0.8/30 is directly connected, Serial1
An de vrier que le routage slectif fonctionne correctement, utilisons la commande traceroute sur la machine H1 pour atteindre diffrentes destinations. Dans notre exemple, les machines sont des stations de travail Windows NT, et la commande traceroute est appele tracert. Le listing 7.6 montre la sortie cran de la commande tracert -d 10.2.1.120, o 10.2.1.120 est ladresse IP de la machine H3. La commande conrme que les paquets envoys par une machine du segment 1 vers une machine du segment 3 sont bien aiguills au travers du segment 7 (remarquez les lignes en italique).
Listing 7.6. Sortie cran de tracert
C:\>tracert -d 10.2.1.120
283
Trace complete.
Le listing 7.7 montre la sortie cran de la commande tracert -d 10.0.1.2, o 10.0.1.2 est ladresse IP de linterface Ethernet0 du routeur R3. Cette fois, les paquets ne sont pas routs au travers du segment 7, car ils ne sont pas destins au segment 3.
Listing 7.7. Sortie cran de la commande tracert machine H1.
C:\>tracert -d 10.0.1.2 Tracing route to 10.0.1.2 over a maximum of 30 hops 1 2 3 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10.1.1.1 10 ms 10.255.0.9 10 ms 10.0.1.2
Trace complete.
Enn, le listing 7.8 montre la sortie cran de la commande tracert -d 10.2.1.120. Mais cette commande est excute sur la machine H2, qui est sur le segment 2 (lanneau Token Ring). Ainsi que le montre la sortie cran, les rgles de routage ne sappliquent pas au trac destin au segment 3 manant dun segment autre que le segment 1.
Listing 7.8. Sortie cran de la commande tracert machine H2.
C:\>tracert -d 10.2.1.120 Tracing route to 10.2.1.120 over a maximum of 30 hops 1 2 3 4 5 <10 <10 <10 <10 <10 ms ms ms ms ms <10 10 10 10 11 ms ms ms ms ms <10 <10 <10 <10 <10 ms ms ms ms ms 10.1.2.1 10.255.0.9 10.0.1.2 10.255.0.6 10.2.1.120
Trace complete.
Lutilisation du routage slectif pour un routage de niveau applicatif Supposons maintenant que les agences Ag.1 et Ag.2 ont des applications critiques en matire de trac rseau (comme des bases de donnes, etc.) qui ne peuvent pas bien fonctionner durant les priodes doccupation intense du rseau du site central. Cette fois-ci, les agences ont dcid dutiliser le segment 7 uniquement pour ce type dapplications. Comme
284
auparavant, les applicatifs sont situs sur le segment 1 de lagence Ag.1 et sur le segment 3 de lagence Ag.2. Pour lexemple, lapplicatif considr sera telnet (port 23). Ainsi, notre tche est ici, daiguiller uniquement le trac telnet manant du segment 1 destination du segment 3 au travers du segment 7. Le trac en retour, doit aussi utiliser le segment 7. Mais le trac telnet manant du segment 3 destination du segment 1 ne doit pas utiliser cet itinraire. Nous rappelons ce que nous avons vu au chapitre 1, une connexion telnet est initie par un client telnet, qui utilise via son systme dexploitation, un port TCP arbitraire. Ce port est utilis comme port source par lapplicatif client. Le port TCP de destination est, quant lui, le port bien connu (well-known port) 23. Le serveur telnet utilise le port 23 comme port TCP source. Ainsi, nous devons modier les listes daccs sur les routeurs R1 et R2 comme suit : La liste daccs sur le routeur R1 doit dtecter les datagrammes contenant des segments TCP destins au port TCP 23. La liste daccs sur le routeur R4 doit dtecter les datagrammes contenant des segments TCP avec un port TCP source 23. Les listings 7.9 et 7.10 montrent les nouvelles congurations des routeurs R1 et R4. Les congurations des routeurs R2 et R3 sont inchanges.
Listing 7.9. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.1.1.1 255.255.255.0 ip policy route-map Seg1-Seg6 interface Serial0 ip address 172.16.0.5 255.255.255.252 interface Serial1 ip address 10.255.0.10 255.255.255.252 interface TokenRing0 ip address 10.1.2.1 255.255.255.0 ring-speed 16 router eigrp 10 network 10.0.0.0 ip access-list extended telnet172 permit tcp any 10.2.1.0 0.0.0.255 eq telnet route-map Seg1-Seg6 permit 10 match ip address telnet172 set interface Serial0 set ip next-hop 172.16.0.6
285
interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.2.1.1 255.255.255.0 ip policy route-map Seg6-Seg1 interface Serial0 ip address 10.255.0.6 255.255.255.252 interface Serial1 ip address 172.16.0.6 255.255.255.252 router eigrp 10 network 10.0.0.0 ip access-list extended telnet172 permit tcp any eq telnet 10.1.1.0 0.0.0.255 route-map Seg6-Seg1 permit 10 match ip address telnet172 set interface Serial1 set ip next-hop 172.16.0.5
Remarquez que nous avons utilis des listes daccs nommes au lieu de simples listes daccs tendues. Ceci est optionnel. Pour vrier que le routage slectif fonctionne correctement, nous ne pouvons plus utiliser la commande traceroute. La commande traceroute envoie du trac UDP vers un port UDP inexistant et ne serait daucune utilit dans notre routage TCP ici. la place, nous devons nous rabattre sur la commande debug ip policy pour visualiser comment le routeur effectue son routage slectif. Les listings 7.11 et 7.12 montrent les sorties cran des commandes debug ip policy sur les routeurs R1 et R4 respectivement, une fois que la commande ping 10.2.1.120 est excute sur la machine H1. Du fait que le trac ICMP de ping nest dtect par la liste daccs d aucun routeur, ce trac ICMP nest pas rout selon les rgles. (Remarquez les lignes en italique policy rejected normal forwarding)
Listing 7.11. Sortie cran de la commande debug ip policy sur le routeur R1, une fois entre la commande ping 10.2.1.120 sur la machine H1.
R1#debug ip policy Policy routing debugging is on R1# IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 policy rejected -- normal forwarding IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 policy rejected -- normal forwarding IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 policy rejected -- normal forwarding IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 policy rejected -- normal forwarding IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 policy rejected -- normal forwarding
(Serial1), len 100, (Serial1), len 100, (Serial1), len 100, (Serial1), len 100, (Serial1), len 100,
286
Listing 7.12. Sortie cran de la commande debug ip policy sur le routeur R4, une fois entre la commande ping 10.2.1.120 sur la machine H1.
R4#debug ip policy Policy routing debugging is on R4# IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 policy rejected -- normal forwarding IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 policy rejected -- normal forwarding IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 policy rejected -- normal forwarding IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 policy rejected -- normal forwarding IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 policy rejected -- normal forwarding
(Serial0), len 100, (Serial0), len 100, (Serial0), len 100, (Serial0), len 100, (Serial0), len 100,
Mais, si nous essayons la commande telnet depuis la machine H1 vers la machine H3, la sortie cran de la commande debug ip policy sur les deux routeurs montre que le trac telnet est rout selon les rgles (voir listing 7.13 et 7.14).
Listing 7.13. Sortie cran de la commande debug ip policy sur le routeur R1, une fois entre la commande telnet 10.2.1.120 sur la machine H1.
R1#debug ip policy Policy routing debugging is on R1# IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120, len 44, policy match IP: route map Seg1-Seg6, item 10, permit IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 (Serial0), len 44, policy routed IP: Ethernet0 to Serial0 172.16.0.6 IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120, len 40, policy match IP: route map Seg1-Seg6, item 10, permit IP: s=10.1.1.10 (Ethernet0), d=10.2.1.120 (Serial0), len 40, policy routed IP: Ethernet0 to Serial0 172.16.0.6 ...
Listing 7.14. Sortie cran de la commande debug ip policy sur le routeur R4, une fois entre la commande telnet 10.2.1.120 sur la machine H1.
R4#debug ip policy Policy routing debugging is on R4# IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10, len 44, policy match IP: route map Seg6-Seg1, item 10, permit IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 (Serial1), len 44, policy routed
287
IP: Ethernet0 to Serial1 172.16.0.5 IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10, len 40, policy match IP: route map Seg6-Seg1, item 10, permit IP: s=10.2.1.120 (Ethernet0), d=10.1.1.10 (Serial1), len 40, policy routed IP: Ethernet0 to Serial1 172.16.0.5 ...
La sortie de la commande debug ip policy est assez explicite. Si vous avez des questions sur une information particulire, rfrez-vous la documentation de Cisco. Une autre commande intressante est show route map. Cette commande rappelle les clauses de litinraire mais retrace aussi lutilisation des rgles de routage. La dernire ligne de la sortie cran de la commande comptabilise le nombre de dtections et le nombre doctets ainsi routs. Exemple de sortie cran de la commande show route-map sur le listing 7.15.
Listing 7.15. Sortie de la commande show
R4#show route-map route-map Seg6-Seg1, permit, sequence 10 Match clauses: ip address (access-lists): telnet172 Set clauses: interface Serial1 ip next-hop 172.16.0.5 Policy routing matches: 241 packets, 19386 bytes
288
2. Activer la NAT sur les interfaces connectes aux segments dadresses internes locales avec la commande ip nat inside dans le mode conguration de linterface. 3. Activer la NAT sur les interfaces connectes aux segments dadresses extrieurs avec la commande ip nat outside dans le mode conguration de linterface.
REMARQUE
Ladresse interne dite globale est une adresse interne connue de lespace extrieur. En outre, les autres routeurs du rseau doivent pouvoir atteindre cette adresse interne connue de lextrieur via le routeur NAT. Ceci peut tre le fruit dune dclaration statique de route dans ces routeurs ou dune publication automatique de cette route par le routeur NAT.
La gure 7.2 dcrit un exemple de rseau o le routeur R3 est connect au segment 3 dont la plage dadresses nest pas lgitime vue du reste du rseau. Aussi, le routeur R3 doit-il utiliser la NAT pour permettre la machine H1 (du segment 3) de communiquer avec le reste du rseau.
Figure 7.2
La zone grise est un espace dadresse illgal du point de vue du reste du rseau
H1
Segment 3 172.16.1.0/24
e0
e0
R1
s1 s0
R3
Sous-interface s0.1 DLCI 301
Segment 4 10.255.0.4/30
R2
e0
s0
Sous-interface s0.1 DLCI 201
Segment 2 10.2.0.0/24
H2
Les listings 7.16 7.18 expliquent la conguration des trois routeurs. Remarquez que seul le routeur R3 est congur pour faire de la NAT. Les commandes spciques la NAT sont en caractres italiques.
289
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial1 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial1.2 point-to-point ip address 10.255.0.5 255.255.255.252 frame-relay interface-dlci 102 interface Serial1.3 point-to-point ip address 10.255.0.9 255.255.255.252 frame-relay interface-dlci 103 router eigrp 10 network 10.0.0.0
Listing 7.17. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.6 255.255.255.252 frame-relay interface-dlci 201 router eigrp 10 network 10.0.0.0
Listing 7.18. Conguration du routeur R2.
interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301
290
router eigrp 10 network 10.0.0.0 ip nat inside source static 172.16.1.111 10.100.0.111
Comme prvu, la sortie cran de la commande netstat -n excute sur le serveur H2 (cf. listing 7.20) indique que la session telnet est active entre ladresse IP du serveur H2 et ladresse interne connue de lextrieur (10.100.0.111) utilise dans la conguration statique du NAT.
Listing 7.20. La sortie cran de la commande netstat -n excute sur le serveur H2 montre que H2 a une connexion telnet active avec ladresse 10.100.0.111.
C:\WINDOWS\system32>netstat -n Active Connections Proto TCP TCP TCP Local Address 10.2.0.120:23 127.0.0.1:1027 127.0.0.1:1028 Foreign Address 10.100.0.111:1052 127.0.0.1:1028 127.0.0.1:1027 State ESTABLISHED ESTABLISHED ESTABLISHED
Une connexion telnet depuis la machine H2 vers la machine H1 fonctionne tout aussi bien comme le montre le listing 7.21.
Listing 7.21. La session telnet vers la machine H1 initie depuis la machine H2 fonctionne.
La sortie cran de la commande netstat -n excute sur la machine H1 (cf. listing 7.22) indique que la session telnet est active entre ladresse IP de H1, qui est une adresse locale interne (illgale) et ladresse IP de H2 qui est une adresse de la plage externe.
Listing 7.22. La sortie cran de la commande netstat -n conrme que le routeur traduit ladresse interne globale en ladresse interne locale.
C:\WINDOWS\system32>netstat -n Active Connections Proto Local Address TCP 127.0.0.1:1026 TCP 127.0.0.1:1027 Foreign Address 127.0.0.1:1027 127.0.0.1:1026 State ESTABLISHED ESTABLISHED
291
TCP
172.16.1.111:23
10.2.0.120:1111
ESTABLISHED
C:\WINDOWS\system32>
Cependant, la sortie cran de la commande netstat -n excute sur la machine H2 (cf. listing 7.23) montre que la connexion telnet est active entre ladresse IP de H2 et ladresse interne connue de lextrieur 10.100.0.111
Listing 7.23. La sortie cran de la commande netstat -n sur la machine H2 montre que la connexion telnet est active avec ladresse interne connue de lextrieur.
C:\>netstat -n Active Connections Proto TCP TCP TCP Local Address 10.2.0.120:1111 127.0.0.1:1027 127.0.0.1:1028 Foreign Address 10.100.0.111:23 127.0.0.1:1028 127.0.0.1:1027 State ESTABLISHED ESTABLISHED ESTABLISHED
Conguration de la NAT dynamique dadresses IP internes La traduction dynamique dadresses IP internes est une des congurations dynamiques de la NAT, parmi dautres. La seule diffrence entre la traduction dynamique des adresses IP internes et la traduction statique est le processus de cration de la table NAT. Dans la version statique, la table NAT est remplie manuellement par des instructions donnant les correspondances entre adresses apparies. Dans la version dynamique, cest le routeur qui cre la table au fur et mesure que les datagrammes satisfaisant certains critres arrivent sur linterface tiquete interne . Les datagrammes arrivant sur linterface interne du routeur depuis une adresse IP locale interne dj existante sur la table NAT ne gnrent plus une nouvelle entre de la table. Les critres utiliss pour vrier si le datagramme satisfait certaines rgles et doit donner lieu une entre dans la table NAT sont exprims sous forme de listes daccs. Le datagramme doit satisfaire une rgle de la liste daccs et obtenir le rsultat permit pour pouvoir crer une entre dans la table NAT. Pour crer des entres dans la table NAT, le routeur utilise une plage dadresses internes connues de lextrieur (globales) mises sa disposition lors de sa conguration. Pour chaque nouvelle entre, le routeur consomme une adresse IP de la plage alloue dans un ordre croissant. Si cette plage ne contient plus dadresse disponible, lentre dans la table nest pas cre. Pour congurer la NAT dynamique, il faut suivre ces tapes : 1. Dnir une plage dadresses IP internes connues de lextrieur en utilisant la commande ip nat pool <nom> <adresse IP de dbut> <adresse IP de n> {netmask <masque de sous-rseau>|prex-length <longueur de prxe>} dans le mode conguration globale. Le paramtre <nom> est utilis pour identier la plage dadresses. Les paramtres <adresse IP de dbut> et <adresse IP de n> dnissent ltendue de la plage que le routeur utilisera pour traduire les adresses IP internes locales. Les paramtres <masque de sous-rseau> et <longueur de prxe> sont deux manires diffrentes de dnir le masque de sous-rseau du rseau auquel appartiennent les adresses de la plage.
292
La procdure prcdente permet de dnir une plage contigu dadresses NAT. Si vous dsirez allouer des plages dadresses discontinues, il faut enlever les paramtres <adresse IP de dbut> et <adresse IP de n> de la commande prcdente. Vous devez vous mettre en mode conguration de la plage NAT et dnir plusieurs morceaux de plage dadresses IP en suivant la syntaxe suivante : address <adresse IP de dbut> <adresse IP de n>. 2. Dnir une liste daccs spciant les caractristiques du trac qui, arrivant sur linterface intrieure lautorise gnrer une entre dans la table NAT.
REMARQUE
Vous pouvez utiliser des listes daccs tendues. Cependant, la liste daccs nest prise en compte que si la table NAT na pas dj une entre concidant avec ladresse IP source du datagramme postulant pour une traduction. Si ladresse IP gure dj (par exemple du fait dune entre statique dans la table), la liste daccs nest pas utilise. Dans un tel cas, le datagramme subira la traduction dadresse mme si les autres caractristiques ne devraient pas le permettre.
3. tablir une association entre les adresses internes locales susceptibles dtre traduites et la plage des adresses internes globales (connues de lextrieur) avec la commande ip nat inside source list {<numro de LA>|<nom de LA>} pool <nom de la plage>. Le paramtre <numro de LA> est le nom ou le numro de la liste daccs dnie ltape 2. Le paramtre <nom de la plage> est le nom de la plage dadresses internes connues de lextrieur dnie ltape 1. 4. Activer la NAT sur les interfaces connectes aux segments dadresses internes locales avec la commande ip nat inside dans le mode conguration de linterface. 5. Activer la NAT sur les interfaces connectes aux segments dadresses extrieures avec la commande ip nat outside dans le mode conguration de linterface. Modions la procdure du cas prcdent de traduction statique pour une seule machine H1 et optons pour une conguration dynamique de la NAT. Ici, les machines ayant une adresse dans 172.16.1.0/25 et initiant une connexion TCP vers un hte du segment 2 sont aptes voir leur adresse IP traduite en une adresse IP de la plage globale 10.100.0.50 10.100.0.100. Le listing 7.24 montre la nouvelle conguration du routeur R3. Les autres routeurs gardent leur conguration prcdente.
Listing 7.24. Conguration du routeur R3.
ip nat pool pool172 10.100.0.50 10.100.0.100 prefix-length 24 ip nat inside source list TCP172 pool pool172 interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252
293
ip nat outside frame-relay interface-dlci 301 router eigrp 10 network 10.0.0.0 ip access-list extended TCP172 permit tcp 172.16.1.0 0.0.0.127 10.2.0.0 0.0.0.255
Une commande utile pour surveiller la NAT est show ip nat translations. Cette commande afche le contenu de la table NAT. Cependant, si le routeur est congur pour de la traduction dynamique, il se peut que cette table soit encore vide, et la commande show ip nat translations ne gnre aucune sortie cran. Pour crer une entre dans la table NAT, le routeur doit dabord recevoir une trame satisfaisant aux rgles de la liste daccs. Si la liste daccs est standard, nimporte quel trac concordant avec celle-ci crera une entre dans la table NAT. Si la liste daccs est tendue, alors il faudra que les autres caractristiques du trac concordent avec la liste daccs. Dans notre cas, le trac devra non seulement maner dune machine de la plage 172.16.1.0/25 mais aussi tre une trame TCP destination dune machine du segment 2. Si nous essayons la commande ping vers une machine situe du ct extrieur du routeur R3, celle-ci naboutira pas, pour la simple et bonne raison que ping utilise le protocole ICMP et pas TCP. Le listing 7.25 montre les rsultats de la commande ping vers lhte H2 et vers linterface Ethernet du routeur R1.
Listing 7.25. Rsultats de la commande ping sur H2 et sur linterface Ethernet du routeur R1 depuis la machine H2 avant que le routeur ne contienne une entre pour la machine H1.
C:\>ping 10.2.0.120 Pinging 10.2.0.120 with 32 bytes of data: Request Request Request Request timed timed timed timed out. out. out. out.
C:\>ping 10.1.0.1 Pinging 10.1.0.1 with 32 bytes of data: Request Request Request Request timed timed timed timed out. out. out. out.
Une session telnet vers ladresse IP de linterface Ethernet du routeur R1 naboutira pas non plus. En revanche, une session telnet depuis la machine H1 vers la machine H2 aboutira (cf. listing 7.26).
294
Aprs cette commande, la table NAT du routeur R3 contient une entre correspondant ladresse IP de H1 (172.16.1.111). Le listing 7.27 montre la sortie cran de la commande show ip nat translations.
Listing 7.27. Sortie cran de la commande
R3#show ip nat translations Pro Inside global Inside local Outside local Outside global --- 10.100.0.50 172.16.1.111 -----
Une fois lentre cre, toutes les connexions depuis H1 vers le reste du rseau extrieur seront russies (cf. listing 7.28 qui montre que la commande ping sur H1 ou R1 aboutit). Les connexions russissent prsent car la table NAT ne contient que les paires dadresses IP internes locale et interne globale. Elle ne contient pas les mmes prcisions en vigueur dans la liste daccs utilise lors de la cration de lentre.
Listing 7.28. Une fois lentre pour H1 ajoute dans la table NAT, toutes les connexions depuis H1 vers le reste du rseau aboutissent.
C:\>ping 10.2.0.120 Pinging 10.2.0.120 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.2.0.120: 10.2.0.120: 10.2.0.120: 10.2.0.120: bytes=32 bytes=32 bytes=32 bytes=32 time=91ms time=80ms time=81ms time=80ms TTL=125 TTL=125 TTL=125 TTL=125
C:\>ping 10.1.0.1 Pinging 10.1.0.1 with 32 bytes of data: Reply Reply Reply Reply from from from from 10.1.0.1: 10.1.0.1: 10.1.0.1: 10.1.0.1: bytes=32 bytes=32 bytes=32 bytes=32 time=60ms time=50ms time=50ms time=50ms TTL=254 TTL=254 TTL=254 TTL=254
Une fois la session telnet vers la machine H2 tablie sur H1, la sortie cran de la commande netstat -n excute sur H2 (cf. listing 7.29) montre que cest ladresse interne globale qui a remplac ladresse IP originale de H1.
Listing 7.29. Sortie cran de la commande netstat
C:\WINDOWS\system32>netstat -n Active Connections Proto TCP TCP TCP Local Address 10.2.0.120:23 127.0.0.1:1027 127.0.0.1:1028 Foreign Address 10.100.0.50:1047 127.0.0.1:1028 127.0.0.1:1027 State ESTABLISHED ESTABLISHED ESTABLISHED
295
Vous pouvez utiliser la commande clear ip nat translations * pour effacer les entres de la table NAT. la place de lastrisque, dautres paramtres peuvent tre entrs pour afner les suppressions.
NAT avec le protocole de routage OSPF OSPF ajoute quelques subtilits la conguration de NAT. Dans la section prcdente, nous avons dni la plage des adresses internes globales en utilisant linterface Loopback 0 du routeur R3. Nous comptions sur EIGRP, protocole de routage dynamique, pour diffuser une route vers cette plage dadresses interne globale lensemble du rseau. Mais si nous remplaons EIGRP par OSPF dans les routeurs R1 R3, nous remarquons que NAT ne fonctionne plus. Les listings 7.30 7.32 montrent les congurations des routeurs avec OSPF la place de EIGRP. Aucun autre changement na t effectu.
Listing 7.30. Conguration du routeur R1.
interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial1 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial1.2 point-to-point ip address 10.255.0.5 255.255.255.252 frame-relay interface-dlci 102 interface Serial1.3 point-to-point ip address 10.255.0.9 255.255.255.252 frame-relay interface-dlci 103 router ospf 10 network 10.0.0.0 0.255.255.255 area 0 ip classless
Listing 7.31. Conguration du routeur R2.
interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.6 255.255.255.252 frame-relay interface-dlci 201 router ospf 10
296
ip nat pool pool172 10.100.0.50 10.100.0.100 prefix-length 24 ip nat inside source list TCP172 pool pool172 interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301 router ospf 10 network 10.0.0.0 0.255.255.255 area 0 ip classless ip access-list extended TCP172 permit tcp 172.16.1.0 0.0.0.127 10.2.0.0 0.0.0.255
Une fois les changements effectus, la commande telnet 10.2.0.120 entre sur la machine H1 ne fonctionne plus. Cette commande nopre pas car NAT, sur lequel nous nous appuyons ne fonctionne plus. NAT ne fonctionne plus cause du traitement rserv aux interfaces de rebouclage par OSPF. Si nous regardons les tables de routage du routeur R2 (cf. listing 7.33), nous remarquons quelles contiennent une route vers le rseau 10.100.0.1/32 et ceci en dpit du fait que nous avons congur linterface Loopback 0 du routeur R3 avec un masque de sous-rseau /24.
Listing 7.33. La table de routage du routeur R2.
R2#show ip route ... 10.0.0.0/8 is variably subnetted, 7 subnets, 3 masks C 10.0.0.2/32 is directly connected, Loopback0 C 10.2.0.0/24 is directly connected, Ethernet0 O 10.1.0.0/24 [110/74] via 10.255.0.5, 00:12:40, Serial0.1 O 10.0.0.1/32 [110/65] via 10.255.0.5, 00:12:40, Serial0.1 O 10.100.0.1/32 [110/129] via 10.255.0.5, 00:12:40,Serial0.1 C 10.255.0.4/30 is directly connected, Serial0.1 O 10.255.0.8/30 [110/128] via 10.255.0.5, 00:12:40,Serial0.1
297
Si nous entrons la commande show ip ospf interface Loopback0 sur le routeur R3, nous remarquons que la dernire ligne de la sortie cran indique que les interfaces de rebouclage sont traites (et donc publies) comme des machines rattaches.
Listing 7.34. Sortie cran de la commande show ip sur le routeur R3.
R3#show ip ospf interface Loopback0 Loopback0 is up, line protocol is up Internet Address 10.100.0.1/24, Area 0 Process ID 10, Router ID 10.100.0.1, Network Type LOOPBACK, Cost: 1 Loopback interface is treated as a stub Host
En outre, du fait que linterface de bouclage Loopback0 a une adresse IP plus leve que nimporte quelle autre adresse IP externe, elle est utilise comme identicateur OSPF du routeur, ce qui est incompatible avec les identicateurs OSPF des autres routeurs. La solution directe ce problme est de dnir une route statique pour lespace dadresse interne global pointant sur linterface Null0 et de donner linterface Loopback 0 un identiant OSPF adquat. La route statique doit alors tre rediffuse par le processus de OSPF. Une autre solution est daffecter linterface Loopback0 une adresse IP en tant que telle (dans notre exemple, 10.0.0.3/32) et ensuite de dnir une interface Tunnel0 dont les adresses source et destination sont gales cette nouvelle adresse IP. Comme les interfaces de rebouclage, les interfaces tunnel sont logiques. Cependant, ces dernires ne sont pas traites par OSPF comme des machines rattaches. Ainsi, si ladresse IP globale est dnie en utilisant une interface tunnel, elle sera publie par OSPF correctement. Cette solution vite aussi de rediffuser les routes statiques dans le processus OSPF du routeur R3. Le listing 7.35 montre la nouvelle conguration du routeur R3.
Listing 7.35. Conguration du routeur R3.
ip nat pool pool172 10.100.0.50 10.100.0.100 prefix-length 24 ip nat inside source list TCP172 pool pool172 interface Loopback0 ip address 10.0.0.3 255.255.255.255 interface Tunnel0 ip address 10.100.0.1 255.255.255.0 tunnel source 10.0.0.3 tunnel destination 10.0.0.3 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point
298
ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301 router ospf 10 network 10.0.0.0 0.255.255.255 area 0 ip classless ip access-list extended TCP172 permit tcp 172.16.1.0 0.0.0.127 10.2.0.0 0.0.0.255
La table de routage du routeur R2 (cf. listing 7.36) contient dsormais une route vers lespace dadresse interne global connu de lextrieur.
Listing 7.36. Table de routage du routeur R2 une fois linterface Tunnel 0 cre sur le routeur R3.
R2#show ip route ... 10.0.0.0/8 is variably subnetted, 8 subnets, 3 masks C 10.0.0.2/32 is directly connected, Loopback0 C 10.2.0.0/24 is directly connected, Ethernet0 O 10.0.0.3/32 [110/129] via 10.255.0.5, 00:00:11, Serial0.1 O 10.1.0.0/24 [110/74] via 10.255.0.5, 00:00:11, Serial0.1 O 10.0.0.1/32 [110/65] via 10.255.0.5, 00:00:11, Serial0.1 O 10.100.0.0/24 [110/11239]via 10.255.0.5,00:00:11,Serial0.1 C 10.255.0.4/30 is directly connected, Serial0.1 O 10.255.0.8/30 [110/128] via 10.255.0.5, 00:00:11,Serial0.1
NAT fonctionne ainsi correctement. Utilisation du paramtre type match-host de la commande ip nat pool Comme mentionn dans la section prcdente, le routeur utilise pour ladresse interne globale une adresse dune plage rserve cet usage prise dans un ordre croissant. Quelquefois, vous dcidez de prserver la partie hte de ladresse IP (hostid) lors dune traduction dadresse rseau. Pour obtenir cette fonctionnalit, le paramtre optionnel type match-host peut tre insr la n de la commande ip nat pool. Si ce paramtre est utilis, le routeur calcule ladresse IP interne globale avec cette formule : IGA = IGNA + ( ILA ILNA ) o IGA dsigne ladresse IP interne globale obtenue, IGNA la premire adresse IP de la plage, ILA ladresse IP interne locale (ladresse qui doit tre traduite), et ILNA la partie rseau (network ID) de ladresse IP interne locale. Le masque de sous-rseau de la plage est dni soit par le paramtre prex-length <longueur> soit par le paramtre netmask <masque de sousrseau>. Tous les paramtres doivent tre traits comme des adresses de 32 bits.
AVERTISSEMENT Ladresse IP interne globale ainsi calcule doit rester dans la plage dnie par la commande ip nat pool.
299
Remplaons la plage dadresses IP internes globales que nous avons utilise dans la section prcdente par une nouvelle accompagne du paramtre type match-host. La nouvelle conguration du routeur R3 gure dans le listing 7.37.
Listing 7.37. Conguration du routeur R3.
ip nat pool pool172 10.100.0.96 10.100.0.127 prefix-length 24 type match-host ip nat inside source list 1 pool pool172 interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301 router eigrp 10 network 10.0.0.0 access-list 1 permit 172.16.1.0 0.0.0.127
R3#show ip nat translations Pro Inside global Inside local Outside local Outside global --- 10.100.0.111 172.16.1.111 ----REMARQUE
Les machines situes lextrieur ne peuvent pas atteindre les machines situes lintrieur via leur adresse interne globale, tant que la table NAT ne contient pas une entre correspondante. Dans le cas dune NAT dynamique, lentre NAT est cre seulement si un trac concordant avec les rgles dune liste daccs a t rout vers lextrieur par le routeur NAT. Dans le cas dune NAT statique, lentre est toujours prsente dans la table NAT.
Conguration de la NAT avec un espace dadresses IP internes globales surcharg Dans certains cas, il nest pas possible de dnir une plage dadresses IP internes globales sufsamment tendue. Cest par exemple le cas dun rseau de classe prive qui doit tre connect lInternet. Si le rseau est important, et utilise ainsi une large plage dadresses IP
300
prives comme 10.0.0.0/8, il est impossible davoir une plage de taille identique du ct externe (ct reli lInternet). Dailleurs, si cela avait t possible, on aurait pris cette plage dadresses IP publique pour schma dadressage interne ! Une solution NAT est possible pour de telles situations, elle est rfrence dans les RFC comme NAPT (Network Address Port Translation) et dans la documentation de Cisco comme PAT (Port Address Translation). NAPT permet un grand nombre de machines connectes sur le rseau interne daccder au rseau extrieur en utilisant soit une seule adresse IP interne globale, soit un nombre restreint. Ceci est rendu possible en traduisant les identiants du niveau transport cest dire les ports TCP/UDP et les identiants des requtes ICMP crs par les machines du rseau interne en des identiants du niveau transport associ la seule (ou les seules) adresse IP interne globale. Le routeur ralisant les fonctions de NAPT doit garder trace de ces identiants transport ainsi que leur adresse IP interne locale correspondante. Pour congurer NAPT, vous pouvez utiliser la procdure dcrite dans la section Conguration dune traduction dynamique dadresses IP internes de ce chapitre ltape 3 mais en ajoutant le paramtre overload la commande ip nat inside source. Vous pouvez aussi utiliser la syntaxe suivante de la commande : ip nat inside source list {<numro de LA>|<nom de LA>} interface <interface>. Dans ce cas, le routeur remplace les adresses IP internes locales par lunique adresse IP congure dans linterface correspondante. Le listing 7.39 montre la conguration du routeur R3, qui maintenant remplace les adresses IP internes locales par ladresse IP de linterface Serial0.1. Les congurations des routeurs R1 et R2 sont donnes dans les listings 7.16 et 7.17.
Listing 7.39. Conguration du routeur R3.
ip nat inside source list 1 interface Serial0.1 overload interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301 router eigrp 10 network 10.0.0.0 access-list 1 permit 172.16.1.0 0.0.0.127
301
La table NAT du routeur R3 est dans le listing 7.40. Remarquez que tous les champs de la table NAT sont remplis.
Listing 7.40. La table NAT du routeur R3.
R3#show ip nat translations Pro Inside global Inside local Outside local Outside global tcp 10.255.0.10:1054 172.16.1.111:1054 10.2.0.120:23 10.2.0.120:23
Conguration de la NAT en cas de recouvrement des espaces dadresses Si deux rseaux utilisant les mmes plages dadresses IP sont fusionns et que lun de ces deux rseaux devient le rseau rattach, il est possible dutiliser NAT pour traduire les adresses recouvertes. Cette solution NAT est base sur lutilisation du DNS (Domain Name System) par les machines du rseau rattach pour rsoudre les adresses IP des machines du rseau externe. Le routeur NAT intercepte les rponses du DNS. Si ladresse IP retourne recouvre une adresse IP du rseau interne rattach, le routeur la traduit en une adresse IP non ambigu routable sur le rseau rattach. Suivez ces tapes pour congurer NAT en traducteur despaces dadresses recouverts : 1. Utiliser la commande ip nat pool, et dnir une plage dadresses externes locales en lesquelles vont tre traduites les adresses IP externes mentionnes dans les rponses DNS. Ces adresses doivent tre routables lintrieur du rseau rattach (le rseau interne local). La syntaxe de la commande ip nat pool est la mme que la prcdente. 2. Dnir une liste daccs spciant quel trac arrivant sur linterface tiquete extrieure est autoris crer une entre dans la table NAT. 3. tablir une correspondance entre les adresses externes globales et la plage dadresses externes locales en utilisant la commande ip nat outside source list {<numro de LA>|<nom de LA>} pool <nom de la plage> 4. Activer la NAT sur les interfaces connectes aux segments dadresses internes locales avec la commande ip nat inside dans le mode conguration de linterface. 5. Activer la NAT sur les interfaces connectes aux segments dadresses externes globales avec la commande ip nat outside dans le mode conguration de linterface.
REMARQUE
Les adresses IP constituant la plage dadresses externes locales au routeur NAT doivent aussi tre routables comme les adresses IP externes globales quelles remplacent. Du fait que les routeurs extrieurs nont aucune connaissance des adresses externes locales, ils ne peuvent publier ces adresses. Ainsi, estil possible que le routage statique soit le seul moyen davertir du routage des adresses externes locales. La traduction des adresses extrieures na de sens quassocie avec une traduction des adresses internes.
ASTUCE
La gure 7.3 donne un exemple de fusion de deux rseaux, dont lun (la zone grise) utilise le mme prxe rseau que lautre. Par chance, le premier rseau nest pas important et se voit rattach au second rseau. NAT permet ainsi de rsoudre le problme du recouvrement dadresses.
302
Figure 7.3
La plage dadresses IP utilise dans la zone grise recouvre une plage dj existante sur le rseau (segment 2).
H1
Segment 3 172.16.1.0/24
e0
e0
R1
s1 s0
R3
Sous-interface s0.1 DLCI 301
Segment 4 10.255.0.4/30
R2
e0
s0
Sous-interface s0.1 DLCI 201
Segment 2 172.16.1.0/24
H2
Les congurations de tous les routeurs sont sur les listings 7.41 7.43.
Listing 7.41. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial1.2 point-to-point ip address 10.255.0.5 255.255.255.252 frame-relay interface-dlci 102 interface Serial1.3 point-to-point ip address 10.255.0.9 255.255.255.252 frame-relay interface-dlci 103 router eigrp 10 network 10.0.0.0
303
interface Ethernet0 ip address 172.16.1.1 255.255.255.0 interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.6 255.255.255.252 frame-relay interface-dlci 201 router eigrp 10 network 10.0.0.0 network 172.16.0.0
Listing 7.43. Conguration du routeur R3.
interface Loopback0 ip address 10.100.0.1 255.255.255.0 interface Ethernet0 ip address 172.16.1.1 255.255.255.0 ip nat inside interface Serial0 no ip address encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.252 ip nat outside frame-relay interface-dlci 301 router eigrp 10 network 10.0.0.0 ip ip ip ip nat nat nat nat pool ext172 10.200.0.30 10.200.0.80 prefix-length 24 pool int172 10.100.0.50 10.100.0.100 prefix-length 24 inside source list 1 pool int172 outside source list 1 pool ext172
Bien que deux plages diffrentes soient utilises pour la traduction des adresses extrieures globales et des adresses intrieures locales, la liste daccs utilise pour la concordance avec les datagrammes IP ouvrant une nouvelle entre dans la table NAT est la mme dans les deux cas. Ceci est d au fait que lespace dadresse IP traduit est le mme (recouvert entre le segment 3 et le segment 2) et donc une seule liste daccs suft. Mais avoir une seule liste daccs nest pas une obligation pour la conguration de la NAT.
304
R3#show ip nat translations Pro Inside global Inside local --- 10.100.0.50 172.16.1.111 --- ------- ------- 10.100.0.50 172.16.1.111
La conguration de la NAT pour lquilibrage de charge TCP Comme expliqu dans lintroduction de ce chapitre, il est possible dutiliser NAT pour lquilibrage de charge. Cette fonction de la NAT est appele LSNAT (Load Sharing Using IP Network Address Translation). La RFC 2391 dcrit cette application. Si plusieurs serveurs excutent le mme service sur le rseau, par exemple un serveur web et un serveur FTP, vous pouvez alors utiliser LSNAT pour permettre laccs tous ces serveurs via une unique adresse IP appele adresse IP virtuelle du serveur. Un routeur congur LSNAT redistribue les connexions entrant sur cette adresse IP virtuelle vers les adresses IP relles des serveurs. Une fois la connexion tablie, tous les paquets suivants seront achemins sur le serveur slectionn lors de la cration de lentre dans la table NAT. Le premier paquet de ces connexions est utilis pour tablir une entre correspondante dans la table NAT du routeur. Les segments auxquels sont connects les serveurs sont les rseaux internes. Les segments auxquels sont connectes les machines accdant au service via ladresse IP virtuelle sont les rseaux externes. Pour congurer LSNAT, suivez ces tapes : 1. Dnir la plage des adresses IP relles qui seront la traduction de ladresse IP virtuelle du serveur. Chacune des adresses dnies dans cette plage doit tre ladresse dun serveur existant. Si les adresses IP relles des serveurs ne sont pas contigus, vous devez dnir une plage non contigu. Dnir la plage en utilisant la mme syntaxe de commande que celle dcrite dans la section Conguration dune traduction dynamique dadresses IP internes de ce chapitre avec les mots cls type rotary ajouts la n. 2. Crer une liste daccs concordant avec ladresse IP virtuelle du serveur donnant ainsi le rsultat permit. 3. tablir une association entre ladresse IP virtuelle du serveur et la plage en utilisant la commande ip nat inside destination list {<numro de LA>|<nom de LA>} pool <nom de la plage>. 4. Activer la NAT sur les interfaces connectes aux segments sur lesquels rsident les serveurs rels avec la commande ip nat inside dans le mode conguration de linterface. 5. Activer la NAT sur les interfaces connectes aux segments dadresses externes globales avec la commande ip nat outside dans le mode conguration de linterface.
REMARQUE
305
La gure 7.4 montre un exemple de rseau pour le dploiement de LSNAT. Les serveurs S1 et S2 fournissent le service telnet, qui est suppos accessible par les machines H1 et H2 sur une unique adresse IP.
Figure 7.4
S1
Segment 1 10.0.1.0/24
S2
e0
R1
Segment 4 10.25.0.4/30
s0 s0
R2
Segment 2 10.0.2.0/24
e0
e1
Segment 3 10.0.3.0/24
H1
H2
Les listings 7.45 et 7.46 montrent les congurations des routeurs R1 et R2. Notez que nous utilisons une plage dadresses non contigus cause des adresses IP des serveurs elles-mmes non contigus (10.0.1.11 et 10.0.1.222)
Listing 7.45. Conguration du routeur R1.
interface Ethernet0 ip address 10.0.1.1 255.255.255.0 ip nat inside interface Serial0 ip address 10.255.0.5 255.255.255.252 ip nat outside router eigrp 10 network 10.0.0.0 ip nat pool Servers prefix-length 24 type rotary address 10.0.1.111 10.0.1.111
306
address 10.0.1.222 10.0.1.222 ip nat inside destination list 1 pool Servers access-list 1 permit 10.0.1.100
Listing 7.46. Conguration du routeur R2.
interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Ethernet1 ip address 10.0.3.1 255.255.255.0 interface Serial0 ip address 10.255.0.6 255.255.255.252 router eigrp 10 network 10.0.0.0
Les listings 7.47 et 7.48 montrent les rsultats dune session telnet depuis les machines H1 et H2 respectivement, vers ladresse IP virtuelle du serveur. La sortie cran indique clairement, bien que ladresse IP destination soit la mme, que les sessions sont engages avec deux serveurs diffrents (HUGEWAVE et LITTLEWAVE).
Listing 7.47. Session telnet depuis H1 vers ladresse IP virtuelle du serveur.
Les listings 7.49 et 7.50 donnent les sorties cran de la commande netstat -n excute sur les machines H1 et H2 respectivement. Les sorties cran donnent les adresses IP relles qui ont remplac ladresse IP virtuelle du serveur.
Listing 7.49. La sortie cran de la commande netstat est tablie avec S1.
C:\WINDOWS\system32>netstat -n Active Connections Proto TCP TCP TCP Local Address 10.0.1.111:23 127.0.0.1:1025 127.0.0.1:1026 Foreign Address 10.0.2.120:11004 127.0.0.1:1026 127.0.0.1:1025 State ESTABLISHED ESTABLISHED ESTABLISHED
Cas spciaux de routage CHAPITRE 7 Listing 7.50. La sortie cran de la commande netstat est tablie avec S2.
307
C:\WINDOWS\system32>netstat -n Active Connections Proto TCP TCP TCP Local Address 10.0.1.222:23 127.0.0.1:1025 127.0.0.1:1026 Foreign Address 10.0.3.120:11005 127.0.0.1:1026 127.0.0.1:1025 State ESTABLISHED ESTABLISHED ESTABLISHED
R1#show ip nat translations Pro Inside global Inside local tcp 10.0.1.100:23 10.0.1.222:23 tcp 10.0.1.100:23 10.0.1.111:23
308
4. (Cette tape est optionnelle.) Entrez la commande standby <numro de groupe> track <interface> [<dcrment de priorit>] si vous dsirez que le routeur dcrmente sa propre priorit dattente en cas dinterruption de linterface <interface>. Le paramtre <dcrment de priorit>, sil est utilis, spcie de combien cette priorit doit diminuer. La valeur par dfaut de ce paramtre est 10. Examinons la conguration rseau de la gure 7.5. Les routeurs R1 et R2 peuvent tre congurs avec HSRP pour fournir un routeur par dfaut redondant aux machines connectes au segment.
Figure 7.5
Les routeurs R1 et R2 sont congurs avec le protocole HSRP an de se relayer lun, lautre en cas de dfaillance du prochain ou de lune de leurs interfaces.
H2
Segment 2 10.2.0.0/24
e0
Segment 3 10.3.0.0/24
R3
s1 s0
Segment 4 10.4.0.0/24
s0
s1
R1
e0
Segment 1 10.1.0.0/24
R2
e0
H1
Les listings 7.52 7.54 montrent la conguration de chacun de ces routeurs.
Listing 7.52. Conguration du routeur R1.
interface Ethernet0 ip address 10.1.0.2 255.255.255.0 no ip redirects standby 10 priority 100 standby 10 preempt standby 10 ip 10.1.0.1 standby 10 track Serial0 50 interface Serial0 ip address 10.3.0.1 255.255.255.0 router eigrp 1 network 10.0.0.0
309
interface Ethernet0 ip address 10.1.0.3 255.255.255.0 no ip redirects standby 10 priority 80 standby 10 preempt standby 10 ip 10.1.0.1 interface Serial1 ip address 10.4.0.1 255.255.255.0 router eigrp 1 network 10.0.0.0
Listing 7.54. Conguration du routeur R3.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial0 ip address 10.4.0.2 255.255.255.0 interface Serial1 ip address 10.3.0.2 255.255.255.0 router eigrp 1 network 10.0.0.0
La commande utilise pour vrier ltat de HSRP sur les routeurs est show standby. (Cette commande a des paramtres optionnels. Si vous dsirez en savoir plus, rfrez-vous la documentation de Cisco.) Les listings 7.55 et 7.56 montrent les sorties crans de la commande show standby excute sur les routeurs R1 et R2. La sortie cran de ces commandes est assez explicite.
Listing 7.55. Sortie cran de la commande show sur le routeur R1.
standby excute
R1#show standby Ethernet0 - Group 10 Local state is Active, priority 100, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:01.056 Hot standby IP address is 10.1.0.1 configured Active router is local Standby router is 10.1.0.3 expired Standby virtual mac address is 0000.0c07.ac0a Tracking interface states for 1 interface, 1 up: Up Serial0 Priority decrement: 50
310
R2#show standby Ethernet0 - Group 10 Local state is Standby, priority 80, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:01.546 Hot standby IP address is 10.1.0.1 configured Active router is 10.1.0.2 expires in 00:00:09 Standby router is local Standby virtual mac address is 0000.0c07.ac0a
REMARQUE
Ladresse MAC virtuelle, apparaissant la dernire ligne du listing 7.56 correspond au modle dadresse MAC virtuelle pour des mdias diffrents de Token Ring. Cf. Introduction de ce chapitre.
Comme mentionn dans lintroduction du chapitre, ladresse MAC virtuelle utilise par le routeur HSRP peut tre identique ou diffrente de ladresse MAC physique de linterface selon le type de celle-ci. Linterface Ethernet0 du routeur R1 a un type qui force le routeur utiliser son adresse MAC virtuelle pour son interface. De ce fait, et du fait du modle utilis dans le cas dinterfaces non Token Ring, le routeur devra changer ladresse MAC visible en ladresse MAC virtuelle et non pas garder ladresse MAC physique grave en dur. Le listing 7.57 montre les deux premires lignes de la sortie cran de la commande show interfaces Ethernet 0 excute sur le routeur R1. Le premier champ en italique sur le listing 7.57 montre ladresse MAC courante de linterface Ethernet0. Le second champ en italique montre ladresse MAC physique originale grave en dur (burned-in address).
Listing 7.57. Sortie cran de la commande show interfaces excute sur le routeur R1.
Ethernet 0
R1#show interfaces Ethernet 0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0000.0c07.ac0a (bia 00e0.b064.5063) ...
Nanmoins, le routeur R2 utilise encore son adresse MAC originale pour son adresse MAC visible (cf. listing 7.58).
Listing 7.58. Sortie cran de la commande show interfaces excute sur le routeur R2.
Ethernet 0
R2#show interfaces Ethernet 0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 00e0.b064.30a9 (bia 00e0.b064.30a9) ...
Si le routeur R1 tait indisponible et que le routeur R2 devenait le routeur actif, il devrait alors changer son adresse MAC visible en la valeur de ladresse MAC virtuelle. Ceci nest faisable que si les caractristiques matrielles de linterface permettent davoir une adresse MAC diffrente de celle grave en dur.
311
Comme vous lavez vu dans lintroduction du chapitre il ne peut y avoir sur un segment quun seul routeur actif et un seul routeur en attente (standby router). Ainsi, si on connecte un troisime routeur HSRP sur le segment 1 dont la conguration est sur le listing 7.59, son tat ne sera ni actif ni en attente.
Listing 7.59. Conguration de linterface Ethernet 0 du routeur R4.
interface Ethernet0 ip address 10.1.0.4 255.255.255.0 no ip redirects standby 1 priority 50 standby 1 preempt standby 1 ip 10.1.0.1
Comme le montre le listing 7.60, le troisime routeur est en tat dcoute (Listen).
Listing 7.60. Sortie cran de la commande show
R4#show standby Ethernet0 - Group 10 Local state is Listen, priority 50, may preempt Hellotime 3 holdtime 10 Hot standby IP address is 10.1.0.1 configured Active router is 10.1.0.2 expires in 00:00:08 Standby router is 10.1.0.3 expires in 00:00:07
Voyons maintenant ce quil se passe si le routeur R1 du segment 1 devient momentanment indisponible. Le premier message (cf. listing 7.61) indique que le routeur R2 est maintenant actif.
Listing 7.61. Message sur la console du routeur R2 lorsquil change de ltat dattente ltat actif.
R2# 02:13:27: %STANDBY-6-STATECHANGE: Standby: 10: Ethernet0 state Standby -> Active
Si nous vrions la sortie cran de la commande show interfaces Ethernet 0, elle indique que ladresse MAC de linterface est devenue ladresse MAC virtuelle. Autrement dit, pour devenir routeur actif, le routeur R2 a d changer son adresse MAC visible et prendre ladresse MAC virtuelle au lieu de garder son adresse MAC grave en dur.
Listing 7.62. Sortie cran de la commande show interfaces Ethernet 0 illustrant le changement dadresse MAC du routeur en ladresse MAC virtuelle.
R2#show interfaces Ethernet 0 Ethernet0 is up, line protocol is up Hardware is Lance, address is 0000.0c07.ac0a (bia 00e0.b064.30a9) ...
Bien sr, ce changement ne sopre que si linterface physique le permet. Examinons maintenant le temps mis par le routeur R2 pour basculer son adresse MAC et son adresse IP. Pour ce faire, nous avons utilis un script perl (dont le source gure en Annexe D) qui excute la commande ping vers une adresse IP toutes les secondes et qui afche les rsultats.
312
Le listing 7.63 montre la sortie cran du script perl lanant la commande ping 10.2.0.120 excute sur la machine H1.
Listing 7.63. Sortie cran de la commande ping 10.2.0.120 lance par le script perl sur la machine H1, qui afche aussi lhorodatage.
C:\>perl tping.pl 10.2.0.120 [41:25] Reply from 10.2.0.120: [41:26] Reply from 10.2.0.120: [41:27] Reply from 10.2.0.120: [41:28] Reply from 10.2.0.120: [41:30] Request timed out. [41:32] Request timed out. [41:34] Request timed out. [41:36] Request timed out. [41:37] Reply from 10.2.0.120: [41:38] Reply from 10.2.0.120: [41:39] Reply from 10.2.0.120: [41:40] Reply from 10.2.0.120: [41:41] Reply from 10.2.0.120:
Comme le montre ce listing, le routeur par dfaut tait indisponible pendant seulement 4 secondes.
REMARQUE
La valeur de temporisation de convergence, dpend du temps savoir celui mis par les routeurs consolider leurs routes aprs un changement. Mme si le routeur en attente a dj bascul son adresse MAC et son adresse IP, le protocole de routage peut encore tre dans la phase de consolidation des routes.
Si le routeur R1 redevient actif, il se peut quil ny ait aucun dpassement de dlai (cf. listing 7.64). Ceci provient du fait quil sagit ici dune transition entre deux routeurs avec les bonnes adresses.
Listing 7.64. Le routeur R1 redevient disponible, alors que le script perl lance la commande ping 10.2.0.120. Comme on le voit, il ny pas de dpassement de dlai lorsque R1 redevient actif.
C:\>perl tping.pl 10.2.0.120 [46:03] Reply from 10.2.0.120: [46:04] Reply from 10.2.0.120: [46:05] Reply from 10.2.0.120: [46:06] Reply from 10.2.0.120: [46:07] Reply from 10.2.0.120: [46:08] Reply from 10.2.0.120: [46:09] Reply from 10.2.0.120: [46:10] Reply from 10.2.0.120: [46:11] Reply from 10.2.0.120: [46:12] Reply from 10.2.0.120: [46:13] Reply from 10.2.0.120: [46:14] Reply from 10.2.0.120: [46:15] Reply from 10.2.0.120: [46:16] Reply from 10.2.0.120:
bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32 bytes=32
time=20ms time=10ms time=10ms time=11ms time=10ms time=10ms time=10ms time=10ms time=10ms time=10ms time=10ms time=10ms time=10ms time=10ms
TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126 TTL=126
313
Utilisation de MHSRP pour quilibrage de charge Utiliser deux routeurs uniquement pour que lun remplace lautre en cas de dfaillance est une mauvaise gestion des ressources de routage. Une meilleure ide consiste quilibrer la charge du trac requis par les machines locales entre ces deux routeurs. Ce partage de ressources peut tre obtenu en modiant lgrement les congurations de base de HSRP. Cette fonctionnalit est appele aussi MHSRP, multigroup HSRP. Lide sousjacente MHSRP est simple : si deux routes sont congures dans deux groupes dattente (standby group) sur la mme interface, le premier routeur peut tre actif pour le premier groupe et le deuxime routeur pour le deuxime groupe. Ces deux groupes ne sont utiliss que pour prendre le relais lun de lautre en cas de dfaillance. Ainsi, nous devrions diviser aussi les machines locales en deux groupes. Le premier groupe utilise comme routeur par dfaut ladresse IP du premier routeur, et le second groupe, celle du deuxime routeur. Le premier groupe de machine envoie donc le trac sortant vers le premier routeur, et le deuxime groupe de machines, vers le deuxime routeur. Les tapes ncessaires pour la conguration de MHSRP sur un routeur sont pratiquement les mmes que dans le cas dune conguration de base. La seule diffrence est que ce processus doit tre fait pour chacun des groupes dattente congurs sur la mme interface. Voyons comment les routeurs de la gure 7.6 doivent tre congurs en MHSRP pour fournir deux routeurs redondants aux machines H1 et H2. La machine H1 utilise la premire adresse IP redondante, et la machine H2, la deuxime. Les listings 7.65 et 7.66 montrent les congurations des routeurs R1 et R2. La conguration du routeur R3 reste identique celle de la section prcdente.
Figure 7.6
Les routeurs R1 et R2 en tant congurs pour deux groupes dattente quilibrent le trac entre eux. Le routeur R1 est le routeur par dfaut du premier groupe et R2, celui du deuxime groupe.
H3
e0 s1
R3
Segment 4 10.4.0.0/24
s0 s1 to0
Segment 1 10.1.0.0/24 R2
R1
s0 to0
H1
H2
314
interface Serial0 ip address 10.3.0.1 255.255.255.0 interface TokenRing0 ip address 10.1.0.3 255.255.255.0 no ip redirects ring-speed 16 standby 1 priority 100 standby 1 preempt standby 1 ip 10.1.0.1 standby 1 track Serial0 50 standby 2 priority 80 standby 2 preempt standby 2 ip 10.1.0.2 router eigrp 1 network 10.0.0.0
Listing 7.66. Conguration du routeur R2.
interface Serial1 ip address 10.4.0.1 255.255.255.0 interface TokenRing0 ip address 10.1.0.4 255.255.255.0 no ip redirects ring-speed 16tandby 1 priority 80 standby 1 preempt standby 1 ip 10.1.0.1 standby 2 priority 100 standby 2 preempt standby 2 ip 10.1.0.2 standby 2 track Serial1 50 router eigrp 1 network 10.0.0.0
Les listings 7.67 et 7.68 montrent les sorties cran de la commande show standby excute sur les routeurs R1 et R2. Remarquez que la commande show standby afche maintenant deux groupes dattente pour chacun des routeurs. Le routeur R1 est le routeur actif pour le groupe 1 et le routeur en attente pour le groupe 2, alors que le routeur R2 est le routeur actif pour le groupe 2 et le routeur en attente pour le groupe 1.
Listing 7.67. Sortie cran de la commande show
R1#show standby TokenRing0 - Group 1 Local state is Active, priority 100, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:00.000 Hot standby IP address is 10.1.0.1 configured Active router is local Standby router is 10.1.0.4 expired Standby virtual mac address is c000.0002.0000
315
Tracking interface states for 1 interface, 1 up: Up Serial0 Priority decrement: 50 TokenRing0 - Group 2 Local state is Standby, priority 80, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:02.486 Hot standby IP address is 10.1.0.2 configured Active router is 10.1.0.4 expires in 00:00:08 Standby router is local Standby virtual mac address is c000.0004.0000
Listing 7.68. Sortie cran de la commande show
R2#show standby TokenRing0 - Group 1 Local state is Standby, priority 80, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:01.268 Hot standby IP address is 10.1.0.1 configured Active router is 10.1.0.3 expires in 00:00:09 Standby router is local Standby virtual mac address is c000.0002.0000 TokenRing0 - Group 2 Local state is Active, priority 100, may preempt Hellotime 3 holdtime 10 Next hello sent in 00:00:00.496 Hot standby IP address is 10.1.0.2 configured Active router is local Standby router is 10.1.0.3 expired Standby virtual mac address is c000.0004.0000 Tracking interface states for 1 interface, 1 up: Up Serial1 Priority decrement: 50
Les listings 7.69 et 7.68 montrent la sortie cran de la commande show interfaces TokenRing 0 excute sur les routeurs R1 et R2. Remarquez que linterface physique tolre lutilisation par le routeur dune adresse virtuelle MAC diffrente de ladresse MAC de linterface.
Listing 7.69. Sortie cran de la commande show interfaces excute sur le routeur R1.
TokenRing 0
R1#show interfaces TokenRing 0 TokenRing0 is up, line protocol is up Hardware is TMS380, address is 0007.0d26.0a46 (bia 0007.0d26.0a46) ...
Listing 7.70. Sortie cran de la commande show interfaces excute sur le routeur R2.
TokenRing 0
R2#show interfaces TokenRing 0 TokenRing0 is up, line protocol is up Hardware is TMS380, address is 0007.0d26.0c15 (bia 0007.0d26.0c15) ...
316
REMARQUE
Comme mentionn plus haut, certains matriels ne peuvent avoir des adresses MAC virtuelles diffrentes de celle de leur interface. La raison en est que le matriel ne peut assigner plusieurs adresses MAC unicast la mme interface. En consquence, MHSRP ne peut tre implment sur un tel matriel, car diffrents groupes dattente ncessitent diffrentes adresses MAC virtuelles.
317
varier entre 1 et 254, inclus. Le paramtre <chane dappel> est la chane utilise lors de la composition du numro pour se connecter au serveur daccs. 3. Congurer le serveur daccs avec la commande snapshot server <priode dactivit>. Le paramtre <priode dactivit> est une valeur numrique indiquant la priode dactivit, elle varie entre 5 et 100. La gure 7.7 montre un exemple de rseau avec du routage instantan. Les routeurs utilisent RIP version 2 comme protocole de routage.
Figure 7.7
Les routeurs R2 et R3 sont congurs pour du routage instantan pour interconnecter lensemble du rseau.
H1
Segment 1 10.0.1.0/24
e0 s0
Segment 5 10.255.0.4/30
R1
Segment 2 10.0.2.0/24
s1
Segment 6 10.200.0.8/30
e0
R2
bri0
Rseau RNIS
R3
e0 s0
bri0
Segment 3 10.0.3.0/24
Segment 7 10.255.0.12/30
s1
R4
e0
Segment 4 10.0.4.0/24
H2
318
Les listings 7.71 7.74 montrent les congurations des quatre routeurs. Seuls les routeurs R2 et R3 ont des congurations spciques pour le routage la demande, elles sont mises en italique.
Listing 7.71. Conguration du routeur R1.
interface Ethernet0 ip address 10.0.1.1 255.255.255.0interface Serial0 ip address 10.255.0.5 255.255.255.252 router rip version 2 network 10.0.0.0
Listing 7.72. Conguration du routeur R2.
username R3 password 0 cisco isdn switch-type basic-ni interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Serial1 ip address 10.255.0.6 255.255.255.252 interface BRI0 ip address 10.200.8.1 255.255.255.0 encapsulation ppp dialer map snapshot 1 384020 dialer map ip 10.200.8.2 name R3 broadcast 384020 dialer-group 1 isdn spid1 3840000001 isdn spid2 3840000002 snapshot client 5 20 ppp authentication chap router rip version 2 network 10.0.0.0 ip classless dialer-list 1 protocol ip permit
Listing 7.73. Conguration du routeur R3.
username R2 password 0 cisco isdn switch-type basic-ni1 interface Ethernet0 ip address 10.0.3.1 255.255.255.0 interface Serial0 ip address 10.255.0.14 255.255.255.252 interface BRI0 ip address 10.200.8.2 255.255.255.0 encapsulation ppp
319
isdn spid1 3840200001 isdn spid2 3840200002 dialer map ip 10.200.8.1 name R2 broadcast 384000 dialer-group 1 snapshot server 5 ppp authentication chap router rip version 2 network 10.0.0.0 dialer-list 1 protocol ip permit
Listing 7.74. Conguration du routeur R4.
interface Ethernet0 ip address 10.0.4.1 255.255.255.0 interface Serial1 ip address 10.255.0.13 255.255.255.252 router rip version 2 network 10.0.0.0
Une fois le routage dynamique stabilis, les tables de routage de tous les routeurs devraient tre les mmes, indpendamment de ltat de la ligne commute. Le listing 7.75 montre le contenu de la table de routage du routeur R4.
Listing 7.75. La table de routage du routeur R4.
R4#show ip route ... 10.0.0.0/8 is variably subnetted, 8 subnets, 3 masks R 10.0.2.0/24 [120/2] via 10.255.0.14, 00:00:04, Serial1 R 10.0.3.0/24 [120/1] via 10.255.0.14, 00:00:04, Serial1 R 10.0.1.0/24 [120/3] via 10.255.0.14, 00:00:04, Serial1 C 10.0.4.0/24 is directly connected, Ethernet0 R 10.200.8.0/24 [120/1] via 10.255.0.14, 00:00:04, Serial1 R 10.200.8.1/32 [120/1] via 10.255.0.14, 00:00:04, Serial1 R 10.255.0.4/30 [120/2] via 10.255.0.14, 00:00:04, Serial1 C 10.255.0.12/30 is directly connected, Serial1
Notez que le routeur R4 connat les routes pour tous les segments du rseau. Une commande utile pour connatre ltat du routage la demande est show snapshot, qui afche des rsultats lgrement diffrents entre les clients et les serveurs. Les listings 7.76 et 7.77 montrent les sorties cran de cette commande excute sur les routeurs R2 et R3, respectivement. La sortie cran est explicite. (Il apparat une lgre coquille dafchage dans toutes les versions dIOS, savoir un retour la ligne manquant sur la premire ligne entre les mots up et Snapshot.)
Listing 7.76. Sortie cran de la commande show
R2#show snapshot BRI0 is up, line protocol is upSnapshot client line state
320
down Length of active period: 5 minutes Length of quiet period: 20 minutes Length of retry period: 8 minutes Current state: active, remaining/exchange time: 3/2 minutes Updates received this cycle: ip
Listing 7.77. Sortie cran de la commande show
R3#show snapshot BRI0 is up, line protocol is upSnapshot server line state up Length of active period: 5 minutes For ip address: 10.200.8.1 Current state: active, remaining time: 1 minute
Conguration du lien de secours (dial backup) Les liens de secours sont une fonctionnalit trs puissante et trs utile des routeurs Cisco. Deux routeurs connects par une ligne spcialise (LS), comme une T1, peuvent utiliser un lien de secours au cas o la LS tomberait. Pour congurer le lien de secours, suivez ces tapes : 1. Dans le mode conguration de linterface qui doit tre secourue, entrez la commande backup interface <interface commute>. Le paramtre <interface commute> spcie le nom de linterface qui doit tre utilise en cas de secours. 2. En utilisant la commande backup delay <dlai de mise en route> <dlai dextinction> dans le mode conguration de linterface secourir, vous dnissez le dlai pour que linterface de secours se mette en route en cas de dfaillance de linterface principale et le dlai pour que linterface de secours se remette en inactivit une fois linterface principale rtablie. Les deux paramtres sont des valeurs numriques mesures en secondes dans la plage de 0 4294967294 ou la valeur conventionnelle never. Si cette dernire valeur est utilise comme paramtre <dlai de mise en route>, linterface de secours ne se met jamais en marche. Si cette valeur est utilise comme paramtre <dlai dextinction>, linterface de secours reste active jusqu une extinction manuelle. La conguration de secours suppose une conguration correcte des paramtres de composition. Mais cette conguration est diffrente dune conguration daccs distant (dial-on demand routing). Utiliser les paramtres classiques de conguration dun accs distant sur une interface de secours peut tre fatal la bonne marche de celle-ci ou aboutir des fonctionnalits superues pour une ligne de secours. Vous trouverez ci-dessous une liste dastuces qui peuvent vous aider congurer proprement votre interface de secours : La conguration de secours ne se fait que sur lun des deux routeurs. Le routeur en vis--vis doit avoir une conguration classique de DDR (dial-on demand routing) Le routeur en vis--vis ne doit pas initier la connexion si du trac destin lautre rseau lui arrive. Il faut tout de mme avoir effectu la commande dialer-group <numro de groupe> dans la conguration de numrotation. Il est mme judicieux de dnir explicitement quaucun trac sortant destin lautre rseau nentranera une composition du numro en utilisant la commande dialer-list <numro de groupe> protocol ip deny. Dnir un dlai de dpassement en cas de non activit sur le rseau (idle timeout) trs long sur linterface commute du routeur en vis--vis. Du fait que le trac sortant ninitie pas la connexion et que ce dlai de dpassement est de 120 secondes par dfaut, le routeur se dconnectera toutes les 3 minutes pendant la priode de secours en cas de trac plat.
321
Vrier le bon fonctionnement de laccs distant avant de congurer la liaison de secours. Il serait plus difcile de diagnostiquer un problme de mauvaise conguration, ou dauthentication alors que la ligne de secours est dj installe. Faire attention aux commandes dauthentication, comme username <nom du routeur> password <mot de passe>. En fonction du mode dauthentication PAP ou CHAP, cette commande peut ncessiter que les mots de passe soient identiques sur les deux routeurs. Voyons comment la ligne de secours peut tre utilise dans le rseau de la gure 7.8. La diffrence avec le rseau de la section prcdente est que les routeurs R2 et R3 sont ici connects avec le segment 6. Le segment 6 est le lien principal tandis que le segment 8 est le lien de secours.
Figure 7.8
Les routeurs R2 et R3 peuvent utiliser le segment 8, une connexion RNIS BRI, comme secours du segment 6.
H1
Segment 1 10.0.1.0/24
e0 s0
Segment 5 10.255.0.4/30
R1
Segment 2 10.0.2.0/24
s1
Segment 6 10.255.0.8/30
e0
s0 bri0
R2
s1
R3
e0 s0
bri0
Segment 3 10.0.3.0/24
Segment 7 10.255.0.12/30
s1
R4
e0
Segment 4 10.0.4.0/24
H2
322
Les listings 7.78 7.81 montrent les congurations des quatre routeurs. Les lignes de la conguration, spciques la mise en place du lien de secours gurent en italique.
Listing 7.78. Conguration du routeur R1.
interface Ethernet0 ip address 10.0.1.1 255.255.255.0 interface Serial0 ip address 10.255.0.5 255.255.255.252 router eigrp 10 network 10.0.0.0
Listing 7.79. Conguration du routeur R2.
username R3 password 0 cisco isdn switch-type basic-ni interface Ethernet0 ip address 10.0.2.1 255.255.255.0 interface Serial0 ip address 10.255.0.9 255.255.255.252 backup delay 3 20 backup interface BRI0 interface Serial1 ip address 10.255.0.6 255.255.255.252 interface BRI0 ip address 10.200.8.1 255.255.255.0 encapsulation ppp dialer map ip 10.200.8.2 name R3 broadcast 384020 dialer-group 1 isdn spid1 3840000001 isdn spid2 3840000002 ppp authentication chap router eigrp 10 network 10.0.0.0 dialer-list 1 protocol ip permit
Listing 7.80. Conguration du routeur R3.
username R2 password 0 cisco isdn switch-type basic-ni1 interface Ethernet0 ip address 10.0.3.1 255.255.255.0 interface Serial0 ip address 10.255.0.14 255.255.255.252
323
interface Serial1 ip address 10.255.0.10 255.255.255.252 interface BRI0 ip address 10.200.8.2 255.255.255.0 encapsulation ppp isdn spid1 3840200001 isdn spid2 3840200002 dialer idle-timeout 2147483 dialer map ip 10.200.8.1 name R2 broadcast 384000 dialer-group 1 ppp authentication chap router eigrp 10 network 10.0.0.0 dialer-list 1 protocol ip deny
Listing 7.81. Conguration du routeur R4.
interface Ethernet0 ip address 10.0.4.1 255.255.255.0 interface Serial1 ip address 10.255.0.13 255.255.255.252 router eigrp 10 network 10.0.0.0
Pour vrier que le lien de secours est en fonction, utilisons la commande debug backup. La sortie cran de cette commande excute sur le routeur R2 gure sur le listing 7.82. Notez que cette commande na de sens que sur le routeur R2 car cest le seul qui est congur pour le secours. Le routeur est aussi congur avec la commande service timestamps debug uptime. Cette commande fait indiquer au routeur un horodatage depuis son allumage prcdant les messages de dbogage. Ceci nous permet de voir en combien de temps, linterface de secours est mise en place lors dun dysfonctionnement de linterface principale.
Listing 7.82. Sortie cran de la commande debug backup sur le routeur R2 alors que le lien principal entre R2 et R3 va tre coup.
02:23:18: %LINK-3-UPDOWN: Interface Serial0, changed state to down 02:23:18: BACKUP(Serial0): event = primary went down 02:23:18: BACKUP(Serial0): changed state to "waiting to backup" 02:23:19: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0, changed state to down 02:23:21: BACKUP(Serial0): event = timer expired 02:23:21: %LINK-3-UPDOWN: Interface BRI0:1, changed state to down 02:23:21: %LINK-3-UPDOWN: Interface BRI0:2, changed state to down
324
02:23:21: BACKUP(Serial0): secondary interface (BRI0) made active 02:23:21: BACKUP(Serial0): changed state to "backup mode" 02:23:21: %LINK-3-UPDOWN: Interface BRI0, changed state to up 02:23:21: %ISDN-6-LAYER2UP: Layer 2 for Interface BR0, TEI 65 changed to up 02:23:23: %ISDN-6-LAYER2UP: Layer 2 for Interface BR0, TEI 64 changed to up 02:23:24: %LINK-3-UPDOWN: Interface BRI0:1, changed state to up 02:23:25: %LINEPROTO-5-UPDOWN: Line protocol on Interface BRI0:1, changed state to up 02:23:30: %ISDN-6-CONNECT: Interface BRI0:1 is now connected to 384020 R3
Le routeur a not que linterface principale est tombe 02:23:18. Le routeur a initi la connexion de secours 02:23:21. La diffrence de 3 secondes correspond exactement au dlai indiqu dans la conguration via le paramtre <dlai de mise en route>. Si nous essayons datteindre la machine H1 depuis la machine H2 avec loutil ping pendant toute la dure de lopration, nous serons dsagrablement surpris de voir que le temps de mise en route du secours est suprieur 3 secondes. Le listing 7.83 indique les rsultats de cette commande.
Listing 7.83. Rsultats de la commande ping sur H1 depuis H2.
C:\>perl tping.pl 10.0.1.120 [35:01] Reply from 10.0.1.120: bytes=32 time=30ms TTL=124 [35:02] Reply from 10.0.1.120: bytes=32 time=30ms TTL=124 [35:04] Request timed out. [35:06] Request timed out. [35:07] Reply from 10.0.4.1: Destination host unreachable. [35:08] Reply from 10.0.4.1: Destination host unreachable. [35:09] Reply from 10.0.4.1: Destination host unreachable. [35:10] Reply from 10.0.4.1: Destination host unreachable. [35:11] Reply from 10.0.4.1: Destination host unreachable. [35:12] Reply from 10.0.4.1: Destination host unreachable. [35:13] Reply from 10.0.4.1: Destination host unreachable. [35:14] Reply from 10.0.4.1: Destination host unreachable. [35:15] Reply from 10.0.4.1: Destination host unreachable. [35:16] Reply from 10.0.4.1: Destination host unreachable. [35:18] Request timed out. [35:19] Reply from 10.0.1.120: bytes=32 time=40ms TTL=124 [35:20] Reply from 10.0.1.120: bytes=32 time=30ms TTL=124
La priode pendant laquelle le segment affect par la panne nest plus accessible est en fait de lordre de 16 secondes. Cette dure dinaccessibilit est plus longue que la priode spcie dans backup delay car le protocole de routage dynamique utilis doit consolider ses informations lors de la mise en route de la connexion de secours, celle-ci ntant pas active auparavant. Nous avons utilis EIGRP, qui a un temps de convergence court. Dautres protocoles de routage comme RIP ou IGRP pourraient prendre plus de temps lors de la mise en route de la
325
liaison de secours. Il est donc important dutiliser des protocoles de routage temps de convergence rapide, ou dintroduire explicitement un routage statique pour rendre accessible le lien de secours rapidement. Par chance, le processus inverse cest dire, la remise en route de la liaison principale et la dconnexion du lien de secours nengendre pas de priode dinaccessibilit car les deux liens peuvent oprer en parallle pendant un certain laps de temps. Ce temps dpend du temps de convergence du protocole de routage utilis. Dans notre cas, le protocole est EIGRP, ainsi les 20 secondes congures devraient sufre pour que EIGRP reconverge, et que la liaison de secours cesse sans engendrer de perte de connectivit entre les machines des deux rseaux.
8
Routage IP multicast
Solutions de conguration prsentes dans ce chapitre Conguration de PIM-DM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-SM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de PIM-SM et de PIM-DM sur la mme interface simultanment . . Conguration de PIM-SM sur des rseaux sans broadcast avec accs multiple (NBMA Networks) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 339 342 343
Dans le chapitre 1, nous avons mentionn quun groupe dadresses IP, appel adresse multidestinataire (multicast) peut tre utilis pour atteindre un groupe de machines et que lensemble des adresses multicast est en fait la classe D des adresses IP. Les 4 bits de poids fort du premier octet de ladresse IP valent 1110 (en binaire) dans une adresse IP de classe D. Cest une plage dadresses qui va de 224.0.0.0 239.255.255.255 en notation dcimale pointe. Comme nous le savons, certaines de ces adresses sont utilises pour dautres besoins que les applications normales de multicast. Par exemple, certains protocoles de routage, comme EIGRP, OSPF et RIP version 2, utilisent des adresses IP multicast prdnies pour communiquer avec des routeurs voisins. Cette utilisation de ladressage multicast est parfaitement justie, car seuls les routeurs intresss recevront les informations de mise jour des tables de routage, et ceci en une seule fois. Le document dcrivant les adresses IP multicast rserves (preassigned multicast addresses) est la RFC 1700, Assigned Numbers. Certaines de ces adresses gurent dans le tableau 8.1.
REMARQUE
Certaines RFC du tableau 8.1 ont pu tre mises jour entre-temps. Il est prudent de le vrier.
328
Description
Adresse de base (rserve) Tous les systmes de ce rseau Tous les routeurs de ce sous-rseau Routeurs DVMRP Tous les routeurs OSPF Certains routeurs OSPF Routeurs RIP2 Routeurs IGRP Protocol de Temps NTP (network time protocol)
RFC associe
RFC 1112 RFC 1112 N/A RFC 1075 RFC 2328 RFC 2328 N/A N/A RFC 1119
329
aurait difcult garder en mmoire et traiter plusieurs adresses MAC se prtendant membres du groupe de destination). Ensuite, et cest le pire, le protocole ARP ne permet pas dutiliser les fonctionnalits intrinsques des protocoles du niveau liaison qui permettent de dnir des adresses de groupe au niveau MAC (cest le cas pour les adresses multicast Ethernet). Comme indiqu au chapitre 2, les adresses au niveau MAC permettent dadresser un nombre important de stations en utilisant le bit group-bit. Si ce bit est mis 1 dans ladresse de destination MAC, alors cela indique que la trame est destine plusieurs destinataires. Ainsi, ladresse IP multicast est en correspondance avec ladresse MAC dont le bit group-bit est 1 de la manire suivante : les 23 bits de poids faible de ladresse IP multicast sont rangs dans les 23 bits de poids faible de ladresse MAC 01-00-5E-00-00-00. Les couches physiques et FDDI permettent cette correspondance, avec une nuance dans le cas de FDDI : lordre des bits dans un octet doit tre invers. Les adresses MAC des rseaux en anneaux jetons (Token Ring) devraient permettre cette fonctionnalit, car elles disposent aussi dun bit group-bit linstar de Ethernet et de FDDI. Mais cela peut ne pas tre possible en raison des limitations de certains micro-contrleurs Token Ring. Il reste alors deux possibilits. La premire est de faire correspondre ladresse IP multicast ladresse MAC de diffusion gnrale (broadcast address) qui devra tre route dans lensemble des anneaux de la topologie Token Ring dans un cas de routage par la source (source-routing). La seconde possibilit est de faire correspondre toutes les adresses IP multicast avec une adresse Token Ring spcique localement administre : C0-00-00-04-00-00. Cette dernire possibilit est prfrable, mais elle nest pas supporte par lensemble des machines. Aussi, sera-t-il ncessaire pour les machines qui supportent la correspondance avec une adresse Token Ring spcique, de supporter aussi la correspondance avec ladresse de diffusion gnrale.
REMARQUE
Ladresse Token Ring C0-00-00-04-00-00 nest pas rserve aux adresses IP multicast. Elle peut tre utilise par dautres protocoles.
330
des sources de trac multicast. De tels arbres sont appels arbres de routage par la source (source-based trees). La manire dont sont construits de tels arbres dpend de limplmentation du protocole de routage multicast. En gnral, la procdure en charge de la cration de larbre de routage par la source est appele mcanisme de dcouverte de topologie (topology discovery mechanism) ou plus simplement dcouverte de topologie (topology discovery). Il est intressant de noter que ce mcanisme de dcouverte de topologie ne fait pas forcment partie intgrante du protocole de routage multicast lui-mme. Le mcanisme de dcouverte de topologie permet au routeur de connatre son voisinage, notamment de savoir si un routeur ou une machine sont en amont ou en aval par rapport la source. Les environnements rseau sont beaucoup plus dynamiques en conguration multicast quen unicast. Comme mentionn, le routage du trac unicast est bas sur la partie rseau networkid de ladresse IP. La partie rseau, ou prxe rseau, correspond en gnral un ensemble de rseaux ou un seul rseau physique. Les rseaux physiques ne sont pas en perptuelle cration et destruction. Ce genre dvnement survient en cas de dploiement de nouveaux rseaux ou en cas de dysfonctionnement de certains quipements. Dans le monde du multicast, de nouvelles machines peuvent rejoindre ou quitter un groupe frquemment. Par consquent, la dcouverte de topologie doit grer les changements frquents de constitution des groupes. Lappartenance un groupe est transmise via les messages laguer ou rejoindre (prune ou join messages). Un routeur envoie un message laguer sur les routeurs en amont vers la source sil na plus de machine membre du groupe ou de routeur aval qui diffuse vers ce groupe. Les routeurs intermdiaires peuvent aussi envoyer un message laguer vers lamont si tous les voisins en aval ont envoy un message laguer de ce groupe multicast. Si au contraire, une machine (re)devient membre du groupe de diffusion multicast, alors le routeur auquel elle est rattache va envoyer un message rejoindre pour rcuprer le trac multicast. La mthode de routage multicast que lon a dcrite, est base sur un type de protocole de routage multicast quali de dense (dense-mode protocol). Les protocoles de routage denses nutilisent les messages rejoindre que si une machine rejoint un groupe prcdemment lagu. Mais si une source commence envoyer du trac vers un groupe, elle arrosera tous les routeurs en aval. Si un routeur du voisinage na aucun membre actif du groupe, il utilisera le message laguer pour se retrancher du groupe.
Arbres partags
Les protocoles en mode dense sont adquats dans des environnements multicast o les groupes sont largement prsents lintrieur du rseau ou dans un cas o la bande passante ne fait pas dfaut. Ces protocoles sont, en revanche, inappropris dans des environnements o les membres des groupes sont disperss sur le rseau, comme sur lInternet. Dans un tel cas, une technique modie de larbre rout par la source existe, il sagit des arbres partags (shared trees). Un arbre rout par la source doit tre construit pour chacune des sources qui met pour un groupe. Un arbre partag, lui, est bti pour un groupe mais il est utilis pour acheminer le trac partant de nimporte quelle source.
331
Les arbres bass sur la source prennent leur racine la source du trac multicast. Les arbres partags prennent leur racine sur les routeurs, qui sont appels points de rendez-vous. Ainsi, le trac multicast de chaque source doit dabord tre achemin vers le point de rendez-vous, do il va tre ensuite distribu vers les membres du groupe en utilisant larbre partag. Un seul point de rendez-vous existe par groupe multicast un instant donn. Les arbres partags sont la base des protocoles de routages multicast pars. Les protocoles pars tolrent la dispersion des membres de groupe sur le rseau contrairement aux protocoles denses. Les protocoles pars requirent des messages rejoindre explicites de la part des membres dun groupe. Ces messages sont alors propags vers les routeurs en partant du point de rendez-vous. Si un message rejoindre nest pas reu dun routeur pour tel groupe multicast, le trac pour ce groupe nest pas envoy ce routeur.
332
333
Il requiert un message rejoindre explicite pour distribuer le trac vers les membres du groupe. Le routeur PIM-SM propage alors le message rejoindre depuis le membre du groupe qui la mis vers le point de rendez-vous du groupe considr. Le protocole PIM-SM est document dans la RFC 2362, (PIM-SM, Protocol Independent Multicast-Sparse Mode, Protocol Specication). Ce document a le statut dexprimental.
Solutions de conguration
Cette section donne quelques indications pour congurer le routage multicast sur les routeurs Cisco. Une comprhension plus approfondie du routage multicast ncessiterait plusieurs chapitres et va bien au-del du classique routage IP qui est lobjet du prsent ouvrage. Nanmoins, les congurations prsentes ici sont un bon dbut pour mieux apprhender les mcanismes de routage multicast et la manire de les mettre en place sur des routeurs Cisco.
Le programme MCASTER
Comme vous lavez remarqu, ping est lun des outils fondamentaux pour diagnostiquer un problme de routage IP. Malheureusement, cet outil nest pas dune grande aide dans un contexte de routage multicast. Nayant pu trouver un outil aussi simple et aussi clair en terme de rsultats que ping, nous avons cr notre propre programme de diagnostic appel MCASTER qui sera utilis comme outil de diagnostic dans ce chapitre. MCASTER sexcute sur une plate-forme Windows NT (il ne tourne pas sous Windows 95). MCASTER permet de rejoindre un groupe multicast donn, de recevoir des trames UDP de trac multicast de la mme manire que ping et denvoyer des paquets vers un groupe. Il permet aussi d spcier une adresse IP de groupe, un port UDP, et bien dautres paramtres. La gure 8.1 montre la fentre principale de MCASTER et explique ses principaux lments.
334
Figure 8.1
Le message dinvite comme il apparat dans la bote de dialogue configuration du groupe multicast Nom de lexpditeur comme indiqu dans les proprits rseau Nombre de battements (ticks) couls depuis la dernire rception dun message de la source
Nous avons essay de rendre MCASTER aussi convivial et facile dutilisation que possible. MCASTER est gratuit et disponible sur lInternet ladresse http://www.hugewave.com/blacktools. Nhsitez pas nous signaler les erreurs ventuelles ou nous suggrer des amliorations.
Conguration de PIM-DM
La conguration de PIM-DM est facile. Il vous suft dactiver PIM-DM sur les interfaces qui vont faire partie de la zone de trac multicast avec la commande ip pim dense-mode. Cette commande active automatiquement IGMP sur linterface considre.
AVERTISSEMENT La nature de PIM (DM et SM) ncessite une bonne conguration du routage unicast dans la zone desser-
Pour comprendre comment congurer PIM-DM et comment il fonctionne, travaillons sur lexemple de rseau de la gure 8.2. Les listings 8.1 8.3 montrent les congurations des trois routeurs. Noter que EIGRP est le protocole de routage unicast utilis avec PIM-DM
Listing 8.1. Conguration du routeur R1.
ip multicast-routing interface Ethernet0 ip address 10.1.0.1 255.255.255.0 ip pim dense-mode interface Serial0
335
Les routeurs sont congurs avec PIM-DM pour que les machines communiquent en IP multicast Segment 4 : 10.255.0.4/30
H2
Segment 2 : 10.2.0.0/24
e0
R2
Segment 5 : 10.255.0.8/30
s1
R1
s0 s1 e0 Segment 3 : 10.3.0.0/24
R3
s0 e0 Segment 1 : 10.1.0.0/24
H1
H3
ip multicast-routing interface Ethernet0 ip address 10.2.0.1 255.255.255.0 ip pim dense-mode interface Serial0 ip address 10.255.0.9 255.255.255.252 ip pim dense-mode interface Serial1 ip address 10.255.0.5 255.255.255.252 ip pim dense-mode router eigrp 10 network 10.0.0.0
336
ip multicast-routing interface Ethernet0 ip address 10.3.0.1 255.255.255.0 ip pim dense-mode interface Serial1 ip address 10.255.0.10 255.255.255.252 ip pim dense-mode router eigrp 10 network 10.0.0.0
Les trois machines sont des stations Windows NT dont les noms sont MANHATTAN (H1), HUGEWAVE (H2) et THUNDER (H3). MCASTER est congur sur les trois stations pour rejoindre le groupe multicast 234.5.6.7 et utiliser le port UDP 3456 pour lmission et la rception de donnes multicast. La fentre principale de MCASTER de la machine H1 est montre gure 8.3.
Figure 8.3
Comme vous pouvez le voir, la machine H1 peut voir les deux autres machines. Vous auriez le mme type de rsultat sur les fentres MCASTER des deux autres machines. La commande utilise pour afcher la table de routage multicast est show ip mroute, commande similaire show ip route. La sortie cran de cette commande excute sur le routeur R1 est sur le listing 8.4.
Listing 8.4. Sortie cran de la commande
R1#show ip mroute IP Multicast Routing Table Flags: D-Dense, S-Sparse, C-Connected, L-Local, P-Pruned R-RP-bit set, F-Register flag, T-SPT-bit set, J-Join SPT Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.0.1.40), 05:30:47/00:00:00, RP 0.0.0.0, flags: DJCL Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Dense, 05:30:47/00:00:00 Serial0, Forward/Dense, 05:30:47/00:00:00 (*, 234.5.6.7), 05:30:47/00:02:59, RP 0.0.0.0, flags: DJC Incoming interface: Null, RPF nbr 0.0.0.0
337
Outgoing interface list: Ethernet0, Forward/Dense, 02:29:40/00:00:00 Serial0, Forward/Dense, 05:30:47/00:00:00 (10.1.0.15, 234.5.6.7), 02:29:39/00:02:59, flags: CT Incoming interface: Ethernet0, RPF nbr 0.0.0.0 Outgoing interface list: Serial0, Forward/Dense, 02:29:39/00:00:00 (10.2.0.111, 234.5.6.7), 02:32:47/00:02:59, flags: CT Incoming interface: Serial0, RPF nbr 10.255.0.5 Outgoing interface list: Ethernet0, Forward/Dense, 02:29:47/00:00:00 (10.3.0.120, 234.5.6.7), 02:32:46/00:02:59, flags: CT Incoming interface: Serial0, RPF nbr 10.255.0.5 Outgoing interface list: Ethernet0, Forward/Dense, 02:29:47/00:00:00
La sortie de la commande show ip mroute est la suite de lignes correspondant aux entres de la table de routage multicast. On y retrouve les couples source et groupe multicast, sous la forme (S,G) ou (*,G), S tant ladresse IP de la source et G ladresse IP du groupe multidestinataire. Plus loin, nous trouvons linterface darrive, la liste des interfaces en sortie, des indicateurs sur le mode de cration de lentre mode dense ou mode pars et bien dautres informations. Notez que bien que le couple (*,234.5.6.7) avec le caractre gnrique * a t cr avec une interface darrive qui est Null (ceci indique, attention, quil ny a pas dinterface darrive, et cela na aucun rapport avec linterface symbolique Null disponible sur les routeurs Cisco). En effet, dans le cas dun arbre partag, on utilise le caractre gnrique * pour le groupe. Comme nous le savons, PIM-DM nutilise pas darbre partag. Vous pouvez utiliser la commande debug ip igmp pour voir les transactions IGMP et la commande debug ip pim pour voir les transactions PIM.
ASTUCE
Le listing 8.5 montre la sortie cran de ces deux commandes pendant que lon arrte MCASTER sur la machine H1 (MANHATTAN, adresse IP 10.1.0.15). Lorsque MCASTER sarrte, il envoie un message IGMP indiquant que la machine quitte le groupe multicast.
Listing 8.5. Sortie cran des commandes debug sur les routeurs R1.
R1#debug ip igmp IGMP debugging is on R1#debug ip pim PIM debugging is on R1# PIM: Send v2 Hello on Serial0 IGMP: Received Leave from 10.1.0.15 (Ethernet0) for 234.5.6.7 IGMP: Send v2 Query on Ethernet0 to 234.5.6.7
338
IGMP: Send v2 Query on Ethernet0 to 234.5.6.7 PIM: Send v2 Hello on Ethernet0 IGMP: Deleting 234.5.6.7 on Ethernet0 PIM: Send v2 Prune on Serial0 to 10.255.0.5 for (10.2.0.111/32, 234.5.6.7) PIM: Send v2 Prune on Serial0 to 10.255.0.5 for (10.3.0.120/32, 234.5.6.7) PIM: Send v2 Prune on Serial0 to 10.255.0.5 for (10.2.0.111/32, 234.5.6.7) PIM: Send v2 Prune on Serial0 to 10.255.0.5 for (10.3.0.120/32, 234.5.6.7)
Notez quune fois que la machine H1 a quitt le groupe, le routeur R1 envoie plusieurs messages laguer sur linterface Serial0, car la machine H1 tait la seule machine membre du groupe 234.5.6.7. Le listing 8.6 montre la sortie cran de la commande show ip mroute entre sur le routeur R1, une fois que la machine H1 a quitt le groupe et que le routeur R1 sest retranch du groupe. Notez que les entres pointant sur les sources localises sur des segments distants (cest--dire 10.2.0.111 et 10.3.0.120) ont maintenant lattribut P (prune).
Listing 8.6. Sortie cran de la commande show ip mroute une fois H1 (MANHATTAN) retranch du groupe.
R1#show ip mroute ... (*, 234.5.6.7), 05:35:08/00:02:58, RP 0.0.0.0, flags: DJ Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: Serial0, Forward/Dense, 05:35:08/00:00:00 (10.1.0.15, 234.5.6.7), 02:33:59/00:02:35, flags: T Incoming interface: Ethernet0, RPF nbr 0.0.0.0 Outgoing interface list: Serial0, Forward/Dense, 02:33:59/00:00:00 (10.2.0.111, 234.5.6.7), 02:37:00/00:02:38, flags: PT Incoming interface: Serial0, RPF nbr 10.255.0.5 Outgoing interface list: Null (10.3.0.120, 234.5.6.7), 02:37:01/00:02:37, flags: PT Incoming interface: Serial0, RPF nbr 10.255.0.5 Outgoing interface list: Null
Regardons maintenant ce quil se passe lorsque la machine H1 rejoint le groupe au travers du listing 8.7, montrant les sorties crans des commandes debug ip igmp et debug ip pim sur le routeur R1. Notez que le routeur R1 utilise maintenant le message greffer, qui est analogue au message rejoindre mais qui acclre le changement dtat concernant le groupe prcdemment dtach 234.5.6.7 sur le routeur R1.
Routage IP multicast CHAPITRE 8 Listing 8.7. Sortie cran des commandes debug ip igmp et debug ip pim sur le routeur R1 une fois que H1 (MANHATTAN) rejoint le groupe multicast.
339
R1#debug ip igmp IGMP debugging is on R1#debug ip pim PIM debugging is on R1# PIM: Received v2 Hello on Serial0 from 10.255.0.5 IGMP: Send v2 Query on Ethernet0 to 224.0.0.1 IGMP: Set report delay time to 3.0 seconds for 224.0.1.40 on Ethernet0 IGMP: Received v2 Report from 10.1.0.15 (Ethernet0) for 234.5.6.7 PIM: Building Graft message for 234.5.6.7, Ethernet0: no entries PIM: Building Graft message for 234.5.6.7, Serial0: 10.2.0.111/32 10.3.0.120/32 PIM: Send v2 Graft to 10.255.0.5 (Serial0) PIM: Received v2 Graft-Ack on Serial0 from 10.255.0.5 Group 234.5.6.7: 10.2.0.111/32 10.3.0.120/32
Conguration de PIM-SM
La conguration de PIM-SM nest pas plus difcile que celle de PIM-DM. Il sagit dentrer les commandes ip pim sparse-mode sur les interfaces supposes transfrer le trac IP multicast. Il faut aussi congurer ladresse IP du point de rendez-vous sur les routeurs qui connectent les rseaux en aval, cest dire ceux qui ont des membres de groupes multicast attachs leurs interfaces.
ASTUCE
Il ne faut pas congurer un routeur comme point de rendez-vous. Il dcouvrira automatiquement son tat au travers de la conguration effectue sur les autres routeurs des rseaux en aval.
Pour congurer ladresse IP du point de rendez-vous, utilisez la commande ip pim rpaddress <adresse IP> [{<numero LA>|<nom LA>}]. Le paramtre <adresse IP> est ladresse IP du point de rendez-vous. Le paramtre optionnel est la liste daccs qui peut tre utilise pour limiter ce point de rendez-vous certains groupes multicast seulement. Seuls les groupes sur lesquels la liste daccs renvoie permit seront pris en considration sur le point de rendez-vous. tudions la topologie rseau de la gure 8.4. Supposons que les routeurs doivent tre congurs en PIM-SM pour fournir un service multicast tout le rseau. Les routeurs ont pour protocole de routage unicast EIGRP et utilisent leurs interfaces de rebouclage (loopback) avec une adresse IP qui vaut 10.0.0.X/32, o X est le numro du routeur. Utilisons ladresse IP de linterface Loopback0 du routeur R2 comme point de rendez-vous pour tous les groupes multicast. Les listings 8.8 8.11 montrent les congurations des quatre routeurs.
340
Figure 8.4
Les routeurs sont congurs avec PIM-SM pour permettre aux machines de communiquer en IP multicast. Segment 4 : 10.255.0.4/30
H2
Segment 2 : 10.2.0.0/24
e0
R2
Segment 5 : 10.255.0.8/30
s0
R1
s1 s0 e0 Segment 3 : 10.3.0.0/24
R3
s0 e0 Segment 1 : 10.1.0.0/24 e0
R4
H3
s0
Segment 6 10.6.0.0/24
H1
H4
ip multicast-routing interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.1.0.1 255.255.255.0 ip pim sparse-mode interface Serial0 ip address 10.255.0.6 255.255.255.252 ip pim sparse-mode router eigrp 10 network 10.0.0.0
341
ip multicast-routing interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.2.0.1 255.255.255.0 ip pim sparse-mode interface Serial0 ip address 10.255.0.5 255.255.255.252 ip pim sparse-mode interface Serial1 ip address 10.255.0.9 255.255.255.252 ip pim sparse-mode router eigrp 10 network 10.0.0.0
Listing 8.10. Conguration du routeur R3.
ip multicast-routing interface Loopback0 ip address 10.0.0.3 255.255.255.255 interface Ethernet0 ip address 10.3.0.1 255.255.255.0 ip pim sparse-mode interface Serial0 ip address 10.255.0.10 255.255.255.252 ip pim sparse-mode router eigrp 10 network 10.0.0.0 ip pim rp-address 10.0.0.2
Listing 8.11. Conguration du routeur R4.
ip multicast-routing interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.1.0.2 255.255.255.0 ip pim sparse-mode interface TokenRing0 ip address 10.6.0.1 255.255.255.0 ip pim sparse-mode ring-speed 16 router eigrp 10 network 10.0.0.0 ip pim rp-address 10.0.0.2
342
Le listing 8.12 montre la sortie cran de la commande show ip mroute excute sur le routeur R4. Notez que le couple (*, 234.5.6.7) dans la table de routage qui a cette fois-ci une interface dentre dnie (Incoming interface: Ethernet0), est identi comme pars (ags: S...) et a un point de rendez-vous (RP 10.0.0.2). Ceci est rendu possible par la nature mme de PIM-SM, pars et utilisant des arbres partags.
Listing 8.12. Sortie cran de la commande show
R4#show ip mroute IP Multicast Routing Table Flags: D-Dense, S-Sparse, C-Connected, L-Local, P-Pruned R-RP-bit set, F-Register flag, T - SPT-bit set, J-Join SPT Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.0.1.40), 00:11:08/00:00:00, RP 10.0.0.2, flags: SJPCL Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: Null (*, 234.5.6.7), 00:11:08/00:02:59, RP 10.0.0.2, flags: SJC Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse, 00:11:08/00:02:23 (10.2.0.111, 234.5.6.7), 00:11:08/00:02:59, flags: CT Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse, 00:11:08/00:02:23 (10.3.0.120, 234.5.6.7), 00:11:08/00:02:59, flags: CT Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse, 00:11:08/00:02:23 (10.6.0.10, 234.5.6.7), 00:11:09/00:02:59, flags: CT Incoming interface: TokenRing0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Sparse, 00:10:27/00:02:26 (10.6.0.15, 234.5.6.7), 00:11:09/00:02:59, flags: CT Incoming interface: TokenRing0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Sparse, 00:10:27/00:02:26
343
rseaux en aval. Les listes daccs vous permettent de dnir les groupes utilisant PIM-SM et ceux utilisant PIM-DM.
Le routeur R2 doit prendre en compte quil nest pas connect un rseau frame-relay entirement maill.
H2
Segment 2 : 10.2.0.0/24
e0
R2 DLCI 201 DLCI 102 R1
s0
s0 e0 Segment 1 : 10.1.0.0/24 e0
R4
s0 e0 Segment 3 : 10.3.0.0/24
R3
H3
s0
H1 Segment 6 10.6.0.0/24 H4
344
Frame Relay via son interface Serial0. Il est obligatoire dutiliser le mode NBMA pour crer du trac multicast sur le rseau. Congurons tous les routeurs avec la commande ip pim sparse-dense-mode et lanons deux instances de MCASTER une pour le groupe multicast 234.5.6.7 et lautre pour le groupe 234.9.9.9 sur les machines H1, H2 et H3.
ASTUCE
Si vous ralisez ces exprimentations, il faut choisir deux numros de ports UDP diffrents.
Pour le groupe 234.5.6.7, nous dnirons un point de rendez-vous avec la commande ip pim rpaddress 10.0.0.2 1, o 10.0.0.2 est ladresse IP de linterface Loopback0 du routeur R2, et 1 est le numro de la liste daccs standard qui laisse passer uniquement le groupe 234.5.6.7. Ainsi, PIM-SM sera le protocole du groupe 234.5.6.7 (prsence dun point de rendez-vous) et PIM-DM du groupe 234.9.9.9. Les listings 8.13 8.16 montrent les congurations des quatre routeurs.
Listing 8.13. Conguration du routeur R1.
ip multicast-routing interface Loopback0 ip address 10.0.0.1 255.255.255.255 interface Ethernet0 ip address 10.1.0.1 255.255.255.0 ip pim sparse-dense-mode interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.248 ip pim sparse-dense-mode frame-relay interface-dlci 102 router eigrp 10 network 10.0.0.0
Listing 8.14. Conguration du routeur R2.
ip dvmrp route-limit 20000 interface Loopback0 ip address 10.0.0.2 255.255.255.255 interface Ethernet0 ip address 10.2.0.1 255.255.255.0 ip pim sparse-dense-mode interface Serial0 ip address 10.255.0.9 255.255.255.248 ip pim nbma-mode ip pim sparse-dense-mode encapsulation frame-relay no ip split-horizon eigrp 10
345
bandwidth 64 frame-relay map ip 10.255.0.10 201 broadcast frame-relay map ip 10.255.0.11 203 broadcast frame-relay lmi-type ansi router eigrp 10 network 10.0.0.0
Listing 8.15. Conguration du routeur R3.
ip multicast-routing interface Loopback0 ip address 10.0.0.3 255.255.255.255 interface Ethernet0 ip address 10.3.0.1 255.255.255.0 ip pim sparse-dense-mode interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 multipoint ip address 10.255.0.11 255.255.255.248 ip pim sparse-dense-mode frame-relay map ip 10.255.0.9 302 broadcast router eigrp 10 network 10.0.0.0 ip pim rp-address 10.0.0.2 1 access-list 1 permit 234.5.6.7
Listing 8.16. Conguration du routeur R4.
ip multicast-routing interface Loopback0 ip address 10.0.0.4 255.255.255.255 interface Ethernet0 ip address 10.1.0.2 255.255.255.0 ip pim sparse-dense-mode interface TokenRing0 ip address 10.6.0.1 255.255.255.0 ip pim sparse-dense-mode ring-speed 16 router eigrp 10 network 10.0.0.0 ip pim rp-address 10.0.0.2 1 access-list 1 permit 234.5.6.7
346
Le listing 8.17 montre la sortie cran de la commande show ip mroute excute sur le routeur R4. Notez que maintenant il y a deux ensembles dentres spars, un pour le groupe 234.5.6.7 et un pour le groupe 234.9.9.9. Notez aussi que le couple (*,234.5.6.7) est tiquet comme oprant sous PIM-SM (ags: S...), tandis que le couple (*,234.9.9.9) est tiquet comme oprant sous PIM-DM (ags: D...).
Listing 8.17. Sortie cran de la commande show
R4#show ip mroute IP Multicast Routing Table Flags: D-Dense, S-Sparse, C-Connected, L-Local, P-Pruned R-RP-bit set, F-Register flag, T-SPT-bit set, J-Join SPT Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.0.1.40), 00:33:02/00:00:00, RP 0.0.0.0, flags: DJCL Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Sparse-Dense, 00:33:02/00:00:00 (*, 234.9.9.9), 00:25:30/00:02:58, RP 0.0.0.0, flags: DJC Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: TokenRing0, Forward/Sparse-Dense, 00:22:49/00:00:00 Ethernet0, Forward/Sparse-Dense, 00:25:30/00:00:00 (10.2.0.111, 234.9.9.9), 00:15:11/00:02:59, flags: CT Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse-Dense, 00:15:11/00:00:00 (10.6.0.15, 234.9.9.9), 00:22:22/00:03:29, flags: CT Incoming interface: TokenRing0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Sparse-Dense, 00:22:23/00:00:00 (*, 234.5.6.7), 00:34:10/00:02:59, RP 10.0.0.2, flags: SJC Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse-Dense, 00:34:10/00:02:07 (10.2.0.111, 234.5.6.7), 00:12:19/00:02:59, flags: CJT Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse-Dense, 00:12:19/00:02:07 (10.3.0.120, 234.5.6.7), 00:34:10/00:02:59, flags: CT Incoming interface: Ethernet0, RPF nbr 10.1.0.1 Outgoing interface list: TokenRing0, Forward/Sparse-Dense, 00:34:10/00:02:06 (10.6.0.10, 234.5.6.7), 00:01:32/00:01:57, flags: CT Incoming interface: TokenRing0, RPF nbr 0.0.0.0 Outgoing interface list:
347
Ethernet0, Forward/Sparse-Dense, 00:01:32/00:03:23 (10.6.0.15, 234.5.6.7), 00:21:40/00:03:29, flags: CT Incoming interface: TokenRing0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0, Forward/Sparse-Dense, 00:21:40/00:03:22
Si nous afchons la table de routage du routeur R2 (cf. listing 8.18), nous remarquons quelle contient une entre pour chacune des interfaces de sortie vers chacun des routeurs voisins.
Listing 8.18. Sortie cran de la commande show
R2#show ip mroute ... (*, 234.5.6.7), 00:01:11/00:02:59, RP 10.0.0.2, flags: S Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: Serial0, 10.255.0.11,Forward/Sparse-Dense,00:00:35/00:02:54 Serial0, 10.255.0.10,Forward/Sparse-Dense,00:00:21/00:03:08
En observant les diffrentes instances de MCASTER sur les trois machines interconnectes, il est clair que PIM-DM nest pas fonctionnel sur un rseau Frame Relay non intgralement maill, en dpit de la prsence de la commande ip pim nbma-mode sur la conguration du routeur R2. Les gures 8.6 8.11 montrent le contenu de la fentre principale de MCASTER sur les trois machines. Les gures sont regroupes par paires. La premire paire (gures 8.6 et 8.7) montre la fentre principale de MCASTER pour les groupes 234.5.6.7 et 234.9.9.9 sur la machine H1 (MANHATTAN). Notez bien que chaque groupe a trois membres, MCASTER en montre trois pour le groupe 234.5.6.7 mais seulement deux pour le groupe 234.9.9.9. La deuxime fentre ne montre pas la machine H3 (THUNDER) qui est derrire le nuage Frame Relay. Le groupe 234.9.9.9 est sous PIM-DM, il apparat clairement que PIM-DM nest pas compltement fonctionnel sur un rseau NBMA non intgralement maill.
Figure 8.6
Figure 8.7
348
La situation est diffrente dans le cas de H2 (HUGEWAVE). La machine H2 voit les trois membres de chacun des deux groupes. La raison en est que H2 est derrire le routeur R2 qui est le seul routeur qui peut accepter du trac de la part des deux autres parties du rseau, bien quil soit en PIM-DM.
Figure 8.8
Figure 8.9
La situation sur la machine H3 est trs similaire celle de H1 car H3 ne peut pas voir H1 dans le groupe 234.9.9.9.
Figure 8.10
Figure 8.11
A
Connexion de deux routeurs Cisco dos dos en utilisant deux cbles srie
Il est parfois ncessaire de relier deux routeurs Cisco dos dos pour faire des essais. Il nous faut dans ce cas nous procurer deux cbles dont lun, de type CAB-V35MT, comprend un connecteur mle ETTD (quipement Terminal de Traitement de Donnes) ou DTE (Data Terminal Equipment), et lautre, de type CAB-V35FC comporte un connecteur femelle ETCD (quipement de Terminaison de Circuit de Donnes) ou DCE (Data Communication quipment). Une fois ces cbles connects aux interfaces srie des routeurs, ceux-ci en dtectent automatiquement le type. Ces cbles doivent ensuite tre relis entre eux, et comme il sagit dune liaison synchrone, une source dhorloge est ncessaire. Normalement, celle-ci provient de lquipement ETCD appel CSU/DSU (Channel Service Unit/Data Service Unit) qui relie le routeur la ligne synchrone. Cest linterface srie DCE de lun des routeurs sur laquelle nous devons dnir la vitesse dhorloge par la commande clock rate <valeur> qui va jouer le rle de synchronisation. Le paramtre valeur est renseign en bits par seconde (bit/s) suivant les valeurs du tableau A.1. qui peuvent tre afches (ou non) par la commande clock rate ? selon la version du systme IOS de Cisco utilise. Une autre commande disponible, clockrate <valeur>, nafche pas, quant elle, les valeurs autorises du paramtre.
350
Valeurs hautes
125000 148000 250000 500000 800000 1000000 1300000 2000000 4000000
B
Conguration dun routeur Cisco en commutateur Frame Relay
Les routeurs Cisco peuvent tre congurs en commutateurs Frame Relay en procdant selon les tapes dcrites ci-dessous. 1. En mode de conguration globale, activer la fonction de commutation par la commande frame-relay switching. 2. En mode de conguration dinterface, pour toutes les interfaces srie destines la commutation Frame Relay, prciser le type dencapsulation par la commande encapsulation frame-relay. 3. Toutes les interfaces srie avec encapsulation Frame Relay doivent aussi tre congures en tant quinterfaces ETCD (ou DCE), par la commande frame-relay intf-type dce.
REMARQUE
Il nest pas obligatoire que linterface Frame Relay congure en DCE soit physiquement un tel quipement.
4. En mode de conguration dinterface, tablir la commutation de chaque CVP par la commande frame-relay route <DLCI en entre> interface serial <numro dinterface> <DLCI en sortie> sur toutes les interfaces impliques dans la commutation Frame Relay. Le premier paramtre dsigne le numro de DLCI du CVP de linterface en entre, le deuxime paramtre dsigne le numro de linterface de sortie sur laquelle ce CVP doit tre rout sous le numro de CVP du DLCI renseign en dernier paramtre.
ASTUCE
Pour router les CVP, on peut aussi utiliser la commande interface tunnel la place de interface serial. Par cette mthode qui est employe dans lexemple, le trac Frame Relay est encapsul en IP pour tre rout travers un rseau TCP/IP vers la destination dsire.
352
5. En option, vous pouvez congurer le type de LMI en utilisant la commande frame-relay lmi-type {ansi|cisco|q933a} sur les interfaces de commutation Frame Relay. Par dfaut, le type de LMI est cisco. tudions lexemple du schma de rseau sur la gure B.1. Il illustre un moyen trs conomique de montage dune maquette de commutation Frame Relay sur un banc dessai, si les routeurs utiliss nont pas plus de deux interfaces srie. Cette solution met contribution linterface auxiliaire asynchrone dans chaque routeur, qui est souvent nglige. On peut ainsi rserver les interfaces srie du routeur pour dautres usages comme dans ce cas.
Figure B.1
e0
R2
I 20
s0 s0
FR2
DLC I 20
DLC
FR1
a1 a1
2
DL
10
CI
CI
s0 s0
DL
s1
30 2
R1
s0 e0
R3
e0
Les listings B.1 et B.2 montrent la conguration de chacun des routeurs FR1 et FR2 qui jouent le rle de commutateurs Frame Relay. Les listings B.3 B.5 concernent les autres routeurs.
Listing B.1. Conguration du routeur FR1.
username FR2 password 0 cisco frame-relay switching interface Tunnel0 tunnel source 1.0.0.1 tunnel destination 1.0.0.2 interface Ethernet0 ip address 169.124.84.34 255.255.255.0 interface Serial0 encapsulation frame-relay clockrate 64000
353
frame-relay lmi-type ansi frame-relay intf-type dce frame-relay route 102 interface Tunnel0 421 interface Serial1 encapsulation frame-relay frame-relay lmi-type ansi frame-relay intf-type dce frame-relay route 302 interface Tunnel0 423 interface Async1 ip address 1.0.0.1 255.255.255.0 encapsulation ppp async default routing async mode dedicated ppp authentication chap line aux 0 rxspeed 38400 txspeed 38400
Listing B.2. Conguration du routeur FR2.
username FR1 password 0 cisco frame-relay switching interface Tunnel0 tunnel source 1.0.0.2 tunnel destination 1.0.0.1 interface Ethernet0 ip address 169.124.84.36 255.255.255.0 interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi frame-relay intf-type dce frame-relay route 201 interface Tunnel0 421 frame-relay route 203 interface Tunnel0 423 interface Async1 ip address 1.0.0.2 255.255.255.0 encapsulation ppp async default routing async mode dedicated ppp authentication chap line aux 0 rxspeed 38400 txspeed 38400
354
interface Ethernet0 ip address 10.1.0.1 255.255.255.0 interface Serial0 encapsulation frame-relay frame-relay lmi-type ansi interface Serial0.1 point-to-point ip address 10.255.0.10 255.255.255.248 frame-relay interface-dlci 102
Listing B.4. Conguration du routeur R2.
interface Ethernet0 ip address 10.2.0.1 255.255.255.0 interface Serial0 ip address 10.255.0.9 255.255.255.248 encapsulation frame-relay clockrate 64000 frame-relay map ip 10.255.0.10 201 broadcast frame-relay map ip 10.255.0.11 203 broadcast frame-relay lmi-type ansi
Listing B.5. Conguration du routeur R3.
interface Ethernet0 ip address 10.3.0.1 255.255.255.0 interface Serial0 encapsulation frame-relay clockrate 64000 frame-relay lmi-type ansi interface Serial0.1 multipoint ip address 10.255.0.11 255.255.255.248 frame-relay map ip 10.255.0.9 302 broadcast
Utiliser linterface auxiliaire asynchrone pour relier les routeurs en commutateurs Frame Relay, demande une certaine patience car pour certaines versions de lIOS de Cisco, la connexion peut savrer instable. Si le protocole PPP utilis dans cet exemple pose des problmes, on peut le remplacer par le protocole SLIP qui est disponible pour les interfaces asynchrones. La commande pour vrier ltat des commutateurs Frame Relay, ainsi que ses sorties se trouvent sur les listings B.6 et B.7.
Configuration dun routeur Cisco en commutateur Frame Relay ANNEXE B Listing B.6. Sortie de la commande show
355
FR1#show frame-relay route Input Intf Input Dlci Output Intf Serial0 102 Tunnel0 Serial1 302 Tunnel0 Tunnel0 421 Serial0 Tunnel0 423 Serial1
FR2#show frame-relay route Input Intf Input Dlci Output Intf Serial0 201 Tunnel0 Serial0 203 Tunnel0 Tunnel0 421 Serial0 Tunnel0 423 Serial0
C
Commandes RSH et RCP sur les routeurs Cisco
Dans cette annexe, nous allons dcrire deux commandes trs utiles et nanmoins assez sotriques, disponibles dans lIOS de Cisco. Il sagit de RSH et RCP drives de la srie des utilitaires de commande distance ou R(emote)-utilities dvelopps luniversit de Berkeley. De par de leur origine, ces commandes sont compatibles avec les tches de fond correspondantes (daemons) dun serveur Unix. Le routeur Cisco peut lui-mme excuter ces mmes tches de fond et servir un client RSH ou RCP implment dans Unix ou Windows NT. Pour congurer RSH et RCP sur un routeur Cisco, procdez comme suit : Dmarrer les daemons RSH et RCP par les commandes ip rcmd rsh-enable et ip rcmd rcp-enable. Les deux daemons requirent un certain niveau dauthentication qui permet denregistrer aussi bien lhte distant que le nom dutilisateur local sous lequel les commandes RSH et RCP en provenance de cet hte doivent sexcuter sur le routeur. Cette authentication se congure par la commande ip rcmd remote-host <nom local utilisateur>{<adresse IP distante>|<nom hte distant>}<nom utilisateur distant> [enable]. Le deuxime paramtre est, soit ladresse IP de la machine distante, soit son nom DNS. Le dernier paramtre est le nom sous lequel lutilisateur distant se connecte sa machine ; il est pass, avec les autres paramtres, dans les PDU des protocoles RSH et RCP au routeur correspondant. Loption enable permet lutilisateur distant, une fois authenti, dexcuter des commandes en mode exec privilgi Cisco. La commande ip rcmd remote-username <nom utilisateur> enregistre dans le routeur local le nom dutilisateur sous lequel les commandes RSH et RCP seront envoyes vers la machine distante.
358
REMARQUE
Si le nom DNS est utilis, le routeur doit en possder une conguration valide, sinon il est prfrable de dsactiver la consultation DNS par la commande no ip domain-lookup, ce qui peut diligenter lexcution des commandes dans le routeur, surtout dans un environnement dessai o, normalement, il nest pas besoin dun serveur DNS.
Le listing C.1 montre un exemple de conguration des daemons RSH et RCP sur un routeur Cisco.
Listing C.1. Conguration du routeur R1.
username Admin1 ip rcmd rcp-enable ip rcmd rsh-enable ip rcmd remote-host Admin1 10.6.0.15 Administrator enable interface TokenRing0 ip address 10.6.0.1 255.255.255.0 ring-speed 16
Le listing C.2 montre comment la commande RSH est introduite sur une machine Windows NT pour lexcuter sur un routeur Cisco distant.
Listing C.2. Commande rsh sur machine Windows NT pour excution sur le routeur distant R1.
C:\>rsh 10.6.0.1 -l Admin1 -n show ip route Codes: C-connected, S-static, I-IGRP, R-RIP, M-mobile, B-BGP D-EIGRP, EX-EIGRP external, O-OSPF, IA-OSPF inter area N1-OSPF NSSA external type 1, N2-OSPF NSSA external type 2 E1-OSPF external type 1, E2-OSPF external type 2, E-EGP i-IS-IS, L1-IS-IS level-1, L2-IS-IS level-2, *-candidate default U-per-user static route, o-ODR T-traffic engineered route Gateway of last resort is not set 10.0.0.0/24 is subnetted, 1 subnets 10.6.0.0 is directly connected, TokenRing0
La commande rsh sous Windows NT avec lextension -l permet de renseigner le paramtre du nom dutilisateur sous lequel le routeur distant doit excuter cette commande. Ce nom (Admin1) est congur sur le routeur R1 par les commandes username et ip rcmd remotehost (premier paramtre). Si ce paramtre est omis dans la commande RSH, Windows NT va le renseigner dofce avec le nom de connexion locale, cest--dire Administrator , dans ce cas.
359
Nous pouvons voir sur le listing C.3 que la commande RSH sans nom dutilisateur valide naboutit pas.
Listing C.3. Commande rsh sans nom dutilisateur.
C:\>rsh 10.6.0.1 -n show ip route 10.6.0.1: Permission denied. rsh: can't establish connection
Nous pouvons utiliser la commande debug ip tcp rcmd pour pouvoir suivre le droulement du protocole RSH, quand une commande choue. Par exemple, si nous entrons cette commande sur le routeur R1 avant que celui-ci ne reoive la commande RSH de lhte Windows NT, nous verrons ce qui est afch sur le listing C.4. lors de lexcution de cette dernire.
Listing C.4. Sortie de la commande debug sur le routeur R1.
ip tcp rcmd
R1#debug ip tcp rcmd RCMD transactions debugging is on R1# RCMD: [514 <- 10.6.0.15:1018] recv 1017\0 RCMD: [514 <- 10.6.0.15:1018] recv Administrator\0Administrator\0show ip route\0 RCMD: [514 <- 10.6.0.15:1018] recv -Administrator 10.6.0.15 Administrator not in trusted hosts database RCMD: [514 -> 10.6.0.15:1018] send <BAD,Permission denied.>\n
Nous pouvons constater sur le listing C.4, sans mme savoir pourquoi la commande a chou, que le nom Administrator de connexion locale dans lhte Window NT nest pas enregistr dans la base dauthentication du routeur R1 comme utilisateur. Celui-ci doit tre congur selon les directives mentionnes plus haut, par les commandes username et ip rcmd remote-host. Une version en mode client est galement disponible pour RSH sur les routeurs Cisco. Sil est besoin dexcuter une commande RSH dun routeur vers un autre, nous devons entrer le format de commande rsh {<adresse IP distante|<nom systme distant>} [/user <nom local utilisateur>] <commande routeur>.
REMARQUE
Si loption /user avec un nom dutilisateur (congur dans le routeur distant par username ou tout autre moyen dauthentication comme RADIUS, TACACS+, etc.) est omise lors de la connexion, le routeur local va se connecter au routeur distant avec son propre nom dhte qui lui a t dni par la commande hostname.
Essayons de nous connecter par la commande RSH (cf. listing C.5) dun routeur un autre ; dans notre exemple, du routeur R2 vers R1, sur le mme Token Ring, sans prciser le nom dutilisateur.
360
En examinant la sortie de la commande debug ip tcp rcmd sur le listing C.6, nous nous apercevons que le routeur R2 envoie son propre nom dhte en tant que nom dutilisateur sous lequel la commande doit sexcuter sur le routeur R1 ; ce nom ntant pas enregistr sur ce dernier, la commande RSH choue.
Listing C.6. Sortie de la commande debug
R1#debug ip tcp rcmd RCMD transactions debugging is on R1# 01:48:07: %SYS-5-CONFIG_I: Configured from console by console 01:48:37: RCMD: [514 <- 10.6.0.2:1016] recv \0 01:48:37: RCMD: [514 <- 10.6.0.2:1016] recv R2\0Admin1\0show ip route\0 01:48:37: RCMD: [514 <- 10.6.0.2:1016] recv -Admin1 10.6.0.2 R2 not in trusted hosts database 01:48:37: RCMD: [514 -> 10.6.0.2:1016] send <BAD,Permission denied.>\n
La commande RCP est trs utile pour tlcharger une image IOS dun serveur RCP vers le routeur. Cette mthode est plus sre et plus rapide que de passer par TFTP. Dans la commande copy habituelle il faut remplacer le mot clef tftp par rcp. Par exemple, si on veut transfrer une image de lIOS du serveur RCP vers la mmoire ash du routeur mettre niveau, on peut utiliser la commande copy rcp ash du listing C.7.
Listing C.7. Commande copy
R2# R2#copy rcp flash **** NOTICE **** Flash load helper v1.0 This process will accept the copy options and then terminate the current system image to use the ROM based image for the copy. Routing functionality will not be available during that time. If you are logged in via telnet, this connection will terminate. Users with console access can see the results of the copy operation. ---- ******** ---Proceed? [confirm] Address or name of remote host []?10.6.0.1 Source username [R2]? Admin1 Source filename []? c2500-d-l.120-2a.bin Destination filename [c2500-d-l.120-2a.bin]? The returned username is R2(8CF68)
361
Il est conseill de basculer vers la version de IOS qui se trouve sur la ROM (Read Only Memory) avant de tlcharger en local la nouvelle image de IOS. La commande de basculement dpend de la version du systme IOS et du modle de routeur, mais elle commence toujours par boot system. Seuls les paramtres varient dune version lautre ou dun modle lautre. En version 11.1 du Cisco IOS, sur un modle de routeur de la srie 2500, cette commande, dont la syntaxe est boot system rom, doit tre introduite en mode de conguration globale. Il faut ensuite sauvegarder la conguration actuelle en mmoire non volatile ou NVRAM par la commande copy running-cong startup-cong ou celle plus ancienne, write memory, et redmarrer le routeur. Si le systme IOS de Cisco tourne dj en version ROM, il nest pas ncessaire de redmarrer le routeur avant le tlchargement en local de la nouvelle image IOS. Cependant il faut se rappeler que la version ROM de IOS ne possde quune fonction de routage rudimentaire. moins davoir le serveur RCP contenant le chier tlcharger sur le mme segment que le routeur mettre niveau, celui-ci doit tre congur par la commande ip default-gateway [<adresse IP>] avec ladresse IP dun autre routeur du segment qui servira de relais.
Lutilisation conjointe de la version ROM de Cisco IOS et de la commande RCP savre fort utile pour mettre jour limage de lIOS sur un routeur distant via un rseau WAN de type Frame Relay, par exemple.
D
Horodatage de Ping
La commande ping est disponible sur la plupart des systmes, avec cependant linconvnient de ne pas horodater les rsultats. Lhorodatage peut tre trs utile pour mesurer des dures dlai de reprise du routeur de secours suite la dfaillance du routeur principal ou dlai de commutation vers la ligne de secours, suite la panne de la ligne principale, par exemple. Ces deux cas ont t vus dans le chapitre 7 traitant de HSRP (Hot Standby Router Protocol) et de la commutation vers la ligne de secours. Nous proposons ci-aprs un script en langage Perl qui lance la commande ping toutes les secondes avec horodatage du rsultat. Le listing D.1 contient le programme avec loption -n 1 qui nenvoie quun seul paquet ICMP (cette option varie suivant le systme dexploitation et doit tre modie en consquence). La commande ping a comme seul argument ladresse IP destinataire (aucune vrication syntaxique ntant faite sur ladresse, celle-ci doit tre entre correctement).
Listing D.1. Script Perl de la commande ping avec horodatage.
# This procedure creates a stamp on the moment its invoked. sub tstamp { local($sec,$min,$hour) = localtime ; return sprintf( "%02i:%02i", $min, $sec ); } # This variable will be used to invoke the NT ping command # to ping the remote destination only once. In other # operating systems the option -n 1 must be replaced # with the option that makes ping send only a single # ICMP packet. $OS_SPING = 'ping -n 1 ' ; # The destination IP address is passed as the first and the
364
# only command line argument. I do not perform any command # line syntax checking, so its important to pass the # correct IP address. $IP_ADDR = $ARGV[0] ; $T_PREV = '' ; while (1) { # Wait until one second expires while( $T_PREV eq &tstamp ) {} # Parse ping output ( $tmp1,$tmp2, $tmp3, $P_RES ) = split( "\n", `$OS_SPING $IP_ADDR` ) ; # Print time stamp print "[". &tstamp ."] " ; # Print the fourth line of ping output print $P_RES . "\n" ; # Refresh the time stamp $T_PREV = &tstamp ; }
Comme vous avez pu le constater, le programme tourne sur une boucle innie. Pour larrter, utilisez la combinaison de touches Ctrl+Echap.
E
Utilisation de Windows NT en tant que machine hte
Lutilisation dune machine Windows NT version 4.x pour tester les diffrentes congurations de routeurs peut savrer trs pratique. Ce systme dexploitation permet davoir plusieurs cartes dinterface rseau et peut drouler des protocoles comme RIP, OSPF, etc. Cependant, il faut savoir que Windows NT va installer autant de routes pointant vers la passerelle par dfaut quil a de cartes rseau. Celles-ci qui peuvent tre visualises par la commande netstat rn peuvent semer une certaine confusion quant la route choisir. Il est donc utile dinstaller des routes spciques compatibles avec vos procdures dessai. Par exemple si la machine comporte deux cartes rseau, avec les adresses IP respectives 10.1.1.10/24 et 172.16.1.10/24, il est bon dajouter deux routes par les commandes suivantes :
route add 10.0.0.0 mask 255.0.0.0 10.1.1.1 metric 1 route add 172.16.0.0 mask 255.255.0.0 172.16.1.1 metric 1
F
Aide-mmoire pour les routeurs Cisco
Interface de ligne de commande (CLI)
Mouvements du curseur Les combinaisons de touches sont les suivantes pour pointer le curseur vers : le dbut de ligne par Ctrl+A ; la n de ligne par Ctrl+E ; le caractre prcdent par Ctrl+B (ou che gauche) ; le caractre suivant par Ctrl+F (ou che droite) ; le mot prcdent par Echap+B ; le mot suivant par Echap+F. Toutes ces touches sont actives par dfaut ; sinon la commande terminal editing permet de les activer. Fonction historique La CLI (Commande Line Interface) permet de mmoriser les commandes entres auparavant pour pouvoir les rutiliser aprs modication ventuelle. Pour accder la commande prcdente et celle la plus rcente, la che haute ou Ctrl+P et la che basse ou Ctrl+N sont utiliser, respectivement. La mmoire des commandes contient par dfaut 10 entres au maximum. On peut changer sa taille par session ou de manire dnitive. Pour un changement par session, entrer la commande terminal history size suivie du nombre dentres mmoriser. Pour un changement dnitif, en mode de conguration dinterface, il faut introduire la commande history size suivie du nombre voulu.
368
Par exemple :
router#config t Enter configuration commands, one per line. End with CNTL/Z. router(config)#line vty 0 4 router(config-line)#history size 50
Aide-mmoire
Fonctions daide La CLI possde des fonctions daide utiliser comme suit : Accoler le caractre ? un dbut de commande tronque permet davoir la liste de tous les mots complets qui commencent par ce dbut. Ce dbut de commande est ensuite rafch avec le curseur pointant sur la position ou se trouvait ? . Par exemple :
router#show co? compress configuration context controllers router#show co_
Le caractre ? prcd dune espace aprs une partie de la commande, afche tous les arguments possibles qui sy rapportent. La partie incomplte est ensuite rafche avec le curseur pointant sur la position o se trouvait ? . Par exemple :
router#show ip eigrp ? interfaces IP-EIGRP neighbors IP-EIGRP topology IP-EIGRP traffic IP-EIGRP router#show ip eigrp _ interfaces neighbors Topology Table Traffic Statistics
Appuyer sur la touche de tabulation au milieu dun dbut de mot permet de le complter. Si ce dbut possde plusieurs terminaisons possibles, il sera complt jusquau tronc commun. Par exemple :
router#show ip ac<TAB> router#show ip acc_
ou
router#conf<TAB> router#configure_
Touches et commandes de remonte vers les modes suprieurs Pour remonter vers les modes suprieurs de la CLI, on peut se servir des mots ou des touches suivantes: En mode de conguration autre que celui de conguration globale, la combinaison de touches Ctrl+Z ou lentre de la commande end provoque le passage du mode courant celui dEXEC privilgi. En mode de conguration autre que celui de conguration globale, lentre du mot exit fait passer du mode courant celui du niveau suprieur qui, dans la plupart des cas, est le mode de conguration globale.
369
La combinaison de touches Ctrl+Z aprs une commande, lance lexcution de celle-ci et bascule en mode EXEC privilgi. Par exemple, en mode de conguration dinterface et aprs avoir tap ip address 10.0.0.1 255.0.0.0, la frappe de Ctrl+Z excute cette commande et bascule en mode EXEC privilgi. Pour passer ce mode sans excuter la commande, appuyer sur Ctrl+C.
Aide-mmoire
Fonctions du terminal
Sortie longue Pour inhiber la sortie en mode pagin (qui se termine par la marque more pour indiquer que dautres lignes sont en attente dafchage, et quon peut visualiser soit en appuyant sur la touche entre pour voir la suite ligne par ligne, soit en appuyant sur la barre espace pour une visualisation page par page), la commande terminal length 0 permet dafcher toute la sortie dans la foule. Cette commande nest effective que par session. On peut retourner en mode pagin par la mme commande, en prcisant cette fois-ci le nombre de lignes afcher par page. Lautre moyen, cest de quitter la session et de se reconnecter. Diriger la sortie de la commande debug Pour visualiser les rsultats dune commande debug partir dune connexion rseau telnet (ou de mme type tels que rlogin, PAD, etc.), il faut introduire la commande terminal monitor. Par dfaut, la sortie de la commande debug nest afche que sur la console directement connecte au routeur. Afcher les sessions et leur coupures ventuelles Utilisez la commande show users all pour afcher les sessions actives :
router#show Line 0 con 0 1 aux 0 * 2 vty 0 3 vty 1 4 vty 2 5 vty 3 6 vty 4 users all User Host(s) you badguy idle idle Idle Location 00:00:00 00:00:00 00:00:00 10.0.1.111 00:00:02 10.1.2.120 00:00:00 00:00:00 00:00:00
Pour dconnecter un utilisateur indsirable, la commande utiliser est clear line suivie du nom de la ligne et de son numro (en italique, ci-dessus). Elle sexcute comme suit :
router#clear line vty 1 [confirm]<ENTER> [OK] router#
Activation et dsactivation de la fonction DNS Si lon commet une erreur de saisie lorsque lon introduit une commande, le routeur suppose quil sagit dun nom de connexion pour une session par terminal, de type telnet. Si le routeur nest pas congur avec un serveur DNS, il va vainement chercher consulter un serveur DNS pour traduire la mauvaise commande en adresse IP, et il peut scouler un certain temps avant
370
Aide-mmoire
que lchance de temporisation de cette consultation inopportune arrive terme, surtout sil nest pas possible dannuler la commande par les touches Ctrl+Maj+6 ou Ctrl+Ctrl. Le temps dafchage des commandes ping et traceroute peut aussi tre allong par la consultation DNS (pour la conversion dadresses IP en noms), si cette fonction nest pas congure dans le routeur. Pour indiquer celui-ci que la fonction DNS est dsactive, il faut entrer la commande no ip domain-lookup (en mode de conguration globale). Pour congurer la fonction DNS, saisissez la commande inverse ip domain-lookup en spciant le nom du domaine avec la commande ip domain-name <nom de domaine>, et un (ou des) serveur(s) DNS avec ip name-server <adresse IP du serveur>. Malheureusement, la commande terminal no ip domain-lookup, valable pour une session donne, ne dsactive la fonction DNS que pour les commandes show.
Action
Afche ltat de toutes les interfaces. Afche ltat de linterface dont le paramtre inclut son nom et son numro. Afche les informations relatives IP pour toutes les interfaces. Afche les informations relatives IP pour linterface donne en paramtre avec son nom et son numro. Afche la table de routage en entier. Afche les informations de routage concernant le prxe donn en paramtre qui peut tre soit un sous-rseau, soit un rseau classe , auquel cas les informations sur tous les sous-rseaux de ce rseau, sils existent, sont afches. Sinon, seules les informations sur le rseau, sont afches. Si aucune information nest disponible pour le paramtre, la sortie de la commande afche % Network not in table. Afche les informations de routage en provenance de la source qui correspond lun des mots clefs du tableau B. Afche le sommaire des informations de la table de routage. Afche les informations sur les protocoles de routage IP congurs. Afche la conguration enregistre en mmoire non volatile (NVRAM). Afche la conguration courante en mmoire vive (RAM) qui peut tre diffrente de celle de la NVRAM, si cer taines commandes entres rcemment ny ont pas encore t enregistres.
show ip route <source> show ip route summary show ip protocols show startup-cong ou show cong (ancienne version) show running-cong ou write terminal (ancienne version)
Aide-mmoire pour les routeurs Cisco ANNEXE F Tableau B. Mots clefs disponibles pour le paramtre <source> de la commande show ip route.
Mot clef
bgp connected egp eigrp igrp isis odr ospf rip static
371
Aide-mmoire
Certains des paramtres optionnels ont t remplacs par des points de suspension ().
Deux autres options de la commande ping sont la taille du datagramme (datagram size) et le nombre denvois (repeat count) qui permettent de gnrer un trac intense des ns de test. Traceroute La commande traceroute sans paramtres ou suivie du mot clef ip, propose le mme dialogue doptions renseigner que celui de la commande ping.
372
Aide-mmoire
Telnet La commande telnet peut parfois servir doutil de dpannage si on lui ajoute le mot clef /source-interface avec le paramtre <interface> pour spcier ladresse IP source de la connexion.
Adressage IP
Le tableau C fournit la relation entre longueur de prxe (ou masque) de sous-rseau et le nombre dhtes quelle peut contenir.
Tableau C. Relation entre longueur de prxe sous-rseau et le nombre dhtes quelle peut contenir.
Nombre dhtes
1 Jusqu 2 Jusqu 6 Jusqu 14 Jusqu 30 Jusqu 62 Jusqu 126 Jusqu 254 Jusqu 510 Jusqu 1022 Jusqu 2046
Masque sous-rseau
255.255.255.255 255.255.255.252 255.255.255.248 255.255.255.240 255.255.255.224 255.255.255.192 255.255.255.128 255.255.255.0 255.255.254.0 255.255.252.0 255.255.248.0
Routage IP
Distance administrative des sources dinformations de routage On peut assigner une nouvelle valeur de distance administrative pour les sources de mises jour par la commande distance <valeur de distance> [<adresse IP source/masque gnrique>], en mode de conguration routeur (router rip). La nouvelle distance administrative sappliquera toutes les routes pointant vers les prxes rseau annoncs par la source dont ladresse IP correspond au deuxime paramtre de la commande. Si ce paramtre (optionnel) est omis, la nouvelle distance sappliquera toutes les mises jour reues, quelle que soit leur origine. Si on renseigne le paramtre <valeur de distance> par 255, les routes diffuses par la source correspondante, ne seront jamais inscrites dans la table de routage, mais tout simplement ignores. La distance administrative des routes statiques peut aussi tre change par la commande ip route en renseignant son dernier paramtre optionnel [<distance>] avec la valeur voulue. La distance administrative des routes dinterfaces connectes et celle des routes agrges de EIGRP ne peuvent pas tre modies.
373
Le tableau D donne la valeur de distance administrative de toutes les sources dinformations de routage disponibles dans le systme IOS de Cisco.
Tableau D. Valeur par dfaut de la distance administrative.
Origine de la route
Interface connecte Route statique IGRP amlior (route agrge) BGP externe IGRP amlior (interne) IGRP amlior (externe) IGRP OSPF IS-IS RIP EGP BGP interne Inconnu
Aide-mmoire
Distance
0 1 5 20 90 170 100 110 115 120 140 200 255
Les mtriques de IGRP et EIGRP La formule que IGRP utilise pour calculer la mtrique de chaque route est la suivante : k 2* B IGRP k5 - + k 3* D IGRP --------------M IGRP = k 1* B IGRP + ----------------------R + k4 256 L B IGRP est le dbit IGRP du chemin, calcul selon la formule ci-dessous : 10 7 B IGRP = ----------B MIN BMIN est le dbit logique minimal du chemin exprim en Kbit/s (Kilobits par seconde). DIGRP est le dlai du chemin qui est gal la somme des dlais de tous les segments qui le constituent, exprim en units de 10 s. L est la charge de linterface correspondante, exprime par un chiffre de 1 (minimum) 255 (100 %). R est le degr de abilit du segment auquel est relie linterface, dont la valeur est exprime dans la mme fourchette que L. Les facteurs de pondration, k1, k2, k3, k4 et k5 peuvent tre congurs administrativement ; leur valeur par dfaut se trouve dans le tableau E. Si on applique la valeur par dfaut pour les facteurs k, la formule de calcul de mtrique de IGRP est rduite la suivante : MIGRP = BIGRP + DIGRP La mtrique calcule par EIGRP est base sur la mme formule que celle de IGRP, avec une multiplication du rsultat par 256, ce qui donne : MEIGRP = MIGRP * 256
374
La redistribution de routes entre IGRP et EIGRP se fait sans que leurs mtriques soient revalorises, mais multiplies par un facteur de 256 sauvegardant ainsi leurs valeurs accumules dans leurs domaines de routage respectifs.
Aide-mmoire
La mtrique de RIP Dans RIP la mtrique dune route se calcule en nombre de sauts. Une fois celle-ci apprise via ses voisins, le routeur lannonce son tour avec une mtrique augmente de 1. La mtrique de OSPF Le protocole OSPF calcule la mtrique dune route en cumulant le cot de tous les segments qui la constituent, selon la formule suivante. 10 8 C = ------B B dsigne le dbit logique de linterface mesur en bits par seconde (bit/s). Rgles de routage Le routeur nutilise les mtriques que dans le cadre dun protocole de routage particulier. Si un protocole vecteur de distance reoit plusieurs messages de mise jour pour le mme prxe, la route la meilleure mtrique prvaudra sur les autres pour tre inscrite dans la table de routage. Si linformation de routage provient de plusieurs origines (par exemple, les protocoles de routage dynamique, les routes statiques et les routes dinterfaces connectes) pour la mme destination, la route installe dans la table sera celle dont lorigine possde la plus petite valeur de distance administrative au dtriment des autres. Le routeur utilise lalgorithme de recherche par la correspondance la plus longue pour trouver la meilleure route vers une destination, dans sa table de routage. Un protocole vecteur de distance nannonce pas une route quil na pas installe dans la table de routage. Dans un protocole tat des liens, le droulement de lalgorithme de Dijkstra pour le calcul du plus court chemin permet de remplir la table de routage.
Index
A ABR (Area Border Router), 177, 182, 183, 191 access-list <numro de liste entre 1 et 99> {permit|deny} <adresse IP source/masque gnrique>, 223 adressage inter-couche, 34 adresse broadcast, 329 individuelle/multidestinataire, 52 multicast, 277, 327 rsolution, 35 routable, 301 source, 277, 282 adresse IP espace public, 274 externe globale, 275 locale, 275 interne, 291 globale, 275, 295 locale, 275, 287 multicast, 328 prive, 274, 275, 299 secondaire, 125 types dadresses NAT, 275 virtuelle, 276, 277, 304, 306 adresse MAC, 52, 276, 328 adressage inter-couches, 34 attribution, 53 modier, 77 multicast, 329 virtuelle, 310 Age (champ), 60 agrgation de route, 246, 250 aire dorsale, 191 extension, 199 aires connes, 188 peu connes, 265 algorithme de Dijkstra, 172 analyseur LAN, 36 anneau virtuel, 78 arbre de recouvrement, 53, 329 afcher la topologie, 73 conguration des paramtres, 71 multicast, 329 par la source, 329 partag, 330, 332, 337, 342 area,181 area <aire> range <adresse IP/ masque de sous-rseau>, 182, 246 area <aire> stub,188 area <aire> virtual-link <OSPF ID>, 191, 194 ARP (Address Resolution Protocol), 35, 276, 328 conguration de IP sur LAN, 37 inverse (InARP), 44 RFC 1042, 58 AS (Autonomous System), 141 ASBR (Autonomous System Boundary Router), 177 ASBR (Autonomous System Boundary Routers), 257 au mieux, 15 auto-agrgation, 122, 162 dsactiver (RIP v2), 161 auto-summarization, 122 B backup delay <dlai de mise en route> <dlai dextinction>, 320 backup interface <interface commute>, 320 bandwidth,144 bandwidth <B>, 182 Bellman, 108 best effort, 15 BGP (Border Gateway Protocol), 188 distance administrative, 112 boucle de routage, 236, 256, 274 redistribution, 221, 234 bourrage, 21 bout en bout, 11 BRI (Basic Rate Interface), 47 bridge <numro de groupe> priority <priorit>, 76 protocol <protocole>, 59, 61, 64, 67 route ip,70, 71 bridge crb,69 bridge irb,70 bridge-group <numro de groupe>, 59, 61, 64, 67 path-cost <cot du chemin>, 77 bridging, Voir pontage broadcast, 23, 64, 207, 329 bits, 57 broadcast and prune, 332 C cbles CAB-V35FC, 349 CAB-V35MT, 349 Catalyst, 101 CHAP, 321 charge utile, 17 checksum, 21 circuits virtuels, 343 permanents, 44
376
Index
classes, 22 A, B, et C, 23 D, 327 classful, 25 classless, 173 clear ip nat translations,295 ip route,235, 253 line,369 CLI (Commande Line Interface), 367 clivage dhorizon, 111, 119 clockrate, 349 commutateur, Frame Relay, 351 conguration globale, 368 copy, 360 couche liaison, 51, 277 transport, ltrer par liste daccs, 225 cot (OSPF), 182 CRB (Concurrent Routing and Bridging), 59 CSU/DSU (Channel Service Unit/ Data Service Unit), 349 CVP (Permanent Virtual Circuits), 44 router, 351 D datagramme, 10, 331 en-tte, 17 DDR (Dial-On-Demand Routing), 278 debug, 36, 119, 369 arp, 95 backup,323 ip igmp,337 ip igrp transactions,143, 145, 253 ip packet, 141 ip pim,337 ip policy, 285 ip rip,118, 119, 121, 126 ip tcp rcmd, 359, 360 ip-packet, 101 dconnecter un utilisateur, 369 default-information originate, 124, 186
default-metric, 231, 238 dmultiplexage, 12, 277 dense, 330 dialer group, 320 list, 320 map, 49 map snapshot, 316 dialer-list, 49, 67 diffusion, 33 dirige, 23 gnrale champs, 57 locale, 23 Dijkstra, Edsger, 173 distance,133, 134, 143, 239 255 241 distance <valeur de distance>[<adresse IP source/masque gnrique>], 131, 372 distance administrative, 112, 134, 251 distance (commande),131 valeurs par dfaut pour les protocoles, 373 distribute-list,262 <numro de liste daccs> out <source de linformation de routage>, 242, 247 <numro de liste> {in|out} <interface>, 228 DLCI (Data Link Circuit Identier), 44, 141 DNS (Domain Name System), 301 congurer, 370 dsactiver, 358, 369 domaine de routage extension automatique, 255 donnes, 8 dure de vie (Time To Live), 20 DVMRP (Distance Vector Multicast Routing Protocol), 328, 333 E cho, ICMP, 30 coute, 35 EGP ( Exterior Gateway Protocol), 188 distance administrative, 112
EIGRP (Enhanced Interior Gateway Routing Protocol), 14, 21, 295, 324, 327, 334 agrgation de route, 166, 250 comparaison avec IGRP, 250 congurer, 163 distance administrative, 251 mtrique, 166, 220, 373 priorit, 250 redistribution, 250 redistribution vers IGRP, 250 routes externes, 250 sur Frame Relay, 167 laguer, 330, 338 lment (*,G), 331, 337 lment (S,G), 331, 337 encapsulation, 42, 49 HDLC, 43 encapsulation frame-relay, 64, 351 en-tte, 8 IP, 17 envoyeur, 328 pars, 342 quilibrage de charge, 85, 274, 304, 313 NAT (RFC 2391), 274 espace dadressage IP division VSLM, 149 tat acheminement, 53 tat des liens, 171 base de donnes, 187, 228 ltre en sortie, 228 Ethernet, adresse MAC, 52 EXEC privilgi, 368 F facteurs de pondration, 374 ltrage, 36, 222 ag, 19 oating static routes, 90 ooding, 177 Ford, 108 fragmentation, 15, 19 Frame Relay, 174 commutateur, 351 congurer le pontage, 64 RIP, 138 encapsulation, 45 intgralement maill, 203 interfaces srie, 44 mapping statique, 44
Index
377
frame-relay intf-type dce, 351 lmi-type <type de LMI>, 64 lmi-type {ansi|cisco|q933a}, 352 map bridge <DLCI> [broadcast], 64 map ip, 141 map ip <adresse IP distante> <DLCI>, 207, 218 route <DLCI en entre> interface serial <numro dinterface> <DLCI en sortie>, 351 switching, 351 Fulkerson, 108 fully meshed, 203 G group-bit, 329 groupe dattente, 277, 307, 313 de diffusion, 330 dispers, 330 multicast, 333, 336, 339 H HDLC (High Level Data Link Control) congurer le pontage, 62 encapsulation, 43 hello, 276 holddown, 111, 235, 237 horloge, 350 horodater, ping, 363 hte, congurer une route individuelle, 98 HSRP (Hot Standby Router Protocol), 276, 307 RFC 2281, 276 hub-and-spoke, 279 I ICMP (Internet Control Message Protocol), 14, 21, 30, 285, 300 destination inaccessible, 31 cho, 30 message derreur 3, 225 messages de contrle, 30 RFC 792, 30
identit OSPF, 191 IEEE (Institute of Electronic and Electrical Engineers), 53 IEEE 802.1D, 59, 71 IGMP (Internet Groupe Management Protocol), 332 IGP (Interior Gateway Protocol), 108 IGRP (Interior Gateway Routing Protocol), 14, 109, 114, 316, 324, 328 comparaison avec EIGRP, 250 avec RIP, 114 congurer, 141 le partage de charge, 146 distance administrative, 112, 251 mtrique, 144, 220, 373 partage de charge cot ingal, 148 redistribution vers EIGRP, 250 IHL, 17 informations de routage conversion, 220 ltrage, 221 redistribution, 220 interface connecte, redistribuer, 237 daccs de base (BRI), 67 de sortie, 93 NULL, 246 srie, congurer, 42 tunnel, 297 interface BVI <numro de groupe>, 70 interface loopback <numro>, 123 IOS (Internetwork Operating System - Cisco), 36 basculer vers version ROM, 361 interface de ligne de commande, 367 version 11.1, 361 version 11.2, format de liste daccs, 228 versions, 98 versions 11.1.X et boucles de routage, 256 versions 11.2.X et distance administrative, 254
IP (Internet Protocol), 13, 14 adressage inter-couche, 34 en-ttes, 17 version 4, RFC 1812, 186 ip access-group <numro de liste> [{in|out}], 223, 226 ip access-list {standard|extended} <nom de liste>, 228 ip address <adresse IP>, 123 ip classless, 96, 97, 98, 125, 186, 206 ip domain-lookup, 370 ip domain-name <nom de domaine>, 370 ip name-server <adresse IP du serveur>, 370 ip nat inside, 287, 292, 301, 304 destination list, 304 source, 300 source list, 292 source list {<numro de LA>|<nom de LA>} interface <interface>, 300 ip nat outside , 288, 292, 301, 304 source list , 301 ip nat pool , 291, 301 ip ospf network broadcast , 207, 213 ip ospf network point-to-multipoint 213 ip ospf priority <priorit>, 215 ip pim dense-mode, 334 nbma-mode, 343 rp-address, 339 sparse-dense-mode, 342 sparse-mode, 339 ip rcmd rcp-enable, 357 remote-host, 357 remote-username, 357 rsh-enable, 357 ip rip version {1|2} [{1|2}], 162 ip route <adresse rseau> <masque> <adresse IP du routeur de saut suivant>, 98 ip subnet-zero, 206 ip summary-address eigrp <numro de systme autonome> <adresse IP/masque de sous-rseau>, 166, 246
378
Index
IRB (Integrated Routing and Bridging), 59 IRDP (ICMP Router Discovery Protocol), 276 ISDN (Integrated Service Digital Network), 47 isdn switch-type, 49 IS-IS (Intermediate System to Intermediate System), 172 ISO (International Standards Organization), 8 J join, 330 L LAN, 174 analyseur, 36 LAPB (Link Access Procedure Control Balanced), 43 liaisons virtuelles (OSPF), 191, 195 lien de secours, 278, 320 ligne spcialise, 280 list <numro de liste de code type Ethernet>, 67 liste daccs, 36, 222, 278, 282, 291, 339, 343 effacer, 223 tendue, 225, 292 noms des protocoles, 226 ltrer les mises jour de routage, 228 ligne implicite, 228 nomme, 228 optimiser lexcution, 223 standard, 223 LLC (Logical Link Control), 43 LMI (Local Management Interface), 44, 352 load splitting, 85 longueur de prxe, 372 loopback, 23, 339 LSA (Link State Advertisement), 177 type 5, 257 type 7, 257, 265 LSD (Link State Database), 172 LSNAT, 304
M MAC (Media Access Control), 33 adresse virtuelle, 276, 277 mac-address, 77 maillage, intgral, 203 mapping statique, 44 masque de sous-rseau, 24 30, 24 ,31, 32, 27 conventions Cisco, 223 notation, 27 masque gnrique, 181, 223 conventions Cisco, 132 match, 245 match ip address {<numro de LA>|<nom de LA>}, 278 MBONE, 333 MCASTER, 333, 344, 347 message laguer, 332 greffer, 338 rejoindre, 330, 333, 338 mtrique changer (RIP), 136 EIGRP, 166 formules IGRP et EIGRP, 373 IGRP, 114, 144 innie, 237 metric (commande), 231 modier, 246 RIP, 114 routage statique, 90 routes externes, 257 transfert dun protocole un autre, 255 MHSRP, 313 mises jour de routage, 108 dclenches, 112 discrimination, 131 ltrage, 228 conditionnel, 244 par liste daccs, 242 inhiber, 128, 130 interdire, 228 mettre au rebut, 239 modle DoD, 277 Internet, 5, 9 OSI, 9 modes routeurs, 368 modulation par impulsion code (MIC), 47
modules dapplication, 12 MOSPF (extension multicast dOSPF), 333 MTU (Maximum Transfer Unit), 10, 15 multicast, 22, 52, 327, 328 adresses rserves (RFC 1700), 327 arbre de recouvrement, 329 conguration, 333 dense, 330 DVMRP, 333 pars, 331 IGMP, 332 mode dense, 332 pars, 332 MOSPF, 333 NBMA, 343 PIM-DM, 332 PIM-SM, 332 programme de diagnostic, 333 protocoles existants, 331 table de routage, 331 multihomed, 13, 132, 240 N NAPT (Network Address Port Translation), 300 NAT (Network Address Translation), 274, 287, 299, 301 adresses lgitimes, 275 champs, 275 dynamique, 275, 291 quilibrage de charge, 274, 304 rseau interne/externe, 275 RFC, 1631 274 statique, 275, 287, 299 table, 291, 299, 303 de routage, 275 terminologie, 275 NBMA (Non-Broadcast Multiple Access Networks), 33, 44, 138, 174, 343 congurer OSPF, 203 intgralement maill, 203 non intgralement maill, 210 neighbor <adresse IP>, 130, 204, 216 netstat, 290, 294, 306, 365 network, 128, 181
Index
379
network <adresse IP du rseau>, 114 network <adresse IP/masque gnrique> area 0, 179 next hop, 33 no auto-summary, 166 no ip domain-lookup, 358, 370 no ip Proxy-arp, 42 no ip route-cache, 101 no ip routing, 59, 61, 69 no ip split-horizon eigrp, 169 no shutdown, 45 non connect, 14 non scuris, 15 notation dcimale pointe, 27 NSSA (Not-So-Stubby Area), 265 NTP (Network Time Protocol, 328 NULL, 246 O offset-list, 136 OSI (Open Systems Interconnection), 5 OSPF mtrique, 257 OSPF (Open Shortest Path First), 172, 295, 327 afcher la base de donnes, 187 aires connes, 188 isoles, 199 annonce de la route par dfaut, 186 conguration avec aire unique, 178 sur rseaux NBMA, 203 cot, 182 distance administrative, 112 extension multicast (MOSPF), 333 ltre en sortie, 228 identit, 191 liaisons virtuelles, 191, 195 mtrique, 374 priorit, 215 spcier laire de routage, 181 typologie des rseaux, 174 version 2, 172 outils de diagnostic, 371
P PAP, 321 partage de charge, 85, 128 cot gal, 99 ingal, 103 par destination, 101 par paquet, 101 passerelle par dfaut, 276 congurer, 98 Windows NT, 365 passive-interface, 128, 133 PAT (Port Address Translation), 300 payload, 17 PCM (Pulse Code Modulation), 47 PDU (Protocol Data Unit), 6 priode active, 316 de sommeil, 316 Perl, 311, 363 PIM-DM (Protocol Independent Multicast Dense Mode), 332 conguration, 334 NBMA non intgralement maill, 347 PIM-SM (Protocol Independent Multicast Sparse Mode), 332, 339, 342 ping, 30, 285, 293, 324, 333, 371 horodater, 363 temps dafchage, 370 plage dadresses, 299, 301 plan dadressage, 274 point point, 33 point de rendez-vous, 331, 332, 339 pointeur de fragment, 19 Policy-Based Routing, 274 conguration, 278 pontage, 51 avec routage par la source (SRB), 56 conguration sur RNIS, 67 et routage en simultan, 69 tat acheminement/bloqu, 73 interface virtuelle, 70 modier la priorit, 76 monogroupe, 59 multigroupe, 61 SRB, 78
transparent, 53 conguration, 58 port 12, 225 23 284 bien connu, 284 tat acheminement, 73 bloqu, 73 port racine, 53 ppp authentication <type dauthentication>, 49 premption, 277 prxe rseau, 27 PRI (Primary Rate Interface), 47 priorit, 18 dattente, 276 modier pour un pont, 76 OSPF, 215 proche en proche, 11 protocoles, 226 denses 330 distance administrative, 373 hello, 276, 332 mots clefs pour redistribute, 231 suite TCP/IP, 14 Proxy ARP, 40 IP sur LAN, 37 prune, 330 R RADIUS, 359 RCP, congurer, 357 rassemblage, 19 rebouclage, 23, 339 receveur, 328 recouvrement, 277 redirection, 32 redistribute, 234, 238, 258 metric-type {1|2}, 258 subnets, 258 redistribute static, 247 redistribution, 220 sens unique, 239 avec ltrage, 242 avec mtrique par dfaut, 238 boucle de routage, 221 congurer, 231 congurer la mtrique, 255 de base, 231 distance administrative, 254 paramtres, 231 phnomne de boucle, 234
380
Index
rejoindre, 331 relais de trames Voir Frame Relay remorque, 8 requte ARP, 96 rseau externe, 275, 304 Frame Relay, 347 fusionner, 274 interne, 275, 304 NBMA (Non-Broadcast Multiple Access Network), 343 priv, 274 rsolution dadresse, 35 RFC (Request for Comments), 5 1042, 58 1075, 328, 333 1112, 328, 332 1119, 328 1584, 333 1631, 274 1700, Internet Assigned Numbers, 23, 327 1812, 84 1879, 186 1918, 274 2236, 332 2281, 276 2328 (LSA de type 7), 257 2328 (OSPF v2), 172, 328 2362, 333 2391, 274, 304 792, 30 950, Internet Standard Subnetting Procedure, 149 RIF (Routing Information Field), 56 RIP (Routing Information Procotol), 109, 316 adresses htes individuelles, 123 annonce des prxes superrseau, 246 changement de mtrique, 136 comparaison avec IGRP, 114 congurer, 115 distance administrative, 112 inhibition des mises jour de routage, 128 mtrique, 220
mises jour monodestinataire, 130 partage de charge cot gal, 135 route par dfaut, 124 sur Frame Relay, 138 version 2, 157, 328 versions 1 et 2 simultanes, 162 RIP (Routing Information Protocol), 114 gestion des versions, 162 mtrique, 374 version 2, 327 RNIS (Rseau numrique intgration de services) conguration de IP, 47 congurer le pontage, 67 RNIS BRI, 316 routage, 15, 34 la demande, 316 applicatif, 283 de secours, 316 et pontage en simultan, 69 instantan, 278, 316 intgration au pontage, 70 multicast, 328 rgles, 278, 287 sans classe, 96 slectif (policy-based routing), 274, 278, 280 tables, 280 unicast, 328 routage dynamique, 107 classe, 113 tat des liens, 171 sans classe, 113, 149 routage statique, 83, 280 conguration, 87 mtriques, 90 route individuelle, congurer, 98 par dfaut, congurer, 124 statique redistribuer, 237, 247 redistribution vers OSPF, 238 super-rseau - redistribuer, 246 route-map, 244, 245, 278 router <protocole de routage>, 114, 115
router eigrp, 166 router igrp <numro de systme autonome>, 141, 143, 238 router ospf <identit de processus>, 179 router rip, 130, 143, 372 routes externes, 250 statiques ottantes, 90 routeur, 13 ABR, 182 ASBR (Autonomous System Boundary Routers), 257 actif, 276, 277, 310, 311 Cisco 7500, 101 client, 316 connecter dos dos, 349 dfaillant, 276 en attente, 276, 277 fonctions daide, 368 HSRP, 276 modes, 368 multi-protocole, 220 supplant, 276 voisin, 108 RPF (Reverse Path Forwarding), 331, 332 RSH, 358 congurer, 357 rsh {<adresse IP distante>|<nom systme distant>} [/user <nom local utilisateur>] <commande routeur>, 359 RSM (Route Switch Module) 101 RSRB (Remote Source Route Bridging), 79 RX count, 60 S sans classe, 25 conguration du routage, 96 SAP (Service Access Point), 6 saut en saut, 11 segment TCP, 10, 284 squence conditionnelle, 244 set default interface, 278 interface, 278 ip default next-hop, 278 ip next hop, 278
Index
381
show, 370 frame-relay, 355 interfaces, 310, 311, 315 ip mroute, 336, 338, 342, 346 ip nat translations, 293 ip ospf interface, 297 ip route, paramtres, 371 route map, 287 snapshot, 319 standby, 309, 314 sites centraux, 316 snapshot client, 316 server, 317 somme de contrle, 21 source based tree, 332 source quench, 32 sous-interface, 44, 210 multipoint, 213 sous-rseaux, 25 SP (Shortest Path), 173 spanning explorers, 58 spanning tree Voir arbre de recouvrement sparse-mode, 331 SPF (Shortest Path First), 177 split horizon, 111 SRB (Source Route Bridging), 56, 78 distant (RSRB Remote Source Route Bridging), 79 standby <numro du groupe> ip <adresse IP>, 307 preempt, 307 priority <priorit>, 307 track <interface>, 308 standby priority, 276 stub, 188
subnetting, 25 summary-address, 166, 263, 270 summary-address <adresse IP> <masque de sous-rseau>, 263 super-rseau, 25 synchronisation, 349 systme autonome, 250, 254 T table de routage, 327 convergence, 110 multicast, 331 vidage, 235, 252, 256 table NAT, 287 effacer, 295 TACACS+, 359 TCP (Transmission Control Protocol), 11, 15 adressage inter-couches, 34 ports, 12 tlcharger, 360 telnet, 11, 284, 372 temporisation de maintien, 111, 235, 237 TFTP, 360 Token Ring, 277, 307, 329 adresse MAC, 52 virtuelles, 277 tolrance aux pannes, 276 topologie, 330 gestion des changements, 330 traceroute, 282, 285, 370, 371 tracert, 282 traduction dadresses rseau Voir NAT (Network Address Translation)
trac multicast, 328, 329 unicast, 331 trailer, 8 trame, 33 HSRP, 277 UDP, 277, 333 triggered updates, 112 TTL (Time To Live), 20, 277 TX count, 60 type de service (TOS), 17 U UDP (User Datagram Protocol), 12, 277 adressage inter-couches, 34 unicast, 22, 328 username <nom utilisateur> password <mot de passe>, 67 utilitaires, 36 distants, 357 V variance, 148 vecteur de distance, 107 clivage dhorizon, 111 temporisation de maintien, 111 VIP (Versatile Interface Processor), 101 VLSM (Variable Length Subnet Mask), 26, 149, 151 voisins, 108 W well-known, 12, 284 wild card, 132 Windows NT, 365
galement disponibles :
www.GiantChair.com