La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

DU-ASRE – UE4 Protocoles de Routage

Présentations similaires


Présentation au sujet: "DU-ASRE – UE4 Protocoles de Routage"— Transcription de la présentation:

1 DU-ASRE – UE4 Protocoles de Routage

2 RIPv2 : protocole de routage classless
RIP Version 2 (RIPv2) is defined in RFC 1723. Classless routing protocol RIPv2 has lost popularity when compared to other routing protocols such as EIGRP, OSPF and IS-IS. RIPv2, it is ideal for explaining the differences between a classful routing protocol (RIPv1) and a classless routing protocol (RIPv2). RIP Version 2 (RIPv2) est défini dans le RFC 1723 Protocole de routage à vecteur de distances, classless Moins populaire que EIGRP, OSPF ou IS-IS sur les réseaux d'entreprise

3 RIPv1 et RIPv2 RIPv2 a des améliorations par rapport à RIPv1 :
Les adresses next-hop sont incluses dans les mises à jour Les mises à jour sont envoyées à des adresses multicast Il est désormais possible d'authentifier les routeurs dans le réseau RIPv2 Les deux versions gardent les mêmes paramètres et limitations suivantes : Utilisation de la technique du horizon partagé avec retour empoisonné Utilisation des temporisateurs hold-down, flush, etc Utilisation de mises à jour déclenchées (triggered updates) Une distance maximale de 15 sauts RIPv2 is actually an enhancement of RIPv1’s features and extensions rather than an entirely new protocol. Next-hop addresses included in the routing updates Use of multicast addresses in sending updates Authentication option available Both versions of RIP share the following features and limitations: Use of hold-down and other timers to help prevent routing loops Use of split horizon and split horizon with poison reverse to also help prevent routing loops Use of triggered updates when there is a change in the topology for faster convergence Maximum hop count of 15 hops, with the hop count of 16 signifying an unreachable network

4 Limitations de RIPv1 /16 /16 In a discontiguous network, a classful major network address, such as /16, is separated by one or more other major networks. /16 is divided by the networks: /30 /30 Classful routing protocols do not include enough routing information to route properly for discontiguous networks. Dans un réseau non-contigü, un réseau "classful" tel que /16 est séparé par un ou plusieurs autres réseaux classful Les protocoles de routage classul n'incluent pas l'information nécessaire afin de router correctement dans un réseau non-contigü

5 Routeurs Frontaliers et l'Agrégation Automatique
RIP est un protocole classful qui agrège automatiquement les réseaux classful lors du passage entre des "frontières" d'adresses

6 Routeurs Frontaliers et l'Agrégation Automatique
R2 a des interfaces sur plusieurs réseaux classful Cela fait de R2 un routeur frontalier (boundary router) dans RIP Serial 0/0/0 et FastEthernet 0/0 de R2 sont à l'intérieur de la zone Serial 0/0/1 est à l'intérieur de la zone Les routeurs frontaliers regroupent les sous-réseaux RIP lors du passage des messages d'update Les updates pour , et seront automatiquement annoncés comme quand envoyés par l'interface Serial 0/0/1 de R2

7 Routes Agrégées R2(config)# ip route null0 /16 /16 R2: static summary route to the /16 network. Redistribution - Inject static route(s) into routing protocol updates. For now, this summary route will cause problems with RIPv1 because: /16 is not a major classful address ( /24) Includes all the /24 versions of /16 R2: une route statique agrégée pour /16 doit être injectée Redistribution - Inject de routes (statiques ou pas) dans le protocole de routage R2(config)# router rip R2(config-router)# redistribute static Cette route agrégée n'est pas supportée par RIPv1 car : /16 est un supernet

8 RIPv1 : absence de CIDR R2(config)# ip route null0 R2(config)# router rip R2(config-router)# redistribute static R2(config-router)# network R2(config-router)# network R2(config-router)# end R2# show ip route R /16 [120/1] via , 00:00:09, Serial0/0/0 [120/1] via , 00:00:11, Serial0/0/1 /30 is subnetted, 2 subnets C is directly connected, Serial0/0/1 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets C is directly connected, FastEthernet0/0 S /16 is directly connected, Null0 We see the static route, let’s see if it is be sent in RIPv1 updates with the other RIPv1 routes…

