Windows CMD: Поиск хостов в локальной сети

данная штука полезна, если, например, с ноута нужно вспомнить забытый айпишник свича, и под рукой только стандартные средства. Оптимально можно найти данный айпишник с помощью одной консольной команды:

FOR /L %i IN (1,1,254) DO ping -n 1 \\192.168.0.%i | FIND /i "Reply">>c:\find_local_ip.txt

здесь каждый айпишник для адресов 192.168.0.1-254 пингуется один раз, после чего результат передается команде find, которая при отклике записывает результат в файл find_local_ip.txt

и еще один скрипт (шутка — уходя, гасите всех!) — выключает все компы в заданной подсети:

FOR /L %i in (1,1,254) DO shutdown \\192.168.0.%i

также с выходом всех пользователей (XP):

FOR /L %i in (1,1,254) DO shutdown \\192.168.0.%i /l

тоже самое для 2003 сервера:

FOR /L %i in (1,1,254) DO shutdown /r /m \\192.168.0.%i /d p:2:18

примечание: данная фича может быть запрещена локальной политикой безопасности в разделе прав пользователей, в XP shutdown встроенная команда, если ее нет, то нужно будет скачать.

иногда полезно знать, какие порты открыты на компьютере и используются в данный момент, сделать это тоже можно из командной строки:

посмотреть использующиеся порты —

netstat -an |find /i "listening"

посмотреть порты с установленными соединениями:

netstat -an |find /i "established"

с идентификаторами процессов:

netstat -ao |find /i "listening"

помнится в бесплатном пакете W2K Resource Kit была хорошая утилитка, PULIST, позволяющая посмотреть процесс, использующий порт и использующую его программу, например есть установленное соединение по 80 порту и ни один броузер не запущен, как найти программу, которая использует данный порт —

netstat -no

выдаст, что есть процесс номер 1234, использующий 80 порт,

pulist |find /i "1234"

и покажет, что это идет обновление антивируса.

Author: sysadmin on 28.07.2009
Category: Windows
Метки: , , , ,

Comments are closed.

Last articles