Как узнать имя компьютера по ip в локальной сети? Я знаю IP-адрес рассматриваемого компьютера, но как мне получить имя рабочей группы?
3 ответа
9
Попробуйте использовать команду nbtstat -a [ip address] в командной строке:
win+r, затем введите cmd и нажмите клавишу ввода.
Это должно отобразить таблицу имен. Имя, связанное с типом "Уникальный", является именем компьютера. Имя, связанное с типом "Группа", должно быть рабочей группой, к которой присоединен компьютер.
0
Найдите нижеприведенную функцию, которая будет получать как IP-адрес, так и имя компьютера. Измени свой диапазон на IP.
Он будет пинговать каждый IP и узнавать ответ.
Public Function mCheckThroughWMIQuery() As String
Dim oWMI = GetObject("winmgmts:")
Dim IP = GetObject("winmgmts:")
Dim oPings = GetObject("winmgmts:")
Dim PcName = GetObject("winmgmts:")
Dim sResult As String = ""
For i = 70 To 100
IP = "192.168.1." + i.ToString
oPings = oWMI.ExecQuery("Select * from WIN32_Pingstatus where address='" + IP + "'" + " and ResponseTime > 0")
For Each oPing In oPings
Try
PcName = System.Net.Dns.GetHostEntry(IP)
sResult &= IP & Chr(9) & PcName.HostName & vbNewLine
Catch ex As Exception
sResult &= IP & vbNewLine
End Try
Next
Next
Return sResult
End Function