Existe uma ferramenta para registrar conectividade com a Internet em um mac?

2

Meu mac é executado como um servidor com um dyndns ip. Para funcionar corretamente, ele deve estar conectado à internet o tempo todo. mas infelizmente parece que não está conectado muitas vezes durante o dia. Portanto, preciso de uma ferramenta que verifique, por exemplo, uma vez por minuto, se o Mac está conectado à Internet (ou seja, tentando acessar o google) e o grava em um arquivo de log.

Você sabe algo que pode ajudar aqui? Eu preciso verificar isso na máquina, se ela tiver internet. Mac OS 10.5. Valeu galera !!

    
por IRTFM 28.07.2009 / 18:07

4 respostas

3

Você pode instalar nagios em um mac normal, eles também são máquinas Unix:)

Um roteiro como esse faria?

 #!/bin/bash
 LOG=/tmp/LOG
 rm -f $LOG
 while ( true );
 do 
  date >> $LOG;
  curl http://www.google.com/ > /dev/null  2>> $LOG
  sleep 60 ;
 done
    
por 28.07.2009 / 23:10
3

O Nagios funciona em um Mac e é de código aberto / gratuito!

link

A instalação do Nagios permite que você transforme qualquer Mac que esteja executando o Mac OS X Server em uma estação de monitoramento de rede capaz de notificá-lo sobre problemas de hardware e software em seu servidor, geralmente antes que alguém o perceba. O Nagios pode usar tanto o e-mail quanto o SMS para notificá-lo sobre os dois problemas e a recuperação de problemas. (O último é importante, já que muitas vezes ele pode salvá-lo de uma sessão de acesso remoto tarde da noite.) Como o Nagios requer Perl, Apache, SNMP e algumas outras coisas com as quais o Mac OS X Server é fornecido ou que podem ser instaladas com facilidade, é uma ótima maneira para qualquer administrador de rede monitorar melhor sua rede.

    
por 28.07.2009 / 18:34
1

Nagios é um exagero para isso, IMHO. Além disso, uma das causas prováveis para essas fases offline extenuadas é a falta de tráfego de rede, portanto, o roteador fica off-line.

Isso será impedido pelo script do James, que eu apenas modificaria um pouco para evitar o download da página do Google a cada 60 segundos.

Basta substituir a linha curl google.com pelo seguinte

ping -c1 -t 5 www.google.com > /dev/null
if [ "$?" = "0" ]; then
    echo "I am online" > $LOG
else 
    echo "Boo, the internet is broken, google doesn't answer" > $LOG
fi

ou, se você quiser apenas registrar fases offline, modifique o script completo da seguinte forma:

#!/bin/bash
LOG=/tmp/internetlog
rm -f $LOG
while ( true );
do 
   ping -c1 -t 5 www.google.com > /dev/null
   if [ "$?" -gt "0" ]; then
       echo 'date'  " I am offline" >> $LOG
   fi

 sleep 60 ;
done

Isso substitui a chamada curl, que faz o download da página completa do google com um único ping com um tempo limite de 5 segundos, o que normalmente é suficiente.

    
por 29.07.2009 / 01:34
0

pode ser um pouco exagerado, mas eu recomendo que você use os texto do link do nagios, usando-os você pode escrever um simples shell script para fazer o que você precisa, ou eu acho que a outra alternativa que você pode usar ping simples também com o shell script, pode ser feito muito mais fácil com plugins nagios embora.

    
por 29.07.2009 / 00:44