9 Table de routage de R1 Qu'est-ce qu'on attend ? R1# show ip route
/24 is subnetted, 2 subnets C is directly connected, FastEthernet0/1 C is directly connected, FastEthernet0/0 /30 is subnetted, 2 subnets R [120/1] via , 00:00:16,Serial0/0/0 C is directly connected, Serial0/0/0 R /8 [120/1] via , 00:00:16, Serial0/0/0 Notice that R1 is not receiving this /16 route in its RIP updates from R2 R1 ne reçoit pas la route /16 dans les mises à jour de R2

10 debug ip rip R2# debug ip rip RIP: received v1 update from on Serial0/0/0 in 1 hops RIP: received v1 update from on Serial0/0/1 RIP: sending v1 update to via Serial0/0/0 ( ) RIP: build update entries network metric 1 subnet metric 1 RIP: sending v1 update to via Serial0/0/1 ( ) subnet metric 1 R2 is not including the /16 route in its RIPv1 updates to either R1 or R3. R2 n'inclut pas /16 dans les mises à jour vers R1 ou R3

11 RIPv1 : absence de CIDR R2(config)# ip route null0 R2(config)# router rip R2(config-router)# redistribute static La route statique a un masque /16 Ce masque est plus court que le masque par défaut de la Classe C (/24) RIPv1 et les autres protocoles classful ne supportent pas ces masques car ils dépassent les masques par défaut RIPv1 ignore les supernets et ne les inclut pas dans les mises à jour Note : Si la route statique avait été configurée avec un masque /24 ou plus grand, cette route serait insérée dans les mises à jour The static route has a /16 mask. This is fewer bits than the classful Class C mask of /24. RIPv1 and other classful routing protocols cannot support CIDR routes that are summarized routes with a smaller subnet mask than the classful mask of the route. RIPv1 ignores these supernets in the routing table and does not include them in updates to other routers. This is because the receiving router would only be able to apply the larger /24 classful mask to the update and not the shorter /16 mask. Note: If the static route were configured with a /24 mask or greater, this route would be included in the RIP updates. The receiving routers would apply the classful /24 mask to this update.

12 RIPv1 : Absence de VLSM /24 When RIPv1 on R3 sends its subnets out its exit interface FastEthernet 0/0, it will only include those subnets with the same subnet mask as the exit interface. Comme les masques ne sont pas transmis, RIPv1 ne transmettra que les routes dont le masque est similaire à celui de son interface de sortie

13 RIPv1 et RIPv2 RIPv2 est une extension de RIPv1, pas un nouveau protocole. Les adresses des next-hop incluses dans la table de routage Utilisation de multicast pour l'envoi des updates Possibilité d'authentification Les deux versions de RIP partagent ces caractéristiques et limitations: Utilisation de hold-down timers pour éviter les boucles Utilisation de split horizon et split horizon with poison reverse aussi pour éviter les boucles Utilisation de triggered updates lors des modifications pour accélérer la convergence Maximum hop count de 15 sauts

14 Configuration de RIPv2 Activation et vérification de RIPv2
Agrégation automatique et RIPv2 Désactivation de l'agrégation automatique dans RIPv2 Vérification des updates RIPv2

15 Configuration de RIPv2 La configuration de RIPv2 est similaire à celle de RIPv1, il suffit d'indiquer la commande version 2 Si les commandes de base sont identiques à RIPv1, le résultat avec RIPv2 est différent, car VLSM et les réseaux non-contigus sont possibles désormais

16 Format des paquets RIPv2
RIPv2 est défini dans le RFC Le format des messages RIPv2 inclut les masques dans les updates Le résultat est que le masque n'est plus dépendant de l'interface d'entrée ni du grand réseau classful Un routeur avec RIPv1 est toujours capable d'extraire des informations à partir des paquets RIPv2

