IPscan em shell script
Fiz um IPscan em shell script que mostra se o host está on e seu host name obtido com o nslookup, é simples e como eu alterei algumas opções do ping como o numeros de ping e o tempo de espera por resposta ele é mais confiável para rede interna mesmo, eu estava pensando se tem algum jeito de fazer ele ficar mais rápido mais não descobri como.
Qualquer critica é bem vinda!!!
Qualquer critica é bem vinda!!!
Descrição
Fiz um IPscan em shell script que mostra se o host está on e seu host name obtido com o nslookup, é simples e como eu alterei algumas opções do ping como o numeros de ping e o tempo de espera por resposta ele é mais confiável para rede interna mesmo, eu estava pensando se tem algum jeito de fazer ele ficar mais rápido mais não descobri como.
Qualquer critica é bem vinda!!!
Qualquer critica é bem vinda!!!
#!/bin/bash #versão 2 usando ping echo -e "\033[32m digite a faixa de ip a ser scaneada (ex: 10.0.0.1-35): \033[m" read ip base=$(echo "$ip" | cut -d "." -f 1-3) #pega o numero digtado e retira o endereço de rede var1=$(echo "$ip" | cut -d "." -f 4 | cut -d "-" -f 1) # pega o numero digitado e retira o primeiro end var2=$(echo "$ip" | cut -d "." -f 4 | cut -d "-" -f 2) #pega o numero digitado e retira o ultimo end while test "$var1" -le "$var2" #faz ping enquanto houver ips do ping -c 1 -W 1 "$base"."$var1" > /dev/null # -c para 1 ping e -W para 1 segundo de espera por ping if [ "$?" -ne 1 ] # a opção $? serve para pegar o resultado do ultimo comando digitado then nome=$( nslookup "$base"."$var1" | fgrep "name =" | cut -d \= -f 2 ) echo -e "\033[32m $base.$var1 on $nome \033[m" else echo -e "\033[31m $base.$var1 off \033[m" fi var1=$(( $var1 + 1)) done
nmap -sP 192.168.1.0/24 | grep Host | awk '{print $2}'