Страница: 1 |
Страница: 1 |
Вопрос: скан компов сети
Добавлено: 21.03.07 14:59
Автор вопроса:
Sneaks
была тема про тот как сосканить открытые порт
http://vbnet.ru/forum/show.aspx?id=133278
но мне необходимо просто узнать какие компы в сети, и не важно какие порты открыты. Как это можно сделать?
Ответы
Всего ответов: 15
Номер ответа: 1
Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 21.03.07 15:39
пингонуть?
Номер ответа: 2
Автор ответа: Pashenko
ICQ: 176176951
Вопросов: 14
Ответов: 655
Профиль | | #2
Добавлено: 21.03.07 15:46
net view?
Номер ответа: 3
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #3
Добавлено: 21.03.07 15:52
да пингонуть.
и возможно ли это если стоит фаервол
Номер ответа: 4
Автор ответа: Bombardier
ICQ: 42305746
Вопросов: 2
Ответов: 67
Web-сайт:
Профиль | | #4
Добавлено: 21.03.07 16:24
ну решение в лоб такое (предположим что просто надо в ListBox добавить:
Private Function GetServers(sDomain As String, lbxTarget as ListBox) As Long
Dim bufptr As Long
Dim dwEntriesread As Long
Dim dwTotalentries As Long
Dim dwResumehandle As Long
Dim se100 As SERVER_INFO_100
Dim success As Long
Dim nStructSize As Long
Dim cnt As Long
nStructSize = LenB(se100)
lbxTarget.Clear
'SV_TYPE_WORKSTATION (0x00000001)
'SV_TYPE_SERVER (0x00000002).
success = NetServerEnum(0&, _
100, _
bufptr, _
MAX_PREFERRED_LENGTH, _
dwEntriesread, _
dwTotalentries, _
SV_TYPE_WORKSTATION Or SV_TYPE_SERVER, _
0&, _
dwResumehandle)
If success = NERR_SUCCESS And _
success <> ERROR_MORE_DATA Then
For cnt = 0 To dwEntriesread - 1
CopyMemory se100, ByVal bufptr + (nStructSize * cnt), nStructSize
lbxTarget.AddItem GetPointerToByteStringW(se100.sv100_name)
Next
End If
Call NetApiBufferFree(bufptr)
End Function
Номер ответа: 5
Автор ответа: Bombardier
ICQ: 42305746
Вопросов: 2
Ответов: 67
Web-сайт:
Профиль | | #5
Добавлено: 21.03.07 16:28
а ну чтобы не искать вот для простоты объявления:
Public Type SERVER_INFO_100
sv100_platform_id As Long
sv100_name As Long
End Type
Public Declare Function NetServerEnum Lib "netapi32" _
 ByVal servername As Long, _
ByVal level As Long, _
buf As Any, _
ByVal prefmaxlen As Long, _
entriesread As Long, _
totalentries As Long, _
ByVal servertype As Long, _
ByVal domain As Long, _
resume_handle As Long) As Long
Public Declare Function NetApiBufferFree Lib "netapi32" _
 ByVal Buffer As Long) As Long
Public Declare Sub CopyMemory Lib "kernel32" _
Alias "RtlMoveMemory" _
 pTo As Any, uFrom As Any, _
ByVal lSize As Long)
Public Declare Function lstrlenW Lib "kernel32" _
 ByVal lpString As Long) As Long
