ad4
Libellés
- ACL (1)
- CDP (1)
- cisco (10)
- eigrp (4)
- Fondamentaux (6)
- Frame-relay (1)
- IPsec (1)
- ipv6 (2)
- Linux (1)
- Loopback (1)
- NAT (1)
- OSI (2)
- ospf (3)
- Password-Recovery (1)
- Routage (1)
- Routage-InterVlan (2)
- Routage-statique (1)
- switch (2)
- TCP/IP (2)
- vlan (1)
- VPN (1)
ad7
Translate - traduction
jeudi 26 mars 2015
mercredi 25 mars 2015
Résumé du modèle OSI
Dès le début de l'apprentissage du modèle OSI, il est très utile d'avoir
une vision globale de l'ensemble des concepts qui s'intègrent dans
chaque couche.
Le modèle OSI peut tenir en un tableau d'une page. En voici un exemple ...
|
No TCP/IP |
Nom TCP/IP |
No OSI |
Nom |
Résumé |
Mots clés |
PDU |
Protocoles,etc. |
Equipements et termes associés |
|
4 |
Application |
7 |
Application |
processus réseau vers les applications |
Processus réseau aux applications (services de fichiers,
d'impression, de messagerie, de base de données et d'application, par
exemple). Détermine la disponibilité des ressources entre deux noeuds.
(FTP et Telnet, par exemple). |
Données |
DNS, TFTP, Rlogin, Telnet,FTP (File Transfert
Protocol),TFTP (Trivial File Transfer Protocol) SMTP (Simple Mail
Transfer Protocol), SNMP (Simple Network Management Protocol), HTTP
(HyperText Transfer Protocol), BOOTP (Bootstrap Protocol), DHCP (Dynamic
Host Configuration Protocol) |
Données, logiciels, passerelles |
|
4 |
Application |
6 |
Présentation |
représentation des données |
Représentation des données, codage (EBCDIC, ASCII),
services de transfert de syntaxe, services de conversion, services de
chiffrement, services de cryptage et services de compression. |
Données |
ASCII, EBCDIC, MIDI, MPEG, PICT, TIFF, JPEG |
Codage des données, logiciels, cryptage, compression, logiciels de redirection |
|
4 |
Application |
5 |
Session |
communication interhôte |
Communications interhôtes. Etablit, gère et ferme les connexions entre les applications. |
Données |
Le système NFS (Network File System), Le langage
d'interrogation structuré (SQL), L'appel de procédure distant (RPC), Le
système X-Window, Le protocole ASP (AppleTalk Session Protocol),Le
protocole de contrôle de session DNA (SCP) |
Données, logiciels, client-serveur |
|
3 |
Transport |
4 |
Transport |
connexions de bout en bout |
Connexions de bout en bout. Segmentation et réassemblage
des données dans l'ordre approprié. Etablissement et fermeture de "
circuits virtuels " (orientés connexion). Peut assurer la livraison des
segments avec la correction d'erreurs, la reprise sur |
Segments |
TCP ou UDP |
Routeur, numéros de port, contrôle de flux, fenêtrage, orienté connexion, non orienté connexion |
|
2 |
Interréseau |
3 |
Réseau |
Radresse et meilleur chemin |
Adresses réseau/hôte et sélection du meilleur trajet sur
un interréseau (routage). Encapsule les informations de la couche
supérieure sous forme de "paquets". |
Paquets, datagrammes |
IP, IPX, ICMP, ARP, RARP, Ping, Traceroute |
Routeur, Brouter, commutateur de couche 3, paquet,
adressage IP de datagrammes, sous-réseaux, détermination du chemin,
protocoles routés (IP, IPX) et protocoles de routage (RIP, IGRP) |
|
1 |
Réseau |
2 |
Liaison de données |
accès au média |
Accès au média. Ajoute un en-tête de trame aux
informations de la couche supérieure. Cet en-tête contient l'adresse
matérielle de l'unité de destination ou de l'unité suivante sur le
chemin. La couche liaison de données se divise en deux sous-couches : 1)
La sous-couche LLC (Logical Link Control) et 2) la sous-couche MAC
(Media Access Control). |
Trames |
IEEE 802.2, 802.3, 802.5, PPP, HDLC |
Ethernet, carte réseau (contrôle de lien logique et
adresse MAC), pont, commutateur, trame, protocoles de liaison WAN (HDLC,
etc.) |
|
1 |
Réseau |
1 |
Physique |
transmission binaire |
Signaux et codage de transmission binaire. Connexions
électrique (fil de cuivre), par source de lumière (fibre) et physique,
et médias (câblage) entre les unités réseau. |
Bits |
IEEE 802.3, 802.5 |
Ethernet, carte réseau (connecteurs physiques - BNC, AUI, RJ-45, etc.), médias (câble coaxial, câble à paires torsadées non blindées, fibre optique), répéteur, concentrateur, ETCD et ETTD, bits, codage |
EIGRP ( Enhanced Interior Gateway Routing Protocol ) – Les bases
EIGRP ( Enhanced Interior Gateway Routing Protocol ) – Les bases
EIGRP (Enhanced Interior Gateway Routing Protocol) est un protocole de routage développé par Cisco. Cet article reprend les bases de son fonctionnement et de sa configuration.Introduction
EIGRP est un protocole de routage de type « distance vector » (vecteur de distance) avancé (ou hybride selon les points de vue). Bien que son fonctionnement global ressemble très fort à un protocole de type « distance vector » il dispose d’une série de caractéristiques que l’on retrouve par exemple dans OSPF qui est un « link state protocol » (protocole d’état des lien) comme l’établissement de relations d’adjacence.Caractéristiques
- Supporte le VLSM (Variable Length Subnet Mask), c’est donc un protocole de routage « classless ».
- Fonctionne sur base de l’algorithme DUAL pour une sélection efficace des routes tout en évitant les boucles.
- Relations d’adjacence avec les routeurs voisins.
- Transmissions des messages en multicast (224.0.0.10) et unicast
- Supporte plusieurs protocoles de la couche réseau: IPv4, IPv6, AppleTalk, IPX, …
- Load-balancing et notamment sur routes ayant des métriques différentes.
- « Summarization » à n’importe quel endroit du réseau.
- « Auto-summarization », par défaut, entre réseaux majeurs (entre deux réseaux classfull).
- Echange des messages entre routeurs assuré par RTP (Reliable Transfer Protocol).
- Métrique tenant compte de la bande passante et du délai des interfaces. D’autres paramètres peuvent être configurés en plus ( fiabilité et charge de l’interface).
- Distance administrative pour les routes internes: 90 (valeur par défaut)
- Distance administrative pour les routes externes: 170 (valeur par défaut)
Fonctionnement
Tout d’abord, EIGRP fonctionne sur base d’un numéro de système autonome ( « Autonomous System Number » ou « ASN »). C’est-à-dire qu’il pourra uniquement communiquer avec les routers où EIGRP est configuré pour le même ASN.Ensuite, une fois qu’on l’a activé sur une interface, que ce soit de manière dynamique ou statique, EIGRP tente de découvrir des voisins potentiels pour celà il y envoi des message « HELLO ».
Lorsque deux routeurs reçoivent des messages HELLO l’un de l’autre, ils vérifient alors les conditions d’adjacence afin de décider si oui ou non ils deviendront des voisins EIGRP (neighbors).
Pour que deux routeurs deviennent voisins EIGRP il doivent remplir les conditions suivantes:
- Fonctionner dans le même AS (Autonomous System), donc être configuré avec le même ASN.
- Les deux routeurs doivent pouvoir s’envoyer et recevoir des packets IP.
- Les interfaces doivent être configurées avec une adresse IP dans le même subnet.
- L’interface concernée ne doit pas être configurée comme passive.
- Les valeurs K (valeurs qui définissent le calcul de la métrique) doivent correspondre.
- L’authentification EIGRP (si configurée) doit être passée avec succès.
Lorsqu’une relation de voisins vient de s’établir, chaque routeur commence par envoyer la totalité de ses routes connues pour lesquelles il a une interface active ET configurée dans EIGRP. Par la suite, seules les modifications seront envoyées.
Afin de garantir une certain stabilité, les routeurs s’échangent en permanence des messages HELLO. Ces messages HELLO sont envoyés à intervalles réguliers et ont une durée de vie. Si un des deux routeurs n’a pas reçu de nouveau HELLO avant que la durée de vie du précédent soit écoulée, le routeur voisin est considéré comme défaillant, l’adjacence est rompue et les routes reçues par ce voisin sont retirées de la table de routage.
Chaque routeur garde en mémoire toutes les informations sur les routes reçues de ses voisins et il les stocke dans sa table de topologie. EIGRP utilise ensuite l’algorithme DUAL pour sélectionner la meilleure route vers chaque sous-réseau, calcule la métrique à y associer et place le résultat dans sa table de routage.
La métrique
Par défaut, EIGRP calcule la métrique d’un subnet en tenant compte de la bande passante et du délai des interfaces. D’autres éléments peuvent être configurés pour entrer dans le calcul: la fiabilité de l’interface et la charge de l’interface.La métrique (avec les paramètre par défaut) se calcule comme suit:
Métrique = ( ( 10.000.000 / PPBP ) + S[délais] ) x 256PPBP: Plus petite bande passante vers le subnet en kbits/s
S[délais]: Somme des délais des interfaces vers le subnet exprimée en 10µs (dizaine de µs)
« Feasible Distance » et « Reported Distance »
La « Feasible Distance » (FD) est la métrique pour un subnet du point de vue du routeur lui-même, utilisée pour choisir la meilleure route vers ce subnet.La « Reported Distance » (RD) est la métrique pour un subnet du point de vue du routeur voisin. (La métrique annoncée par le routeur voisin).
Lorsque deux routeurs s’échangent leur topologie, ils envoient des messages de type « Update » contenant une série d’information ( subnet concerné, délai, bande passante, charge de l’interface, fiabilité de l’interface, MTU et nombre de sauts).
Le routeur qui reçoit l’information l’intègre dans sa table de topologie et ensuite calcule la RD du subnet avec ces informations et la FD pour ce subnet. Voici un exemple:
R1 est connecté au subnet 192.168.0.0 / 24 via son interface FastEthernet0/0
R1 et R2 sont connectés via leurs inerfaces Serial 0/0 respectives. (172.16.0.0 / 30)
Le schéma ci-dessous reprend l’update envoyé par R1 à R2 concernant son subnet 192.168.0.0