17 Activation et Vérification de RIPv2
Par défaut RIPv1 est activé Le routeur n'envoie que des messages RIPv1, même s'il peut traiter des messages RIPv1 et RIPv2 Il suffit d'ignorer les champs RIPv2 RIPv2, par contre, ignore les messages RIPv1 INFO : Les commandes d'interface ip rip send et ip rip receive peuvent être utilisés pour forcer la compatibilité entre les versions R2# show ip protocols <output omitted> Default version control: send version 1, receive any version Interface Send Recv Triggered RIP Key-chain Serial0/0/ Serial0/0/ Automatic network summarization is in effect <output omitted >

18

19 Activation et Vérification de RIPv2
La commande version 2 est utilisée pour activer la Version 2 Cette commande doit être entrée sur toutes les machines du domaine R1(config)# router rip R1(config-router)# version 2 R2(config)# router rip R2(config-router)# version 2 R3(config)# router rip R3(config-router)# version 2

20 Activation et Vérification de RIPv2
R2# show ip protocols Routing Protocol is “rip” Sending updates every 30 seconds, next due in 1 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Redistributing: static, rip Default version control: send version 2, receive version 2 Interface Send Recv Triggered RIP Key-chain Serial0/0/ Serial0/0/ Automatic network summarization is in effect <output omitted for brevity>

