MS FRAMEWORK VB.NET

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Vadym Voytas
Обычный пользователь
Обычный пользователь
 
Сообщения: 66
Зарегистрирован: 06.08.2005 (Сб) 20:37

MS FRAMEWORK VB.NET

Сообщение Vadym Voytas » 13.08.2005 (Сб) 14:44

MS FRAMEWORK VB.NET
Последний раз редактировалось Vadym Voytas 30.09.2010 (Чт) 1:39, всего редактировалось 2 раз(а).

Fedorfx
Постоялец
Постоялец
 
Сообщения: 371
Зарегистрирован: 10.10.2002 (Чт) 0:14

Сообщение Fedorfx » 13.08.2005 (Сб) 20:26

Вопрос про комп или про сеть?

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 13.08.2005 (Сб) 21:25

Вот исходники сниффера и монитора. Не уверен, что будут работать без доработки.
Вложения
Sniffer.zip
Сниффер.
(15.09 Кб) Скачиваний: 92
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Vadym Voytas
Обычный пользователь
Обычный пользователь
 
Сообщения: 66
Зарегистрирован: 06.08.2005 (Сб) 20:37

Сообщение Vadym Voytas » 14.08.2005 (Вс) 11:52

MS FRAMEWORK VB.NET
Последний раз редактировалось Vadym Voytas 30.09.2010 (Чт) 1:40, всего редактировалось 1 раз.

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 14.08.2005 (Вс) 13:53

Это DLL для мониторинга пакетов. Можно подцепить к собственному проекту и использовать функционал сниффера, например считать размер пакетов - так можно получить объем трафика.

Если честно, смотрел краем глаза и ооочень давно.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 14.08.2005 (Вс) 19:39

http://www.mentalis.org/soft/projects/pmon/
без ДЛЛ

Sniffer packet traffic
Последний раз редактировалось Sebas 10.03.2006 (Пт) 15:44, всего редактировалось 1 раз.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

VAngel
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 81
Зарегистрирован: 13.01.2005 (Чт) 0:10
Откуда: 2:5030

Сообщение VAngel » 10.03.2006 (Пт) 15:17

Скачал, не работает, пишет что не может найти SubMain, скачал другую с Planet Sourcе, работает, но какая та странная вещь происходит в VS2003 все норамльно, а в VS2005 не добавляет почему то строки в поле PacketList, хотя до функции OnNewPacket все доходит нормально

VAngel
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 81
Зарегистрирован: 13.01.2005 (Чт) 0:10
Откуда: 2:5030

Сообщение VAngel » 10.03.2006 (Пт) 15:18


VAngel
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 81
Зарегистрирован: 13.01.2005 (Чт) 0:10
Откуда: 2:5030

Сообщение VAngel » 12.03.2006 (Вс) 11:03

Разобрал я этот пример, почти все понял...
Но есть проблема.
Вот таким вот кодом мониторю пакеты:

Код: Выделить всё
        Public Delegate Sub NewPacketEventHandler(ByVal m As myMonitor, ByVal p As myPacket)
        Public Event NewPacket As NewPacketEventHandler

        Private socks As System.Net.Sockets.Socket
        Private ip As System.Net.IPAddress
        Private bufer(65535) As Byte

        Private Const IOC_VENDOR As Integer = &H18000000
        Private Const IOC_IN As Integer = -2147483648
        Private Const SIO_RCVALL As Integer = IOC_IN Or IOC_VENDOR Or 1
        Private Const SECURITY_BUILTIN_DOMAIN_RID As Integer = &H20
        Private Const DOMAIN_ALIAS_RID_ADMINS As Integer = &H220

        Public Sub Start()

            socks = New System.Net.Sockets.Socket(Net.Sockets.AddressFamily.InterNetwork, _
      Net.Sockets.SocketType.Raw, Net.Sockets.ProtocolType.IP)
            Dim ep As New System.Net.IPEndPoint(ip, 0)
            socks.Bind(ep)
            socks.IOControl(SIO_RCVALL, System.BitConverter.GetBytes(1), Nothing)
            socks.BeginReceive(bufer, 0, bufer.Length, Net.Sockets.SocketFlags.None, AddressOf RecivePKT, Nothing)

        End Sub

        Sub RecivePKT(ByVal ar As IAsyncResult)

            Dim received As Integer = socks.EndReceive(ar)
            Dim pkt(received - 1) As Byte
            Array.Copy(bufer, 0, pkt, 0, received)
            Dim pock As New myPacket(pkt)
            RaiseEvent NewPacket(Me, pock)
            socks.BeginReceive(bufer, 0, bufer.Length, Net.Sockets.SocketFlags.None, AddressOf RecivePKT, Nothing)

        End Sub


myPacket - Это класс в котором пакет разбираеться по кусочкам по спецификации

Пакеты это конечно хорошо, но как определить какое приложение на компе принимает или передает пакет?
Читал я спецификацию TCP в самом пакете такой информации нет, занчит надо рыть в сторону сокетов, может кто знает подскажите.


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 62

    TopList