Имя: Пароль:
IT
 
как найти все компьютеры в сети?
0 vde69
 
25.05.15
09:11
ping - не всегда работает, например по дефолту для серверов он отключен...

может есть какой способ низкого уровня?
1 Провинциальный 1сник
 
25.05.15
09:15
Даже если пинг режется файрволом, то в любом случае при попытке пинга происходит arp-запрос, соответственно, можно увидеть его результаты. Разумеется, это сработает только внутри броадкаст-домена, за роутером ничего не узнаешь.
2 beaver1971
 
25.05.15
09:15
nmap?
3 shuhard_серый
 
25.05.15
09:16
(0) если хост не поддерживает  ICMP запросы и не рассылает брокастинги, то обнаружить его можно только полным сканированием всех диапазонов портов IP по всем протоколам

nmap тебе в помощь =)
4 ДенисЧ
 
25.05.15
09:18
arp -a
и потом nslookup по каждом IP
5 vde69
 
25.05.15
09:21
(4) Интересненнько :)
6 Kvant1C
 
25.05.15
09:21
(0)В домене можно скриптом: http://www.kovanev.net/faq/vbs/162-vbs-5
7 ДенисЧ
 
25.05.15
09:22
(5) Только учти, что это только в пределах доступности броадкаста...
8 Kvant1C
 
25.05.15
09:24
9 vde69
 
25.05.15
09:29
(7) если у меня несколько виланов то я увижу только свое и роутер маршрутизации?
10 kisobol
 
25.05.15
09:35
Пни админа
11 Бубка Гоп
 
25.05.15
09:42
LanScope
12 vde69
 
25.05.15
09:51
1. мне нужно применительно к 1с (хочу на 1с написать)
2. нужно определять компы в том числе со статическим IP вне домена в соседней подсети (в интранете)
3. изначально не известно какая ОС на компах.
4. считаем, что у устройства гарантировано есть протокол IP-4, больше ничего не известно...
13 Kvant1C
 
25.05.15
11:09
(12) Я бы все же копнул бы в сторону скриптов. То что можно сделать скриптом, можно и в 1С сделать.
14 vde69
 
25.05.15
11:46
пока остановлюсь на таком решении

Пинги = ConnectionLocal.ExecQuery("Select * From Win32_PingStatus where Address = '" + мТекущийАдрес + "'");
Для Каждого Пинг из Пинги Цикл
       Если Пинг.StatusCode = 0
      или Пинг.StatusCode = 11010 Тогда
        НоваяСтрока.Найдено = НоваяСтрока.Найдено + 1;