Есть Венда, она находится в некой сети (с доменом или без него). Существуют ли способы, находясь только на этой Венде (и без сканирования сети), получить какую-то информацию по другим компьютерам, которые в этой сети в текущий момент находятся, или ранее находились? Допустим, я знаю, что в системе есть кеш ARP-таблицы, хоть он и может быть не особо актуальным ("arp -a" или GetIpNetTable из iphlpapi.dll). Что еще может быть?
Инфу о сетях, к которым подключался компьютер, можно взять ещё из реестра по сл.пути, правда не знаю есть-ли там список всех клиентов: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\ Из основных 2 папки: • Profiles: Профили всех сетей, к которым когда-либо подключался компьютер. • Signatures\Unmanaged: Инфа для идентификации сети. Подозреваю, что можно ещё заюзать WMI например этим софтом: https://www.robvanderwoude.com/wmigen.php
Спасибо, я про этот ключ знаю, меня в основном интересует не информация по сетям пер се, а по другим компьютерам и устройствам, которые сейчас с нами в одной сети, или когда-то были с нами в одной сети, если такая информация есть. Да, я пошарюсь еще по WMI, поищу там какие-нибудь таблицы с этим связанные. Я обычно для этого использую софт WMIExplorer.
Deepseek (может быть бред): Если надо в виде исходника, посмотреть в коде как выполняется arp -a, nbtstat.
Сомнительный метод. Ведь таблица ARP - это всего лишь кэш ARP-запросов. То есть, там будут в основном только те хосты локалки, с которыми данному хосту приходилось общаться. То есть, сначала данный хост каким-то образом узнает IP-адрес того, с кем ему надо общаться (например, через ActiveDirectory), и только потом, если не закэшировано - делает ARP-запрос"У кого тут такой IP-адрес", и ответ кэширует в ARP-таблице. То есть, в локалке может быть дофига хостов, но большинства из них в ARP-таблице все равно не будет. Есть правда еще такая штука как Gratuituous ARP, когда новый хост при подключении в локалку сам без запроса широковещательно рассылает "У меня такой-то IP-адрес", но это происходит только единожды, когда хост подключается к локалке. И опять же, по таймауту эта запись из ARP-таблиц уйдет. Насчет совета дипсика использовать парсинг команды arp -a - странно, есть апишные функции GetIpNetTable/GetIpNetTable2, которые дают нужную функциональность. Но опять же, использовать это как метод для обнаружения соседей по локалке - сомнительное занятие. --- Сообщение объединено, 26 авг 2026 в 10:34 --- По поводу вопроса в первопосте - вспомнился еще один метод - попробовать пингануть по широковещательному IP-адресу локалки. То есть, взять двоичное представление IP-адреса хоста и наложить на него операцией OR (не AND) инверсию двоичного представления маски - это даст широковещательный IP-адрес данной локалки. Можно правда еще и глобальным широковещательным IP-адресом воспользоваться, но я не уверен, что на такой адрес будут ICMP-ответы. А вот что на конкретный широковещательный адрес локалки хосты могут отвечать - я лично видел. Не факт, что все ответят, но по крайней мере на каких-то устройствах и ОС-ках это точно работает. Можно еще скомбинировать с методом по ARP-таблице, еще больше выборка будет.