21 Restauration de RIP Version 1
Le comportement de RIPv1 peut être rétabli en utilisant ces deux commandes (différentes en ce qui concerne l'envoi et la réception des messages) : version 1 no version Ces commandes doivent être entrées sur toutes les machines du domaine R1(config)# router rip R1(config-router)# version 1 !or R1(config-router)# no version

22

23 Agrégation automatique et RIPv2
On vient d'activer RIPv2 cependant... La commande show ip route montre toujours une route agrégée /16 avec les mêmes deux chemins de coût identique R2# show ip route R /16 [120/1] via , 00:00:28, Serial0/0/0 [120/1] via , 00:00:18, Serial0/0/1 /30 is subnetted, 2 subnets C is directly connected, Serial0/0/1 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets C is directly connected, FastEthernet0/0 S /16 is directly connected, Null0

24 Agrégation automatique et RIPv2
Les routeurs R1 et R3 n'incluent toujours pas les sous-réseaux de La seule différence pour l'instant est que R1 et R3 ont chacun une route vers /16 C'est une route statique (CIDR) configurée en R2 et redistribuée par RIP Quel est le problème ? R1# show ip route /24 is subnetted, 2 subnets C is directly connected, Loopback0 C is directly connected, FastEthernet0/0 /30 is subnetted, 2 subnets R [120/1] via , 00:00:04,Serial0/0/0 C is directly connected, Serial0/0/0 R /8 [120/1] via , 00:00:04, Serial0/0/0 R /16 [120/1] via , 00:00:04, Serial0/0/0

25 Agrégation automatique et RIPv2
Avec le debug, on voit que RIPv2 envoie les réseaux avec leurs masques Cependant, la route envoyée est la route agrégée, /16 pourquoi /24 et /24 ne sont pas envoyés ? R1# debug ip rip RIP: sending v2 update to via Serial0/0/0 ( ) RIP: build update entries /16 via , metric 1, tag 0 <output omitted for brevity> RIP: received v2 update from on Serial0/0/0 /8 via in 1 hops /16 via in 1 hops /30 via in 1 hops

26 Agrégation automatique et RIPv2
Par défaut, RIPv2 fait l'agrégation automatique lors du passage entre deux réseaux classful, exactement comme RIPv1 R1 et R3 agrègent encore leurs sous-réseaux lorsqu'ils envoient les updates vers les interfaces sur les réseaux et R1# show ip protocols Routing Protocol is “rip” <output omitted> Default version control: send version 2, receive version 2 Interface Send Recv Triggered RIP Key-chain FastEthernet0/ FastEthernet0/ Serial0/1/ Automatic network summarization is in effect

27 Désactivation de l'agrégation automatique RIPv2
Pour modifier le comportement de RIPv2, il faut utiliser la commande no auto-summary R2(config)# router rip R2(config-router)# no auto-summary R3(config)# router rip R3(config-router)# no auto-summary R1(config)# router rip R1(config-router)# no auto-summary R1# show ip protocols <output omitted> Automatic network summarization is not in effect

28 Vérification des updates RIPv2
La table de routage de R2 contient maintenant tous les sous-réseaux de /16 La route agrégée avec deux chemins de même coût n'existe plus Chaque sous-réseau et masque ont des entrées spécifiques, ainsi que des interfaces de sortie et passerelles individuelles R2# show ip route /16 is variably subnetted, 6 subnets, 2 masks R /28 [120/1] via , 00:00:09, Serial0/0/1 R /28 [120/1] via , 00:00:09, Serial0/0/1 R /24 [120/1] via , 00:00:03, Serial0/0/0 R /24 [120/1] via , 00:00:03, Serial0/0/0 R /24 [120/1] via , 00:00:09, Serial0/0/1 R /24 [120/1] via , 00:00:09, Serial0/0/1 /30 is subnetted, 2 subnets C is directly connected, Serial0/0/1 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets C is directly connected, FastEthernet0/0 S /16 is directly connected, Null0

29 Vérification des updates RIPv2
Ceci permet la convergence totale des tables de routage R1# show ip route /16 is variably subnetted, 6 subnets, 2 masks R /28 [120/2] via , 00:00:01, Serial0/0/0 R /28 [120/2] via , 00:00:01, Serial0/0/0 C /24 is directly connected, Loopback0 C /24 is directly connected, FastEthernet0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 /30 is subnetted, 2 subnets R [120/1] via , 00:00:02, Serial0/0/0 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets R [120/1] via , 00:00:02, Serial0/0/0 R /16 [120/1] via , 00:00:02, Serial0/0/0

30 Vérification des updates RIPv2
Ceci permet la convergence totale des tables de routage R3# show ip route /16 is variably subnetted, 6 subnets, 2 masks C /28 is directly connected, Loopback2 C /28 is directly connected, Loopback1 R /24 [120/2] via , 00:00:01, Serial0/0/1 R /24 [120/2] via , 00:00:01, Serial0/0/1 C /24 is directly connected, FastEthernet0/0 C /24 is directly connected, Loopback0 /30 is subnetted, 2 subnets C is directly connected, Serial0/0/1 R [120/1] via , 00:00:02, Serial0/0/1 /16 is subnetted, 1 subnets R [120/1] via , 00:00:02, Serial0/0/1 R /16 [120/1] via , 00:00:02, Serial0/0/1

31 Vérification des updates RIPv2
Les messages envoyés/reçus ont des entrées pour chaque sous-réseau, au lieu d'une seule adresse agrégée classful R2# debug ip rip RIP: received v2 update from on Serial0/0/1 /24 via in 1 hops /24 via in 1 hops /28 via in 1 hops /28 via in 1 hops RIP: sending v2 update to via Serial0/0/0 ( ) RIP: build update entries /16 via , metric 1, tag 0 /24 via , metric 2, tag 0 /24 via , metric 2, tag 0 /28 via , metric 2, tag 0 /28 via , metric 2, tag 0 /16 via , metric 1, tag 0 /30 via , metric 1, tag 0

32 Vérification des updates RIPv2
On peut observer aussi que les updates utilisent maintenant l'adresse de multicast RIPv1 envoyait des updates à l'adresse broadcast D'habitude, les updates par multicast : Consomment moins bande passante du réseau Surchargent moins la CPU des dispositifs qui n'ont pas RIP activé R2# debug ip rip RIP: sending v2 update to via Serial0/0/0 ( )

33 VLSM et CIDR RIPv2 et VLSM RIPv2 et CIDR

34 RIPv2 et VLSM Avec RIPv2, R3 peut maintenant envoyer tous les sous-réseax dans les updates vers R4 Ceci est possible car RIPv2 inclut les masques dans les update

35 RIPv2 et VLSM R3# debug ip rip
RIP: sending v2 update to via FastEthernet0/0 ( ) RIP: build update entries /16 via , metric 2, tag 0 /24 via , metric 3, tag 0 /24 via , metric 3, tag 0 /24 via , metric 1, tag 0 /28 via , metric 1, tag 0 /28 via , metric 1, tag 0 /16 via , metric 2, tag 0 /30 via , metric 2, tag 0 /30 via , metric 1, tag 0

36 RIPv2 et CIDR Les Supernets ont des masques plus petits que les masques classful (/16 ici, au lieu de /24) Pour qu'un supernet soit inclus dans les updates, le protocole de routage doit pouvoir transporter ce masque C'est à dire, il faut un protocole de routage classless, comme RIPv2 La commande suivante sert à se débarrasser des paquets dont on n'a pas une route R2(config)# ip route Null0

37 RIPv2 et CIDR Le supernet CIDR est inclus dans l'update envoyé par R2
Ceci est indépendant de l'agrégation automatique dans RIPv2, qui ne nécessite pas d'être désactivée pour inclure les supernets dans les updates R2# debug ip rip RIP: sending v2 update to via Serial0/0/0 ( ) RIP: build update entries /16 via , metric 1, tag 0 /24 via , metric 2, tag 0 /24 via , metric 2, tag 0 /28 via , metric 2, tag 0 /28 via , metric 2, tag 0 /16 via , metric 1, tag 0 /30 via , metric 1, tag 0

38 RIPv2 et CIDR La table de routage de R1 indique qu'il a reçu un supernet de R2 R1 applique le masque qui a été envoyé avec l'update R1# show ip route /16 is variably subnetted, 6 subnets, 2 masks R /28 [120/2] via , 00:00:01, Serial0/0/0 R /28 [120/2] via , 00:00:01, Serial0/0/0 C /24 is directly connected, Loopback0 C /24 is directly connected, FastEthernet0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 /30 is subnetted, 2 subnets R [120/1] via , 00:00:02, Serial0/0/0 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets R [120/1] via , 00:00:02, Serial0/0/0 R /16 [120/1] via , 00:00:02, Serial0/0/0

39 Vérification et Dépannage de RIPv2
Problèmes communs avec RIPv2

40 La commande show ip route
LA commande pour vérifier la convergence du réseau Il faut chercher les routes qui doivent être dans la table ainsi que celles qui ne doivent pas être présentes R1# show ip route /16 is variably subnetted, 6 subnets, 2 masks R /28 [120/2] via , 00:00:01, Serial0/0/0 R /28 [120/2] via , 00:00:01, Serial0/0/0 C /24 is directly connected, Loopback0 C /24 is directly connected, FastEthernet0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 R /24 [120/2] via , 00:00:01, Serial0/0/0 /30 is subnetted, 2 subnets R [120/1] via , 00:00:02, Serial0/0/0 C is directly connected, Serial0/0/0 /16 is subnetted, 1 subnets R [120/1] via , 00:00:02, Serial0/0/0 R /16 [120/1] via , 00:00:02, Serial0/0/0

41 La commande show ip interface brief
Si un réseau n'est pas présent dans la table de routage, peut-être c'est juste son interface qui est down ou mal configurée La commande show ip interface brief vérifie rapidement l'état des interfaces R1# show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/ YES NVRAM up up FastEthernet0/ YES NVRAM up up Serial0/0/ YES NVRAM up up Serial0/0/ unassigned YES NVRAM down down

42 show ip protocols show ip protocols vérifie plusieurs détails tels que l'état de RIP, la version, l'agrégation automatique, et les réseaux inclus avec la commande network R1# show ip protocols Routing Protocol is “rip” Sending updates every 30 seconds, next due in 29 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Redistributing: rip Default version control: send version 2, receive version 2 Interface Send Recv Triggered RIP Key-chain FastEthernet0/ FastEthernet0/ Serial0/0/ Automatic network summarization is not in effect Maximum path: 4 Routing for Networks: Routing Information Sources: Gateway Distance Last Update :00:18 Distance: (default is 120)

43 debug ip rip debug ip rip permet d'examiner le contenu des updates envoyés et reçus Parfois une route est reçue mais n'est pas rajoutée à la table de routage Une raison possible est qu'une route statique est configurée pour le même réseau R2# debug ip rip RIP: received v2 update from on Serial0/0/1 /24 via in 1 hops /24 via in 1 hops /28 via in 1 hops /28 via in 1 hops RIP: sending v2 update to via Serial0/0/0 ( ) RIP: build update entries /16 via , metric 1, tag 0 /24 via , metric 2, tag 0 /24 via , metric 2, tag 0 /28 via , metric 2, tag 0 /28 via , metric 2, tag 0 /16 via , metric 1, tag 0 /30 via , metric 1, tag 0

44 ping Avec ping on teste la connectivité aller-retour entre les réseaux
R2# ping Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to , timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 28/28/28 ms R2# ping Sending 5, 100-byte ICMP Echos to , timeout is 2 seconds:

45 show running-config R1# show running-config ! hostname R1
interface FastEthernet0/0 ip address interface FastEthernet0/1 ip address interface Serial0/0/0 ip address clock rate 64000 router rip version 2 network network no auto-summary <some output omitted for brevity>

46 Problèmes communs avec RIPv2
Version : Même si RIPv1 et RIPv2 peuvent être forcés à devenir compatibles, RIPv1 ne supporte pas les réseaux non-contigus, VLSM, ou supernets CIDR Les entrées network : Une entrée network incorrectement configurée ou manquante est une source fréquente de problèmes La commande network a deux fonctions : Activer le protocole de routage pour que celui-ci envoie et reçoit des updates sur toutes les interfaces dans ce réseau Rajouter le réseau configuré dans les updates envoyés aux voisins Une entrée network incorrecte ou manquante empêcherait les updates d'être envoyés ou reçus par une interface Agrégation automatique : Si on attend des updates contenant les sous-réseaux, il faut s'assurer que l'agrégation automatique est déshabilité avec la commande no auto-summary

47 Authentification Au contraire de RIPv1, RIPv2 permet l'authentification des routeurs L'authentification permet la vérification des émetteurs Sécurité : empêche qu'un intrus injecte des mauvaises routes dans un réseau RIPv2 Ex : l'intrus injecte une route par défaut ; il devient le point de passage des messages et peut capturer leur contenu (mots de passe, carte bancaire, etc). Attention : L'authentification n'est qu'un premier pas vers la sécurité ; dans RIPv2, les données (contenu des tables de routage) n'est pas chiffré Un attaquant peut toujours découvrir le réseau en écoutant les échanges des routeurs RIP

48 Authentification Les étapes pour configurer l'authentification RIPv2
Créer une keychain (porte-clé) Créer une clé (ou plusieurs) dans le keychain Attribuer un mot de passe à la clé Activer l'authentification dans l'interface, en spécifiant le keychain à utiliser Spécifier si l'interface utilisera de l'authentification par texte en clair ou MD5 Optionnellement, configurer la gestion des clés (date d'expiration, etc) Pour que l'authentification soit active, il faut que les deux routeurs activent leurs interfaces avec au moins un mot de passe en commun dans leurs keychains Le mot de passe doit être le même, mais le nom des keychains peut être différent Si plusieurs keys sont disponibles, le système parcours le keychain jusqu'à trouver une clé qui correspond

49 Authentification : configuration
R1(config)#key chain Capuletti R1(config-keychain)#key 1 R1(config-keychain-key)#key-string Romeo_e_Giulietta R1(config)#interface fastethernet 0/0 R1(config-if)#ip rip authentication key-chain Capuletti R1(config-if)#ip rip authentication mode md5 R2(config)#key chain Montecchi R2(config-keychain)#key 1 R2(config-keychain-key)#key-string Romeo_e_Giulietta R2(config)#interface fastethernet 0/0 R2(config-if)#ip rip authentication key-chain Montecchi R2(config-if)#ip rip authentication mode md5 NB. : PacketTracer ne support pas l'authentification, il faut utiliser une machine réelle ou bien GNS3 pour tester cette fonctionnalité


Télécharger ppt "DU-ASRE – UE4 Protocoles de Routage"

Présentations similaires


Annonces Google