« Successor » et « Feasible Successor «
Une des particularité d’EIGRP réside dans le fait qu’il garde dans sa table de topologie toutes les informations reçues de ses voisins, y compris les routes qui n’ont pas été intégrée dans la table de routage. C’est là qu’on rencontre les termes « Successor » et « Feasible Successor ».Quand plusieurs routes possibles existent, le « Successor » est la route qui a la plus petite métrique vers le subnet … donc qui a la plus petite « Feasible Distance ». Le routeur qui annonce cette route sera alors le « next-hop », le prochain saut vers ce subnet. C’est cette route qui sera placée dans la table de routage.
Dans certaines conditions, d’autres routes peuvent être considérés comme valides sans pour autant être les meilleures. Ce sont les « Feasible Successors ». Ces routes ne sont, dans une configuration par défaut, pasp lacée dans la table de routage. Toutefois, si le « Successor » actuel devait tomber, EIGRP irait alors directement chercher une alternative dans sa table de topologie parmi les « Feasible Successors ».
Pour qu’une route soit considérée comme « Feasible Successor » il faut que la RD de cette route soit strictement inférieur à la FD de la meilleure route. Exemple: (les valeurs FD et RD sont ici simplifiées et non réalistes afin de rendre la compréhension plus aisée).
Un routeur a, dans sa topolgie, trois routes vers le subnet 192.168.0.0 / 24:
Route n°1 : via 10.0.0.1, RD=1000, FD=2000
Route n°2 : via 10.0.1.1, RD=1500, FD=2750
Route n°3 : via 10.0.2.1, RD=2500, FD=3000
la Route n°1 sera le « Successor », puisque c’est la plus petite FD.
la Route n°2 sera un « Feasible Successor » car RD(route2) < FD(route1)
la Route n°3 ne sera pas un « Feasible Successor », RD(coute3) > FD(route1)
Que se passe-t-il lors d’un accident sur le réseau ?
Il arrive bien entendu qu’une routeur perde une liaison pour une raison x ou y. Que ce soit à cause d’une interface défaillante, d’un voisin qui ne répond plus, … EIGRP va tenter de trouver une solution…- EIGRP analyse sa topologie. Si un ou plusieurs « Feasible Successor » existent, il remplace la route par celle parmi les FS ayant la plus petite FD.
- Si EIGRP n’a pas de FS dans sa topologie, il entre dans un processus de requêtes. Il envoi des requêtes à ses voisins à la recherche d’une nouvelle route vers le subnet perdu. Ces voisins, s’ils n’ont pas de solution immédiate à proposer envoient à leur tour des requêtes à leurs propre voisins … etc.
Configuration de base
Passons maintenant à la configuration de base d’EIGRP, nous allons donc:- Configurer EIGRP pour fonctionner dans un ASN. ( router eigrp <asn> )
- Activer EIGRP de manière dynamique sur les différentes interfaces du routeur ( network <subnet> [masque inverse] )
Sur R1:
R1>enable R1#configure terminal R1(config)#router eigrp 10 R1(config-router)#network 192.168.0.0 R1(config-router)#network 172.16.0.0 0.0.0.3 R1(config-router)#exit R1(config)#exit R1#Sur R2:
R2>enable R2#configure terminal R2(config)#router eigrp 10 R2(config-router)#network 172.16.0.0 R2(config-router)#exit R2(config)#exit R2#Quelques explications…
On a donc ici bien activé EIGRP sur les deux routeurs pour l’ASN 10.
Sur R1 on a bien activé l’interface Fa0/0 et S0/0 via les commandes network.
Sur R2, EIGRP est activé pour l’interface S0/0.
Notez la différence d’utilisation de la commande « network ». Lorsque l’on ne spécifie que le subnet (sans masque inverse) EIGRP sera activé pour toutes les interfaces correspondantes. Donc dans le cas de « network 172.16.0.0″ toutes les interfaces dont l’adresse IP commencerait par 172.16…. seraient englobées.
Par contre si on spécifie un masque inverse (wildcard mask) EIGRP compare chaque interface en appliquant le masque (à peu de chose près comme dans le cas des access-list). On peut aisément calculer les adresses IP qui correspondent à unsubnet/masque inverse par une simple addition. Par exemple dans le cas de « network 172.16.0.0 0.0.0.3″:
172. 16. 0. 0 + 0. 0. 0. 3 ================= 172. 16. 0. 3Donc toues les adresses comprises entre 172.16.0.0 et 172.16.0.3 seront prises en compte.
L’utilisation du masque inverse est optionnelle. Toutefois cela permet de bien cibler les interfaces que l’on désire activer sans risquer d’englober l’une ou l’autre pour lesquelles EIGRP ne devrait pas être active.
Vérification de fonctionnement d’EIGRP
La première chose à vérifier, c’est si EIGRP est bien fonctionnel avec la commande « show ip protocols »
R1#sh ip protocols Routing Protocol is "eigrp 10" Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Default networks flagged in outgoing updates Default networks accepted from incoming updates EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0 EIGRP maximum hopcount 100 EIGRP maximum metric variance 1 Redistributing: eigrp 10 EIGRP NSF-aware route hold timer is 240s Automatic network summarization is in effect Automatic address summarization: 192.168.0.0/24 for Serial0/0 172.16.0.0/16 for FastEthernet0/0 Summarizing with metric 2169856 Maximum path: 4 Routing for Networks: 172.16.0.0/30 192.168.0.0 Routing Information Sources: Gateway Distance Last Update (this router) 90 00:30:36 172.16.0.2 90 00:29:08 Distance: internal 90 external 170 R1#
- On a donc la confirmation ici qu’EIGRP est bien actif et qu’il est configuré pour l’ASN 10.
- La deuxième ligne mise en évidence, ce sont les valeurs K qui définissent les paramètres de calcul de la métrique EIGRP. Toujours utile de les retrouver encas de problème d’établissement des adjacences (voir plus haut le paragraphe concernant les condition pour former une adjacence).
- La troisième ligne en bleu indique que l’auto-summary est actif (par défaut). Ce qui fait qu’EIGRP annonce un summary de chaque réseau classefull (les quelques lignes juste en dessous) puisque R1 est à la frontière de deux réseaux majeurs.
- La quatrième partie colorée indique pour quels subnets on a activé EIGRP via les commandes « network <subnet> [masque inverse] »
- Enfin la dernière ligne donne les distances administratives utilisées. Ici ce sont les valeurs par défaut d’EIGRP.
R1#sh ip eigrp interfaces IP-EIGRP interfaces for process 10 Xmit Queue Mean Pacing Time Multicast Pending Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes Fa0/0 0 0/0 0 0/10 0 0 Se0/0 1 0/0 83 0/15 0 0 R1#Troisième étape, vérifier les adjacences via la commande « show ip eigrp neighbors »
R1#sh ip eigrp neighbors IP-EIGRP neighbors for process 10 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 0 172.16.0.2 Se0/0 11 00:25:51 83 498 0 3 R1#On a donc bien ici une adjacence avec R2 (172.16.0.2). On retrouve aussi l’interface via laquelle l’adjacence est formée.
La colonne « Hold » indique la durée de vie du dernier message Hello reçu. Si cette valeur tombe à zéro, la’adjacence est considérée comme défaillante et est annulée.
Enfin, analyser la table de routage et la table de topologie: « show ip route » et « show ip eigrp topology »
R2#sh ip route Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route Gateway of last resort is not set 172.16.0.0/30 is subnetted, 1 subnets C 172.16.0.0 is directly connected, Serial0/0 D 192.168.0.0/24 [90/2195456] via 172.16.0.1, 00:27:10, Serial0/0 R2#R2 a bien appris une route pour le subnet 192.168.0.0/24. Le next-hop est 172.16.0.1. L’interface de sortie est Serial0/0. La valeur [90/2195456] indique la distance administrative (90) et la métrique pour la route (2195456) qui est aussi la FD de la route.
R2#sh ip eigrp topology
IP-EIGRP Topology Table for AS(10)/ID(172.16.0.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status
P 192.168.0.0/24, 1 successors, FD is 2195456
via 172.16.0.1 (2195456/281600), Serial0/0
P 172.16.0.0/30, 1 successors, FD is 2169856
via Connected, Serial0/0
R2#
On retrouve dans la table de topologie les routes présentes dans la
table de routage. A noter que si il y avait des alternatives à ces
routes, pour autant qu’elles soient considérées comme feasible
successors, elle seraient apparues dans cette table-ci.Les valeurs 2195456/281600 correspondent à la RD ( 281600) et la FD (2195456) de la route. Ce qui signifie donc que R1 a annoncé à R2 une route vers 192.168.0.0/24 et qu’il a une métrique de 281600 pour cette route.
Il suffit de vérifier sur R1…
R1#sh ip eigrp topology IP-EIGRP Topology Table for AS(10)/ID(192.168.0.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 192.168.0.0/24, 1 successors, FD is 281600 via Connected, FastEthernet0/0 P 172.16.0.0/16, 1 successors, FD is 2169856 via Summary (2169856/0), Null0 P 172.16.0.0/30, 1 successors, FD is 2169856 via Connected, Serial0/0 R1#En effet … R1 a bien une métrique de 281600 pour atteindre le subnet 192.168.0.0/24. Une chose intéressante à noter ici… la présence d’un summary (en vert). Vu que l’auto-summary est active par défaut et que R1 est à la frontière de deux réseaux majeurs (192.168.0.0 et 172.16.0.0) EIGRP crée un summary et l’annonce vers ses voisins.
On retrouve d’ailleurs ce summary dans la table de routage de R1…
R1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.0.0/30 is directly connected, Serial0/0
D 172.16.0.0/16 is a summary, 00:27:45, Null0
C 192.168.0.0/24 is directly connected, FastEthernet0/0
R1#
Voilà qui conclut ce premier article concernant EIGRP.
Routage Inter-(V)LAN : Du physique au virtuel
Routage Inter-(V)LAN : Du physique au virtuel
Routage entre LANs ou routage Inter-VLAN … même combat! Pour qu’un routeur puisse router un paquet d’un domaine de diffusion à un autre il doit posséder une interface configurée dans chacun d’eux …Je vais tenter par le biais de cet article de clarifier cette notion de « routage Inter-Vlan ». Pour cela, nous allons prendre comme base un routeur connecté à deux domaines de diffusions, le Subnet A (192.168.0.0/24) et le Subnet B (192.168.1.0/24).

Ceci est ce qu’on peut appeler la topologie logique. Elle reprend les subnets (domaines de diffusions) et l’équipement qui les interconnecte, le routeur.
A partir de là il y a plusieurs façon de réaliser cette topologie…
La méthode « physique »

Sans aucun doute la méthode la plus évidente. Il suffit de connecter chacune des interface du routeur à un switch par exemple et de lui configurer l’adresse adéquate.
Router(config)#interface fastEthernet 0/0 Router(config-if)#ip address 192.168.0.1 255.255.255.0 Router(config-if)#no shutdown Router(config)#interface fastEthernet 0/1 Router(config-if)#ip address 192.168.1.1 255.255.255.0 Router(config-if)#no shutdownSans aucune suprise, on constate que deux routes connectées apparaissent dans la table de routage…
Router#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 Router#Avantages:
- Simplicité de mise en place
- Ne fait appel à aucune technologie avancée et donc peut être implémenté sur quasi n’importe quel équipement (une routeur Linux et deux switch non manageables par exemple).
- S’adapte difficilement à un grand nombre de subnets (il faut une interface physique par subnet)
- Coût élevé en matériel, chaque subnet requiert également un switch supplémentaire.
Intégration des VLANs

Les VLANs (Virtual LANs) permettent entre autre de diviser un même switch en plusieurs domaine de diffusions. Dans le cas présent, on recrée donc le principe précédent, à savoir deux domaines de diffusions distincts. Dans chacun de ses VLANs on place une partie des interfaces du switch, ensuite on connecte chaque interface du routeur à une interface placée dans le VLAN souhaité.
Configuration du switch:
Switch(config)#vlan 10 Switch(config-vlan)#name SUBNET-A Switch(config-vlan)#exit Switch(config)#vlan 20 Switch(config-vlan)#name SUBNET-B Switch(config-vlan)#exit Switch(config)#interface range fastEthernet 0/1 - 12 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 10 Switch(config-if-range)#exit Switch(config)#interface range fastEthernet 0/13 - 24 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 20 Switch(config-if-range)#exit Switch(config)#exit Switch#
Configuration du routeur:
Router(config)#interface fastEthernet 0/0 Router(config-if)#ip address 192.168.0.1 255.255.255.0 Router(config-if)#no shutdown Router(config)#interface fastEthernet 0/1 Router(config-if)#ip address 192.168.1.1 255.255.255.0 Router(config-if)#no shutdownRésultat:
Côté routeur rien ne change… (la configuration est identique)
Router#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set C 192.168.0.0/24 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 Router#Côté switch, les interfaces sont placées dans deux VLANs différents. Une machine connectée dans le VLAN10 ne pourra donc pas communiquer directement avec une machine du VLAN20. Elle doit passer par le routeur… comme dans la version 100% physique.
Avantages:
- Simplicité de mise en place côté routeur.
- Il n’est plus nécessaire d’avoir un switch par subnet.
- S’adapte difficilement à un grand nombre de subnets (il faut une interface physique par subnet) côté routeur mais également côté switch!
- Il faut utiliser un switch manageable qui supporte les VLANs
Méthode « Router on-a-stick »

L’idée est la suivante: on veut limiter le
nombre de connexions physiques et les partager entre plusieurs domaines
de diffusions. Cependant côté switch, il est impossible de placer une
interface dans deux VLANs … C’est là qu’intervient le concept de Trunk!
Un trunk est une liaison sur laquelle les
trames Ethernet sont taguées (ou encapsulée suivant le protocole
utilisé). Ce tag (ou entête supplémentaire) contient entre autre
l’identifiant du VLAN d’où provient la trame de sorte que l’équipement
qui la reçoit puisse la réattribuer au bon domaine de diffusion.
Un switch peut être configuré pour établir
un trunk sur une interface … mais pas un routeur… De ce côté là, il faut
respecter le principe de base … une interface par domaine de diffusion.
Dés lors on fait appel à la notion de sub-interface. Pour faire simple,
c’est un peu comme si on découpait l’interface physique en plusieurs
morceaux. Chacun de ses morceau est ensuite configuré pour accepter les
trames taguées avec un identifiant de VLAN défini.
Configuration du switch:
Switch(config)#vlan 10 Switch(config-vlan)#name SUBNET-A Switch(config-vlan)#exit Switch(config)#vlan 20 Switch(config-vlan)#name SUBNET-B Switch(config-vlan)#exit Switch(config)#interface range fastEthernet 0/2 - 12 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 10 Switch(config-if-range)#exit Switch(config)#interface range fastEthernet 0/13 - 24 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 20 Switch(config-if-range)#exit Switch(config)#int fastEthernet 0/1 Switch(config-if)#switchport mode trunk Switch(config-if)#^Z Switch#
Configuration du routeur:
Router(config)#interface fastEthernet 0/0 Router(config-if)#no shutdown Router(config-if)#exit Router(config)#interface fastEthernet 0/0.10 Router(config-subif)#encapsulation dot1Q 10 Router(config-subif)#ip address 192.168.0.1 255.255.255.0 Router(config-subif)#exit Router(config)#interface fastEthernet 0/0.20 Router(config-subif)#encapsulation dot1Q 20 Router(config-subif)#ip address 192.168.1.1 255.255.255.0 Router(config-subif)#^Z Router#
Résultat:
Sans la moindre surprise, le routeur dispose d’une interface dans chacun des domaines de diffusion. Toutefois, cette fois-ci il s’agit d’interface virtuelles, des subdivisions de l’interface physiques.Remarque: le nom de la sub-interface (Fa0/0.10 par exemple) n’a aucun lien avec l’identifiant du VLAN associé, c’est la commande « encapsulation dot1q xxx » qui associe le VLAN xxx à la sub-interface en question.
Router#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set C 192.168.0.0/24 is directly connected, FastEthernet0/0.10 C 192.168.1.0/24 is directly connected, FastEthernet0/0.20 Router#Avantages:
- Une seule liaison physiques pour plusieurs domaines de diffusion
- Facilement extensible, il suffit de créer une nouvelle sub-interface sur le routeur et un nouveau vlan sur le switch.
- Tous les domaines de diffusions passent par la même liaison physique qui devient le goulot d’étranglement
- Il faut faire appel à un switch manageable qui supporte les trunks dot1q et à un routeur capable de prendre en charge le protocole dot1q également.
Le switch multi-layer

Certainement la méthode la plus utilisée pour le routage inter-vlan. Pour simplifier à la limite de la caricature, c’est un peu comme si on installait un routeur dans un switch et qu’on les reliait en interne. Bien sur c’est plus complexe que cela, mais l’idée générale est facilement compréhensible.
Un switch multi-layer est un switch (sérieux?) mais capable de faire bien plus que son job de niveau 2. Par configuration on peut y activer le routage IP ce qui le transforme en routeur potentiel.
Pour la configuration, le principe d’origine reste valable, il nous faut une interface par domaine de diffusion… mais ici, vu que tout est interne au MLS (multi layer switch), on ne fait plus appel aux interfaces physiques du tout. On utilise les SVIs (Switched Virtual Interface) qui sont ni plus ni moins que les « interface VLAN ». Les portes d’accès du switch pour émettre des trames dans les différents domaines de diffusion.
Il n’y pas grande chose à faire si ce n’est:
- Créer les VLANs
- Placer les interfaces du switch dans les VLANs
- Activer le routage IP
- Créer et configurer les SVIs
Switch(config)#vlan 10 Switch(config-vlan)#name SUBNET-A Switch(config-vlan)#exit Switch(config)#vlan 20 Switch(config-vlan)#name SUBNET-B Switch(config-vlan)#exit Switch(config)#interface range fastEthernet 0/1 - 12 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 10 Switch(config-if-range)#exit Switch(config)#interface range fastEthernet 0/13 - 24 Switch(config-if-range)#switchport mode access Switch(config-if-range)#switchport access vlan 20 Switch(config-if-range)#exit Switch(config)#ip routing Switch(config)#interface vlan 10 Switch(config-if)#ip address 192.168.0.1 255.255.255.0 Switch(config-if)#no shutdown Switch(config-if)#exit Switch(config)#interface vlan 20 Switch(config-if)#ip address 192.168.1.1 255.255.255.0 Switch(config-if)#no shutdown Switch(config-if)#^Z Switch#Au final le MLS possède une interface dans chacun des domaines de diffusion et sa table e routage reprend les deux routes connectées.
Switch#show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is not set C 192.168.0.0/24 is directly connected, Vlan10 C 192.168.1.0/24 is directly connected, Vlan20 Switch#Remarque: Pour qu’une SVI soit UP/UP (et donc par conséquent que la route connectée associée apparaisse dans la table de routage, il faut qu’il y ait au moins une interface active dans le VLAN concerné (ou un Trunk qui laisse passer ce VLAN).
Avantages:
- Le routage inter-vlan n’est plus dépendant de la bande passante d’une liaison physique.
- Facilement extensible, il suffit de créer un nouveau VLAN et une nouvelle SVI associée.
- Les MLS sont des équipements bien plus cher qu’un switch ou un routeur standard (voire même les deux rassemblés).
Conclusion:
Quelque soit la méthode utilisée, l’équipement en charge du routage DOIT avoir une interface connectée dans chacun des domaines de diffusion, qu’elle soit physique ou virtuelle!Configuration simple de VLANS sur un switch
Configuration simple de VLANS sur un switch
Un VLAN est en quelque sorte un sous-réseau virtuel, généralement associé à une adresse sous-réseau propre. Cela implique donc que les vlans ne peuvent pas communiquer entre eux à moins que l’on utilise un routeur…Que faut-il configurer ?
- Avoir une liaison fonctionelle entre le switch et le routeur.
- Définir la liason entre le switch et le routeur comme un « trunk »
- Créer les vlans sur le switch
- Attribuer les interfaces désirées dans les différents vlans (uniquement utiles pour l’administration du switch).
- Pour chaque VLAN sur le switch, créer une sous interface (sur celle utilisée par le trunk).
Exemple concret
On dispose d’un Switch (24 ports FastEthernet, 2 ports Gigabits) et d’un routeur ( 1 port Gigabit, 1 port série). On souhaite diviser le switch en 4 VLANS diposant chacun de 6 Interfaces Fa.
- VLAN1: 192.168.1.0 / 255.255.255.0 Fa0/1-Fa0/6
- VLAN2: 192.168.2.0 / 255.255.255.0 Fa0/7-Fa0/12
- VLAN3: 192.168.3.0 / 255.255.255.0 Fa0/13-Fa0/18
- VLAN4: 192.168.4.0 / 255.255.255.0 Fa0/19-Fa0/24
On entre en mode de configuration:
Switch>en
Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
On configure l’ip du VLAN1 (qui existe par défaut) en 192.168.1.254 / 255.255.255.0Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.254 255.255.255.0
Switch(config-if)#no shut
%LINK-5-CHANGED: Interface Vlan1, changed state to up
Switch(config-if)#
Switch(config-if)#exit
On crée et on configure les VLAN2, 3 et 4 avec respectivement les
adresses 192.168.2.254, 192.168.3.254 et 192.168.4.254 et un masque
255.255.255.0.Switch(config)#vlan 2 Switch(config-vlan)#name VLAN2 Switch(config-vlan)#exit Switch(config)#interface vlan 2 %LINK-5-CHANGED: Interface Vlan2, changed state to up Switch(config-if)#ip address 192.168.2.254 255.255.255.0 Switch(config-if)#no shut Switch(config-if)#exit Switch(config)#vlan 3 Switch(config-vlan)#name VLAN3 Switch(config-vlan)#exit Switch(config)#interface vlan 3 %LINK-5-CHANGED: Interface Vlan3, changed state to up Switch(config-if)#ip address 192.168.3.254 255.255.255.0 Switch(config-if)#no shut Switch(config-if)#exit Switch(config)#vlan 4 Switch(config-vlan)#name VLAN4 Switch(config-vlan)#exit Switch(config)#interface vlan 4 %LINK-5-CHANGED: Interface Vlan4, changed state to up Switch(config-if)#ip address 192.168.4.254 255.255.255.0 Switch(config-if)#no shut Switch(config-if)#exitOn place maintenant les interfaces dans les vlans.
Switch(config)#interface range fastEthernet 0/7-12
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 2
Switch(config-if-range)#no shut
Switch(config-if-range)#exit
Switch(config)#interface range fastEthernet 0/13-18
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 3
Switch(config-if-range)#no shut
Switch(config-if-range)#exit
Switch(config)#interface range fastEthernet 0/19-24
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 4
Switch(config-if-range)#no shut
Switch(config-if-range)#exit
On vérifie que tout est bien en place. (on utilise ici « do show
vlan » puisque la commande « show vlan » n’est pas disponible en mode
config).Switch(config)#do show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Gig1/1, Gig1/2
2 VLAN2 active Fa0/7, Fa0/8, Fa0/9, Fa0/10
Fa0/11, Fa0/12
3 VLAN3 active Fa0/13, Fa0/14, Fa0/15, Fa0/16
Fa0/17, Fa0/18
4 VLAN4 active Fa0/19, Fa0/20, Fa0/21, Fa0/22
Fa0/23, Fa0/24
On passe maintenant à la configuration de la liaison avec le routeur
qui doit être un trunk. On utilise ici l’interface Gigabit 1/1.Switch(config-if)#switchport mode trunk
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/1, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/1, changed state to up
Switch(config-if)#exit
On va s’occuper maintenant de la configuration du routeur, sur lequel
on créera des sous-interfaces pour chaque VLAN supplémentaires créés.
Et de les configurer (IP, …). A noter qu’il faut configurer
l’encapsulation de la sous interface pour pouvoir lui attribuer une
adresse IP.Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int gigabitEthernet 0/0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shut
Ceci correspond à l’adresse principale de l’interface, et également au VLAN1.Créons maintenant la sous-interface pour le VLAN2.
Router(config)#int gigabitEthernet 0/0.2
%LINK-5-CHANGED: Interface GigabitEthernet0/0.2, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0.2, changed state to up
Router(config-subif)#encapsulation dot1Q 2
Router(config-subif)#ip address 192.168.2.1 255.255.255.0
Router(config-subif)#no shut
Router(config-subif)#exit
On fait de même pour les interfaces relatives aux VLAN 3 et 4.Router(config)#interface gigabitEthernet 0/0.3
%LINK-5-CHANGED: Interface GigabitEthernet0/0.3, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0.3, changed state to up
Router(config-subif)#encapsulation dot1Q 3
Router(config-subif)#ip address 192.168.3.1 255.255.255.0
Router(config-subif)#no shut
Router(config-subif)#exit
Router(config)#interface gigabitEthernet 0/0.4
%LINK-5-CHANGED: Interface GigabitEthernet0/0.4, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0.4, changed state to up
Router(config-subif)#encapsulation dot1Q 4
Router(config-subif)#ip address 192.168.4.1 255.255.255.0
Router(config-subif)#no shut
Router(config-subif)#exit
Dans la commande « encapsulation dot1Q 4″, le chiffre en fin de ligne correspond au n° du VLANSi tout c’est bien déroulé, la configuration des vlans est maintenant terminée. Il ne suffit plus que de connecter les machines sur les différents VLANS et les configurer avec des adresses IP du même range que le VLAN où elles se trouvent.
Remarque: Lorsque les VLANS doivent être propagés sur plusieurs switch, la configuration est un peu plus complexe, puisqu’il faudra alors configurer l’utilisation du protocol VTP… mais ce sera pour un autre article
mardi 24 mars 2015
Le protocole IPv4 : les bases
Le protocole IPv4 : les bases
Introduction
IPv4 est un protocole « routable », de la couche réseau du modèle OSI (couche 3), entendez par là qu’il défini principalement un système d’adressage permettant de router des paquets.Ce protocole est décrit dans la RFC791 publiée en 1981. Son objectif initial était de permettre l’interconnexion de réseaux.
Le principe sur lequel il est bâtit est relativement simple: attribuer aux machines une (ou plusieurs) adresses(s) d’une taille donnée afin que celle-ci puissent s’échanger des paquets de données. Ces adresses permettent aux machines composant le réseau de choisir un itinéraire pour acheminer les données depuis une source vers une destination.
Analogie
Si je veux transmettre une lettre à un voisin qui habite la même rue que moi, je ne me préoccupe pas de l’adresse de la rue. Tout ce que j’ai besoin de savoir c’est ce qui distingue sa maison de la mienne. Une caractéristique physique de sa maison.Par contre, si je souhaite envoyer une lettre à un correspondant à l’étranger, je vais généralement faire appel à un service qui acheminera ma lettre à son destinataire. Pour que ce service puisse faire son travail, je dois lui indiquer à qui j’envoie la lettre, mais surtout, où cette personne habite. Hors pour préciser cette information, je dois disposer d’un système d’adressage. Le service postal utilisera l’adresse du destinataire pour définir l’itinéraire que prendra la lettre.
En y réfléchissant de plus près, même moi j’ai besoin de cet adressage. Sans lui je ne pourrais raisonnablement pas définir si le destinataire est dans la même rue que moi. Donc au final, quand j’envoie la lettre, le compare l’adresse du destinataire à la mienne, si nous sommes dans la même rue, je lui apporte moi même (c’est plus simple non ?), si ce n’est pas le cas, je fais appel à un service qui l’acheminera vers sa destination.
Le système postal que nous connaissons fonctionne (Si si, il fonctionne… ou pas…
Du point de vue réseau, le concept est similaire…
L’en-tête IPv4
Lorsque des données doivent être véhiculées sur un réseau, les machines les encapsulent dans un paquet muni d’un en-tête qui comporte toutes les informations nécessaires au routage des données. Voici l’en-tête:
Chacune des case représente un champs qui apporte une information précise pour le traitement du paquet IPv4:
- Version: indique la version du protocole (toujours égal à 4 pour IPv4)
- IHL: Longueur de l’en-tête IPv4 (nécessaire en raison de la présence possible d’options)
- ToS: Marquage différentiel pour la qualité de service (permet de marquer un paquet comme étant plus important).
- TPL: Longueur totale du paquet IPv4.
- Fragment ID: Identification d’un fragment de paquet, permet de le reconstituer plus tard. Utilisé lorsqu’un paquet doit être fragmenté parce que sa taille dépasse la capacité du réseau sur lequel il doit être émis.
- FLAG: Marqueurs permettant d’indiquer si un paquet peut/doit ou ne peut pas être fragmenté.
- Fragment Offset: Indique la position du fragment au sein du paquet original.
- TTL: Time To Live, représente le nombre d’intermédiaire (routeurs) par lesquels le paquet peut encore passer avant d’être détruit. Il s’agit d’un mécanisme permettant d’éviter qu’un paquet ne tourne indéfiniment dans un réseau suite à un problème de routage. On peut comparer cela à une date de péremption.
- Protocol: Contient une valeur numérique qui identifie la nature du contenu du paquet.
- Checksum: SOmme de contrôle calculée sur l’en-tête du paquet IPv4. Permet de contrôler l’intégrité de l’entête et donc de le détruire s’il avait été altéré.
- Source IP: Adresse IPv4 de la machine qui a émis le paquet.
- Destination IP: Adresse IPv4 de la machine à laquelle est destinée le paquet.
- Options: Permet d’ajouter différentes informations optionnelles et rarement utilisées.
- Data: Les données véhiculées dans le paquet.
Types de communications IPv4
Il existe en IPv4, trois manières de communiquer…- Le paquet unicast: Un paquet émis par une machine, destiné à une et une seule autre machine. Une communication de un-à-un.
- Le paquet broadcast (de diffusion): Un paquet émis par une machine et destiné à toutes les machines d’un réseau. Une communication de un-à-tous.
- Le paquet multicast (de multi diffusion): Un paquet émis par une machine et destiné à un groupe de machine. Une communication de un-à-plusieurs.
Chaque type de communication utilise un adressage différent bien que défini dans une structure unique.
L’adressage IPv4
Pierre angulaire du protocole IPv4, l’adresse IPv4 est donc une valeur numérique codée sur 32 bits (soit 2^32 adresses IPv4 au total) que l’on attribue principalement aux interfaces des machines afin que celles-ci puissent s’échanger des données. Malheureusement, toutes ces adresses ne sont pas utilisables pour adresser une machine, nous y reviendrons.Ces adresses sont représentées généralement sous la forme de 4 octets exprimés en valeur décimale, séparés par un point. (Ex: 192.168.0.1, 80.200.14.58, etc.)
Un octet étant composé de 8 bits, sa valeur ne peut pas excéder 255. Toutes les adresses IPv4 sont donc comprises entre 0.0.0.0 et 255.255.255.255.
Pour comprendre la structure d’une adresse IPv4, le plus simple est de réfléchir à l’adresse d’une série de maisons dans une rue:
- Toutes les maisons d’une même rue auront une partie de leur adresse commune (le nom de la rue, la commune, la ville, le pays, etc.)
- Chaque maison aura dans son adresse un élément qui lui est propre: le numéro de la maison dans la rue.
L’identifiant réseau est formé par un certain nombre de bits (à gauche, les bits de poids fort), et l’identifiant hôte (à droite, les bits de poids faible) représenté par ce qui reste de bits.
Normalement une question doit vous venir à l’esprit… « Combien de bits côté réseau ? et donc combien côté hôte ? »… Et c’est ici que les Romains s’empoignèrent!
Comment définir la limite entre l’identifiant réseau et l’identifiant hôte ?
Les classes
La première idée était de faire simple, enfin, humainement simple en tout cas: on définit 5 classes. A chaque classe correspond une définition en terme de limite d’identifiant réseau/hôte ou autre etc.- Classe A: Toutes les adresses dont le premier bit vaut 0 (donc de 0.0.0.0 à 127.255.255.255). Ces adresses ont 8 bits pour la partie réseau, et donc 24 pour la partie hôte.
- Classe B: Toutes les adresses dont les deux premiers valent 10 (donc de 128.0.0.0 à 191.255.255.255). Ces adresses ont 16 bits pour la partie réseau, et donc 16 pour la partie hôte.
- Classe C: Toutes les adresses dont les trois premiers valent 110 (donc de 192.0.0.0 à 223.255.255.255). Ces adresses ont 24 bits pour la partie réseau, et donc 8 pour la partie hôte.
- Classe D: Toutes les adresses dont les quattre premiers valent 1110 (donc de 224.0.0.0 à 239.255.255.255). Ce sont les adresses multicast. Elles représentent une groupe de machine et n’entrent donc pas dans la logique d’adresse d’une machine unique.
- Classe E: Toutes les adresses restantes (donc de 240.0.0.0 à 255.255.255.254). Adresses réservées pour utilisation futures… ou pas… donc non utilisables pour adresser une machine.
Faites une pause de quelques secondes, et demandez-vous combien de sociétés que vous connaissez disposent de plus de 16 millions de machines ? Et environ 65000 machines ? …
Il faut remettre tout ça dans son contexte. IPv4 est apparu alors qu’Internet n’existait pas encore. A l’époque, ce qui est maintenant le réseau des réseaux n’était qu’une interconnexion d’établissements militaires, universitaires etc, nommé ARPAnet. Ce n’est qu’une bonne dizaine d’années plus tard que les particuliers ont commencé tout doucement à disposer d’un accès à Internet.
L’idée de base avait du sens: une société forme un réseau de machines, donc, on attribuait une plage d’adresses plus ou moins grande en fonction de la taille de la société. Donc si je suis un géant de l’informatique de l’époque, je reçois une classe A, par exemple toutes les adresses de 23.0.0.0 à 23.255.255.255. Dés lors lorsqu’un paquet doit être transmis à une machine, en fonctionne de l’adresse de destination je peux déterminer la classe de celle-ci, et donc savoir combien de bits représentent le réseau. Dans l’exemple précédent, cela signifie que toutes les adresses dont le premier octet vaut 23 sont dans le même réseau.
C’est donc un principe qui suivait la logique de l’époque mais qui manquait cruellement de vision. Quand l’accès à Internet a commencé à se démocratiser, d’abord pour les entreprises, et ensuite pour les particuliers, un problème est apparu: il était impossible de fournir suffisamment de plages d’adresses et ce parce que les classes ont découpé l’espace global d’adresses IPv4 en des ensembles trop grossiers qui ne correspondent plus aux besoins.
Autre problème, mais celui-là inhérent à IPv4, le nombre d’adresse IPv4 disponible au total est insuffisant. 2^32 adresses au total, soit un peu moins de 4,3 milliards d’adresses, pour à l’heure actuelle quelques 7 milliards d’êtres humains. Si en plus on attribue les adresses par classe, gaspillant ainsi une quantité énorme d’adresses, on comprend vite que ça ne peut mener qu’à une impasse.
Si j’attribue toutes les adresses de 23.0.0.0 à 23.255.255.255 à une société mais que celle-ci n’en utilise que 10%, cela représente approximativement 15 millions d’adresses « perdues » puisqu’on ne peut pas donner une adresse de cette classe à une machine qui n’est pas dans ce réseau. Cela reviendrait à mettre le même nom de rue à des maison qui ne sont pas physiquement dans la même rue.
Le CIDR (Classless Inter-Domain Routing)
La seule chose à faire était donc d’abandonner les classes de définir des réseaux dont la taille peut être ajustée en fonction des besoins réels afin d’éviter tant que faire se peut le gaspillage de ces adresses.Si on abandonne les classes, on abandonne donc aussi la définition de leur taille en terme d’identifiant réseau et identifiant hôte. Il faut donc un nouvel élément qui servira de délimitation: le masque de réseau.
Masque de (sous-)réseau
Le masque est une valeur numérique qui comme l’adresse IPv4 est codé sur 32bits et représenté en décimal sous forme de 4 octets séparés par des points. (Ex: 255.255.255.0, 255.255.224.0). Son rôle est d’indiquer quels sont les bits de l’adresse qui identifient la partie réseau et donc aussi ceux qui identifient la partie hôte.Les bits de poids fort (à gauche) représentent la partie réseau et ont leur valeur à 1. Les bits de poids faible (à droite) ont leur valeur à 0 et identifient la partie hôte de l’adresse.
C’est donc le masque du réseau qui détermine sa taille, et donc le nombre d’adresses qui font partie de ce réseau. Plus le masque est grand (plus il y a de bits à 1) plus le réseau est petit (il y a moins de bits côté hôte). Plus le masque est petit, plus le réseau est grand.
Prenons par exemple le masque suivant:
255.255.255.192En binaire cela donne:
11111111.11111111.11111111.11000000Il y a 26 bits à 1, donc 26 bits qui identifient la partie réseau. Il en reste donc 32-26=6 bits pour les adresses hôtes, soit 2^6=64.
Par contre avec le masque…
255.255.224.0Qui s’écrit en binaire…
11111111.11111111.11100000.00000000Il y a 19 bits côté réseau et donc 32-19=13 bits côtés hôte. Ce qui donne 2^13=8192 adresses dans un même réseau.
Une autre notation du masque est également souvent utilisée, en suivant le format suivant: adresse_ip / bits_réseaux
Exemple: 21.58.63.250/26, cette notation revient à écrire 21.56.63.250 / 255.255.255.192
Au lieu d’écrire l’expression décile du masque, on indique uniquement
Avec le CIDR, une adresse seule n’a plus de sens. Elle doit toujours être accompagnée d’un masque. Sans quoi il est impossible de déterminer à quel réseau elle appartient.
L’adresse de (sous-)réseau
A chaque réseau correspond une adresse qui l’identifie. Il s’agit de la première adresse du réseau lui même. Celle pour laquelle tous les bits hôtes vallent 0.Une opération simple (un ET logique) entre une adresse quelconque et le masque qui lui est joint permet de retrouver l’adresse du réseau auquel elle appartient.
Prenons par exemple l’exemple d’une machine qui aurait la configuration suivante:
- Adresse IPv4: 158.98.45.33
- Masque réseau: 255.255.255.0
10011110.01100010.00101101.00100001 (158.98.45.33) ET 11111111.11111111.11111111.00000000 (255.255.255.0) ======================================= 10011110.01100010.00101101.00000000 (158.98.45.0)L’adresse du réseau dans lequel se trouve la machine est donc 158.98.45.0. Notez que si on tenait compte des classes. Les adresses 158… commencent par 10… en binaire et donc auraient fait partie de la classe B 158.98.0.0.
Autre exemple:
- Adresse IPv4: 89.27.250.45
- Masque réseau: 255.255.255.248
01011001.00011011.11111010.00101101 (89.27.250.45) ET 11111111.11111111.11111111.11111000 (255.255.255.248) ======================================= 01011001.00011011.11111010.00101000 (89.27.250.40)L’adresse réseau de cette machine est donc 89.27.250.40
Il est important de noter que l’adresse du réseau ne peut pas être attribuée à une machine. Une machine est un élément du réseau et non le réseau lui-même.
L’adresse de diffusion (broadcast) du (sous-)réseau
Pour chaque réseau, il existe une adresse dite de diffusion (de broadcast). Cette adresse a pour but d’émettre un paquet et de l’adresser à l’ensemble des machines du réseau en question (Communication de un à tous). Il s’agit de la dernière adresse du réseau. Celle pour laquelle tous les bits hôtes vallent 1.Exemple:
- Adresse: 121.43.98.205
- Masque: 255.255.255.128
01111001.00101011.01100010.11001101 (121.43.98.205) ET 11111111.11111111.11111111.10000000 (255.255.255.128) ======================================== 01111001.00101011.01100010.10000000 (121.43.98.128)L’adresse du réseau est donc 121.43.98.128.
A partir de là il suffit de mettre tous les bits hôtes, c’est à dire les 7 bits à droite à 1:
01111001.00101011.01100010.11111111 (121.43.98.255)L’adresse broadcast de ce réseau est donc 121.43.89.255.
Plage d’adresses utilisables
Puisque l’adresse du réseau est la première adresse dans ce réseau et que l’adresse broadcast est la dernière. Tout ce qui se trouve entre les deux forme la plage d’adresses utilisables.On obtient le nombre d’adresses utilisable dans un réseau par la formule suivante: nb adresses = 2^n-2, où n est le nombre de bits hôtes. On soustrait deux unités pour l’adresse du réseau et l’adresse broadcast.
Exemple récapitulatif
Les données de bases étant les suivantes:- Adresse: 188.56.58.39
- Masque: 255.255.248.0
10111100.00111000.00111010.00100111 (188.56.58.39) ET 11111111.11111111.11111000.00000000 (255.255.248.0) ======================================== 10111100.00111000.00111000.00000000 (188.56.56.0)L’adresse réseau est donc 188.56.56.0
Pour obtenir l’adresse broadcast, il faut remplacer mettre les bits hôtes à 1…
10111100.00111000.00111111.11111111 (188.56.63.255)L’adresse broadcast est donc 188.56.63.255
Les adresses comprises entre 188.56.56.0 et 188.56.63.255 forment donc la plage d’adresses utilisables.
Leur nombre est de 2^11-2 = 2046 adresses.
Routage IPv4
Router un paquet consiste à l’acheminer vers la destination en fonction de sa table de routage. Cette table contient la liste des réseaux vers lesquels elle est apte à acheminer les données ainsi que les informations nécessaires au traitement du paquet.Table de routage
La table de routage est une liste de routes, c’est-à-dire, une liste de réseaux auxquels sont attachés les informations nécessaires au routage du paquet: un next-hop (la prochaine machine à qui le paquet doit être transmis), une interface (celle par laquelle le paquet devra être émis), une métrique (une valeur permettant de comparer deux routes), etc.exemple de table de routage sous Windows 7
IPv4 Table de routage
===========================================================================
Itinéraires actifs :
Destination réseau Masque réseau Adr. passerelle Adr. interface Métrique
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.9 10
127.0.0.0 255.0.0.0 On-link 127.0.0.1 306
127.0.0.1 255.255.255.255 On-link 127.0.0.1 306
127.255.255.255 255.255.255.255 On-link 127.0.0.1 306
192.168.1.0 255.255.255.0 On-link 192.168.1.9 266
192.168.1.9 255.255.255.255 On-link 192.168.1.9 266
192.168.1.255 255.255.255.255 On-link 192.168.1.9 266
224.0.0.0 240.0.0.0 On-link 127.0.0.1 306
224.0.0.0 240.0.0.0 On-link 192.168.1.9 266
255.255.255.255 255.255.255.255 On-link 127.0.0.1 306
255.255.255.255 255.255.255.255 On-link 192.168.1.9 266
===========================================================================
- Destination réseau: L’adresse du réseau de destination.
- Masque réseau: Détermine la taille du réseau en question.
- Adresse passerelle: L4adresse IPv4 de la machine à qui le paquet doit être transmis pour l’acheminer vers le réseau en question.
- Adresse Interface: L’adresse de l’interface par laquelle le paquet devra être émis/routé.
- Métrique: permet de choisir en plusieurs routes qui indiquerait la même destination.
Exemple de table de routage sur un routeur Cisco
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is 10.0.0.1 to network 0.0.0.0 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 10.0.0.0/30 is directly connected, Serial0/0 O 10.0.10.0/24 [110/782] via 10.0.0.1, 00:53:35, Serial0/0 192.168.0.0/30 is subnetted, 1 subnets C 192.168.0.0 is directly connected, FastEthernet0/0 192.168.1.0/24 is variably subnetted, 3 subnets, 2 masks C 192.168.1.0/28 is directly connected, FastEthernet0/0.10 C 192.168.1.16/28 is directly connected, FastEthernet0/0.20 C 192.168.1.32/29 is directly connected, FastEthernet0/0.30 O*E2 0.0.0.0/0 [110/1] via 10.0.0.1, 00:50:51, Serial0/0Lorsqu’on y est pas habitué, cet affichage put perturber. Ceci dit, chaque route est précédée d’un symbole. Dans le cas présent, les routes commençant par un « C » indiquent une route directement connectée. Donc un réseau directement attaché au routeur (dans Windows 7, on le voit avec la mention « On-link »).
Les routes commençant par « O » sont des routes apprises à l’aide d’un protocole de routage, OSPF. Ce sont des routes vers des réseaux qui se trouvent au-delà d’une autre machine.
Pour chacun de ces routes on a donc un format du genre:
ORIGINE Réseau/Masque [AD/Métrique] next-hop InterfaceLe terme « AD » représente la distance administrative. Il s’agit d’une notion que l’on retrouve surtout sur les routeurs Cisco. Cette élément permet lui aussi de différencier des routes. Chaque source d’information aura sa distance administrative. Par exemple une route connectée a une AD=0, une route statique AD=1, une route OSPF AD=110, etc. (valeurs par défaut).
HSRP : Hot Standby Router Protocol
HSRP : Hot Standby Router Protocol
Sur un PC on configure généralement une seule passerelle par défaut… Mais que se passe-t-il si celle-ci est hors service ? … La réponse est simple … plus moyen de communiquer en dehors de son domaine de diffusion.Pour remédier à cela, il existe plusieurs méthodes pour gérer la redondance de passerelle dont les protocoles HSRP, VRRP et GLBP.
Voici un exemple simple de mise en place de redondance de passerelle à l’aide de HSRP. Il est toutefois important de noter qu’il s’agit d’un protocole propriétaire Cisco.
La topologie

Afin d’aller directement à l’essentiel, la configuration de base de la topologie est considérée comme terminée. Pour ma part j’ai simplement activé EIGRP entre R1, R2 et R3.
R3 dispose d’une interface Loopback (1.1.1.1/32) que j’utiliserai pour tester la communication depuis le PC.
Le PC (C1) est configuré avec l’adresse 192.168.0.10/24 avec une passerelle par défaut 192.168.0.254. Notez qu’il ne s’agit pas de l’adresse configurée sur R1 ou R2 … Mais ce sera celle dont le rôle sera assumé soit par R1 soit par R2 en fonction de l’état du réseau.
Principe général
HSRP est un protocole qui fourni une solution de continuité de service principalement pour la redondance de passerelles par défaut.Pour chaque réseau, on associe les interfaces des routeurs à un groupe HSRP (le même n° de groupe pour toutes les interfaces qui doivent assurer le même rôle). A ce groupe on associe une adresse IP virtuelle (dans le cas présent ce sera 192.168.0.254).
La redondance est mise en place par le biais du protocole ARP. Lorsque le PC doit envoyer une trame à sa passerelle, il émet une requête ARP et celle-ci répond en fournissant son adresse MAC.
Avec HSRP, les routeurs vont associer une adresse MAC particulière à l’adresse IP virtuelle sous la forme 00:00:0c:07:ac:XX (où XX est le n° du groupe HSRP).
Dés lors, pour le PC, quoi qu’il arrive, ce sera cette adresse MAC qui identifiera sa passerelle. De leur côté les routeurs dialoguent par multicast afin de négocier et de savoir qui devra se charger de traiter la trame destinée à l’adresse MAC HSRP.
Configuration de R1
R1(config)# interface FastEthernet0/0
R1(config-if)# standby 1 ip 192.168.0.254
R1(config-if)# standby 1 priority 200
R1(config-if)# standby 1 preempt
On a donc configuré ici l’interface Fa0/0 de R1 pour fonctionner dans le groupe HSRP n°1 auquel on a associé l’adresse IP virtuelle 192.168.0.254. En plus on a défini une priorité de 200 (la plus grande priorité sera la passerelle effective) et on active le droit de préemption (si R1 tombe en panne, R2 prend le relai… mais is R1 revient, il reprendra sa place, sans préemption, R2 resterait la passerelle).
Configuration de R2
R2(config)# interface FastEthernet0/0
R2(config-if)# standby 1 ip 192.168.0.254
R2(config-if)# standby 1 priority 100
La configuration de R2 est similaire à celle de R1, étant donné que R2 est configuré avec une priorité plus faible, il n’est pas nécessaire d’activer la préemption.
Vérification
Sur le PC, un test de communication démontre le bon fonctionnement de la configuration…La configuration de C1:
NAME IP/MASK GATEWAY MAC
VPCS1 192.168.0.10/24 192.168.0.254 00:50:79:66:68:00
Test de communication vers 1.1.1.1VPCS[1]> ping 1.1.1.1
1.1.1.1 icmp_seq=1 timeout
1.1.1.1 icmp_seq=2 ttl=254 time=50.000 ms
1.1.1.1 icmp_seq=3 ttl=254 time=50.000 ms
1.1.1.1 icmp_seq=4 ttl=254 time=39.000 ms
1.1.1.1 icmp_seq=5 ttl=254 time=48.000 ms
Il est intéressant d’analyser la table ARP de C1…VPCS[1]> arp
00:00:0c:07:ac:01 192.168.0.254 expires in 114 seconds
On constate donc bien que 192.168.0.254 est la passerelle de C1 et
que l’adresse MAC associée est bien celle d’un groupe HSRP (ici le
groupe 1, indiqué par le dernier octet de l’adresse MAC … 01). Un
traceroute prouvera que R1 est bien le routeur faisant office de
passerelle…VPCS[1]> trace 1.1.1.1
trace to 1.1.1.1, 8 hops max, press Ctrl+C to stop
1 192.168.0.1 20.000 ms 10.000 ms 10.000 ms
2 172.30.0.1 30.000 ms 10.000 ms 10.000 ms
3 1.1.1.1 30.000 ms 10.000 ms 10.000 ms
Vérification de la configuration
Sur R1 et R2 il est possible de vérifier le fonctionnement de HSRP d’une simple commande:R1#show standby
FastEthernet0/0 - Group 1
State is Active
2 state changes, last state change 00:14:40
Virtual IP address is 192.168.0.254
Active virtual MAC address is 0000.0c07.ac01
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 1.064 secs
Preemption enabled
Active router is local
Standby router is 192.168.0.2, priority 100 (expires in 8.320 sec)
Priority 200 (configured 200)
Group name is "hsrp-Fa0/0-1" (default)
R1#
On y voit que « State is Active » qui signifie que R1 est la
passerelle active (et donc R2 est en standby). Le reste des informations
sont explicites.Que se passe-t-il si R1 tombe en panne …
Pour simuler une panne, je mets simplement l’interface Fa0/0 de R1 en shutdown…R1(config-if)# shutdown *Mar 1 00:44:02.331: %HSRP-5-STATECHANGE: FastEthernet0/0 Grp 1 state Active -> Init *Mar 1 00:44:04.343: %LINK-5-CHANGED: Interface FastEthernet0/0, changed state to administratively down *Mar 1 00:44:05.343: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthern et0/0, changed state to downRéaction immédiate de R2 …
R2# *Mar 1 00:44:11.071: %HSRP-5-STATECHANGE: FastEthernet0/0 Grp 1 state Standby -> ActiveR2 est bien devenu la passerelle active, vérifions sur C1…
VPCS[1]> ping 1.1.1.1
1.1.1.1 icmp_seq=1 ttl=254 time=32.000 ms
1.1.1.1 icmp_seq=2 ttl=254 time=41.000 ms
1.1.1.1 icmp_seq=3 ttl=254 time=31.000 ms
1.1.1.1 icmp_seq=4 ttl=254 time=31.000 ms
1.1.1.1 icmp_seq=5 ttl=254 time=40.000 ms
VPCS[1]> arp
00:00:0c:07:ac:01 192.168.0.254 expires in 15 seconds
Rien n’a changé de son côté, normal … puisque R1 et R2 utilisent la
même adresse IP virtuelle associée à la même adresse MAC pour HSRP. Par
contre le paquet ICMP passe bien par R2…VPCS[1]> trace 1.1.1.1
trace to 1.1.1.1, 8 hops max, press Ctrl+C to stop
1 192.168.0.2 21.000 ms 11.000 ms 11.000 ms
2 172.30.0.5 31.000 ms 12.000 ms 12.000 ms
3 1.1.1.1 32.000 ms 12.000 ms 12.000 ms
Voilà de quoi gérer très simplement la redondance de passerelle par défaut (à condition de disposer de matériel Cisco).
IOS: " enable password " vs "enable secret "
IOS: « enable password » vs « enable secret »
Tout d’abord, rappelons que ces eux commandes, à savoir « enable password » et « enable secret », ont toute deux la même fonction: définir le mot de passe pour accéder au mode privilégié du CLI.
R1>enable
Password:
R1#
La question qui en découle est donc la suivante: « Pourquoi deux
commandes pour faire la même chose ? ». La réponse est simple et réside
dans la manière ou l’IOS encode le mot de passe dans la config de
l’équipement.Avec « enable password » le mot de passe défini est encodé en clair dans la config.
R1(config)#enable password cisco
R1#show running-config
Building configuration...
Current configuration : 470 bytes
!
version 12.4
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname R1
!
!
!
enable password cisco
!
!
Tandis qu’avec la commande « enable secret » le mot de passe est stocké sous forme de hashage MD5, ce qui rend cette version beaucoup plus sécurisée…
R1(config)#enable secret cisco
R1#sh running-config
Building configuration...
Current configuration : 517 bytes
!
version 12.4
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname R1
!
!
!
enable secret 5 $1$mERr$hx5rVt7rPNoS4wqbXKX7m0
!
Notez que dans la config le chiffre « 5 » précède la version
« cryptée » du mot de passe. Le but ici est de permettre de copier la
commande telle qu’elle apparaît dans la config sur un autre équipement.
Ainsi l’autre équipement saura que le mot passe donné dans la commande
est en fait une version cryptée et qu’il ne doit pas la repasser par le
hashage MD5.Reste maintenant à savoir pourquoi ces deux commandes existent … He bien rien de plus banal, c’est tout simplement pour assurer une rétro-compatibilité des config. De sorte que si vous copiez la config d’un équipement qui ne supporte pas la version « enable secret » vers un nouvel équipement, ce dernier puisse quand même accepter l’ancienne version.
Inscription à :
Articles (Atom)


