[PERL] Telecharger config cisco

Résolu/Fermé
KrSt Messages postés 8 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 20 mars 2007 - 20 mars 2007 à 12:29
 Utilisateur anonyme - 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 !
A voir également:

9 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
20 mars 2007 à 12:44
Salut,

tu devrais peut être utiliser le module Net::TFTP
0
KrSt Messages postés 8 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 20 mars 2007 1
20 mars 2007 à 14:25
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.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
20 mars 2007 à 14:39
je crois que tu dois utiliser l'ip de serveur et pas celui de routeur
0
KrSt Messages postés 8 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 20 mars 2007 1
20 mars 2007 à 14:41
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
20 mars 2007 à 14:57
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:\\....
0
KrSt Messages postés 8 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 20 mars 2007 1
20 mars 2007 à 15:05
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
https://metacpan.org/pod/release/DTOWN/Net-SNMP-5.2.0/lib/Net/SNMP.pm
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
20 mars 2007 à 15:27
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.
0
KrSt Messages postés 8 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 20 mars 2007 1
20 mars 2007 à 15:33
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
0
aakao Messages postés 1 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 11 mars 2008
11 mars 2008 à 14:35
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.
0
Utilisateur anonyme
29 oct. 2008 à 13:44
a quoi cisco sert pour l'emulateur de ds s'il te plait explique moi
0