De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Marcos Helbert de Almeida Fontana
Data de Publicação: 25 de Julho de 2005
É a primeira vez que escrevo aqui e vou tentar ajudar aqueles que dispõe de muitos roteadores cisco e cyclades em sua rede. Neste fim de semana tive um problema com um cyclades que foi reconfigurado e perdeu várias rotas. Montei a seguinte solução para backup de configurações dos retoadores usando a linguagem expect.
Para rotadores cisco é necessário o script seguinte:
#!/usr/bin/expect #cisco.exp #####Path e arquivos necessarios set logpath "/backup/cisco" set roteadores "/backup/cisco/roteadores.txt" ############################################################################## #####Password e Enable Password set pass "SenhaDoCisco" set enapass "SenhaDeEnableDoCisco" ############################################################################## set host "" set data [exec date +%Y%m%d] set timeout 20 #Cria diretorio (se nao existe) if {!([file exists $logpath/cisco.$data])} then { set MakeDir [exec mkdir $logpath/cisco.$data]} # telnet para Ciscos -- pega configuracao set lista [open $roteadores r] while {[gets $lista host] > 0} { #Telnet para os Ciscos spawn telnet $host expect { "word:" { send "$pass\r" expect ">" send "enable\r$enapass\r" expect "#" send "term len 0\r" #Aqui estamos logados no router #Vamos agora pegar as configuracoes set logfile "$logpath/cisco.$data/$host.$data.conf" log_file -noappend $logfile expect "#" send "wr t\r" expect "#" log_file send "\r" expect "#" #Agora a saida de "show tech" set logfile "$logpath/cisco.$data/$host.$data.tech" log_file -noappend $logfile send "show tech\r\r\r" expect "#" log_file close wait } timeout { close wait }} } close $lista
Para os cyclades:
#!/usr/bin/expect #cyclades.exp #####Path e arquivos necessarios set logpath "/backup/cyclades" set roteadores "/backup/cyclades/roteadores.txt" ############################################################################## #####User e password set user "UsuarioDoCyclades" set pass "SenhaDoCyclades" ############################################################################## set host "" set data [exec date +%Y%m%d] set timeout 20 #Cria diretorio (se nao existe) if {!([file exists $logpath/cyclades.$data])} then { set MakeDir [exec mkdir $logpath/cyclades.$data]} # telnet para Cyclades -- pega configuracao set hostlist [open $roteadores r] while {[gets $hostlist host] > 0} { #Telnet para os Cyclades spawn telnet $host expect { "login :" { send "$user\r" expect "Password :" send "$pass\r" expect "#" send "1\r" #Aqui estamos logados no router #Vamos agora pegar as configuracoes set logfile "$logpath/cyclades.$data/$host.$data.conf" log_file -noappend $logfile expect "#" send "l\r" expect "#" send "\r" #Cyclades tem a saida pagina expect { "More" { send -- " ";exp_continue } "#" {} } log_file close wait } timeout { close wait }} } close $hostlist
Isso deve resolver praticamente os problemas com backup dos routers. Pode-se ainda criar um servidor de tftp em alguma máquina e colocar nestes scripts uma rotina que grave nestes servidores um backup prontinho para ser restaurado.
Error: No site found with the domain 's2.dicas-l.com.br' (Learn more)