ping Aviso
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 13.084 ]
Homepage: https://fabio.automatizando.dev
Script que fica enviando pacotes através do comando ping para
uma determinada máquina e avisa o administrador de sistemas
por email quando a máquina deixa de responder. Bom para detectar
quedas de rede.
#!/usr/bin/perl # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # pingAviso.pl # # Script que fica enviando pacotes através do comando ping para # uma determinada máquina e avisa o administrador de sistemas # por email quando a máquina deixa de responder. Bom para detectar # quedas de rede. # # Programado por Fábio Berbert de Paula <fabio@vivaolinux.com.br> # Na web em: www.vivaolinux.com.br # # Rio de Janeiro, 25 de Julho de 2002 # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ use strict; use MIME::Entity; # módulo para envio de email # definir variáveis globais -- my $ip = '200.215.128.83'; # endereço IP do host target my $ping = '/bin/ping'; my $time = 60; # executar verificação a cada 60 segundos my $tout = 3600; # aguardar 5 minutos após a queda da máquina, só para # dar tempo de a mesma voltar em caso de reinicialização :) # mude aqui o seus endereços de email my $sysfrom = 'Fábio Berbert de Paula <fabio@vivaolinux.com.br>'; my $systo = 'suporte@vivaolinux.com.br'; my ($out,$corpo); # looping principal while (1) { $out = `$ping -c 3 $ip`; # execute o ping if ( $out !~ /bytes from/i ) { # se não recebemos uma saída positiva (bytes from), vamos avisar # o sysadmin print "$ip fora do ar, avisando por email...\n"; avisar(); } sleep(1); } sub avisar { # capturar a data e hora de agora my ($dia,$mes,$ano,$hora,$min) = (localtime(time))[3,4,5,2,1]; $ano += 1900; $mes++; $mes = sprintf("%02d",$mes); $dia = sprintf("%02d",$dia); $hora = sprintf("%02d",$hora); $min = sprintf("%02d",$min); # definir corpo da mensagem $corpo .= ' Atenção, A máquina ('. $ip . ') não está respondendo ao ping, tudo indica que a mesma está fora da rede. Favor efetuar uma verificação manual, este é um teste automático. '; $corpo .= "\nRio de Janeiro, $dia do $mes de $ano - $hora:$min hs"; # enviar email com o corpo atual my $top = build MIME::Entity From => $sysfrom, To => $systo,, Subject => "$ip fora da rede", Data => $corpo; open(MAIL,"| /usr/lib/sendmail -t"); $top->print(\*MAIL); close(MAIL); sleep($tout); }
Carregando automaticamente wireless via ndiswrapper
Script para Detectar rede Wireless
Importação de IPs do Whatsapp como Objeto do Zentyal
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Problema com nome composto e organização na tela do yad (0)
Formatando cartão de memoria que nao formata[AJUDA] (18)
Primeira vez utilizando Linux Ubuntu 22.04 e já tenho problemas… (5)
warsaw parou de funcionar após atualização do sistema (solução) (1)