Public Function GetPointerToByteStringW(ByVal dwData As Long) As String
Dim tmp() As Byte
Dim tmplen As Long
If dwData <> 0 Then
tmplen = lstrlenW(dwData) * 2
If tmplen <> 0 Then
ReDim tmp(0 To (tmplen - 1)) As Byte
CopyMemory tmp(0), ByVal dwData, tmplen
GetPointerToByteStringW = tmp
End If
End If
End Function
так же можно искать специфичные виды серверов в сети например все SQL или терминальные, короче вот константы
Public Const SV_TYPE_SERVER As Long = &H2
Public Const SV_TYPE_SQLSERVER As Long = &H4
Public Const SV_TYPE_DOMAIN_CTRL As Long = &H8
Public Const SV_TYPE_DOMAIN_BAKCTRL As Long = &H10
Public Const SV_TYPE_TIME_SOURCE As Long = &H20
Public Const SV_TYPE_AFP As Long = &H40
Public Const SV_TYPE_NOVELL As Long = &H80
Public Const SV_TYPE_DOMAIN_MEMBER As Long = &H100
Public Const SV_TYPE_PRINTQ_SERVER As Long = &H200
Public Const SV_TYPE_DIALIN_SERVER As Long = &H400
Public Const SV_TYPE_XENIX_SERVER As Long = &H800
Public Const SV_TYPE_SERVER_UNIX As Long = SV_TYPE_XENIX_SERVER
Public Const SV_TYPE_NT As Long = &H1000
Public Const SV_TYPE_WFW As Long = &H2000
Public Const SV_TYPE_SERVER_MFPN As Long = &H4000
Public Const SV_TYPE_SERVER_NT As Long = &H8000
Public Const SV_TYPE_POTENTIAL_BROWSER As Long = &H10000
Public Const SV_TYPE_BACKUP_BROWSER As Long = &H20000
Public Const SV_TYPE_MASTER_BROWSER As Long = &H40000
Public Const SV_TYPE_DOMAIN_MASTER As Long = &H80000
Public Const SV_TYPE_SERVER_OSF As Long = &H100000
Public Const SV_TYPE_SERVER_VMS As Long = &H200000
Public Const SV_TYPE_WINDOWS As Long = &H400000 'Win95 and above
Public Const SV_TYPE_DFS As Long = &H800000 'Root of DFS tree
Public Const SV_TYPE_CLUSTER_NT As Long = &H1000000 'NT Cluster
Public Const SV_TYPE_TERMINALSERVER As Long = &H2000000 'Terminal Server
Public Const SV_TYPE_DCE As Long = &H10000000 'IBM DSS
Public Const SV_TYPE_ALTERNATE_XPORT As Long = &H20000000 'rtn alternate transport
Public Const SV_TYPE_LOCAL_LIST_ONLY As Long = &H40000000 'rtn local only
Public Const SV_TYPE_DOMAIN_ENUM As Long = &H80000000
Public Const SV_TYPE_ALL As Long = &HFFFFFFFF
Номер ответа: 6
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #6
Добавлено: 21.03.07 16:36
пасиб сейчас буду разбиратся
)
PS: как мне нравится этот форум, за 20 появляется ответ над которым ты бился 2 недели
Номер ответа: 7
Автор ответа: D o c a l
ICQ: 408802757
Вопросов: 76
Ответов: 985
Web-сайт:
Профиль | | #7
Добавлено: 21.03.07 17:15
Да, форум супер.
Номер ответа: 8
Автор ответа: Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #8
Добавлено: 21.03.07 20:03
Sneaks:Мыло в студию и вышлю рабочий пример по интересующему тебя вопросу.
Номер ответа: 9
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #9
Добавлено: 22.03.07 02:00
мыло: sneaks_ss@rambler.ru
Номер ответа: 10
Автор ответа: Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #10
Добавлено: 22.03.07 19:17
Проверяй!
С ув.Alex
Номер ответа: 11
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #11
Добавлено: 22.03.07 20:09
эээ
спасибо конечно. Но прога показывает что я один в сети ) либо я тупой либо одно из двух
Номер ответа: 12
Автор ответа: Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #12
Добавлено: 23.03.07 20:02
Ну,не знаю,не знаю.Прогу я уже давал 2-3 раза и работала...Смотри IP,Firewall,свою рабочую группу(может ты в ней один
,замечено,что показывает компы только твоёй рабочей группы...подправить нуна ,чтобы находила все компы ,всех имеющихся рабочих групп... )
С ув. Alex.
Номер ответа: 13
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #13
Добавлено: 23.03.07 21:44
да, точно работает только в своей рабочей группе, тогда ждем обновления тк у меня все в разных группах
Номер ответа: 14
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #14
Добавлено: 23.03.07 22:54
Разбирался с примером Bombardier, за что ему спасибо
кое как запустил, но он мне выдает либо название раб группы либо название компа, и то не всех. Как мне узнать по IP?
Номер ответа: 15
Автор ответа: Sneaks
Вопросов: 9
Ответов: 84
Профиль | | #15
Добавлено: 23.03.07 22:55
к стати Dim se100 As SERVER_INFO_100 не запустилась надо 101 =(