informatique:cisco:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
informatique:cisco:start [2009/08/24 13:06] – pteu | informatique:cisco:start [2018/01/15 11:30] – [Liens] pteu | ||
---|---|---|---|
Line 1: | Line 1: | ||
{{tag> | {{tag> | ||
- | ====== | + | ======Cisco====== |
- | + | ||
- | ~~DIR:: | + | |
{{ http:// | {{ http:// | ||
- | //à valider | + | Cisco est un équipementier de matériels réseaux |
- | telnet 192.168.103.24 8000 / | + | |
- | PVID = n° du VLAN non taggué (le VLAN en access sur un port access | + | |
- | bla// | + | |
Cette page est un recueil de l' | Cette page est un recueil de l' | ||
Line 19: | Line 13: | ||
====Les types de mémoire==== | ====Les types de mémoire==== | ||
- | * **DRAM** Dynamic Random-Access Memory ou **RAM** tout court ; mémoire rapide et non permanente (elle s' | + | * **DRAM** |
- | * **ROM** (Read-Only Memory) contient un IOS minimal et le code, chargé au boot du routeur, qui lance l'IOS présent sur la flash | + | * **ROM** (Read-Only Memory) |
* **Flash memory** (EEPROM ou carte PCMCIA) contient l'IOS, les sauvegardes des confs, le serveur http, etc... | * **Flash memory** (EEPROM ou carte PCMCIA) contient l'IOS, les sauvegardes des confs, le serveur http, etc... | ||
- | * **NVRAM** (Non-Volatile RAM) contient la startup-config | + | * **NVRAM** (Non-Volatile RAM) contient la startup-config |
Sur les IOS, il existe 2 versions de la configuration : la running-config et la startup-config : | Sur les IOS, il existe 2 versions de la configuration : la running-config et la startup-config : | ||
- | * **running-config** c'est la configuration courante ; elle est modifiée dynamiquement/automatiquement quand on tape une commande, mais on la perd quand on reboot car elle est située dans la mémoire vive de l' | + | * **running-config** c'est la configuration courante ; elle est modifiée dynamiquement |
- | * **startup-config** c'est une sauvegarde pérenne de la running-config, elle est stockée sur la NVRAM et est donc conservée lors de l' | + | * **startup-config** c'est une sauvegarde pérenne de la running-config |
====Les 2 niveaux d' | ====Les 2 niveaux d' | ||
- | Il existe 2 modes liés à différents privilèges, | + | Il existe 2 modes associés |
- | * **mode utilisateur** | + | * **mode utilisateur** : le mode auquel |
- | * **mode privilégié** | + | * **mode privilégié** |
- | Le **mode configuration** '' | + | Le **mode configuration** '' |
- | Switch> | + | <code bash> |
- | Switch> | + | Switch> |
- | Password: | + | Switch> |
- | Switch#conf t | + | |
- | Enter configuration commands, one per line. End with CNTL/Z. | + | Switch#conf t |
- | Switch(config)# | + | Enter configuration commands, one per line. End with CNTL/Z. |
- | On peut protéger l' | + | Switch(config)# |
+ | </ | ||
+ | |||
+ | On peut (c'est même recommandé) | ||
- | Depuis le mode configuration global (conf t) on peut accéder aux modes de configuration : | + | Depuis le mode configuration global (conf t) on peut accéder aux sous-menus |
* d'une interface '' | * d'une interface '' | ||
* d'une sous-interface '' | * d'une sous-interface '' | ||
Line 48: | Line 45: | ||
* d'une ligne '' | * d'une ligne '' | ||
* du router '' | * du router '' | ||
+ | |||
====Commandes de base==== | ====Commandes de base==== | ||
- | IOS permet | + | |
+ | Les fonctionnalités de base d'IOS sont : | ||
* la complétion automatique (comme les UNIX) avec la touche ''< | * la complétion automatique (comme les UNIX) avec la touche ''< | ||
Mais à la différence d' | Mais à la différence d' | ||
Line 59: | Line 58: | ||
On quitte un mode avec la commande '' | On quitte un mode avec la commande '' | ||
* '' | * '' | ||
- | * la plupart du temps, pour annuler une commande, on utilise le mot '' | + | * la plupart du temps, pour annuler une commande, on utilise le mot '' |
====Raccourcis clavier==== | ====Raccourcis clavier==== | ||
Line 74: | Line 73: | ||
* '' | * '' | ||
- | Le rappel des dernières commandes passées peut se faire avec les flèches '' | + | Le rappel des dernières commandes passées peut se faire avec les flèches '' |
===Les signaux=== | ===Les signaux=== | ||
- | Sous Linux on peut utiliser le raccourcis clavier ctrl+C pour envoyer un SIGINT qui provoque l' | + | Sous Linux on peut utiliser le raccourcis clavier ctrl+c pour envoyer un SIGINT qui provoque l' |
- | Sous les IOS on utilise l' | + | |
===Séquence d' | ===Séquence d' | ||
- | C'est une séquence de touches qui, lorsqu' | + | C'est une séquence de touches qui, lorsqu' |
+ | Avec Putty, on peut faire juste un clic droit sur le titre de la fenêtre, puis Special Command > Break. | ||
====Commandes filtres==== | ====Commandes filtres==== | ||
- | Quand on fait une commande qui renvoie | + | Quand on fait une commande qui renvoie |
Le mot-clé '' | Le mot-clé '' | ||
Line 98: | Line 97: | ||
====IP de management==== | ====IP de management==== | ||
- | Dans le cas d'un switch, il n'y a pas de traitement de paquet niveau 3 normalement (hors ACLs, mais disons pas de routage | + | Dans le cas d'un switch, il n'y a pas de traitement de paquet niveau 3 normalement (hors ACLs, mais disons pas de routage). Pourtant, on a besoin d' |
- | On spécifie l'IP d' | + | On spécifie l'IP d' |
- | Switch(conf t)#int vlan 1 | + | <code bash> |
- | Switch(conf-if)# | + | Switch(conf t)#int vlan 1 |
+ | Switch(conf-if)# | ||
+ | </ | ||
- | Un switch ne peut avoir qu'une seule adresse IP de management (sauf s'il s'agit d'un switch multilayer comme un 3500 ou un 3700). | + | Un switch ne peut avoir qu'une seule adresse IP de management (sauf s'il s'agit d'un switch multilayer comme les séries Catalyst (c3500, c3700, c6500, etc...). |
====Passerelle==== | ====Passerelle==== | ||
- | Pour sortir du réseau, on doit spécifier la passerelle du réseau, c'est à dire la machine qui va router les paquets | + | Toujours dans le cas d'un switch, et à l’instar d'un PC, pour sortir du réseau on doit spécifier la passerelle |
- | | + | <code bash> |
+ | (conf t)#ip default-gateway | ||
+ | </ | ||
Évidemment celle-ci doit être dans le VLAN d' | Évidemment celle-ci doit être dans le VLAN d' | ||
+ | |||
+ | Pour les routeurs, on définit la route par défaut ; voir les commandes '' | ||
====subnet zero==== | ====subnet zero==== | ||
Line 121: | Line 126: | ||
'' | '' | ||
- | | + | <code bash> |
- | Translating " | + | Router# |
- | % Unknow command or computer name, or unable to find computer address | + | |
+ | % Unknow command or computer name, or unable to find computer address | ||
+ | </ | ||
====logging synchronous==== | ====logging synchronous==== | ||
+ | |||
Par défaut on reçoit des messages du routeur, qui troublent la saisie des commandes, par exemple : | Par défaut on reçoit des messages du routeur, qui troublent la saisie des commandes, par exemple : | ||
- | | + | <code bash> |
- | %SYS-5-CONFIG_I : Configured from console by console | + | Router# |
- | Enter configuration commands, one per line. End with CNTL/Z. | + | |
+ | Enter configuration commands, one per line. End with CNTL/Z. | ||
+ | </ | ||
Pour retrouver sa ligne de commande on peut faire un '' | Pour retrouver sa ligne de commande on peut faire un '' | ||
- | | + | <code bash> |
- | Router(config-line)# | + | Router(config)# |
+ | Router(config-line)# | ||
+ | </ | ||
Voici l' | Voici l' | ||
- | | + | <code bash> |
- | %SYS-5-CONFIG_I : Configured from console by console | + | Router# |
- | Router# | + | |
+ | Router# | ||
+ | </ | ||
=====Configuration générale===== | =====Configuration générale===== | ||
Line 218: | Line 231: | ||
=====Configurer un VLAN===== | =====Configurer un VLAN===== | ||
- | Un //Virtual LAN, réseau virtuel, permet de créer plusieurs réseaux | + | L' |
- | But : | + | Accéder |
- | * segmentation (un domaine de broadcast) | + | |
- | * flexibilité (possibilité de plusieurs vlan pour un switch) | + | |
- | * sécurité (lié à la segmentation) | + | |
- | Il existe 2 protocoles pour tagger les VLANs : | ||
- | |||
- | * **802.1q** : normalisé par l' | ||
- | * **ISL** (Inter Switch Link) est le protocole propriétaire CISCO désuet actuellement. Il encapsule la trame Ethernet en lui rajoutant un header de 26 octets et un FCS (CRC) de 4 octets. Le VLAN ID est codé dans un champ de 10 bits, donc ce protocole ne supporte, lui, que 1024 VLANs max. Comme pour le 802.1q, ce protocole n'est utilisé que sur des liens point-à-point (point-to-point). | ||
- | |||
- | Les différentes dénominations (types) de VLAN : | ||
- | * **VLAN par défaut** : le VLAN 1, celui dans lequel sont mis tous les ports par défaut. | ||
- | * **VLAN natif** : les trames du VLAN natif ne sont pas tagguées en 802.1q afin d' | ||
- | * **VLAN de management** : VLAN dans lequel est située d'IP de management du commutateur, | ||
- | * **VLAN utilisateur** : VLANs classiques = tous les autres. | ||
- | |||
- | **Une best-practice concernant les VLANs consiste à isoler le VLAN natif (ni data ni utilisateurs dedans) ainsi que le VLAN d' | ||
- | |||
- | Les différents VLANs : | ||
- | * le VLAN 1 est, comme vu plus haut, le VLAN natif par défaut. | ||
- | * les VLANs 1 à 1001 sont les **VLANs standards**, | ||
- | * les VLANs 1002 à 1005 sont des **VLANs réservés** pour FDDI et Token Ring ; ils sont créés automatiquement et on ne peut pas les supprimer. | ||
- | * sur un switch configuré en mode transparent utilisant une version récente d'IOS (version " | ||
- | |||
- | ====La règle des 80/20==== | ||
- | Vilfredo Paretto était un économiste italien qui avait " | ||
- | |||
- | La **règle des 80/20** en réseau en est fortement inspirée : " | ||
- | |||
- | De nos jours, les coûts liés à la bande-passante ont baissé et on constate l' | ||
- | |||
- | Ces 2 règles sont essentielles pour choisir le type de VLAN que l'on va mettre en place : | ||
- | * VLANs locaux si on se rapproche de la règle des 80/20 | ||
- | * VLANs géographiques si on se rapproche de la règle des 20/80 | ||
- | |||
- | ====Création d'un vlan==== | ||
- | Pour créer le vlan 5 de nom "vlan cinq" (tiens, c'est original). | ||
- | |||
- | Switch(config)# | ||
- | Switch(config-vlan)# | ||
- | |||
- | //Jadis// il fallait rentrer dans la '' | ||
- | |||
- | La configuration des VLANs est contenue dans le fichier '' | ||
- | |||
- | |||
- | ====Mode access==== | ||
- | C'est le cas d'un port physiquement relié à une machine (utilisateur, | ||
- | |||
- | ===Configuration statique=== | ||
- | // | ||
- | |||
- | Pour attribuer un port physique à ce vlan, par exemple le fast ethernet 0/2 : | ||
- | |||
- | Switch(config)# | ||
- | Switch(config-if)# | ||
- | |||
- | Switch(config-if)# | ||
- | |||
- | Il pourra discuter avec toutes les autres machines connectées sur d' | ||
- | |||
- | ===VMPS (configuration dynamique)=== | ||
- | Un **VLAN Management Policy Server** permet d' | ||
- | |||
- | C'est un switch ou un serveur qui centralise une base de données faisant correspondre un numéro de VLAN (VLAN ID) à une adresse MAC. Lorsqu' | ||
- | * dans le bon VLAN | ||
- | * en mode portfast (voir plus bas) | ||
- | |||
- | C'est ce qu'on appelle le **Dynamic VLAN configuration**. Ce mode est incompatible avec le mode %%port-security%% et le mode trunk. | ||
- | |||
- | Le ports doivent être configurés de cette façon : | ||
- | |||
- | switchport access dynamic | ||
- | |||
- | ===VLAN auxiliaire=== | ||
- | Avec l' | ||
- | |||
- | ====Mode trunk==== | ||
- | Pour diffuser des VLANs entre 2 switchs (par exemple) par le même lien physique on doit passer ce lien inter-switch en **mode trunk** : cela consiste à ajouter une information (un tag) sur chaque paquet Ethernet permettant de définir l' | ||
- | |||
- | Un port trunk doit être configuré en '' | ||
- | |||
- | Enfin il faut spécifier le protocole utilisé pour le trunk : '' | ||
- | |||
- | Switch(config-if)# | ||
- | Switch(config-if)# | ||
- | Switch(config-if)# | ||
- | Switch(config-if)# | ||
- | |||
- | |||
- | Pour modifier le VLAN natif, c' | ||
- | |||
- | Switch(config-if)# | ||
- | |||
- | ===DTP=== | ||
- | **Dynamic Trunking Protocol** permet à un port de dialoguer avec le port d'en face dans le but de passer en mode trunk ou non. | ||
- | |||
- | * '' | ||
- | * '' | ||
- | * mode **desirable** : négocie __activement__ pour passer le lien en trunk ; il passe donc en mode trunk face à un port configuré en trunk, desirable ou en auto. C'est le mode par défaut. | ||
- | * mode **auto** : négocie __passivement__ le lien en trunk (= il répond juste aux sollicitations qu'il reçoit); il passe en trunk uniquement face à un port configuré en mode trunk ou desirable. | ||
- | |||
- | Si rien n'est spécifié c'est une __faille potentielle__ (VLAN hopping) quand c'est sur un port relié à une machine utilisateur (ce dernier peut se faire passer pour un switch, forcer en mode trunk, et faire passer tous les VLANs dessus). | ||
- | |||
- | ==Synthèse des interactions== | ||
- | |||
- | | ^ Dynamic auto ^ Dynamic desirable ^ Trunk ^ Access | ||
- | ^ Dynamic auto | access | ||
- | ^ Dynamic desirable | trunk | ||
- | ^ Trunk | ||
- | ^ Access | ||
- | |||
- | |||
- | ==Vérification== | ||
- | |||
- | sh dtp interface | ||
- | DTP information for GigabitEthernet1/ | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | Hello timer expiration (sec/ | ||
- | | ||
- | | ||
- | | ||
- | FSM state: | ||
- | # times multi & trunk 0 | ||
- | | ||
- | In STP: no | ||
- | |||
- | | ||
- | | ||
- | 203 packets received (0 good) | ||
- | 203 packets dropped | ||
- | 0 nonegotiate, | ||
- | 0 bad TLVs, 0 bad TAS, 0 bad TAT, 0 bad TOT, 203 other | ||
- | 0 packets output (0 good) | ||
- | 0 native, 0 software encap isl, 0 isl hardware native | ||
- | 0 output errors | ||
- | 0 trunk timeouts | ||
- | 1 link ups, last link up on Mon Mar 01 1993, 00:01:57 | ||
- | 2 link downs, last link down on Wed Mar 10 1993, 23:43:59 | ||
- | |||
- | ====Vérification==== | ||
- | Switch#sh vlan [ brief | id < | ||
- | Switch#sh vlan brief | ||
- | | ||
- | VLAN Name | ||
- | ---- -------------------------------- --------- ------------------------------- | ||
- | 1 default | ||
- | Fa0/6, Fa0/7, Fa0/8, Fa0/9 | ||
- | Gi0/1 | ||
- | 5 vlan cinq active | ||
- | 1002 fddi-default | ||
- | 1003 token-ring-default | ||
- | 1004 fddinet-default | ||
- | 1005 trnet-default | ||
- | |||
- | Les vlans 1, 1002, 1003, 1004 et 1005 sont les vlans par défaut de chaque type d' | ||
- | Là on voit qu' | ||
=====VTP===== | =====VTP===== | ||
- | Le **Vlan Transport Protocol** permet de propager la configuration des VLANs sur un domaine VTP (un ensemble de switch convenu). Le VTP est propagé __uniquement sur les ports trunk__ ; les conditions suivantes sont requises pour que le VTP fonctionne correctement : | ||
- | * chaque switch doit appartenir au même domaine VTP | ||
- | * les switchs doivent être adjacents | ||
- | * les switchs doivent être reliés entre eux par des liens trunk | ||
- | Chaque switch envoie les information suivantes : | + | Le **VTP (Vlan Transport Protocol)** permet de propager la configuration des VLANs entre plusieurs commutateurs appartenant au même domaine VTP. |
- | | + | |
- | | + | |
- | | + | |
- | Chaque switch envoie des //VTP advertisement// | + | Accéder |
- | + | ||
- | + | ||
- | ====Les 3 modes de fonctionnement==== | + | |
- | + | ||
- | Il existe 3 modes de fonctionnement pour le VTP : | + | |
- | + | ||
- | * **serveur** : les serveurs centralisent la conf en écriture, et la propagent vers les clients --et serveurs-- du même domaine. Chaque modification de la base des VLAN incrémente la révision du VTP et est transmise à tout le domaine. | + | |
- | * **client** : les clients reçoivent et ré-émettent la conf de leur domaine VTP, qu'ils gardent en lecture seule : impossible de créer un VLAN en mode client. | + | |
- | * **transparent** : le mode transparent permet de garder une base de VLAN indépendante (locale) | + | |
- | + | ||
- | Un commutateur ne peut appartenir qu'à un seul domaine VTP ; en revanche il peut y avoir plusieurs domaines VTP dans un même réseau. | + | |
- | + | ||
- | Les confs envoyées par VTP disposent d'un numéro de version par domaine VTP ; les équipement se synchronisent sur le **dernier numéro de version de ce domaine**. Il faut donc faire attention lorsqu' | + | |
- | * soit on supprime le fichier **vlan.dat** qui contient les informations VTP ('' | + | |
- | * soit on change le domaine du switch pour reseter son compteur ; puis on remet le domaine voulu | + | |
- | * (à vérifier) soit on fait un '' | + | |
- | * si le switch est en mode transparent il ne communique pas sa version de sa vlan database donc il est normalement " | + | |
- | + | ||
- | Pour ce protéger de cela, il est fortement conseillé de définir un mot de passe au domaine VTP. Ainsi un switch connecté par inadvertance sur un réseau de prod ne pourra pas modifier pas les confs des autres équipements sans ce mot de passe. | + | |
- | + | ||
- | + | ||
- | ====Les différents types d' | + | |
- | + | ||
- | * **Summary Advertisements** envoyés par les clients toutes les 5 minutes ou lors d'un changement de topologie | + | |
- | * **Subset Advertisements** faisant suite à un **Summary Advertisements**, | + | |
- | * **Avertisement Requests** est une demande d' | + | |
- | + | ||
- | ====Configuration==== | + | |
- | + | ||
- | Comme pour la création de VLAN, elle peut se faire dans le mode de configuration des vlans (en entrant dans la '' | + | |
- | + | ||
- | Switch(conf t)#vtp domain < | + | |
- | Switch(conf t)#vtp mode [serveur | client | transparent] | + | |
- | Switch(conf t)#vtp password < | + | |
- | + | ||
- | + | ||
- | ====Pruning==== | + | |
- | Comme pour le multicast, le **pruning** est l' | + | |
- | + | ||
- | Configuration du VTP pruning : | + | |
- | + | ||
- | Switch(conf t)#vtp pruning | + | |
- | + | ||
- | Ou alors : | + | |
- | + | ||
- | Switch(conf t)#set vtp pruneeligible {VLAN_list} | + | |
- | + | ||
- | Pour supprimer le pruning : | + | |
- | + | ||
- | Switch(conf t)#clear vtp pruneeligible {VLAN_list} | + | |
- | + | ||
- | ====Vérification==== | + | |
- | Switch#sh vtp status | + | |
- | VTP Version | + | |
- | Configuration Revision | + | |
- | Maximum VLANs supported locally : 128 | + | |
- | Number of existing VLANs : 7 | + | |
- | VTP Operating Mode : Transparent | + | |
- | VTP Domain Name : vtp_montage | + | |
- | VTP Pruning Mode : Disabled | + | |
- | VTP V2 Mode : Disabled | + | |
- | VTP Traps Generation | + | |
- | MD5 digest | + | |
- | Configuration last modified by 10.2.1.30 at 3-5-93 00:41:31 | + | |
- | ====Recommandations==== | ||
- | * utiliser un mot de passe par domaine VTP | ||
- | * ne pas créer de domaine VTP trop étendu | ||
- | * ne pas dépasser 1 ou 2 VTP server | ||
=====Configurer un port===== | =====Configurer un port===== | ||
Line 520: | Line 300: | ||
Pour vérifier la configuration : | Pour vérifier la configuration : | ||
- | sh port-security [interface fa0/1] | + | <code bash> |
+ | show port-security [interface fa0/1 [address]] | ||
+ | </ | ||
ou | ou | ||
- | sh port-security address | + | <code bash> |
+ | show port-security address | ||
+ | </ | ||
+ | |||
+ | Pour réactiver toutes les interfaces bloquées en err-disabled : passer en mode conf-t : | ||
+ | <code bash> | ||
+ | errdisable recovery cause psecure-violation | ||
+ | </ | ||
+ | |||
+ | Pour changer une adresse MAC sticky : | ||
+ | <code bash> | ||
+ | int GiX/Y | ||
+ | no switchport port-security mac-address sticky | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Il peut être utile, si cela ne fonctionne pas : | ||
+ | * de désactiver également le port-security sur l' | ||
+ | <code bash> | ||
+ | int GiX/Y | ||
+ | no switchport port-security mac-address sticky | ||
+ | no switchport port-security | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | * de relancer l' | ||
+ | <code bash> | ||
+ | | ||
+ | no shut | ||
+ | </ | ||
+ | * de vérifier que l' | ||
+ | <code bash> | ||
+ | show run | i XXXX.YYYY.ZZZZ | ||
+ | | ||
+ | </ | ||
+ | //(tiens, elle était en sticky sur un autre port ! -> duplicate address)// | ||
+ | |||
+ | Pour supprimer le cache d' | ||
+ | <code bash> | ||
+ | clear port-security dynamic [address XXXX.YYYY.ZZZZ] | [interface GiX/Y] | ||
+ | </ | ||
====port serie==== | ====port serie==== | ||
Line 544: | Line 366: | ||
- | ====troubleshooting==== | + | ====Troubleshooting de port==== |
- | Switch#sh interface | + | |
+ | <code bash> | ||
+ | Switch#show interface | ||
+ | GigabitEthernet7/ | ||
+ | Hardware is C6k 1000Mb 802.3, address is 0011.93XX.XXXX (bia 0011.93XX.XXXX) | ||
+ | Description: | ||
+ | MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec, | ||
+ | | ||
+ | Encapsulation ARPA, loopback not set | ||
+ | Keepalive set (10 sec) | ||
+ | Full-duplex, | ||
+ | input flow-control is off, output flow-control is on | ||
+ | Clock mode is auto | ||
+ | ARP type: ARPA, ARP Timeout 04:00:00 | ||
+ | Last input 40w5d, output 40w5d, output hang never | ||
+ | Last clearing of "show interface" | ||
+ | Input queue: | ||
+ | Queueing strategy: fifo | ||
+ | Output queue: 0/40 (size/ | ||
+ | 5 minute input rate 0 bits/sec, 0 packets/ | ||
+ | 5 minute output rate 4000 bits/sec, 8 packets/ | ||
+ | | ||
+ | | ||
+ | 0 runts, 0 giants, 0 throttles | ||
+ | 26 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored | ||
+ | 0 watchdog, 0 multicast, 0 pause input | ||
+ | 0 input packets with dribble condition detected | ||
+ | | ||
+ | 147 output errors, 0 collisions, 8 interface resets | ||
+ | 0 babbles, 0 late collision, 0 deferred | ||
+ | 0 lost carrier, 0 no carrier, 0 PAUSE output | ||
+ | 0 output buffer failures, 0 output buffers swapped out | ||
+ | </ | ||
Lancer cette commande et vérifier : | Lancer cette commande et vérifier : | ||
- | * que l' | + | * que l' |
- | * les '' | + | * la MTU de l' |
- | * les '' | + | * BW : bandwidth (bande passante de l' |
- | * les '' | + | * '' |
+ | * les '' | ||
+ | * les '' | ||
+ | * les '' | ||
* les '' | * les '' | ||
+ | * runts/ | ||
+ | * CRC : problème d' | ||
+ | * frame : erreur de réception d'un paquet (CRC + nombre d' | ||
+ | * overrun : nombre de fois ou l' | ||
+ | * underrun : nombre de fois ou l' | ||
+ | * ignored : nombre de paquets ignorés pour cause de quasi-saturation des buffers internes. Souvent lié à des tempêtes de broadcast ou des burst de paquets altérés (//burst of noise//). | ||
+ | * interface resets : nombre de reset des compteurs d' | ||
+ | * lost carrier : nombre de perte de signal pendant émission | ||
+ | * no carrier : nombre de fois ou le signal n' | ||
- | | + | '' |
+ | <code bash> | ||
+ | int gi0/1 | ||
+ | | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | Switch#sh interface ethernet | ||
+ | </ | ||
Vérifier que les collisions ne dépassent pas 0.1 % des paquets émis | Vérifier que les collisions ne dépassent pas 0.1 % des paquets émis | ||
Vérifier le '' | Vérifier le '' | ||
- | =====Gestion des accès===== | ||
- | Différents types d' | + | source |
- | Pour la première configuration il faut se connecter au port **console** avec le câble fourni par Cisco. Sous Windows on ouvre l' //Hyper terminal//, on saisit un nom de connexion bidon, on clique sur " | + | =====Gestion des accès===== |
- | Switch> en | + | |
- | Switch# | + | |
- | ====Mode enable==== | + | [[informatique:cisco: |
- | En mode config on va saisir un nouveau mot de passe pour le mode privilégié. On a le choix entre, respectivement, | + | |
- | Switch(config)# | + | |
- | Switch(config)# | + | |
- | Si les 2 sont configurés, | + | |
- | ====Console==== | ||
- | On veut mettre en place un mot de passe pour se connecter sur la ligne console (CTY) : | ||
- | Switch(config)# | ||
- | Switch(config-line)# | ||
- | Switch(config-line)# | ||
- | '' | ||
- | ====Ligne auxiliaire==== | + | =====Mot de passe oublié===== |
- | La principale différence entre les ports console (CTY) et auxiliaire (AUX) est que le port auxiliaire supporte le contrôle de flux hardware ; le port console non. Le contrôle de flux permet un contrôle des transmissions, | + | //Testé avec un Catalyst 2940 et c3750// |
- | Switch(config)# | + | |
- | Switch(config-line)# | + | |
- | Switch(config-line)# | + | |
- | ====ligne vty==== | + | **password recovery** : Mode opératoire pour récupérer l' |
- | Elles correspondent | + | |
- | Tant qu'un mot de passe n'est pas spécifié (via la console), les sessions telnet sont interdites pour des problèmes de sécurité. | + | * Débrancher le switch |
- | De plus on ne peut y accéder | + | * S'y connecter sur le port console |
+ | * Le rebrancher en maintenant le bouton " | ||
- | Souvent les routeurs ne comprennent que 5 lignes vty ('' | + | <code bash> |
- | | + | C2940 Boot Loader |
- | Tty Typ | + | Compiled Mon 30-Jun-03 15:16 by antonino |
- | * 0 CTY | + | WS-C2940-8TF-S starting... |
- | | + | Base ethernet MAC Address: 00:12: |
- | 2 VTY - - - - - 0 | + | Xmodem file system is available. |
- | 3 VTY - - - - - 0 | + | The password-recovery mechanism is enabled. |
- | 4 VTY - - - - - 0 | + | |
- | 5 VTY - - - - - 0 | + | |
- | 6 VTY - - - - - 0 | + | |
- | 7 VTY - - - - - 0 | + | |
- | 8 VTY - - - - - 0 | + | |
- | 9 VTY - - - - - 0 | + | |
- | 10 VTY - - - - - 0 | + | |
- | 11 VTY - - - - - 0 | + | |
- | | + | |
- | 13 VTY - - - - - 0 | + | |
- | 14 VTY - - - - - 0 | + | |
- | 15 VTY - - - - - 0 | + | |
- | 16 VTY - - - - - 0 | + | |
- | On veut les configurer tous les vtys ensemble : | + | The system has been interrupted prior to initializing the |
- | | + | flash filesystem. |
- | | + | the flash filesystem, and finish loading the operating |
- | | + | system software: |
- | On peut spécifier le type de protocole qu'on veut utiliser (ici ssh et telnet) : | + | flash_init |
- | | + | |
- | | + | |
+ | </ | ||
+ | Taper ensuite ces commandes (la complétion automatique ne fonctionne pas) : | ||
+ | <code bash> | ||
+ | flash_init | ||
+ | load_helper | ||
+ | rename flash: | ||
+ | boot # redémarrer | ||
+ | # un fois redémarré : | ||
+ | enable | ||
+ | copy flash: | ||
+ | copy flash: | ||
- | Dans les 3 cas ci-dessus, on demande un mot de passe pour établir une connexion ; si on veut demander aussi un login, il faut rajouter : | + | config |
- | Switch(config)#line vty 0 4 | + | |
- | Switch(config-line)login local | + | |
- | On spécifie | + | # remplacer le mot de passe perdu : |
- | | + | enable secret < |
+ | line con 0 | ||
+ | password | ||
+ | line vty 0 15 | ||
+ | | ||
+ | login | ||
+ | write memory | ||
+ | reload | ||
+ | </ | ||
- | ====SSH==== | + | source |
- | //Les lignes vty doivent être configurées (cf § précédent)// | + | |
- | + | ||
- | Le SSH ne fonctionne qu' | + | |
- | Switch(config)# | + | |
- | Switch(config)# | + | |
- | + | ||
- | On peut préciser certains paramètres (facultatif) | + | |
- | toto(config)# | + | |
- | toto(config)# | + | |
- | toto(config)# | + | |
- | + | ||
- | Configuration de l' | + | |
- | //à valider : le fait de devoir faire un '' | + | |
- | + | ||
- | Génération d'un couple de clés RSA : | + | |
- | toto(config)# | + | |
- | + | ||
- | Les lignes vty doivent être configurées (cf § précédent). | + | |
- | + | ||
- | On créé ensuite un compte local : | + | |
- | toto(config)# | + | |
- | + | ||
- | + | ||
- | =====Gestion des sessions===== | + | |
- | + | ||
- | Pour afficher les sessions courante sur l' | + | |
- | show sessions | + | |
- | + | ||
- | Pour afficher la liste des utilisateurs connectés : | + | |
- | show users | + | |
- | + | ||
- | (Et aussi : '' | + | |
- | + | ||
- | Pour déconnecter une session : | + | |
- | disconnect < | + | |
- | + | ||
- | + | ||
- | =====Mot de passe oublié===== | + | |
- | //Testé avec un Catalyst 2940// | + | |
- | + | ||
- | Mode opératoire pour récupérer l' | + | |
- | + | ||
- | * Débrancher le switch | + | |
- | * Le rebrancher en maintenant le bouton " | + | |
- | + | ||
- | C2940 Boot Loader (C2940-HBOOT-M) Version 12.1(13r)AY1, | + | |
- | Compiled Mon 30-Jun-03 15:16 by antonino | + | |
- | WS-C2940-8TF-S starting... | + | |
- | Base ethernet MAC Address: 00: | + | |
- | Xmodem file system is available. | + | |
- | The password-recovery mechanism is enabled. | + | |
- | + | ||
- | The system has been interrupted prior to initializing the | + | |
- | flash filesystem. | + | |
- | the flash filesystem, and finish loading the operating | + | |
- | system software: | + | |
- | + | ||
- | flash_init | + | |
- | load_helper | + | |
- | boot | + | |
- | + | ||
- | (la complétion automatique ne fonctionne pas) | + | |
- | * '' | + | |
- | * '' | + | |
- | * Sauvegarder la config : '' | + | |
- | * Démarrer : '' | + | |
- | * Passer en mode //enable// : '' | + | |
- | * Restaurer la config : '' | + | |
- | * Sauver la conf : '' | + | |
- | * Changer le mot de passe : '' | + | |
- | * Sauvegarder la conf sur la flash : '' | + | |
=====MAJ IOS via Rommon===== | =====MAJ IOS via Rommon===== | ||
Line 731: | Line 521: | ||
- | =====STP===== | + | =====Spanning-Tree===== |
Le **Spanning-Tree Protocol** ou **CST** (Common Spanning-Tree) est un protocole de niveau 2 normalisé par l'IEEE en tant que **802.1D**. Il permet de découvrir la topologie du réseau, d'en détecter les changements et d' | Le **Spanning-Tree Protocol** ou **CST** (Common Spanning-Tree) est un protocole de niveau 2 normalisé par l'IEEE en tant que **802.1D**. Il permet de découvrir la topologie du réseau, d'en détecter les changements et d' | ||
- | Les communications entre les commutateurs se font par des paquets appelés BPDUs, qui sont notamment composés du " | + | Voir la page dédiée aux différents types de STP (CSTP, RSTP, PVSTP, MSTP) : [[informatique: |
- | * 100 pour 10 Mbps | ||
- | * 19 pour du 100 Mbps | ||
- | * 4 pour 1 Gbps | ||
- | * 2 pour 10 Gbps, etc... | ||
- | |||
- | On peut influer sur l' | ||
- | Switch(config)# | ||
- | Switch(config-if)# | ||
- | |||
- | |||
- | ====STP BPDU Guard==== | ||
- | Désactive le port sur lequel il reçoit des BPDUs si le portfast est activé sur le port. Il faut réactiver manuellement le port. | ||
- | Pour activer le BPDU guard, on se met en config-if : | ||
- | '' | ||
- | |||
- | NB : on peut activer par défaut sur tous les ports __configurés en portfast__ avec la commande globale '' | ||
- | |||
- | ====STP BPDU filter==== | ||
- | '' | ||
- | |||
- | NB : on peut activer par défaut sur tous les ports __configurés en portfast__ avec la commande globale '' | ||
- | |||
- | ====STP Root Guard==== | ||
- | Désactive le port si un BPDU de plus faible priorité est reçu (= si le switch de l' | ||
- | |||
- | Pour activer le root guard, on se met en config-if : | ||
- | '' | ||
- | |||
- | http:// | ||
- | |||
- | ====Loop guard==== | ||
- | Le **loop guard** est une sécurité supplémentaire pour éviter les boucles ST. Lorsqu' | ||
- | |||
- | SPANTREE-2-LOOPGUARDBLOCK: | ||
- | |||
- | Lorsque le port recevra à nouveau des BPDUs, il se débloquera automatiquement. | ||
- | |||
- | ====Uplink fast==== | ||
- | Permet à un switch de basculer rapidement sur un port alternatif vers le root bridge lorsque son root port tombe. Typiquement, | ||
- | |||
- | (config-if)# | ||
- | |||
- | C'est une fonctionnalité qui est reprise dans le RST. | ||
- | |||
- | ====Backbone fast==== | ||
- | En effet lorsqu' | ||
- | |||
- | Cette fonctionnalité Cisco au switch de détecter la perte du root port de son voisin quand il reçoit des BPDUs inférieurs de sa part, ceci avant le Max age (qui est de 20 secondes) et de provoquer une renégociation ST immédiate. | ||
- | |||
- | (config-if)# | ||
- | |||
- | ====RST==== | ||
- | |||
- | Le **Rapid Spanning-Tree** (normalisé **802.1w**) est une modification du ST qui permet une convergence bien plus rapide que le standart initial : on passe de 50 secondes à quelques secondes lors d'une perte d'un lien. C'est devenu un standart lui aussi. | ||
- | |||
- | Par rapport au simple ST, le RST apporte un état supplémentaire : | ||
- | * discarding (équivalent de blocking en ST) | ||
- | |||
- | Cependant les IOS actuels affichent l' | ||
- | Po22 Altn BLK 1 | ||
- | |||
- | |||
- | ... ainsi que des rôles de ports supplémentaires : | ||
- | * **alternative** : c'est un port qui offre un chemin alternatif vers le root bridge ; il est à l' | ||
- | * **backup** : c'est un port additionnel présent sur un switch désigné qui possède un lien redondant vers le segment sur le lequel il est désigné. C'est donc le cas quand un switch a 2 ports sur le même segment : si l'un devient le port désigné du segment, l' | ||
- | |||
- | |||
- | ===Récapitulatif des états des ports=== | ||
- | |||
- | ^ état opérationnel ^ rôles | ||
- | | disabled | ||
- | | enabled | ||
- | | enabled | ||
- | | enabled | ||
- | | enabled | ||
- | | enabled | ||
- | | enabled | ||
- | | enabled | ||
- | |||
- | États des ports (schémas trouvés chez [[http:// | ||
- | |||
- | {{http:// | ||
- | |||
- | {{http:// | ||
- | |||
- | {{http:// | ||
- | |||
- | {{http:// | ||
- | |||
- | C'est actuellement cette version de ST qui est utilisée partout. Partout vous dis-je. | ||
- | |||
- | ====PVST==== | ||
- | |||
- | Le **Per VLAN Spanning-Tree** est une amélioration propriétaire de Cisco qui permet d' | ||
- | |||
- | Cependant son inconvénient est que ce n'est pas un standart (donc concrètement ça ne tourne qu' | ||
- | |||
- | Comme ce protocole utilise une instance par VLAN, chaque BID doit contenir le numéro de VLAN : la priorité du STP (**bridge priority**, sur 16 bits) a été décomposée en 2 champs pour devenir l' | ||
- | |||
- | =====R-PVSTP===== | ||
- | Rapid-PVST Protocol ou **Rapid Per VLAN Spanning Tree Protocol** permet de combiner le " | ||
- | |||
- | * **Rapid** : de converger plus vite lors d'un changement de topologie (2 secondes au lieu de 50 environs) | ||
- | * **Per VLAN** : d' | ||
- | |||
- | C'est un protocole propriétaire CISCO à la différence du MSTP (**Multiple STP**, extension du RSTP, qui permet de créer plusieurs instances de STP avec un ou plusieurs VLAN rattaché). | ||
- | |||
- | Configuration (idem pour le PVSTP activé par défaut) : | ||
- | |||
- | On active le RPVST : | ||
- | Switch1(config)# | ||
- | Switch2(config)# | ||
- | |||
- | La priorité par défaut est de 32768 : on va déclarer le Switch1 en "root primaire" | ||
- | Switch1(config)# | ||
- | Switch2(config)# | ||
- | |||
- | NB : quand on configure un switch en '' | ||
- | |||
- | On aurait pu gérer les priorités statiques à la main : | ||
- | Switch1(config)# | ||
- | Switch2(config)# | ||
- | |||
- | Vérification : | ||
- | Switch1#sh spanning-tree vlan 445 | ||
- | |||
- | |||
- | =====MSTP===== | ||
- | Le **Multiple Spanning-tree** (IEEE 802.1s) permet de créer des groupes (instances) de VLANs qui partageront une même topologie spanning-tree. On diminue ainsi la charge du réseau et des CPUs des commutateurs par rapport au PVST (moins de BPDUs et moins de calculs d' | ||
- | |||
- | L' | ||
- | |||
- | On associe donc un groupe de VLAN à une instance (numérotées de 1 à 15 max), contenue dans une région ; ces VLANs partageront leur topologie ST (ou plutôt RST car chez Cisco le MST implique de fonctionner en RST). | ||
- | |||
- | Par défaut l' | ||
- | |||
- | Les switchs appartenant à une même région MST apparaissent comme un seul " | ||
- | |||
- | * les mêmes numéros d' | ||
- | * le même mapping de VLAN par instance | ||
- | * le même numéro de révision | ||
- | |||
- | Le BID (Bridge ID) du MST a le même format qu'en PVST, à ceci prêt que l' | ||
- | |||
- | ====Configuration==== | ||
- | |||
- | On va créer 2 instances dans la région region1 avec un n° de révision de 1 : | ||
- | |||
- | Switch(config)# | ||
- | Switch(config-mst)# | ||
- | Switch(config-mst)# | ||
- | Switch(config-mst)# | ||
- | Switch(config-mst)# | ||
- | Switch(config-mst)# | ||
- | |||
- | Puis on active le MST : | ||
- | |||
- | Switch(config)# | ||
- | |||
- | Chaque commutateur doit avoir la même configuration de région sous peine de ne pas pouvoir communiquer avec les autres commutateurs " | ||
- | |||
- | Pour réinitialiser la détection des protocoles ST, il faut passer la commande : | ||
- | |||
- | clear spanning-tree detected-protocols | ||
- | |||
- | Dans certains cas (à déterminer) il faut passer la directive suivante sur les interfaces physiques reliées à certains commutateurs : | ||
- | |||
- | Switch(config-if)# | ||
- | |||
- | |||
- | ====Vérification==== | ||
- | |||
- | show spanning-tree mst configuration | ||
- | show spanning-tree mst | ||
=====Etherchannel===== | =====Etherchannel===== | ||
- | C'est le nom utilisé par CISCO pour désigner du bonding | + | C'est le nom utilisé par Cisco pour désigner du bonding, channel bonding |
- | * addition globale (pas de machine à machine) de la bande passante de chaque lien (ex : 4 liens physiques à 100 Mbps ~= 1 lien logique à 400 Mbps). | + | |
- | * redondance d' | + | |
- | On l' | + | |
- | + | ||
- | Il 2 principaux protocoles : le LACP (standart IEEE 802.3ad) et le PAgP (propriétaire Cisco). | + | |
- | + | ||
- | ====Configuration==== | + | |
- | + | ||
- | On créer l' | + | |
- | Switch(config)# | + | |
- | + | ||
- | On la configure comme une interface normale. | + | |
- | + | ||
- | Pour chaque interface physique que l'on veut ajouter à l' | + | |
- | Switch(config)# | + | |
- | Switch(config-if)# | + | |
- | + | ||
- | On peut spécifier le mode par : | + | |
- | + | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | Les ports physiques d'un Etherchannel doivent être de même type et de même vitesse ; ils doivent avoir la même configuration. | + | voir la page dédiée : [[informatique: |
Line 1010: | Line 602: | ||
=====ACL===== | =====ACL===== | ||
- | //Access Control List//, implémenté sur les switchs et routeurs CISCO. | + | Les ACLs pour **Access Control List** sont implémentées |
- | Il existe les ACLs standarts (numérotées de 1-99 ou 1300-1999) et les ACLs étendues (numérotées 100-199 ou 2000-2699). | + | |
- | * **ACLs standards** : elles travaillent au niveau 3 de la pile OSI et **uniquement sur les adresses IPs source**. Chaque ligne s' | + | |
- | + | ||
- | (config)#ip access-list <numéro entre 1-99> {permit | deny} <ip source> [< | + | |
- | + | ||
- | | + | |
- | + | ||
- | (config)# | + | |
- | < | + | |
- | + | ||
- | * **ACLs nommées** : elle peuvent être de type standard ou étendues ; on peut supprimer les lignes indépendamment. | + | |
- | + | ||
- | (config)#ip access-list < | + | |
- | (config-std-nacl)# | + | |
- | + | ||
- | **Les ACLs standards doivent être placées au plus près de la destination, | + | |
- | + | ||
- | * ACLs additonnelles : | + | |
- | * **ACLs dynamiques** : l' | + | |
- | * **Reflexive ACLs** : permet de passer en staful = on permet un traffic de passer uniquement s'il est déjà passé dans l' | + | |
- | * **Time-based ACLs** défini des critère de date/time pour l' | + | |
- | + | ||
- | On applique une access-list sur une interface en " | + | |
- | Router(config)# | + | |
- | Router(config-if)# | + | |
- | + | ||
- | Une ACL est lue de manière séquentielle = ligne 1 puis ligne 2, etc. Si la ligne 1 matche, le routeur applique la règle pour le paquet et sort de l'ACL. Ainsi, si plusieurs lignes conviennent pour un même paquet, seule la première sera appliquée. | + | |
- | + | ||
- | ====ip access-list resequence==== | + | |
- | + | ||
- | Voici une manière habile de modifier une ACL " | + | |
- | #show access-lists | + | |
- | | + | |
- | 1 permit ip host 10.0.0.1 host 10.0.1.1 | + | |
- | 2 permit ip host 10.0.0.1 host 10.1.1.1 | + | |
- | 3 deny tcp host 10.2.1.1 host 10.3.1.1 eq www | + | |
- | + | ||
- | On veut ajouter la ligne '' | + | |
- | + | ||
- | La façon la plus classe est de faire comme ceci : | + | |
- | (config)#ip access-list resequence 101 10 10 | + | |
- | (config)#ip access-list extended 101 | + | |
- | (config-ext-nacl)# | + | |
- | (config)#ip access-list resequence 101 10 10 | + | |
- | + | ||
- | Dans l' | + | |
- | + | ||
- | =====VACL===== | + | |
- | + | ||
- | Les **VLAN Access-list** ou **VLAN access maps** sont des ACLs de niveau 2, qui s' | + | |
- | + | ||
- | Pour les mettre en place, il faut spécifier une ou plusieurs //map sequence// qui associent une action à une ACL ; si un permit de l'ACL " | + | |
- | + | ||
- | **Ici donc, comme dans les route-map, les termes //permit// et //deny// ne sont pas à prendre au sens strict mais en fonction du contexte.** | + | |
- | + | ||
- | ! déclaration | + | |
- | mac access-list extended MAC-ACL | + | |
- | | + | |
- | + | ||
- | ! Déclaration de l' | + | |
- | ! il permet de déterminer un ordre d' | + | |
- | ! On filtre (match) sur les adresses MAC (|IP|IPX) en spécifiant "mac address", | + | |
- | ! L' | + | |
- | vlan access-map 1 10 | + | |
- | match mac address MAC-ACL | + | |
- | | + | |
- | + | ||
- | ! Pour dropper le reste on doit créer un second statement (20) | + | |
- | vlan access-map 1 20 | + | |
- | | + | |
- | ! On associe l' | + | [[informatique: |
- | vlan filter 1 vlan-list 11,12 | + | |
- | Dans l' | ||
=====NAT/ | =====NAT/ | ||
Line 1313: | Line 833: | ||
=====Tracking d' | =====Tracking d' | ||
- | Permet de baisser un coup HSRP en cas de perte d'une route. | ||
- | ! L’objet tracking est = 1 | ||
- | ! Tracking de la route 10.4.101.8 255.255.255.248 | ||
- | ! Delay down = temps en secondes avant de déclarer la perte de la route. | ||
- | ! delay up = temps en secondes avant de prendre en compte le retour de la route. | ||
- | | ||
- | track 1 ip route 10.4.101.8 255.255.255.248 reachability | ||
- | delay down 5 up 30 ! pour les « 2 » | ||
- | delay down 3 up 40 ! pour les « 1 » | ||
- | |||
- | interface VlanX | ||
- | ! Récupération de l’objet tracking 1 | ||
- | ! Si l’objet est valide (route inaccessible) alors décrémenter le poids HSRP de 30 | ||
- | | ||
+ | Mécanisme qui permet de baisser une priorité HSRP si une condition n'est pas remplie ; plus de détails sur la page [[informatique: | ||
=====Port mirroring===== | =====Port mirroring===== | ||
- | Permet | + | ====Local SPAN==== |
+ | |||
+ | Ou "span de port" : cela permet | ||
Voir les sessions de mirroring existantes : | Voir les sessions de mirroring existantes : | ||
- | | + | <code bash> |
- | Session 1 | + | show monitor session all |
- | --------- | + | Session 1 |
- | Type : Local Session | + | --------- |
- | Source Ports : | + | Type : Local Session |
+ | Source Ports : | ||
- | | + | |
- | Destination Ports : Gi2/0/1 | + | Destination Ports : Gi2/0/1 |
- | Encapsulation | + | Encapsulation |
- | Ingress | + | Ingress |
+ | </ | ||
- | La mention **Both** indique que la redirection se fait sur le trafic entrant et sortant de l' | + | La mention **Both** |
Mise en place de la session de monitoring : | Mise en place de la session de monitoring : | ||
- | | + | <code bash> |
- | monitor session 1 destination interface Gi2/0/1 | + | monitor session 1 source interface Gi1/0/2 [both | rx | tx] |
+ | monitor session 1 destination interface Gi2/0/1 | ||
+ | </ | ||
- | On peut donc choisir de ne redirigerque | + | On peut choisir de ne rediriger que le trafic entrant |
On peut aussi monitorer le trafic d'un vlan en remplaçant **interface** par **vlan** dans la source. | On peut aussi monitorer le trafic d'un vlan en remplaçant **interface** par **vlan** dans la source. | ||
+ | ====Remote SPAN==== | ||
+ | |||
+ | On peut aussi faire du RSPAN c'est à dire du remote SPAN. Cela consiste à créer un vlan spécifique de type remote-span et a le distribuer du commutateur source au commutateur destination. Le premier redirige le trafic dessus, et le commutateur destination le prend en source. | ||
+ | |||
+ | Exemple : C1 et C2 sont 2 commutateur interconnectés par un lien trunk sur leur interface fa0/24. C1 le commutateur source. Il a le port fa0/1 que je désire sniffer sur un sonde connectée sur le port fa0/2 du commutateur C2. | ||
+ | |||
+ | Configuration de C1 : | ||
+ | <code bash> | ||
+ | ! création du vlan de type RSPAN | ||
+ | vlan 100 | ||
+ | name v100-RSPAN | ||
+ | | ||
+ | ! | ||
+ | ! on définit la capture | ||
+ | monitor session 1 source interface fa0/1 | ||
+ | monitor session 1 destination remote vlan 100 | ||
+ | ! | ||
+ | ! propagation du remote vlan vers C2 | ||
+ | interface fa0/24 | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | Configuration de C2 : | ||
+ | <code bash> | ||
+ | ! création du vlan de type RSPAN | ||
+ | vlan 100 | ||
+ | name v100-RSPAN | ||
+ | | ||
+ | ! | ||
+ | ! on définit la capture | ||
+ | monitor session 1 destination interface fa0/2 | ||
+ | monitor session 1 source remote vlan 100 | ||
+ | ! | ||
+ | ! propagation du remote vlan vers C2 | ||
+ | interface fa0/24 | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Ce vlan 100 doit bien être déclaré comme remote-vlan ; il peut être propagé sur n' | ||
+ | |||
+ | source : [[http:// | ||
=====DHCP Snooping===== | =====DHCP Snooping===== | ||
Line 1401: | Line 958: | ||
- | =====Shaping===== | ||
- | Le shaping c'est l' | ||
- | |||
- | Création de la class-map qui sélectionne le flux que l'on veut limiter : | ||
- | |||
- | class-map match-all Classmap_shaping | ||
- | match access-group name ACL_Selection_flux | ||
- | |||
- | Mise en place de la limitation de débit (50Mbps) ainsi que de la taille du buffer de dépassement (8Kbps ici) ; tout ce qui dépasse sera droppé. | ||
- | |||
- | policy-map Policy_limit_50Mbps | ||
- | class Classmap_shaping | ||
- | police 50000000 8000 exceed-action drop | ||
- | |||
- | Création de l' | ||
- | |||
- | ip access-list extended ACL_Selection_flux | ||
- | | ||
- | |||
- | On applique la politique sur une interface en entrée (on peut aussi l' | ||
- | |||
- | int Gi1/0/1 | ||
- | | ||
===== Tester la longueur d'un cable ===== | ===== Tester la longueur d'un cable ===== | ||
Line 1457: | Line 991: | ||
====Numéros de série==== | ====Numéros de série==== | ||
+ | |||
Pour récupérer le //serial number// d'un équipement sans avoir un accès physique pour regarder l' | Pour récupérer le //serial number// d'un équipement sans avoir un accès physique pour regarder l' | ||
* pour les c65XX : '' | * pour les c65XX : '' | ||
- | * pour les c3825 : '' | + | * pour les c3825 : '' |
+ | On peut récupérer les SNs des GBICs, alimentations, | ||
====show==== | ====show==== | ||
Line 1495: | Line 1031: | ||
* '' | * '' | ||
+ | * '' | ||
+ | * '' | ||
* '' | * '' | ||
* '' | * '' | ||
Line 1660: | Line 1198: | ||
- | ====GBIC==== | + | ====GBIC |
- | GBIC (Gigabit Interface Converter) est un module qui convertit un signal électrique en signal optique. | + | |
- | * 1000BASE-SX : multi-mode (jusqu' | + | Voir la page dédiée |
- | * 1000BASE-LX/ | + | |
- | * 1000Base-ZX : mono-mode (jusqu' | + | |
- | * ST: carré/gros gbic | + | ====ping==== |
- | * LC: mini gbic (sfp) | + | |
- | * SC: rond/quart de tour | + | |
- | * FC: rond à visser | + | |
- | Connecteur | + | On peut utiliser la commande '' |
- | * plat | + | <code bash> |
- | * PC et UPC | + | router# |
- | * APC (bisoté) | + | |
+ | Target IP address: 1.2.3.4 | ||
+ | Repeat count [5]: | ||
+ | Datagram size [100]: | ||
+ | | ||
+ | | ||
+ | | ||
+ | Type of service [0]: | ||
+ | Set DF bit in IP header? [no]: | ||
+ | | ||
+ | Data pattern [0xABCD]: | ||
+ | | ||
+ | Sweep range of sizes [n]: | ||
+ | Type escape sequence to abort. | ||
+ | | ||
+ | </ | ||
+ | On peut forcer un ping à partir d'une interface particulière (celle ayant l'IP 192.168.0.1) directement avec la commande : | ||
+ | < | ||
- | ====ping==== | + | ... ou directement en spécifiant l' |
- | On peut utiliser la commande '' | + | < |
+ | |||
+ | ====Telnet==== | ||
+ | |||
+ | <code bash> | ||
+ | telnet 192.168.103.24 8000 / | ||
+ | </ | ||
====Historique==== | ====Historique==== | ||
Line 1687: | Line 1242: | ||
====Régler l' | ====Régler l' | ||
- | Pour ajuster l' | + | Pour ajuster l' |
+ | <code bash> | ||
+ | clock set 14:03:40 12 february 2016 | ||
+ | </ | ||
+ | |||
+ | Cependant vu le niveau de criticité des équipements réseau, il est fortement | ||
+ | <code bash> | ||
+ | # configuration de la zone de temps (Paris, UTC+1) : | ||
+ | clock timezone UTC 1 | ||
+ | |||
+ | ntp server 10.0.0.1 prefer | ||
+ | ntp server 10.0.0.2 | ||
+ | |||
+ | # vérifications | ||
+ | show ntp status | ||
+ | show ntp associations | ||
+ | </ | ||
+ | source : [[http:// | ||
====Commandes en vrac==== | ====Commandes en vrac==== | ||
Line 1710: | Line 1282: | ||
Le flex links est configuré sur l' | Le flex links est configuré sur l' | ||
- | | + | <code bash> |
- | backup interface Port-channel2 | + | interface Port-channel1 |
+ | | ||
- | | + | show interfaces description |
- | | + | |
- | | + | |
- | | + | |
+ | ! NB : il se peut que l' | ||
+ | |||
+ | show interfaces switchport backup detail | ||
+ | Switch Backup Interface Pairs: | ||
+ | |||
+ | Active Interface | ||
+ | ------------------------------------------------------------------------ | ||
+ | |||
+ | GigabitEthernet0/ | ||
+ | </ | ||
Pour activer la préemption : | Pour activer la préemption : | ||
- | | + | <code bash> |
- | switchport backup interface po2 preemption delay 60 | + | switchport backup interface po2 preemption mode bandwidth |
+ | switchport backup interface po2 preemption delay 60 | ||
+ | </ | ||
Liens : | Liens : | ||
Line 1732: | Line 1317: | ||
L' | L' | ||
- | Si la fonction est activée et qu'un lien unidirectionnel est détecté, le port associé passera à l' | + | __Si la fonction est activée et qu'un lien unidirectionnel est détecté, le port associé passera à l' |
- | Pour fonctionné, | + | UDLD permet d' |
+ | * Spanning tree topology loops caused by unidirectional links | ||
+ | * Incorrect cabling of unbundled fiber strands | ||
+ | * Transceiver or link hardware malfunction | ||
+ | * Incorrect or excessive flooding of packets | ||
+ | * Loss of traffic without notice (also known as black holing) | ||
- | Par défaut il n' | + | Pour fonctionner, |
+ | |||
+ | Il est possible de configurer l'UDLD en mode global ('' | ||
(config)# udld {enable | aggressive} | (config)# udld {enable | aggressive} | ||
Line 1742: | Line 1334: | ||
(config-if)# | (config-if)# | ||
- | Vérifs | + | ===Vérifs=== |
- | show udld | + | |
- | show udld neighbor | + | <code bash> |
+ | show udld neighbor | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | show udld te6/3 | ||
+ | |||
+ | Interface Te6/3 | ||
+ | --- | ||
+ | Port enable administrative configuration setting: Enabled | ||
+ | Port enable operational state: Enabled | ||
+ | Current bidirectional state: Unknown | ||
+ | Current operational state: Advertisement | ||
+ | Message interval: 7 | ||
+ | Time out interval: 5 | ||
+ | No neighbor | ||
+ | </ | ||
Liens : | Liens : | ||
Line 1767: | Line 1375: | ||
show storm-control | show storm-control | ||
+ | ====MTU==== | ||
+ | |||
+ | Configurer la [[http:// | ||
+ | |||
+ | * Sur les switchs catalyst : [[http:// | ||
+ | |||
+ | * [[http:// | ||
+ | ====verify==== | ||
+ | |||
+ | Après avoir téléchargé une image IOS, il faut vérifier qu' | ||
+ | |||
+ | Il existe une commande Cisco qui permet de vérifier l' | ||
+ | |||
+ | Exemple : | ||
+ | verify /md5 bootflash: | ||
+ | | ||
+ | | ||
+ | La commande renvoie la hash MD5 du binaire ; on doit ensuite le comparer au hash fournit sur le site de Cisco. | ||
+ | |||
+ | Pour vérifier directement si le hash est bon on peut le fournir en paramètre de la commande : | ||
+ | verify /md5 bootflash: | ||
+ | | ||
+ | | ||
+ | |||
+ | Voir aussi les [[http:// | ||
+ | |||
+ | ====IP SLA==== | ||
+ | |||
+ | **IP SLA** (Service Level Agreement) est un mécanisme permettant de tester le réseau et d'en tirer les indicateurs suivants : | ||
+ | * connectivité | ||
+ | * Timeout | ||
+ | * RTT (Round-trip time) | ||
+ | * gigue (aller-retour et one-way) | ||
+ | * pertes de paquets | ||
+ | * latence | ||
+ | * Mean opinion score (MOS) | ||
+ | |||
+ | Pour cela on configure un routeur en // | ||
+ | |||
+ | source : [[http:// | ||
+ | |||
+ | ====Forwarding / routing==== | ||
+ | |||
+ | Le **forwarding** c'est routage effectif des paquets. Tous les routeurs le font par défaut.\\ | ||
+ | Le **routing** implique construction de tables de routage ; un routeur IP fait toujours du forwarding ; mais s'il n'a pas de routage dynamique (OSPF, EIGRP) il ne fait pas de routing. | ||
+ | |||
+ | ====Changer d' | ||
+ | |||
+ | Sur les châssis Catalyst, qui font du routage et de la commutation, | ||
+ | <code bash> | ||
+ | Feb 28 13:49:17 switch1 425287: Feb 28 13:49:16: %SW_MATM-4-MACFLAP_NOTIF: | ||
+ | </ | ||
+ | |||
+ | Bref, la solution est d' | ||
+ | <code bash> | ||
+ | router1#sh int vlan 724 | i address | ||
+ | Hardware is EtherSVI, address is 0023.eaXX.XXX0 (bia 0023.eaXX.XXX0) | ||
+ | ! | ||
+ | router1#sh int vlan 725 | i address | ||
+ | Hardware is EtherSVI, address is 0023.eaXX.XXX0 (bia 0023.eaXX.XXX0) | ||
+ | </ | ||
+ | |||
+ | Puis de trouver une adresse MAC libre (par exemple lister la plage d' | ||
+ | <code bash> | ||
+ | router1# | ||
+ | chassis MAC addresses: 1024 addresses from 0023.eaXX.XXX0 to 0023.eaXX.XXXf | ||
+ | </ | ||
+ | |||
+ | On voit que l’adresse MAC attribuée par défaut à toute les SVIs est la première de la plage. Il faut donc en prendre d' | ||
+ | <code bash> | ||
+ | interface vlan724 | ||
+ | | ||
+ | ! | ||
+ | interface vlan725 | ||
+ | | ||
+ | ! | ||
+ | ! etc... | ||
+ | </ | ||
=====Notes===== | =====Notes===== | ||
Line 1778: | Line 1464: | ||
ETTD/ETCD (Equipement Terminal de Traitement/ | ETTD/ETCD (Equipement Terminal de Traitement/ | ||
+ | AUI pour se connecter à un transsiver externe pour conversion vers un type de média spécifique | ||
+ | BRI port pour les connexion ISDN | ||
+ | |||
+ | ====Standards IEEE==== | ||
+ | |||
+ | 802.3z = 1000BASE-SX | ||
+ | 802.3ab = 1000BASE-T | ||
+ | 802.5 = token ring | ||
+ | 802.3ae = 10 Giga Ethernet | ||
+ | 802.3u = 100BASE-TX | ||
+ | |||
+ | =====Troubleshot===== | ||
+ | |||
+ | * [[http:// | ||
+ | * [[http:// | ||
=====Liens===== | =====Liens===== | ||
Line 1783: | Line 1484: | ||
* http:// | * http:// | ||
* [[http:// | * [[http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ |
informatique/cisco/start.txt · Last modified: 2019/02/27 16:26 by pteu