Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
des routeurs
Cisco
Configuration IP
des routeurs
Cisco
Innokenty Rudenko
EDITIONS EYROLLES
61, Bld Saint-Germain
75240 Paris cedex 05
www.editions-eyrolles.com
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
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.
Enfin, 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.
Organisation de louvrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 1
Le modle OSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le modle Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
13
Les adresses IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
La conception de ladresse IP et son volution . . . . . . . . . . . . . . . . . . . . .
Le dcoupage en sous-rseaux ou subnetting . . . . . . . . . . . . . . . . . . . . . .
ICMP, protocole des messages de contrle . . . . . . . . . . . . . . . . . . . . . . . .
Les messages de contrle ICMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
14
15
17
22
22
25
30
30
34
36
Outils pratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
33
XII
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
37
42
44
47
CHAPITRE 2
51
Adresses MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
Le pontage transparent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
56
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
58
62
78
CHAPITRE 3
Routage statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
Algorithme de routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
84
Partage de charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
86
87
90
93
96
98
98
99
103
XIII
CHAPITRE 4
107
108
110
Clivage dhorizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Temporisateur de maintien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mises jour dclenches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
111
111
112
Distance administrative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
112
113
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
114
114
149
CHAPITRE 5
171
Protocole OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
172
Aperu du protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Algorithme Dijkstra du plus court chemin . . . . . . . . . . . . . . . . . . . . . . . .
Types de rseau OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Un modle de routage hirarchique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Les LSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
172
173
174
177
177
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
178
178
182
182
186
187
188
191
199
203
XIV
CHAPITRE 6
219
220
221
221
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
222
222
228
La redistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
231
250
257
257
265
CHAPITRE 7
273
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
273
274
274
Le protocol HSRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
276
278
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
278
278
287
307
316
275
CHAPITRE 8
Routage IP multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
327
328
328
XV
329
330
331
331
331
332
332
332
333
Solutions de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
333
Le programme MCASTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
333
Configuration de PIM-DM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
334
Configuration de PIM-SM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
339
342
343
Annexes
ANNEXE A
349
ANNEXE B
351
ANNEXE C
357
ANNEXE D
Horodatage de Ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
363
ANNEXE E
365
XVI
ANNEXE F
367
367
Fonctions du terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
369
370
371
Routage IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
372
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
375
372
Introduction
Configuration 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 difficiles 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 configuration assez pointus que lon ne peut trouver dans la
plupart des autres ouvrages. Dans chaque exemple de configuration, il sera expliqu pourquoi
chaque action doit tre faite et comment celle-ci se justifie 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 certification CCIE, car il prsente
des exemples de configuration 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 configuration .
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 configuration .
Celle-ci propose des tches excuter sur des cas pratiques qui servent dillustration concrte
du sujet expos. Ces tches varient en difficult, 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
1
Le modle de communication
organis en couches
et le protocole Internet
Solutions de configuration prsentes dans ce chapitre
Utiliser IP sur LAN avec ARP et Proxy ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configurer une interface srie avec encapsulation HDLC . . . . . . . . . . . . . . . . . . . .
Configurer IP sur Frame Relay en mapping statique et ARP inverse . . . . . . . . . . . .
Configurer 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 spcifique.
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
Entit AN
PDU
SAP
ProtocoleN
La PDU est adresse lentit BN
Entit BN
PDU
Couche N-1
SAP
ProtocoleN-1
Entit YN-1
On peut voir sur la figure 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 figure 1.2 illustre le cas dun multiplexage.
Figure 1.2
Couche N
Multiplexage.
Entit AN
Entit BN
Entit CN
Couche N-1
Entit XN-1
Le modle OSI
Dans la section prcdente, nous avons fait part dun modle gnrique de communication
organis en couches qui na pas de grande signification 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 fichiers 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 finales 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 spcifi 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
didentifier ce dernier est de marquer les donnes avec son propre en-tte. Ce marquage se fait
par un identificateur que lentit de la couche infrieure range dans len-tte de sa propre
PDU. Cet identificateur qui permet prcisment le dmultiplexage, est souvent appel cl de
dmultiplexage,.
Le modle Internet
Le modle OSI, malgr sa dfinition 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 spcifie 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 fichiers 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 flux 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 figure 1.3.
Figure 1.3
Hte B
Hte A
Message identique
Couche
application
Couche
application
PDU
PDU
Segment identique
Couche transport
Couche transport
PDU
PDU
Routeur
Couche Internet
PDU
Couche
daccs rseau
PDU
PDU
Couche
daccs rseau
Trame
identique
PDU
Rseau physique A
Couche
daccs rseau
Trame
identique
PDU
PDU
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 figure 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 figure 1.3, cest la modification 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 figure 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 modifier 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
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 spcifications 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.
11
12
Figure 1.4
telnetd
TELNET.EXE
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 didentifier 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 identifient les modules qui excutent des fonctions dans le serveur, comme rpondre des requtes ; les seconds identifient 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 qualificatif de connus de tous . Or, il est possible de
lancer plusieurs sessions vers un mme hte. Les ports TCP ne suffisent donc pas identifier
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 didentifier quel module telnetd utiliser partir des seuls ports TCP.
Le seul moyen didentifier 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 identifier 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 identifier 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 difficult identifier le module transport partir du numro de protocole.
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 difficile, 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.
13
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.
Srie de protocoles
TCP/IP.
Couche
application
FTP
Couche
transport
Telnet
TCP
---
NFS
UDP
IP
Internet
Couche
daccs
rseau
SQL sur
TCP
Ethernet
FDDI
Frame
Relay
---
RNIS
Comme le montre la figure 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 figure 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.
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 finale ;
au mieux (best effort) le service au mieux signifie 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 file 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 dfinit 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.
15
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 figure 1.6
Figure 1.6
Rseau N3
MTU = 512 octets
R1
H1
Rseau N1
MTU = 1 500 octets
R2
H2
Rseau N2
MTU = 1 500 octets
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 finale. 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 difficile soit
de rassembler lui-mme les morceaux, soit de laisser ce travail au destinataire. Selon les spcifications 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 modifications 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
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 finale.
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)
Indicateurs
(3 bits)
Identification
(8 bits)
Dure de vie (TTL)
(8 bits)
Protocole
(8 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) spcifie la manire dont le datagramme doit tre
gr. Il comporte plusieurs sous-champs, chacun dfinissant la manire souhaitable de traiter
le datagramme (voir figure 1.8).
17
18
Figure 1.8
Sous-champs de type
de service.
1
Priorit
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 spcifier huit niveaux de
priorit diffrents.
Tableau 1.1. Valeurs de prsance.
Dcimal
Binaire
Description
111
Contrle rseau
110
Contrle inter-rseau
101
CRTIC/ECP
100
Flash Override
011
Flash
010
Immediate
010
Priority
000
Routine (Normal)
Les trois autres champs dnomms D (Delay ou dlai), T (pour Throughput ou dbit) et R
(pour Reliability ou fiabilit) dans la figure 1.8 sont binaires et spcifient le critre dvaluation de cot optimal du chemin par lequel envoyer le datagramme. Comme le montre la figure
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. Enfin, si le bit R est un, le datagramme est envoy par le chemin le plus fiable. 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 fichier volumineux via FTP, ce nest pas le temps de rponse qui vous importe, mais la rapidit de tlchargement des fichiers. 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.
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.
Identification
Le champ identification, 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 identification 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 identification. 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 identification 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 (flags) 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), signifie ne pas fragmenter ; positionn 0,
il indique lautorisation de fragmenter.
le bit 2, aussi appel MF (More Fragments), signifie 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 figure 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 modifis
lors de son droulement, reportons-nous la figure 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.
19
20
Figure 1.9
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 figure 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.
Valeur de protocole
en dcimal
Nom du protocole
11
17
58
88
59
89
Somme de contrle
Le champ somme de contrle (header checksum) contient uniquement la somme de contrle
de len-tte. Toute modification en chemin de la charge utile nest pas dtecte par IP. Il appartient au protocole de la couche suprieure de procder sa propre vrification 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).
21
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 didentifier 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 didentifier 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 justifier 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 spcifique pour chacune de ses interfaces rseau prend autant
didentits.
Les adresses IP servent aussi identifier les rseaux sur lesquels rsident les htes. Ladresse
IP, dune taille fixe 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 simplifier,
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
Classes de rseau IP
24
31
0
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
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 hte
Identit rseau
Identit rseau
Identit hte
Adresse IP multidestinataire
Reserv
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 rflexive 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 rflexivement 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 vrifier 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
23
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 dfinit 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 dfinit 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 dfinit 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 officiel 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 difficult 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 flexibilit 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 suffisant 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,
identifia 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 prdfinie 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
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 dfinie. Ce type de
dcoupage en sous-rseaux est qualifi 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 fin 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 prfixe 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 spcifications concernaient peu les htes euxmmes. Ce sont les routeurs qui ont d implmenter de nouveaux algorithmes de routage sans
classe pour tre conformes ces spcifications. La diffrence entre le routage avec classes et
sans classe est dcrite au chapitre 3.
25
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 configurer 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 figure 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 figure 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
Masque de sous-rseau
contigu (rseau de
classe)
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
11 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 0 0 0 0 00 0 0 0 00 0
Identit rseau
Figure 1.12
Masque de sous-rseau
discontinu (rseau de
classe)
Identit sous-rseau
Identit hte
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 difficult 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 difficult dextraire les identits
de sous-rseaux et dhtes. Par exemple, la plage dadresses IP de la figure 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 figure 1.12, rend presque impossible la tche
de dfinir 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 identifis par une
notation qui ne mentionne que le nombre de bits positionns un. Cest une autre notation des
masques de sous-rseaux. Dans la figure 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 spcifier un masque de sous-rseau la nouvelle notation,
plutt que la notation dcimale pointe sauf indication contraire. Pour simplifier, toute rfrence un
masque de sous-rseau supposera de celui-ci quil est continu, car les masques discontinus ne sont
daucune utilit pratique.
Les termes de prfixe rseau et longueur de prfixe 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
27
28
Masque de sous-rseau
/30
255.255.255.252
/29
255.255.255.248
14
/28
255.255.255.240
30
/27
255.255.255.224
62
/26
255.255.255.192
126
/25
255.255.255.128
254
/24
255.255.255.0
510
/23
255.255.254.0
1022
/22
255.255.252.0
2046
/21
255.255.248.0
Allocation dadresse IP
en utilisant les masques
de sous- rseau
Ethernet
Ethernet
Agence B
Agence A
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 suffit 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).
29
30
Rponse cho
Non utilis
Non utilis
Destination inaccessible
Extinction de source
Redirection
Non utilis
Echo
Publication routeur
10
Selection routeur
11
Temps dpass
12
Problme paramtre
13
Horodatage
14
Rponse horodatage
15
Demande dinformation
16
Rponse dinformation
17
18
19
Rserv (scurit)
20-29
30
Traage route
31
32
33
IP v6 O tes-vous
34
IP v6 Je suis l
35
36
37-255
Rserv
31
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 suffisamment explicite
pour la plupart dentre elles.
Tableau 1.5. Valeur du champ code pour le message derreur ICMP
destination inaccessible.
Code
Description
Rseau inaccessible
Hte inaccessible
Protocole inaccessible
Port inaccessible
10
11
12
Selon la valeur du champ code, le message ICMP destination inaccessible peut aussi bien
tre envoy par un routeur intermdiaire que par le destinataire final. 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.
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.
33
34
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 configuration 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
configuration 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 notifie 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 configuration manuelle de ARP devient ncessaire quand la technologie du rseau ne
permet pas denvoyer une adresse de diffusion (par exemple, le RNIS).
35
36
Le filtrage de paquets
La technologie du filtrage 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 filtrage 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 suffisent 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 configuration
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 configurations relles pour gagner du temps.
Les exemples de cette section nont pas pour vocation de vous enseigner la configuration 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 :
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.
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.
37
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 spcifique, 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 dfinition, 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 figure 1.14.
Les interfaces Ethernet sur le routeur R sont configures comme le montre le listing 1.3.
Listing 1.3. Configuration 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 configuration de TCP/IP dans la bote de dialogue des proprits rseau (Network Properties) doit ressembler celle de la figure 1.15.
Figure 1.14
Stations de travail
configures avec
un masque faux
de sous-rseau : /8.
R
H1
10.1.0.0/24
e0
e1
H2
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 configuration fonctionne parfaitement.
Par exemple, si lon essaie denvoyer un ping de lhte H1 vers H2, on obtient la sortie du
listing 1.4.
Figure 1.15
Configuration
de Proxy ARP implicite
dans Windows NT 4.0.
Figure 1.16
Configuration
de Proxy ARP explicite
dans Windows NT 4.0.
39
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 figure 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 configuration qui utilise le Proxy ARP et celle qui ne lutilise
pas, rside dans le masque de sous-rseau configur dans les htes. Celui-ci doit tre plus
court (le masque tant contigu, on peut le qualifier de plus court ) que le masque rel avec
lequel le routeur est configur.
Appelons ce cas, configuration implicite de Proxy ARP. Il est aussi possible de le mettre en
uvre explicitement, comme on le voit sur la figure 1.16. Il sagit de la mme configuration
de TCP/IP dans la bote de dialogue Network Properties que celle quon a vue la figure 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.
Le Proxy ARP permet de changer ladresse IP du routeur utilis comme passerelle par dfaut
sans reconfigurer 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 configurs
avec le Proxy ARP. En principe, le routeur le moins charg rpond la requte ARP en
premier, facilitant ainsi un partage de charge de trafic 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 justifie, bien que non souhaitable. Prenons le cas illustr sur
la figure 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, configures 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.
10.1.0.10/24
10.1.0.126/24
Interface e0:
Adresse IP primaire : 10.1.0.1/25
Adresse IP secondaire : 10.1.0.129/25
10.1.0.130/24
10.1.0.254/24
41
42
interface Ethernet 0
ip address 10.1.0.129 255.255.255.128 secondary
ip address 10.1.0.1 255.255.255.128
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 trafic 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 superflue.
tant donn ces inconvnients, comment dsactiver le Proxy ARP dans un routeur ? En mode
configuration dinterface LAN, la commande ip Proxy-arp active le Proxy ARP. Celle-ci est
active par dfaut mais nest pas affiche la configuration du routeur (un changement interviendra peut-tre sur ce point dans les versions futures de lIOS de Cisco). Pour dsactiver
cette commande, il suffit dentrer no ip Proxy-arp. Le listing 1.7 montre comment la configuration de linterface a t modifie.
Listing 1.7. Nouvelle configuration de linterface Ethernet 0
du routeur R avec le Proxy ARP dsactive.
interface Ethernet0
ip address 10.1.0.1 255.255.255.0
no ip proxy-arp
Si linterface Ethernet 0 de la figure 1.14 tait configure 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 configurs avec un masque de sous-rseau par dfaut alors quils
devraient avoir leur masque spcifique.
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 Configuration 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 spcification 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 spcifications de HDLC par une version propritaire et la rfrence dans sa documentation par le mme nom.
La configuration dune interface srie avec lencapsulation HDLC est vraiment simple. Une
interface srie est configure 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.
Configurer 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. Configuration dune interface srie avec lencapsulation HDLC
et assignation dune adresse IP.
R(config)#interface serial 1
R(config-if)#ip address 10.1.0.1 255.255.255.0
R(config-if)#no shutdown
43
44
La configuration dune interface srie en Frame Relay sans sous-interfaces seffectue selon les
tapes suivantes :
1. Configurer 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 figure 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 signification est locale. Celle-ci concerne lETTD (le
routeur, dans notre cas) et lETCD (les commutateurs Frame Relay, non reprsents). En
suivant les instructions de configuration des routeurs quon vient de dcrire, on obtient les
listings 1.10 et 1.11.
Listing 1.10. Configuration du routeur R1.
interface Serial0
ip address 10.1.1.1 255.255.255.0
encapsulation frame-relay
Listing 1.11. Configuration du routeur R2.
interface Serial0
ip address 10.1.1.2 255.255.255.0
encapsulation frame-relay
frame-relay lmi-type ansi
Figure 1.18
DLCI = 200
LMI = CISCO
Adresse IP = 10.1.1.1/24
Frame Relay
DLCI = 300
LMI = ANSI
Adresse IP = 10.1.1.2/24
s0
s0
R1
R2
La configuration 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 configuration dune interface srie en Frame Relay avec des sous-interfaces seffectue
selon les tapes suivantes :
1. Configurer 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>.
45
46
3. Dfinir 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 figure 1.19 montre un exemple de rseau Frame Relay qui utilise des sous-interfaces. Les
listings 1.12 1.14 contiennent les configurations des trois routeurs.
Listing 1.12. Configuration 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. Configuration 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. Configuration 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
R1
= 200
, LMI
= CIS
CO
DL
C
I=
30
0,
LM
ANSI
I=
AN
SI
Frame Relay
I=
DLCI = 400, LM
DLCI
R2
R3
47
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 dfinir le trafic
privilgi qui seul peut activer une connexion. Si aucun trafic privilgi nest dfini 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 trafic privilgi ou non peut tre transmis.
Ds que le trafic privilgi cesse, la connexion est coupe aprs une temporisation dont la
dure est configurable. chaque reprise de la transmission du trafic privilgi, cette temporisation est rinitialise. Une autre mesure optionnelle concerne lauthentification 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 dauthentification sont disponibles. Dans notre exemple la fin du
chapitre, cest celui du chap qui est utilis.
Le chapitre 7 donne quelques complments dinformation sur la configuration de RNIS. Pour
lheure, nous nous limiterons lexemple illustr sur la figure 1.20 et les listings correspondants 1.14 et 1.15.
Figure 1.20
Deux routeurs
connects via le rseau
RNIS.
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
Dans les listings de configuration des routeurs R1 et R2, la commande isdn switch-type
<type de commutateur> dfinit 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 configuration 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
dauthentification> et username <nom du routeur distant> password <type de chiffrage>
<mot de passe> dfinissent le type dencapsulation, lauthentification par chap, et enfin, la
vrification de lappel entrant. La commande dialer-list <numro de groupe> protocol < nom
du protocole> permit dfinit le protocole IP comme trafic privilgi. Pour avoir un contrle
plus fin sur ce trafic, il est conseill dassocier cette commande, une liste daccs au lieu du
permit simple. Enfin, la paire de commandes isdn spid <numro de profil du service>
concerne chacun des canaux B de linterface BRI. Certains commutateurs RNIS peuvent ne
pas en avoir besoin.
49
2
Le pontage
avec les routeurs Cisco
Solutions de configuration prsentes dans ce chapitre
Configurer le pontage transparent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
en monogroupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
en multigroupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configurer 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 . . . . . .
Configurer 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 spcifications 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 spcifications 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 signification 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 figure 2.1.
Figure 2.1
Bits particuliers
dans les adresses MAC
dEthernet et
de Token Ring.
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
Adresse
MAC Ethernet
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
configuration du pontage routage par la source (source route bridging) de ce chapitre.
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 spcification 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 trafic sur un LAN pont, les adresses MAC circulant dans
chaque segment sont mmorises par le pont dans une base de donnes de filtrage 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 (flooding) 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
reconfiguration 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
53
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 ; enfin, 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 figure 2.2.
En supposant que B1 soit un candidat pour le pont racine, le calcul de larbre de recouvrement
mne la topologie de la figure 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
Plan physique
dun LAN pont.
B2
B3
B4
Segment 5
Segment 4
H1
Figure 2.3
H4
H3
H2
S1
B1
S2
Segment 1
Segment 2
Segment 3
Topologie darbre
de recouvrement
dun LAN pont.
B2
B3
B4
RP
RP
RP
Segment 5
Segment 4
H1
H2
H3
H4
S1
B1
S2
Segment 1
Segment 2
Segment 3
Topologie darbre
de recouvrement recalcule suite dfaillance
du pont B4.
B2
B3
RP
RP
B4
Segment 5
Segment 4
H1
H2
H3
H4
55
56
Figure 2.5
S1
B1
S2
Segment 1
Segment 2
Segment 3
Topologie darbre
de recouvrement recalcule suite dfaillance
du pont racine B1.
B2
B3
B4
RP
RP
Segment 5
Segment 4
H1
H3
H2
H4
Dsignation de
route (2 octets)
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
Rserv
Dsignation de
route (2 octets)
8
16
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Numro danneau
Numro
de pont
Direction
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 spcifique. Les diffrentes valeurs de ce champ
se trouvent dans le tableau 2.1.
Table 2.1. Signification des bits de diffusion gnrale.
Bits diffusion gnrale
Description
000
100
110
Le champ longueur indique la longueur totale du RIF en octets. Seuls les nombres pairs de 2
30 sont admis. Selon la spcification 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 dfini 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
MTU
000
552
508
001
1064
1020
010
2088
2044
011
4136
4092
100
8232
8188
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 (flooding). 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
57
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 (flooding), ils ne les envoient que par les ports qui ont t configurs
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 spcifications 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 configuration
Configuration 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 fil 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
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 fin 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 trafic 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 configuration du pontage la plus lmentaire ncessite de dsactiver le routage IP. Par
consquent, toutes les configurations sauf celles se rapportant CRB et IRB, ont en commun
la commande no ip routing.
Les tapes suivre pour configurer 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 configuration globale ;
2. Crer un numro de groupe de pontage en mode de configuration globale par la commande
bridge <numro de groupe> protocol <protocole> ; chaque numro de groupe dfinit 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, enfin, 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 configuration 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 naffichera aucun message davertissement pour signaler cet oubli. Quand le trafic 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 configuration.
La figure 2.7 montre un routeur utilis pour le pontage du trafic IP entre deux segments. La
configuration de ce routeur se trouve sur le listing 2.1.
Listing 2.1. Configuration du routeur R1.
no ip routing
bridge 1 protocol ieee
interface Ethernet0
bridge-group 1
59
60
interface Ethernet1
bridge-group 1
Figure 2.7
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)
Indicateurs
(3 bits)
Identification
(8 bits)
Dure de vie (TTL)
(8 bits)
Protocole
(8 bits)
Dplacement de pointeur
de fragment (13 bits)
Adresse Source
(32 bits)
Adresse Destination
(32 bits)
Options
Bourrage
Bien que spars par un routeur, les htes H1 et H2 doivent tre configurs avec la mme
adresse de sous-rseau.
Comme nous lavons voqu dans la section prcdente, les ponts maintiennent une base de
donnes de filtrage dadresses. Un routeur permet dafficher cette base au moyen de la
commande show bridge <numro de groupe>. Si on omet ce dernier paramtre, le routeur
affiche les bases pour tous les groupes qui ont t dfinis. Les rsultats de cette commande sur
le routeur R1 de la figure 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 affichent 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 configures
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.
Un mme routeur
configur avec
un pontage
multigroupe.
H1
H2
Segment 1 e0
Groupe de pontage 1
Groupe de pontage 2
Segment 3 e2
H3
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
R1
e1
Segment 2
e3
Segment 4
H4
61
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 dafficher les
deux bases de donnes de filtrage dadresses montres sur le listing 2.4.
Listing 2.4. Les bases de donnes de filtrage 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
La figure 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
s0
e0
R2
s1
e0
no ip routing
bridge 1 protocol ieee
interface Ethernet0
bridge-group 1
interface Serial0
bridge-group 1
Listing 2.6. Configuration 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 filtrage 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
63
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
Le mot clef broadcast, bien quoptionnel, doit figurer dans la commande pour permettre aux routeurs
dchanger des paquets spciaux appels BPDU (Bridge Protocol Data Units).
La figure 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 configuration des routeurs pour le pontage en utilisant une
sous-interface multipoint.
Pontage de deux
segments Ethernet
par deux routeurs
connects un rseau
Frame Relay.
Rseau
Frame Relay
DLCI 100
DLCI 200
R2
R1
s0
e0
s1
e0
H1
Listing 2.9. Configuration du routeur R1.
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. Configuration 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
H2
65
66
On peut aussi dfinir alternativement une sous-interface point point, auquel cas on utilise les
commandes des listings 2.11 et 2.12.
Listing 2.11. Configuration 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. Configuration 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 filtrage 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
R2#show bridge
Total of 300 station blocks, 296 free
Solution apparente
Configuration de IP
sur Frame Relay,
p. 44.
Action
forward
forward
forward
forward
Interface
Ethernet0
Serial1.1
Serial1.1
Ethernet0
67
68
Figure 2.11
Pontage de segments
Ethernet avec deux
routeurs relis via
un rseau RNIS.
RNIS n 384000
SPID1 3840000001
SPID2 3840000002
Rseau
RNIS
RNIS n 384020
SPID1 3840200001
SPID2 3840200002
R2
R1
BRI0
e0
BRI0
e0
H1
H2
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 filtrage 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
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
bridge crb
bridge 1 protocol ieee
interface Ethernet0
69
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
Le CRB permet
au routeur de fonctionner en routage IP
et en pontage simultanment.
H1
Segment 1
Segment 3
H2
e0
R1
e2
e1
e3
H3
Segment 2
Segment 4
H4
Routage IP
ASTUCE
Quand vous utilisez la commande bridge crb, tous les protocoles, y compris IP, sont en pontage sur les
interfaces qui sont dfinies 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.
Routeur R1 configur
en IRB avec le routage
de trafic IP entre les
interfaces du groupe
de pontage (e0 et e1)
et linterface de
routage IP (e2).
H3
Segment 3
R1
e0
Segment 1
H1
e2
Adresse IP 10.0.1.1/24
e1
BVI1
Adresse IP 10.0.2.1/24
Groupe de pontage 1
Segment 2
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 trafic IP entre
linterface virtuelle de pontage dfinie par la commande interface BVI et linterface de routage IP.
71
72
Les ponts eux-mmes ont certains paramtres qui influent 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
configure par ladministrateur est plus significative 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 figure 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
e0
R1
e1
e2
Rseau 1-3
Rseau 1-2
e1
R2
e1
s0
e0
R3
s1
Segment 2
e0
Segment 3
Les configurations des trois routeurs figurent aux listings 2.21 2.23.
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. Configuration 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. Configuration 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 configurs 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 dfinis.
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.
73
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
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
75
76
Supposons que le routeur R1 soit le plus performant des trois, et quon veuille faire transiter
par lui le maximum de trafic, 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 trafic.
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 (configurs en
ponts) nont pas t modifies. 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
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 configuration interface.
REMARQUE
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, afin dillustrer nos propos. Bien que
la valeur par dfaut dune interface srie soit plus grande que celle dune interface Ethernet, elle peut ne
pas reflter son dbit rel, et par consquent ncessiter un rajustement.
77
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
R1
Connexion en ligne
srie de deux anneaux
Token Ring par deux
routeurs configurs
en RSRB.
R2
s0
to0
s1
Anneau
physique 100
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. Configuration du routeur R2.
no ip routing
source-bridge ring-group 1020
79
80
00000000
00000000
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.
Adresse
source MAC 00 60 5C C4 F4 C5
Charge utile
01100000
00000110
01011100
00111010
11000100
00100011
11110100
00101111
11000101
10100011
En-tte
Adresse source
MAC
00 06 3A 23 2F A3
Charge utile
En-tte
R1
Segment Ethernet
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 configurer 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 trafic 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 suffisante. 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 trafic IP en environnement mixte sont trs rares, on ne
montre quun exemple de configuration 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 figure 2.17.
Figure 2.17
Routeur en pontage
de trafic IP entre un
segment Ethernet et un
anneau Token Ring.
R1
Segment Ethernet
e0
81
82
Le listing 2.33 montre une configuration de routeur reliant un segment Ethernet et un anneau
Token Ring, en pontage transparent de trafic IP.
Le listing 2.34 montre une configuration de routeur reliant un segment Ethernet et un anneau
Token Ring, en pontage traducteur.
Listing 2.33. Configuration 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. Configuration 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 configuration prsentes dans ce chapitre
Utiliser des interfaces connectes en routage de base . . . . . . . . . . . . . . . . . . . . . . .
86
87
90
Configurer une route statique avec une interface au lieu dun routeur de saut suivant
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 trafic entre diffrents
84
segments dun rseau, et si le trafic doit passer par plus dun saut, les dcisions de routage
deviennent difficiles.
Pour faire face ces difficults, 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 prfixe rseau et une longueur de prfixe rseau ), ainsi quune liste de rfrences pour atteindre cette adresse rseau. Cette liste spcifie 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 configuration de routes
statiques et lacquisition de routes dynamiques. Dans le premier cas, cest ladministrateur
rseau qui doit manuellement configurer 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 configurer sur les routeurs
Cisco. Le routage dynamique sera trait exhaustivement dans les deux chapitres suivants.
Avant de voir les tches de configuration 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 enfin consigne dans la norme dadressage rseau sans classe. Les
dtails de cette norme se trouvent dcrits dans la RFC 1812 traitant des spcifications 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 simplifie de lalgorithme de routage sans classe comporte deux tapes :
1. La correspondance lmentaire (basic match), qui consiste ne conserver que les
prfixes 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 prfixes 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.
Routage statique
CHAPITRE 3
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
clarifier par un exemple pratique. Supposons quun routeur contienne les routes pour les
prfixes : 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 prfixes. 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 prfixes 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 prfixes 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 prfixe
rseau associ une liste de rfrences pour atteindre la destination correspondant ce
prfixe. 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 flux des paquets est partag de manire gale entre des
85
86
routes de mme dbit ; dans lautre, le trafic 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 figure 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 prfixe rseau correspondant.
La fonction de partage de charge peut tre dsactive, si elle savre inutile.
Solutions de configuration
Les solutions qui sont proposes dans les sections suivantes supposent que toutes les interfaces des routeurs ont t pralablement bien configures et en mme temps affectes dune
adresse IP adquate.
Les messages Ethernet is up et line protocol is up signifient 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
vrifier 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
Routage statique
CHAPITRE 3
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 configuration 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.
87
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.2
s0:
Adresse IP : 10.0.254.1
Rseau : 10.0.254.0/24
R1
Segment 1 : 10.0.2.0/24
H1
Si le routeur R3 est bien configur, 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 configurations en routage statique qui ne concernent quun routeur sont rares ; gnralement, elles en impliquent deux ou plus. La configuration 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 figure 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 configure. 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 suffit 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
Routage statique
CHAPITRE 3
Figure 3.2
Seul le routeur R1
est configur 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 difficile diagnostiquer. Si nous utilisons par exemple la commande ping sur le routeur R1 pour vrifier laccessibilit de lhte
H2, on y arrive parfaitement. Mais au cas o le ping est utilis sur lhte H2 pour vrifier
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 trafic 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 configur.
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 signifie 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.
89
90
Enfin, un autre point important retenir est la configuration des htes. Le routage statique des
routeurs ne peut fonctionner convenablement sans une configuration adquate sur les htes
qui doivent disposer dune route pointant vers ladresse IP de linterface correspondante du
routeur. Une configuration incomplte de lhte et une mauvaise configuration de routage
statique sur le routeur le plus proche vont souvent de pair. Autrement dit, un administrateur
qui configure 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 prfixes
rseau sont gales. Si elles sont diffrentes, les routes correspondantes sont aussi considres comme
diffrentes. Par exemple, sil existe deux routes statiques avec les prfixes 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 configure 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 flottantes (floating static routes).
Les routes statiques flottantes sont souvent utilises pour procurer une ligne de secours une
connexion principale. La figure 3.3 montre deux routeurs R1 et R2 connects par une paire de
lignes srie dont les configurations se trouvent sur les listings 3.4 et 3.5.
Listing 3.4. Configuration du routeur R1.
interface Serial0
ip address 195.0.0.1 255.255.255.0
Routage statique
CHAPITRE 3
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. Configuration 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
R2
s1
s0
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 figure pas. Voir listings 3.6 et 3.7.
91
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.
R2#show ip route
...
C
195.1.0.0/24
C
195.0.0.0/24
S
200.1.0.0/24
C
200.2.0.0/24
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.
R1#
%LINK-3-UPDOWN: Interface Serial0, changed state to up
Routage statique
CHAPITRE 3
Interface Serial0,
Serial1
Serial0
TokenRing0
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 signifie
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.
93
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 figure 3.4 o deux routeurs R1 et R2 sont interconnects par un
anneau Token Ring (segment 2) ; ils sont configurs 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
configurations ; les listings 3.12 et 3.13, leurs tables de routage.
Figure 3.4
Routeurs configurs
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
Routage statique
CHAPITRE 3
Listing 3.11. Configuration du routeur R2.
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 vrifier laccessibilit de lhte H2. En utilisant la commande debug arp sur le routeur R1, nous pouvons voir safficher 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
95
96
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
Routage statique
CHAPITRE 3
Listing 3.16. Configuration du routeur R2.
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
H2
Routeur R1 configur
uniquement avec
une route de superrseau 150.0.0.0/8
pour le segment 2.
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 configuration 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.
97
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
from
from
from
from
150.1.2.120:
150.1.2.120:
150.1.2.120:
150.1.2.120:
bytes=32
bytes=32
bytes=32
bytes=32
time=40ms
time=30ms
time=30ms
time=30ms
TTL=126
TTL=126
TTL=126
TTL=126
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
Routage statique
CHAPITRE 3
Listing 3.20. Table de routage du routeur R1.
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
Serial1
Serial0
TokenRing0
2 subnets, 2 masks
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 fins 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 trafic sortant, le routeur nayant aucun
contrle sur le trafic entrant.
Pour configurer 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 figure 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 configuration 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. Configuration 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
99
100
Figure 3.6
H2
Segment 2 : 200.2.0.0/24
R2
s1
Ligne 1 : 195.0.0.0/24
s0
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
Routage statique
CHAPITRE 3
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 configuration de plusieurs routes statiques vers la mme destination, comme dans le cas
des routeurs R1 et R2, permet dexcuter le partage de trafic uniquement sur ces derniers. Si
les autres routeurs sont configurs avec une seule route, le trafic 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 configuration 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 trafic 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 figure 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 configures en partage de charge.
Listing 3.25. Excution de la commande debug
sur le routeur R1.
ip-packet
102
ip-packet
Le partage de charge ne sapplique pas uniquement au cas dune paire de lignes srie. On peut
aussi configurer des routes statiques qui pointent sur deux routeurs de saut suivant, diffrents.
Cependant, la complexit de leur configuration 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. figure 3.6) ou celui dun routeur reli symtriquement deux autres comme dans
la figure 3.7. Les routeurs R1 et R4 de cet exemple, peuvent tre configurs facilement en
routes statiques de faon ce que le trafic entre les segments 1 et 2 soit galement rparti entre
les routes transitant par les routeurs R2 et R3.
Routage statique
CHAPITRE 3
Figure 3.7
103
Segment 1
Configuration
quatre routeurs
qui permet le partage
de charge du trafic sur
des lignes symtriques.
e0
R1
s0
s1
s1
s0
R2
R3
s0
s1
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 trafic
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 trafic aux trois
cinquimes sur la premire et aux deux cinquimes sur la deuxime. Bien videmment, cette
manire de rpartir le trafic 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
1/3 et 2/3
1/4 et 3/4
1/5 et 4/5
1/6 et 5/6
2/5 et 3/5
La mthode la plus facile pour implmenter le partage de charge cot ingal dans un routeur,
cest de dfinir des adresses secondaires sur les interfaces locales et de configurer plusieurs
routes statiques pointant sur ladresse primaire et les adresses secondaires des interfaces du
routeur de saut suivant.
Prenons le cas de la figure 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 trafic 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 configuration 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
Ligne 1 : 195.0.0.0/24
Bande passante : 768Kbit/s
R2
s1
s0
s0
R1
Ligne 2 : 195.1.0.0/24
Bande passante : 512Kbit/s
s1
Segment 1
200.1.0.0/24
H1
Routage statique
CHAPITRE 3
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
IP:
IP:
IP:
IP:
IP:
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
(Serial0),
(Serial0),
(Serial0),
(Serial1),
(Serial1),
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
(TokenRing0),
(TokenRing0),
(TokenRing0),
(TokenRing0),
(TokenRing0),
...
...
...
...
...
106
IP:
IP:
IP:
IP:
IP:
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
s=200.2.0.120
(Serial0),
(Serial0),
(Serial0),
(Serial1),
(Serial1),
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
d=200.1.0.15
(TokenRing0),
(TokenRing0),
(TokenRing0),
(TokenRing0),
(TokenRing0),
...
...
...
...
...
4
Routage dynamique :
protocoles vecteur de distance
Solutions de configuration prsentes dans ce chapitre
Configurer 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 . . . . . . . . . . . . . . . . . . . . . . . . . .
Configurer 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 . . . . . . . . . . . . . . . .
163
166
166
166
167
Les protocoles de routage dynamique ont t spcifiquement 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 prfixe rseau quil annonce. Le routeur en rception insre une route
dans sa table, selon le critre de la meilleure mtrique associe ce prfixe, 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 dfinies 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 spcifique ce protocole.
Quand un routeur reoit une mise jour pour un prfixe 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 prfixe. 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 prfixes dont il a une connaissance immdiate, cest--dire ceux des rseaux auxquels il est
directement connect. Au fur et mesure quil reoit les prfixes annoncs par ses voisins, il
en recalcule les mtriques pour les diffuser son tour. Peu peu, tous les routeurs de tous les
segments finiront par apprendre tous les prfixes rseau dans leur totalit.
REMARQUE
Il faut noter que les routeurs qui diffusent les prfixes rseau par le protocole vecteur de distance, nont
aucune ide des rseaux intermdiaires quil faut traverser pour atteindre ces prfixes. Lalgorithme
vecteur de distance est parfois qualifi, 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 prfixe 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 prfixes 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