Я не абсолютно уверен, что понимаю то, что Вы просите. Но смотрите на dsquery.exe, который может получить много интересных вещей от Active Directory.
Несомненно, установка nmap и затем выполненный:
nmap - SP 192.168.0.1-254
Конечно, необходимо будет заменить диапазон IP соответствующими значениями для сети.
Я думаю, что правильный подход должен был бы осмотреть LAN на уровне ниже, что IP, затем сканирование ARP является лучшим выбором.
См. мой ответ на этот дублирующийся вопрос, я предложил nast-m.
Как альтернатива сканированию Вашей сети, если у Вас есть доступ к коммутатору или маршрутизатору, можно проверить маршрутизатор непосредственно, поскольку это - arp таблица, которая должна перечислить все подключенные машины и их MAC-адреса. Если Вы просто надеетесь отображать свою сеть и видеть то, что онлайн, это может быть лучшим/легче решением.
Если у Вас есть достойный маршрутизатор/переключатель, можно также смочь захватить эту информацию по SNMP вместо того, чтобы войти в оборудование непосредственно, которое имеет свой собственный набор преимуществ когда дело доходит до регулярного отображения сети.
Хороший графический инструмент является сетью Auto Scan (http://autoscan-network.com/). Это показывает открытые порты также. Для Windows я предложил бы Look@lan, который делает то же самое.
Я согласовываю nmap, и arpwatch являются хорошими инструментами, можно использовать также fping.
Здесь я завершаю существующий сценарий Python от bortzmeyer, которые делают задание для Вас, сценарий очень быстр. но сначала необходимо установить ipcalc модуль и психо
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)
if __name__=='__main__':
psyco.full()
try:
address=sys.argv1
if address.find('/') > 0:
net=ipcalc.Network(address)
else:
net=[address]
for ip in net:
p=ping(str(ip), 4)
p.start()
except:
pass
Я использую (будет доступно для скачивания, когда это готово), инструмент, который я записал который дескрипторы и администрирование DNS/DHCP и обходы SNMP переключателей. Если что-то не находится в DHCP, я, по крайней мере, получаю MAC-адрес от переключателя, но мы сделали стратегическое решение для помещения всего в DHCP, даже если самими машинами является статически IPed, только для помощи в отслеживании адресного пространства.
Если Вы будете говорить о нахождении чего-то, что, возможно, Вы не помещали там, то я соглашусь с nmap. Или, если Вы волнуетесь по поводу легальных / политических вопросов, просто сценарий, который переносит ping...