This is an old revision of the document!
Table of Contents
Extreme Networks / EXOS
Remarques générales
Par défaut les switchs sont configurés avec 2 VRs (virtuals router), chacun doté d'une table de routage étanche : - VR-Mgmt, le VR de management avec le port d'admin (Mgmt), dont le vlan est 4095 - VR-Default, celui dans lequel tous les autres ports sont configurés
Pour les versions 16 et antérieures, le SSH est une fonctionnalité optionnelle, installable via un paquet téléchargeable dans le “download center” du site officiel (en saisissant le serial d'un éqipement).
Logs / journaux
Affichage des logs
show log messages nvram
Configuration des logs
show log configuration filter "DefaultFilter" # logguer les changements de config enable cli-config-logging # lister toutes les familles de log possible show log components # filtrer les alertes configure log filter DefaultFilter add events All severity warning # Voir les compteurs de log par catégorie <code bash> show log counters All include # configurer un rsyslog configure log target syslog 10.1.1.24:514 vr VR-Default local7 filter DefaultFilter severity Debug-Summary enable log target syslog 10.1.1.24:514 vr VR-Default local7
Système
La commande show system
renvoie beaucoup d'informations en passant la liste de commandes suivante :
show switch # modèle, infos SNMP, heure, uptime show version # version firmware, SN, liste des modules show temperature # température des sondes show power # alimentation show fans # vitesses des ventilateurs show odometers # temps depuis la mise en prod
Management
# Afficher la configuration de l'admin du switch (SSH, TELNET, idle-timeout, etc)
show management
Lister les processus
show process # (re)lancer un processus (par ex le SSHd) start process "exsshd" restart process "exsshd"
Supervision/Surveillance
top show cpu-monitoring
Gestion des utilisateurs
Créer de nouveaux comptes utilisateurs :
Créer des comptes utilisateurs + mot de passe # autres comptes administrateur : create account admin toto <PWD> pour les comptes utilisateurs + mot de passe # create account user tata <PWD>
Il n'existe que 2 niveaux de privilège, non configurables
Modifier le mot de passe d'un compte existant :
configure account <utilisateur> <nouveau MDP>
Failsafe account
Le failsafe account est un compte préconfiguré, n'apparaissant pas dans un sh conf
, qui permet de se connecter au switch quand on a perdu la mdp de son user (uniquement via la console ou control fabric par défaut). Son login est “ONE TIME FAILSAFE” par défaut, il affiche un challenge à envoyer au GTAC qui génère un OTP à saisir. Pour le désactiver :
configure failsafe-account deny all
SNMP
Supprimer la configuration SNMP par défaut (qui n'apparait pas avec une show conf mais que l'on peut voir avec un show configuration snmp detail
) :
configure snmpv3 delete community private disable snmpv3 default-group disable snmpv3 default-user
Commandes UNIX-like
Certaines commandes sont similaires aux UNIX/Linux :
cd cp exit history ls mkdir mv nslookup ping pwd top reboot reboot slot1 # redémarrer le slot1, dans la cas d'un stack reboot time <month> <day> <hour> <min> <sec> # planifier un reboot rm rmdir scp2 ssh2 telnet tftp vi
Firmware
Pour obtenir la version d'EXOS (ici 21.1.1.4) :
show version Switch : 800550-00-05 1531N-01234 Rev 5.0 BootROM: 1.0.2.1 IMG: 21.1.1.4 X460-G2-VIM-2Q-B-1: 800555-00-03 1512N-40846 Rev 3.0 PSU-1 : Internal PSU-1 800515-00-04 1529E-01234 PSU-2 : Internal PSU-2 800515-00-04 1529E-01235 Image : ExtremeXOS version 21.1.1.4 21.1.1.4-patch1-5 by release-manager on Thu Jun 16 14:19:33 EDT 2016 BootROM : 1.0.2.1 Diagnostics : 5.4
Cette commande retourne également la liste des commutateurs de la stack et les modules additionnels, ainsi que leurs serial number respectifs (ici SN=1531N-01234).
MAJ firmware
Envoi du firmware sur la partition secondary du switch :
- via tftp
download image 1.1.1.1 <filename> vr "VR-Default" secondary
- via clé USB
# puis vérifier qu'elle soit reconnue show memorycard # copier le fichier .xos download image memorycard summitX-22.2.1.5.xos secondary Installing to Switch........ Image installed successfully This image will be used only after rebooting the switch!
- via scp
scp2 user@host:summitX-22.2.1.5.xos summitX-22.2.1.5.xos
Une fois l'image copiée sur le switch, modifier l'image sur laquelle on va booter au prochain redémarrage :
use image partition primary
# puis redémarrer
reboot
Debug
# snapshot pour le support show tech-support # alternative : enregistrement dans le fichier : /usr/local/tmp/show_tech.log.gz show tech-support all logto file # augmenter la verbositer de certaines fonctions (XXX=fdb, deviceInfo, linkInfo, portStats, etc...) debug hal show platform XXX # autres commandes utiles show log messages nvram show log messages memory show debug system-dump
Configuration
Le fichier de configuration est primary.cfg, il est situé dans le dossier par défaut du terminal, à savoir /usr/local/cfg
. Ce dernier contient notamment les fichiers :
- secondary.cfg : le fichier de configuration alternative
- nopassword.cfg : le fichier de configuration amputée du mot de passe admin, utilisé pour faire un password recovery (voir plus loin)
- par défaut les fichiers de policy/access-list
.pol
Sauvegarde
# sauvegarde locale dans le fichier lisible "/usr/local/cfg/config-extr.xsf" save configuration as-script config-extr Do you want to save configuration to script config-extr.xsf? (y/N) Yes # l'envoyer en tftp tftp put 10.1.2.201 vr "VR-Default" config-extr.xsf # on peut lancer la cmd à distance en SSH : ssh user@extr tftp put 10.1.2.201 vr "VR-Default" /usr/local/cfg/config-extr.xsf
# la même chose en une seule ligne de commande et sans l'extension .xsf : upload configuration 10.1.2.201 config-extr vr "VR-Default"
factory-reset
# reset tout sauf les comptes admin, la date et la conf du stack (à moins qu'on précise "all") unconfigure switch [all]
Ports / VLANs
Créer un VLAN
create vlan TEST-VISIO
configure vlan TEST-VISIO tag 50
Ajouter un port dedans :
# il faut d'abord retirer le port du précédent vlan s'il est "untagged" configure vlan "Default" delete ports 2 configure vlan "TEST-VISIO" add ports 2 untagged # port trunk (taggué) : on peut utiliser le nom ou le tag du VLAN configure vlan "TEST-VISIO" add ports 48 tagged configure vlan 2 add ports 48 tagged
# Désactiver / activer un port disable port 20 enable port 20 # modifier la description d'un port configure ports 1:14 display-string "desc_courte" configure ports 1:14 description-string "description verbeuse" # pour partitionner un port (pour un 40Gb compatible, qui nécessite un câble spécifique) configure port 1:1 partition # cela va créer 4x port de 10Gb, du 1:1 au 1:4
Commandes de vérification, en vrac :
# afficher les VLANs configurés sur un port (par ex le 2) show port 2 vlan description Untagged Port /Tagged VLAN Name VID VLAN Description -------- -------- -------------------- ---- ------------------------------------ uplk-foo Untagged Default 1 Tagged VLAN2 2 TEST-VISIO 50 # afficher l'état et la conf d'un port show port 2 information [ detail ] # afficher l'état et la conf d'un vlan show vlan 2 # interroger le FIB (table d'adresse MAC par port) show fdb bc:30:5b:12:34:56 Mac Vlan Age Flags Port / Virtual Port List -------------------------------------------------------------------------------- bc:30:5b:12:34:56 Default(0001) 0000 dhm 1:14 # alternatives : show fdb ports <port> show fdb vlan <vlan> # interroger la table ARP (association adresse IP <-> MAC) show iparp 10.1.2.201 sh iparp 10.1.2.201 VR Destination Mac Age Static VLAN VID Port VR-Default 100.1.2.201 bc:30:5b:12:34:56 20 NO Default 1 1:14 [..] # alternatives : show iparp bc:30:5b:12:34:56 show iparp ports <port> show iparp vlan <vlan>
jumbo frames
Configuration de la MTU :
# sur un port enable jumbo-frame port <all|port_list> # sur un vlan configure ip-mtu <MTU Size (Default 1500)> vlan <VLAN name>
Agrégat
Créer un agrégat permet de regrouper plusieurs ports physique pour un créer un logique.
# agrégat de 2x port : 1:1 et 1:2 configure sharing 1:1 add 1:2 # => créer l'agrégat 1:1, qui doit être le n° du premier port inclus dedans (= "master port") # désactiver l'agrégat : disable sharing 1:1
“Show commandes” :
show sharing Load Sharing Monitor Config Current Agg Min Ld Share Ld Share Agg Link Link Up Master Master Control Active Algorithm Group Mbr State Transitions ================================================================================ 1:1 LACP 1 L2 1:1 - R 0 L2 1:2 - R 0 L2 1:3 - R 0 L2 1:4 - R 0 ================================================================================ Link State: A-Active, D-Disabled, R-Ready, NP-Port not present, L-Loopback Minimum Active: (<) Group is down. # active links less than configured minimum Load Sharing Algorithm: (L2) Layer 2 address based, (L3) Layer 3 address based (L3_L4) Layer 3 address and Layer 4 port based (custom) User-selected address-based configuration Custom Algorithm Configuration: ipv4 L3-and-L4, xor Number of load sharing trunks: 1 show lacp [ lag 1 [ detail ] ] Lag Actor Actor Partner Partner Partner Agg Actor Sys-Pri Key MAC Sys-Pri Key Count MAC -------------------------------------------------------------------------------- 1:1 0 0x03e9 02:04:96:12:34:56 0 0x041c 4 02:04:96:12:34:56 Port list: Member Port Rx Sel Mux Actor Partner Port Priority State Logic State Flags Port -------------------------------------------------------------------------------- 1:1 0 Current Selected Collect-Dist A-GSCD-- 1052 1:2 0 Current Selected Collect-Dist A-GSCD-- 2052 1:3 0 Current Selected Collect-Dist A-GSCD-- 3052 1:4 0 Current Selected Collect-Dist A-GSCD-- 4052 ================================================================================ show sharing detail show sharing port-based keys show lacp counters # multi-lag = lag multi-chassis show mlag port 10 show mlag peer
Exemple : configurer un sharing sur les ports 20-21 face à un bonding (Linux) en mode=0 (balance-rr) :
enable sharing 20 grouping 20-21 algorithm address-based L2
- ref sur le bonding : https://www.kernel.org/doc/Documentation/networking/bonding.txt
mirroring / monitoring
create mirror toto configure mirror toto add vlan 9 configure mirror to port 1 enable mirror
Exemple de mirrorring 1→many = utilisation d'une loopback obligatoire
enable mirroring to port-list 2:5-2:7 loopback-port 3:1 configure mirroring add port 6:5 ingress
Spanning-tree
En vrac :
# (dés)activation du domaine s0 disable stpd s0 enable stpd s0 configure stpd s0 priority 16384 configure stpd s0 mode dot1w configure stpd s0 add vlan Default ports 5:1 dot1d | emistp | pvst-plus # configurer un port edge # attention cela bloque le port si l'on reçoit un BPDU dessus # les bridges sous Linux peuvent en générer par exemple configure stpd s0 ports link-type edge 1:14 edge-safeguard enable bpdu-restrict
Debug / diagnostique
# lister l'état STP des ports du domaine s0 show stpd s0 ports [..] 1:12 802.1D FORWARDING 20000 eDee-d-S-- 128 800c 40:00:02:04:96:12:34:56 1:13 802.1D FORWARDING 20000 eDee-w-S-- 128 800d 40:00:02:04:96:12:34:57 # exemple de résultat : PC Linux ponté qui génère des BPDUs en 1:12 # et port edge 'normal' en 1:13 # # logs # # logguer les changements de topo STP sur les ports edge : configure stpd s0 trap topology-change edge-ports on # ajouter des msg de log configure log filter "DefaultFilter" add events "STP.State.Topology" configure log filter "DefaultFilter" add events "STP.State.PortState" configure log filter "DefaultFilter" add events "STP.SendClntTopoChgMsg" # vérifier qu'ils sont (I)ncluded = Y dans notre filtre show log configuration filter "DefaultFilter" # pour les msg de type : Debug-(S)ummary, Debug-(V)erbose ou Debug-(D)ata, il faut ajouter cette cmd : enable log debug-mode # voir le nb de msg généré pour un type de log : show log counter "STP.State.Topology"
sources :
CDP / LLDP
show lldp neighbors
enable cdp ports all
show cdp neigbors
Stacking
Certains modèles sont stackable, jusqu'à 8 par pile. Cela permet de regrouper plusieurs équipements physiques en un switch logique, administrable avec la même IP. Les ports seront accessibles via <slot#>:<port#>
(par ex : le port 5 du slot 3 sera en 3:5
). Dans chaque stack, un switch est master (c'est lui qui gère le stack) et au moins un autre est backup (il prendra le relais si le master tombe).
Infos en vrac :
- pour monter, un stack tous les membres doivent avoir la même partition active
- l'élection se fait uniquement entre “master-capable” ; ceux-ci sont “Backup”, les autres membres sont “Standby” (cf
show stacking
), les switchs non-inclus ou en erreur apparaissent comme “<none>”. - les master-capable doivent avoir le même niveau de licence
- seul le port Mgmt du slot master est utilisable
- tous les ports console sont utilisable mais seul celui du master peux modifier la configuration
- le numéro de slot du master apparaît dans le prompt (ex : Slot-2 sw-cc-s1.7 #)
Commandes en vrac :
show slot # affiche la topologie (daisy-chain ou ring), les @ MAC, numéros de slot et les rôles de chaque slot show stacking show stacking configuration # affiche les ports utiliser pour monter le stack sur le switch sourant show stacking-support # Pour configurer le sports utilisés pour monter le stack : # native ce sont les ports des modules additionnel dédiés VIM ; # alternate ce sont des ports classiques convertis en stack-ports configure stacking-support stack-ports all selection [ alternate | native ] # redémarre tous les slots en commençant pas les slaves reboot stack-topology # afficher les firmwares installés sur chaque partition de chaque slot : show version images # # monter une pile : # # sur tous les switchs enable stacking-support # sur le master uniquement enable stacking configure stacking easy-setup configure stacking slot-number automatic configure stacking priority # pour re-numéroter le slot 5 (34:56) en 6 configure stacking node-address 00:04:96:12:34:56 slot-number 6 # permet d'activer ou désactiver la capacité des sw à être master ou pas configure stacking slot 2 master-capability on|off # # pour démonter un stack : # # reset factory default unconfigure switch disable stacking unconfigure stacking Warning: This command will reset all stacking parameters to factory defaults on the specified node(s). unconfigure stacking-support # re-synchroniser un slot (5 ici) avec le master (cela le fera rebooter) synchronize slot 5 # synchroniser le stack synchronize stacking # forcer une bascule master -> backup (vérifier qu'ils soient sync) run failover
Tips
password recovery
- se connecter en console
- redémarrer le switch
- presser “espace” quand le message suivant apparait : “Press and hold the <spacebar> to enter the bootrom: x”
- on entre en bootROM, la console minimaliste. Saisir :
config none reboot
- au boot, se logger en admin avec un mdp vide
- répondre “No” à toute les sollicitations de l'assistant de conf, puis
vi autoexec.xsf
create account admin toto titi
→ ce fichier, “autoexec.xsf”, sera exécuté automatiquement au prochain boot. Il créera un administrateur “toto”.
- reboot (ne SURTOUT PAS sauvegarder la conf)
- au reboot on se log avec l'utilisateur=toto, mdp=titi
- puis on modifie le mdp du compte admin, on sauvegarde et on reboot
configure account admin <NEW_PWD> save reboot
- au reboot, on se log avec le compte admin ; si ça marche, on n'a plus qu'à supprimer l'utilisateur “toto” et à sauvegarder :
delete account toto save