Cisco

De Linuxmemo.

Sommaire

[modifier] Les mémoires du CISCO

  • mémoire RAM (zone de travail du routeur)

tables de routage, les caches, les buffers, la configuration de travail "running-config" (cette version est rechargée de la NVRAM à chaque nouvelle réinitialisation du routeur).

  • mémoire NVRAM

La configuration de sauvegarde du routeur "startup-config", la valeur du registre de démarrage. Ce registre permet de savoir de quel endroit on va charger le logiciel (ROM, Flash, TFTP…). Lorsqu’on allume un routeur, c’est la configuration qui est en NVRAM qui va être mise en RAM et qui va être la configuration effective. Ensuite toutes les modifications seront faites en RAM et si nécessaire sauvegardées périodiquement en NVRAM. Bien sûr la NVRAM ne perd pas ses données lorsque le routeur n’est plus alimenté.

  • mémoire Flash

C’est une mémoire de type EPROM contenant le ou les logiciels (fichier O.S. en .bin). On peut charger plusieurs versions de logiciel dans la flash si nécessaire et booter sur l’une ou l’autre suivant les besoins. Cela permet d’éviter de changer de chipset (ROM) dans le routeur contrairement à ce qui se passait avant (où les modifications logicielles entraînait des changements de ROM). C’est une mémoire qui ne s’efface pas lorsque le routeur est éteint.

  • mémoire ROM

C’est une version très limitée, elle permet de repartir même si le logiciel en Flash a été perdu. En effet, elle contient le minimum du soft IOS.. La Flash permettant d’upgrader facilement le logiciel, la version installée en ROM peut être ancienne par rapport à celle de la Flash mais elle est suffisante pour repartir. C’est une mémoire ineffaçable. La ROM contient aussi les processus de diagnostic lors du boot ainsi que le programme de boot. Lors du boot , le processeur traite en premier cette zone.

En résumé, l’espace de travail est la RAM. Les autres mémoires n’étant que des mémoires de sauvegarde :

  • La NVRAM pour la configuration.
  • La Flash pour le soft.
  • La ROM pour le système minimum.

Voici en résumé la séquence de boot d’un routeur :

  1. Vérification du matériel.
  2. Lancement du programme de bootstrap avec recherche de la valeur du registre de démarrage.
  3. Chargement du logiciel et exécution.
  4. Exécution de la configuration pour spécifier l’utilisation de chaque partie du routeur.

[modifier] File systeme

Les commandes:

copy -Copies any file from a source to a destination.
delete - Deletes a file on a Flash memory device.
dir - Displays a list of files on a file system.
pwd - Displays the current setting of the cd command.
show file systems - Lists available file systems and their alias prefix names.
undelete - Recovers a file marked "deleted" on a Class A or Class B Flash file system.

[modifier] Les modes d'utilisation console

Mode "User EXEC": entrer par défaut

routeur>

Mode "Privileged EXEC": entrer par "enable", sortir par "disable"

routeur#

Mode "Global configuration": entrer par "configure terminal"

router(config)#

Mode "Interface configuration": entrer depuis le mode Global configuration par "interface type numero"

Router(config-if)#
  • Sortir du mode privilégier EXEC: Ctrl-Z ou commande "exit".

[modifier] Obtenir des informations sur un routeur inconnu

show version
show flash

show hardware
show diagbus
show inventory raw
show module
show tech-support
show system verify
show idprom ?
show idprom backplane
show idprom chassis
show idprom power-supply 1

show running-config
show startup-config

[modifier] Boot registre

[modifier] Les registre

0x102

   Ignores break
   9600 console baud

0x1202

   1200 baud rate

0x2101

   Boots into bootstrap
   Ignores break
   Boots into ROM if initial boot fails
   9600 console baud rate

0x2102

   Ignores break
   Boots into ROM if initial boot fails
   9600 console baud rate default value for most platforms

0x2120

   Boots into ROMmon
   19200 console speed

0x2122

   Ignores break
   Boots into ROM if initial boot fails
   19200 console baud rate

0x2124

   NetBoot
   Ignores break
   Boots into ROM if initial boot fails
   19200 console speed

0x2142

   Ignores break
   Boots into ROM if initial boot fails
   9600 console baud rate
   Ignores the contents of Non-Volatile RAM (NVRAM) (ignores configuration)

0x2902

   Ignores break
   Boots into ROM if initial boot fails
   4800 console baud rate

0x2922

   Ignores break
   Boots into ROM if initial boot fails
   38400 console baud rate

0x3122

   Ignores break
   Boots into ROM if initial boot fails
   57600 console baud rate

0x3902

   Ignores break
   Boots into ROM if initial boot fails
   2400 console baud rate

0x3922

   Ignores break
   Boots into ROM if initial boot fails
   115200 console baud rate

[modifier] Comment en changer

  • Set the Configuration Register from Configuration Mode:
