Verificando existência de computadores na rede

Publicado por Guilherme Oliveira (última atualização em 17/11/2009)

[ Hits: 7.004 ]

Download pingaediz.sh.tar.gz




Esse era um exercício da minha faculdade, talvez o mesmo possa acontecer com vocês.

O software deve informar quais computadores na faixa de IP 10.*.*.* estão conectados ou não (respondem ou não ao ping).

Salve os dois arquivos e execute o arquivo teste.sh. Esse teste vai demorar bastante tempo, mas funciona direitinho!

O que pode ser aproveitado desse exercício é a utilização de repetições, pipeline, manipulação de strings. É interessante!

  



Esconder código-fonte

[teste.sh]

#!/bin/bash

oct1=$( seq 255 )
oct2=$( seq 255 )
oct3=$( seq 255 )

for i in $oct3; do
    for j in $oct2; do
   for k in $oct1; do
      sh pingaediz.sh "10."$i"."$j"."$k
    done
    done
done


[pingaediz.sh]

resultado=$( ping -c1 -t3 $1 | grep "packet loss" | cut -c36-51)
if [ "$resultado" = "100% packet loss" ]; then
   echo "Host " $1 "nao encontrado"
else
   echo "Host " $1 "encontrado"
fi

Resultado no console

Host  10.1.1.1 nao encontrado
Host  10.1.1.2 nao encontrado
Host  10.1.1.3 nao encontrado
Host  10.1.1.4 nao encontrado
Host  10.1.1.5 nao encontrado
Host  10.1.1.6 nao encontrado


Scripts recomendados

Samba - Forçar usuário a alterar senha no próximo logon

Cópia de arquivos

zsh: Função para validação de IP (IPv4)

Gravando 2 CDS ao mesmo tempo

Montar Imagem ISO no Nautilus-Script ou Nautilus-Actions


  

Comentários
[1] Comentário enviado por removido em 17/11/2009 - 08:37h

Se eu mudar para classe "C" eu também teria o mesmo processo ?

Obrigado.

[]'s

[2] Comentário enviado por rambadra em 18/11/2009 - 15:43h

amigo voce pode usar o fping ou nmap para testar toda uma rede ou ranges de host. O script ficaria bem mais rapido.

[3] Comentário enviado por instantware em 19/11/2009 - 16:12h

Acredito que o importante seja o aprendizado. Até porque para isso uso utilitários gráficos. Até porque o que vale mesmo é saber como se faz, aprender um pouco sobre repetições, coisa assim.


Contribuir com comentário