Как я могу определить ОС удаленного компьютера?


22

Как определить ОС удаленного компьютера по имени компьютера?


Можете ли вы быть более конкретным в том, что вы пытаетесь достичь?
Келтари

2
У меня есть имя компьютера. Я хочу знать, на какой ОС он работает; либо по волшебству, либо с помощью программного инструмента какого-то описания.
Стив

2
вы ничего не можете сделать с его именем, но вы можете использовать инструмент снятия отпечатков ОС (например, NMAP )
Нейт Коппенхавер

Ответы:


16

Вы можете использовать его nmapдля проверки удаленного компьютера и на основании его ответов на пакеты TCP (действительные или недействительные запросы) nmapопределить, какую операционную систему он использует.

Это не на 100% точно, но, вероятно, лучшее, что вы можете сделать в общем случае.

Если вы ограничиваетесь только Windows и у вас есть учетные данные администратора на удаленном компьютере, вы можете использовать этот метод .

Просмотр системных свойств

Чтобы выполнить эту процедуру на удаленном компьютере, щелкните правой кнопкой мыши пункт «Управление компьютером (локальное)», нажмите «Подключиться к другому компьютеру», выберите «Другой компьютер» и введите имя удаленного компьютера. Затем можно выполнить действия, описанные в этой процедуре, начиная с шага 2 и заменив «Управление компьютером (удаленное имя компьютера)» на «Управление компьютером (локальное)». Вы должны быть членом группы «Администраторы» или вам должны быть делегированы соответствующие полномочия на компьютере, который вы указываете для имени удаленного компьютера.

И в дополнение к этому, если ваши компьютеры присоединены к домену, вы можете просматривать учетные записи компьютеров в Active Directory. Это должно рассказать вам о машине.


Если я запускаю Управление компьютером как администратор домена, подключаюсь к удаленному компьютеру и щелкаю правой кнопкой мыши по Управлению компьютером (удаленный хост) в дереве, у меня появляется Подключение к другому компьютеру, Все задачи (подключение), Просмотр (выбор стандартного представления Проводника) Экспорт списка и справки. Там нет свойств в меню правой кнопкой мыши.
Стив

Если я запускаю Управление компьютером на своем собственном компьютере, у меня не появляется Свойства в контекстном меню Управления компьютером в дереве. Мой компьютер работает под управлением Win7 SP1 32-разрядный.
Стив

Я считаю, что это правильный метод. Другая документация ссылается на это - microsoft.com/resources/documentation/windows/xp/all/proddocs/… - но я попытался получить тот же результат, что и вы, на моем Win7-боксе. Я обнаружил, что щелкнув правой кнопкой мыши «WMI Control» в разделе «Службы и приложения», я получил краткое описание удаленного компьютера.
ta.speot.is

3
nmapпросто собирается обнять порты ...
ta.speot.is


3

Исходя из информации, которую вы предоставили, ответом является то, что вы не можете определить ОС машины по ее имени.


А что, если мы ограничим возможности для машин с MS Windows?
Стив

'Укажите NetBIOS-имя удаленного компьютера. strComputer = "TestComputer" Установите objWMIService = GetObject ("winmgmts:" _ & "{impersonationLevel = impersonate}! \\" _ & strComputer & "\ root \ cimv2"). Установите colOSes = objWMIService.ExecQuery ("Выбрать * из Win32S" из "Win32S") ) Для каждого objOS в colOSes Wscript.Echo "Версия:" & objOS.Version 'Версия и сборка Wscript.Echo "Тип ОС:" & objOS.OSType Далее
Keltari

1
Есть много причин, почему этот сценарий может не работать, хотя ...
Keltari

У вас есть исходный URL для этого скрипта? Я получаю «Неверный характер», когда пытаюсь запустить его.
Стив



3

Использование cmd (командная строка в Windows Vista, XP и т. Д.)

systeminfo /s IP.ADDRESS /u UserOnRemotePc

например:

systeminfo /s 172.16.23.108 /u Student

2
Это работает, только если удаленной операционной системой является Windows.
Ramhound


2

Быстро и просто, вы можете использовать интерфейс Windows Inventory

wmic /node: HOST_NAME os get caption

4
Чем ваш ответ отличается от старого ответа
игра слов

1

Это можно сделать с помощью Windows PowerShell, который по умолчанию установлен в Windows 7. Вы можете получить его из системного меню в разделе «Стандартные».

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

Get-WmiObject -Class Win32_OperatingSystem -Namespace root/cimv2 -ComputerName <ipaddr_or_hostname> | Format-List -Property *

Вы можете запустить это в локальной или удаленной системе, указав правильное значение для свойства ComputerName.

Вы можете отфильтровать вывод для конкретной информации, указав, какие свойства отображать ...

Get-WmiObject -Class Win32_OperatingSystem -Namespace root/cimv2 -ComputerName <ipaddr_or_hostname> | Format-List -Property Name, OSArchitecture, SerialNumber

Я получаю сообщение: Get-WmiObject: Невозможно найти параметр, который соответствует имени параметра 'имя_компьютера'. То же самое происходит, если я использую полное имя hostname.domainname
Стив

Попробуйте использовать 127.0.0.1для ComputerName и убедиться, что он работает правильно на localhost. Если это так, попробуйте использовать IP-адрес удаленного компьютера.
Джо Интернет

+1 Это было именно то, что мне было нужно. Не забудьте включить финал *
Марк Купер

Это предполагает, что это ОС Windows.
Сахер Ахвал,

1

Самый простой способ:

  1. Нажмите кнопку «Пуск» в Windows, введите msinfo32 и нажмите Enter.
  2. Нажмите « Просмотр» > « Удаленный компьютер» > « Удаленный компьютер в сети».
  3. Введите имя машины и нажмите ОК

-1

Неполное решение состояло в том, чтобы просто открыть диск C удаленного компьютера в проводнике Windows. Наличие документов и настроек показало, что это WinXP, так как у нас нет Win2K.


А как насчет Windows Server 2003?
Synetech

Я ценю голосование против. Это действительно помогает.
Стив

Ну, не смотри на меня. Проверьте сроки ; Вы получили это через два дня после того, как я увидел этот вопрос.
Synetech
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.