Router#configure terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#config
Router(config)#config-register 0x2102
Router(config)#end
Router#show version
Router#reload
System configuration has been modified. Save? [yes/no]: n
Proceed with reload? [confirm]
  • Set the Configuration Register from ROMmon
ROMmon mode: envoi d'un BREAK lors du boot
rommon 1 >confreg 0x2102
You must reset or power-cycle for the new configuration register to take effect.

[modifier] Les services

[modifier] DHCP

enable
configure terminal
ip dhcp pool name
utilization mark high percentage-number [log]
utilization mark low percentage-number [log]
network network-number [{mask | /prefix-length} [secondary]]
domain-name domain
dns-server address [address2 ... address8]
bootfile filename
next-server address [address2 ... address8]
netbios-name-server address [address2 ... address8]
netbios-node-type type
default-router address [address2 ... address8]
option code [instance number] {ascii string | hex string | ip-address}
lease {days [hours [minutes]] | infinite}
end 

Exclusions:

enable
configure terminal
ip dhcp excluded-address low-address [high-address]

Vérifications:

enable
show ip dhcp pool [name]
show ip dhcp binding [address]
show ip dhcp conflict [address]
show ip dhcp database [url]
show ip dhcp server statistics [type-number]

[modifier] Web server

Il faut qu'un interface ethernet soit configurer au préalable, pour le serveur web puisse ce mettre en écoute dessus.

enable
configure terminal
ip http server
Optional:
ip http authentication {aaa | enable | local | tacacs}
ip http accounting commands level {default | named-accounting-method-list}
ip http port port-number
ip http path url
ip http access-class access-list-number
ip http max-connections value
ip http timeout-policy idle seconds life seconds requests value

Vérifications:

ip http server ?                                                    
all             HTTP server all information                                   
connection      HTTP server connection information                            
history         HTTP server history information                               
secure          HTTP secure server status information                         
session-module  HTTP server application session module information            
statistics      HTTP server statistics information                            
status          HTTP server status information

[modifier] Telnet

config t
feature telnet
exit
show telnet server
copy running-config startup-config

[modifier] SSH

config t
no feature ssh
ssh key {dsa [force] | rsa [bits [force]]}
feature ssh
exit
show ssh key
copy running-config startup-config

[modifier] NTP

show clock
configure terminal
ntp server 192.168.1.10
exit
show clock
show ntp status
ntp authentication-key ?
<1-4294967295> Key number


clock set 14:12:00 10 feb 2005

[modifier] Désactivation

no ip bootp server
no cdp run
no ip classless
no ip domain-lookup
no ip finger
no ip http server
no ip dhcp-server xx.xx.xx.xx
no ip mask-reply
no ip directed-broadcast
no ip source-route
no ip unreachables
no ip dhcp

[modifier] Astuces

Voir les connexions (netstat)

show tcp brief


Dynamips

[modifier] Sécurisation

R1(config)# security passwords min-length 10
R1(config)# security authentication failure rate 4 log
R1(config)# login block-for 60 attempts 4 within 10
R1(config)# ip access-list standard login-permit-adm
R1(config-std-nac)# permit 172.16.20.0 0.0.0.255
R1(config)# exit
R1(config)# login quiet-mode access-class login-permit-adm
// Ligne auxiliaire
R1(config)# line aux 0
R1(config-line)# no password
R1(config-line)# login
R1(config-line)# exit
// Lignes virtuelle
R1(config)# line vty 0 4
R1(config-line)# exec-timeout 5
R1(config-line)# no password
R1(config-line)# login
R1(config-line)# exit
R1(config)# service tcp-keepalives-in
R1(config)# line vty 0 4
R1(config-line)# no transport input
R1(config-line)# transport input ssh
R1(config-line)# exit
R1(config)# hostname Ottawa // définition du nom d’hôte)
Ottawa(config)# ip domain-name cisco.com // définition du nom de domaine)
Ottawa(config)# crypto key generate rsa // génération des clés asymétriques
Ottawa(config)# username emabo secret cisco123
Ottawa(config)# line vty 0 4
Ottawa(config-line)# transport input ssh
// configuration de l’authentification locale et VTY
Ottawa(config-line)# login local
Ottawa(config)# ip ssh time-out 10 // configuration des délais d’attente ssh
Ottawa(config)# ip ssh authentication-retries 3 // configuration des délais d'essai à nouveau ssh
R1(config)# no service finger // exemple du service finger

[modifier] Interface en ligne de commande avec Tcl

Les routeurs Cisco embarquent le langage Tcl via IOS. Ce qui donne accès à une interface en ligne de commande.

Exemple : tester des adresses IP

tclsh
foreach adresse {
172.1.1.1 
172.1.1.2 
172.1.1.3 
172.1.1.4
} {ping $adresse}
tclquit

[modifier] Virtualisation

This is the main component that provides the Cisco IOS emulator as well as PEMU wrapper


Dynagen

This is the interface to the dynamips software, it provides a simplified ini type configuration, frame-relay, built in switch, bridge as well as a management CLI.

gns3

Outils personnels