Claro, instale o nmap e execute:
nmap -sP 192.168.0.1-254
É claro que você precisará substituir o intervalo de IPs pelos valores apropriados para sua rede.
Estou usando o linux. Como você costuma encontrar máquinas na rede local?
Eu acho que a abordagem correta seria inspecionar a LAN em um nível mais baixo do que o IP, então a varredura do ARP é uma escolha melhor.
Veja minha resposta a essa pergunta duplicada , eu sugeri nast -m .
Muitos métodos são possíveis. Gostaria de começar com um exame nmap .
Use o arpwatch , ele permite que você encontre outras máquinas sem varrer a rede
Como uma alternativa para a varredura de sua rede, se você tiver acesso ao switch ou roteador, você pode verificar o roteador diretamente para sua tabela arp, que deve listar todas as máquinas conectadas e seus endereços MAC. Se você está apenas procurando mapear sua rede e ver o que está on-line, essa pode ser uma solução melhor / mais fácil.
Se você tiver um roteador / switch decente, também poderá obter essas informações por meio do SNMP, em vez de fazer login diretamente no equipamento, o que tem seu próprio conjunto de vantagens quando se trata de mapear regularmente sua rede.
Uma boa ferramenta gráfica é a rede Auto Scan ( link ). Também mostra portas abertas. Para o Windows, sugiro Look @ lan, que faz a mesma coisa.
Concordo nmap e arpwatch são boas ferramentas, você também pode usar fping .
Aqui eu completei um script python existente do bortzmeyer que faz o trabalho para você, o script é muito rápido. mas primeiro você precisa instalar o módulo ipcalc e psyco
import os, sys, re
from threading import Thread
import psyco, ipcalc
class ping(Thread):
def init(self, ip, version):
Thread.init(self)
self.ip =ip
self.version=version
self.tab=("No response", "Partial Response", "Alive")
def run(self):
try:
if self.version==4: req=os.popen("ping -c2 -q "+self.ip, "r")
elif self.version==6: req=os.popen("ping6 -c2 -q "+self.ip, "r")
while 1:
reponse=req.readline()
if not reponse: break
stat = re.findall(re.compile("(\d) received"), reponse)
if stat:
print "Status ", self.ip, " ",self.tab[int(stat[0])]
except:
raise sys.stderr.write("Error in ping.\n")
sys.exit(-1)
se __name __ == '__ main__':
psyco.full ()
experimentar:
address = sys.argv 1
if address.find ('/') > 0:
net = ipcalc.Network (endereço)
outro:
net = [endereço]
para ip na net:
p = ping (str (ip), 4)
p.start ()
exceto:
passar
Eu uso (estará disponível para download quando estiver pronto) uma ferramenta que eu escrevi que lida com a administração de DNS / DHCP e SNMP dos switches. Se algo não estiver no DHCP, eu pelo menos recebo um endereço MAC do switch, mas tomamos uma decisão política de colocar tudo no DHCP, mesmo se as próprias máquinas estiverem estaticamente IPed, para ajudar no rastreamento do espaço de endereço.
Se você está falando sobre encontrar algo que talvez você não tenha colocado lá, eu concordaria com o nmap. Ou, se você está preocupado com questões legais / políticas, apenas um script que envolve o ping ...
Tags networking linux