Les Allergies
Alimentaires
Posez votre question Signaler

[PERL] Telecharger config cisco [Résolu]

KrSt 8Messages postés 12 mars 2007Date d'inscription - Dernière réponse le 29 oct. 2008 à 13:44
Bonjour !
Je cherche en ce moment à telecharger les fichiers de configuration d'un routeur cisco par le biais d'un script perl et d'un serveur tftp.
Le pc et le routeur sont reliés en Ethernet.
Voici mon script actuellement (je découvre perl...)
#!/usr/bin/perl 

use Net::Telnet;
# IP du routeur
$ip = '192.168.0.252';
$telnet = new Net::Telnet (Output_log => 'log',Timeout=>10,Errmode=>'return',Binmode=>'true',Telnetmode=>1,Cmd_remove_mode => 1, Host => $ip);
# IP de l'hote TFTP
$iphote = '192.168.0.38';

print "\nConnect to $ip...\n";

if (defined ($telnet))
{
 	  $telnet->print('en');
	  # récupération de la configuration de base
	  $telnet->print('copy flash:config.text tftp://$iphote');
	  # récupération de la VLAN Database
	  $telnet->print('copy flash:vlan.dat tftp://$iphote/vlan.dat');
}

Le script ne fonctionne pas.. est ce que quelqu'un saurait me guider ?
Merci d'avance !
Lire la suite 

[PERL] Telecharger config cisco »

10 réponses
Réponse
+0
moins plus
Salut,

tu devrais peut être utiliser le module Net::TFTP
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour ta réponse !

J'ai installé le module tftp, et j'ai réecrit mon script de cette façon:

#!/usr/bin/perl 

use Net::TFTP;
# IP du routeur
$ip = '192.168.0.252';
$localfile = 'C:\\Test\\config.txt';

print "\nConnect to $ip...\n";
{
	$tftp = Net::TFTP->new($ip, BlockSize => 1024);
	$tftp->get("flash:config.text", $localfile);
}


Par contre ça ne fonctionne pas. Le fichier "config.txt" est bien crée mais il est vide ...
Est ce que l'erreur vient du chemin que je lui indique ? Je ne sais acceder à la configuration que de cette façon, je ne vois pas quel autre "chemin" je pourrais lui donner en entrée :s

J'en arrive exactement au même point qu'avec mon script precedent.
Ajouter un commentaire
Réponse
+0
moins plus
je crois que tu dois utiliser l'ip de serveur et pas celui de routeur
Ajouter un commentaire
Réponse
+0
moins plus
Ca fait exactement la meme chose avec l'IP du serveur.
D'ailleurs si je fais ça je ne lui donne à aucun moment l'IP du routeur dont je veux qu'il recupere la config ! :-s
Ajouter un commentaire
Réponse
+0
moins plus
Je vois que la syntaxe est

$tftp->get("remotefile", "localfile");

Si je comprends bien tu télécharge depuis win sur linux

localfile - ça sera le fichier qui se trouveras sur ton client (linux)
remotefile - c'est le fichier que tu dois télécharger
#!/usr/bin/perl 

use Net::TFTP;
# IP du routeur
$ip = '192.168.0.252';
$remotefile = 'C:\\Test\\config.txt';
$localfile = '/home/krst/config_win.txt';

print "\nConnect to $ip...\n";
{
	$tftp = Net::TFTP->new($ip, BlockSize => 1024);
	$tftp->get($remotefile, $localfile);
}


Je ne suis pas sûr pour le chemin avec C:\\....
Ajouter un commentaire
Réponse
+0
moins plus
Pas tout à fait, je télécharge depuis linux sur win.

En fait, je souhaite aller récupérer le fichier de configuration d'un routeur cisco directement dans le routeur !

D'habitude je me connecte en telnet au routeur et utilise la commande "copy flash:config.text tftp://x.x.x.x"

Je voudrais faire ça à distance en executant un script Perl.

Là je suis en train de me renseigner sur la librairie SNMP
http://search.cpan.org/~dtown/Net-SNMP-5.2.0/lib/Net/SNMP.pm
Ajouter un commentaire
Réponse
+0
moins plus
Regarde plutôt Net::Telnet::Cisco
Voir plus bas Backup via TFTP

librairie SNMP
Pour l'info il ne s'agit pas d'une librairie mais d'un module Perl.
Ajouter un commentaire
Réponse
+0
moins plus
Oui ! Je pense qu'avec celui là ça devrait aller !
En plus de ça j'utilise pour mes tests un routeur cisco neuf sur auquel je me suis contenté de donner une adresse ip (aucun mot de passe de définit) et je viens de m'apercevoir que si aucun mot de passe n'est defini telnet coupe la connexion !

Donc ça devrait aller mieux ...
Merci beaucoup pour ton aide en tout cas ;)

A voir :
Regarde plutôt Net::Telnet::Cisco
Voir plus bas Backup via TFTP
Ajouter un commentaire
Réponse
+0
moins plus
lut a tous, je voudrais flasher mon PA authomatiquement en telnet, j'ai deja un srcipt qui test si des nouvelles version d'OS sont dispo sur mon serveur, mais je ne connais pas les commande pour flasher authomatiquement, si qqn peut me renseigner merci d'avance.
kevine11- 29 oct. 2008 à 13:44
a quoi cisco sert pour l'emulateur de ds s'il te plait explique moi
Ajouter un commentaire
Ce document intitulé « [PERL] Telecharger config cisco » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?