TamoSoft: Network Analysis Tools & Security Software
Contents

CommView for WiFi - Мониторинг и Анализ Беспроводных Сетей

 
Введение
О программе CommView for WiFi
Что нового
Работа с программой
Установка драйвера
Обзор
Сканер
Узлы
Каналы
Текущие IP-соединения
Пакеты
Log-файлы
Просмотр Log-файлов
Правила
Универсальные правила
Предупреждения
Ключи WEP/WPA
Реконструкция TCP-сессий
Реконструкция UDP-потоков
Статистика и отчеты
Псевдонимы
Генератор пакетов
Визуальный конструктор пакетов
Производитель NIC
Захват по расписанию
Реассоциация узлов
Работа с CommView Remote Agent for WiFi
Использование RPCAP
Установка опций
Ответы на вопросы (FAQ)
Анализ VoIP
Введение
Работа с анализатором VoIP
Сессии SIP and H.323
Потоки RTP
Регистрации
Станции
Ошибки
Log-файлы звонков
Отчет
Воспроизведение звонка
Просмотр VoIP log-файлов
Работа со списками в анализаторе VoIP
Файлы NVF
Дополнительные главы
Ошибки CRC и ICV
WPA-дешифрование
Об уровне сигнала
Мониторинг 802.11n сетей
Захват пакетов A-MPDU и A-MSDU
Многоканальный захват
Перехват больших объемов трафика
Невидимый режим
Параметры командной строки
Обмен данными с вашим приложением
Пользовательский модуль декодирования
Формат Log-файлов CommView
Информация
Как купить CommView for WiFi
Контакты
Другие продукты TamoSoft

Пользовательский модуль декодирования

CommView for WiFi позволяет подключить два типа пользовательских модулей декодирования.

 

Простой декодер

 

Если он используется, то результаты его работы будут показаны в дополнительной колонке закладки Пакеты. Пользовательский декодер должен быть 32-bit DLL с именем файла "Custom.dll" и экспортировать единственную процедуру - "Decode". Ниже показан ее прототип на языках C и Pascal:

 

extern "C" {

void __stdcall Decode(unsigned char *PacketData, int PacketLen, char *Buffer, int BufferLen);

}

 

procedure Decode (PacketData: PChar; PacketLen: integer; Buffer: PChar; BufferLen: integer); stdcall;

 

Данная DLL должна располагаться в той же директории, что и CommView. При запуске CommView ищет файл с именем  "Custom.dll" и загружает его в память. Если в нем найдена точка входа "Decode" - CommView добавляет новую колонку с именем "Custom" в списке пакетов.

 

Перед тем как отобразить новый пакет, CommView вызывает процедуру "Decode" и передает содержимое пакета в DLL. Процедура "Decode" должна обработать пакет и записать его в буфер. Первый аргумент - указатель на содержимое пакета, второй - длина, третий аргумент - указатель на буфер, в котором хранится результат обработки, четвертый аргумент - размер буфера (в данной версии - всегда 1024 байта). Буфер выделяется и освобождается самой программой CommView, так что не следует управлять распределением памяти под этот буфер самостоятельно. Содержимое буфера будет отображено в виде строки в колонке "Custom".

Ваша процедура должна быть достаточно быстрой и обрабатывать тысячи пакетов в секунду; в противном случае снизится производительность программы. Не забывайте использовать STDCALL при вызове.

 

Две DLL представлены как пример. Они выполняют простейшие операции: "результатом" работы функции "Decode" является шестнадцатеричный код последнего байта пакета. Пользовательский декодер может быть сколь угодно сложным.

 

http://www.tamos.com/products/commview/cust_decoder_c.zip. Проект Visual Studio с исходниками на C++.

 

http://www.tamos.com/products/commview/cust_decoder_d.zip. Проект Delphi с исходниками на Pascal.

 

Сложный декодер

При реализации этого типа декодера, результат будет отображаться, как дополнительные элементы основного дерева декодера в окне пакетов. Подробное руководство по созданию такого декодера можно получить здесь:

 

http://www.tamos.com/products/commview/complex_decoder_c6.zip

 

Сложный декодер может быть написан только на Microsoft Visual C++, так как он основан на классах C++.

 

Техническая поддержка

 

Техническая поддержка пользовательских декодеров осуществляется "по мере сил", но мы не всегда сможем оказаться в состоянии разрешить любую вашу проблему.