Чтобы узнать имя пользователя компьютера с Windows 10 по сети, не нужно устанавливать сторонние программы — хватит встроенных инструментов. Самый быстрый способ: через команду net user в командной строке удалённого ПК, если у вас есть к нему доступ. Но что делать, если доступа нет, а имя всё равно нужно? Рассмотрим все варианты — от простых до продвинутых, включая методы для администраторов и обычных пользователей.
В этой статье разберём, как получить имя учётной записи через сетевые запросы, общие папки, и специализированные утилиты. Покажу, какие команды работают в 90% случаев, а где потребуются права администратора. Начнём с самого надёжного способа.
Способ 1: через командную строку на целевом ПК
Если у вас есть физический или удалённый доступ к компьютеру (например, через RDP или TeamViewer), откройте командную строку от имени администратора и введите:
whoami или echo %username%
Первая команда выводит текущее имя пользователя и домен (если есть), вторая — только имя. Работает на всех версиях Windows, включая 10 и 11. Для проверки всех учётных записей на ПК используйте:
net user
Эта команда покажет список всех локальных пользователей, включая скрытые (например, Administrator или Гость).
Если нужно узнать имя пользователя на удалённом ПК, к которому вы подключены по RDP, просто выполните whoami в его командной строке — результат будет точным.
| Команда | Описание | Пример вывода |
|---|---|---|
net user | Показывает всех локальных пользователей | Administrator, User1, Гость |
whoami | Выводит текущее имя пользователя и домен | DESKTOP-ABC123\User1 |
echo %username% | Только имя текущего пользователя | User1 |
arp -a | Список и MAC-адресов в локальной сети | 192.168.1.50 ff-ff-ff-ff-ff-ff |
Способ 2: через общие сетевые папки
Если целевой компьютер входит в вашу локальную сеть и у него открыты общие папки, можно увидеть имя пользователя через сетевое окружение. Вот как это сделать:
1. Откройте Проводник и в адресной строке введите \\[IP-адрес или имя ПК]. Например: \\192.168.1.50.
2. Если папки открыты для общего доступа, вы увидите их список. Имя пользователя, который предоставил доступ, отобразится в свойствах папки.
3. Щёлкните правой кнопкой по общей папке → Свойства → вкладка Доступ. Здесь часто указано имя пользователя или группы, которые имеют права.
Этот метод работает, если на целевом ПК включён общий доступ и вы знаете его или сетевое имя. Чтобы узнать IP-адрес чужого компьютера в сети, используйте команду arp -a в командной строке на своём ПК — она покажет все устройства, с которыми вы взаимодействовали.
Способ 3: через для удалённого запроса
PowerShell позволяет получать информацию об удалённых компьютерах, если у вас есть права администратора и включён WinRM (Windows Remote Management). Проверьте, включён ли он на целевом ПК:
winrm quickconfig
Если запущен, используйте следующую команду (замените COMPUTERNAME на имя или ПК):
Invoke-Command -ComputerName COMPUTERNAME -ScriptBlock { $env:USERNAME }
Эта команда вернёт имя текущего пользователя на удалённом компьютере. Если отключён, его можно включить через Панель управления → Администрирование → Службы (служба WinRM должна быть запущена).
Альтернативный вариант без WinRM — использовать WMI:
Get-WmiObject -Class Win32_ComputerSystem -ComputerName COMPUTERNAME | Select-Object UserName
- Работает только в локальной сети.
- Требует прав администратора на целевом ПК.
- Целевой компьютер должен быть включён и доступен по сети.
- Если используете
WMI, убедитесь, что брандмауэр не блокирует запросы (порт135и диапазон49152-65535).
Способ 4: через утилиту nbtstat
Утилита nbtstat помогает получить сетевую информацию о компьютерах в локальной сети, включая имя пользователя, если оно закреплено за сессией. Выполните в командной строке:
nbtstat -a [IP-адрес]
Например: nbtstat -a 192.168.1.50.
В выводе ищите строку Registered — там может отобразиться имя пользователя, если оно было залогинено в текущей сессии. Однако этот метод работает не всегда: если пользователь не подключён к сетевому ресурсу, имя может не отобразиться.
- Откройте командную строку от имени администратора.
- Введите
nbtstat -a [IP]. - Просмотрите вывод на наличие имени в строке
Registered.
⚠️ Внимание: утилита nbtstat работает только в сетях, где используется протокол NetBIOS. В современных сетях он часто отключён, поэтому метод может не сработать.
Способ 5: через сетевой сканер (Advanced IP Scanner)
Если встроенные методы не помогают, используйте бесплатные утилиты для сканирования сети. Одна из самых популярных — Advanced IP Scanner. Она позволяет:
- Скачать и установить утилиту с официального сайта.
- Запустить сканирование диапазона IP-адресов (например,
192.168.1.1-192.168.1.255). - После сканирования программа покажет все устройства в сети, их имена, и производителя.
- Для получения имени пользователя кликните по устройству правой кнопкой и выберите
Открыть сетевую папкуилиУдалённый доступ(если он настроен).
Другие полезные утилиты: Angry IP Scanner, SoftPerfect Network Scanner. Они работают по тому же принципу, но могут предоставлять дополнительную информацию, например, открытые порты или MAC-адреса.
| Утилита | Функционал | Поддержка Windows 10 |
|---|---|---|
| Advanced IP Scanner | Сканирование сети, поиск общих папок, удалённый доступ | Да |
| Angry IP Scanner | Сканирование IP, портов, ping | Да |
| SoftPerfect Network Scanner | Сканирование сети, проверка ping, WMI-запросы | Да |
| Nmap | Продвинутое сканирование портов и услуг | Да (через командную строку) |
Способ 6: через журнал событий Windows
Если у вас есть доступ к целевому компьютеру с правами администратора, можно проверить журнал событий Windows. Он содержит информацию о входе пользователей в систему. Вот как:
1. Откройте Панель управления → Администрирование → Просмотр событий.
2. Перейдите в Журналы Windows → Безопасность.
3. Отфильтруйте события по коду 4624 (успешный вход в систему). В описании события будет указано имя пользователя.
Этот метод полезен, если нужно узнать, кто последний раз входил в систему, или проверить историю входов.
Журнал событий Windows — надёжный способ увидеть все входы в систему, включая удалённые (через RDP или сеть).
Способ 7: практическая инструкция — что делать, если ничего не работает
Если ни один из методов не сработал, убедитесь, что:
- Целевой компьютер включён и подключён к той же сети.
- У вас есть необходимые права доступа (для PowerShell, WMI, WinRM).
- Брандмауэр или антивирус не блокируют сетевые запросы.
- На целевом ПК включён общий доступ или удалённое управление.
Если вы администратор сети, можете использовать групповую политику или скрипты для автоматизированного сбора информации. Например, PowerShell-скрипт, который опрашивает все ПК в сети:
1..255 | ForEach-Object { $ip = "192.168.1.$_"; if (Test-Connection -ComputerName $ip -Count 1 -Quiet) { Invoke-Command -ComputerName $ip -ScriptBlock { $env:USERNAME } -ErrorAction SilentlyContinue } }
Чек-лист для поиска имени пользователя по сети
Часто задаваемые вопросы
Можно ли узнать имя пользователя без прав администратора?
Да, но только если на целевом ПК открыты общие папки или вы можете подключиться к ним через \\IP. В этом случае имя пользователя может отобразиться в свойствах папки. Также можно использовать nbtstat -a [IP], но это работает не всегда.
Как узнать имя пользователя, если компьютер выключен?
Невозможно. Для получения имени пользователя ПК должен быть включён и подключён к сети. Если компьютер выключен, попробуйте включить его удалённо через Wake-on-LAN (если функция поддерживается).
Работает ли whoami на удалённом ПК?
Да, но только если вы подключены к нему через RDP, TeamViewer или другие инструменты удалённого доступа. Выполните whoami в командной строке удалённого компьютера, чтобы получить текущее имя пользователя.
Можно ли через получить имя пользователя на всех ПК в сети?
Да, но для этого нужно, чтобы на всех компьютерах был включён WinRM или WMI, а у вас были права администратора. Пример команды: Invoke-Command -ComputerName (Get-Content computers.txt) -ScriptBlock { $env:USERNAME }, где computers.txt — файл со списком или имён ПК.