У меня в лаборатории много серверов Windows. Я хотел использовать ping-рассылку для обнаружения машин. Я стараюсь избегать центрального сервера для ведения списка машин, так как мне кажется, что это единая точка отказа.
ping 10.0.0.255 в сети 255.255.255.0 не получит никакого ответа.
Как включить ответ на широковещательный пинг?
решение1
Программа Windows ping
не может отправлять ping-запросы на широковещательные адреса. Но вы можете использовать API IcmpSendEcho
для отправки ping-запросов в подключенную сеть. Но по моим наблюдениям, это не работает с:
- напрямую подключенная станция Windows - похоже, что станция Win не отвечает на широковещательные запросы ICMP
- через коммутатор - похоже, что коммутатор блокирует широковещательные ICMP-запросы
Если диапазон IP-адресов не слишком большой, можно использовать:
- ARP-сканирование
- ICMP-сканирование
- Сканирование SNMP — гораздо медленнее, но работает
решение2
Вот метод, который я использую:
Сначала... в командной строке используйте это...
ДЛЯ /L %i в (1,1,255) сделать @ping -n 1 192.168.1.%i | найти "Ответить"
Конечно, вам нужно указать «реальный» адрес для 192.168.1.%i, это просто для примера.
вам не нужно передавать его по конвейеру (-> | find "Ответить") в команду find, но говорят, что это отфильтровывает мусор; я делал это обоими способами и не помню, чтобы видел большую разницу...
затем отдайте команду...
arp -a > имя_файла.txt
Откройте файл filename.txt с помощью Notepad++ или аналогичной программы, или, я часто открываю его с помощью Excel и создаю электронную таблицу подключенных устройств...
хт, Гэри
решение3
Вы можете использовать Angry IP Scanner, который пропингует всю подсеть и посмотрит, какие хосты находятся в сети. Будем надеяться, что на основе вашего соглашения об именовании вы сможете выделить серверы среди других хостов в сети.