The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Ловим пакеты.PCAP или что-то другое?"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Ловим пакеты.PCAP или что-то другое?"
Сообщение от Skif emailИскать по авторуВ закладки(ok) on 10-Авг-04, 11:48  (MSK)
Никак не могу разобратся с такой вот фишкой - пишу сейчас свою прогу под фрю - она должна ловить куда, откуда и самое важное сколько пакетов (размер) ушло с тазика. Но это так, отступление. Суть такова, ковырялся в pcap - но не нашел нужных мне вещей - тобишь чудно пишет откуда куда и когда, но вот сколько - нет. Не могу отыскать функцию или использовать?
Или может вообще не к той библиотеке прицепился?
Подскажите как можно выхватить размер пакета проходящий через
устройство X?
Если актуально, то все происходит под FreeBSD5.X/4.X и ваяется все на Си
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Ловим пакеты.PCAP или что-то другое?"
Сообщение от Vladislav Lazarenko emailИскать по авторуВ закладки on 10-Авг-04, 12:23  (MSK)
>Никак не могу разобратся с такой вот фишкой - пишу сейчас свою
>прогу под фрю - она должна ловить куда, откуда и самое
>важное сколько пакетов (размер) ушло с тазика. Но это так, отступление.
Это не отступление, а вступление.

>Суть такова, ковырялся в pcap - но не нашел нужных мне
>вещей - тобишь чудно пишет откуда куда и когда, но вот
>сколько - нет. Не могу отыскать функцию или использовать?
Ты уже разобрался как чудно ? Так вот, пишет оно тебе все относительно одного пакета, так что сколько - считай сам, не стоит тут огород городить в библиотеке.

>Или может вообще не к той библиотеке прицепился?
Можешь прицепиться к SNMP, но я думаю не стоит.

>Подскажите как можно выхватить размер пакета проходящий через
>устройство X?
Уже запамятовал, но если вопрос остается актуальным, в информации о пакете  передается его размер. Пример можешь посмотреть в исходниках trafshow (очень доступно).

>Если актуально, то все происходит под FreeBSD5.X/4.X и ваяется все на Си
>

Не столь актуально, хоть под Windows. Но раз уж упомянул, то в FreeBSD можешь использовать BPF (Berkeley Packet Filter) PCAP - это надстройка над этим сабжем. (man bpf)

Удачи.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Ловим пакеты.PCAP или что-то другое?"
Сообщение от Skif emailИскать по авторуВ закладки(ok) on 10-Авг-04, 12:34  (MSK)
Вот что мне упало в файл:
skif@server :less /var/tmp/filter_skif.file

10:03:43.470994 elf.yandex.ru > xxx.net.ua: icmp: echo reply
10:03:44.201320 802.1d config 81c2.00:0c:85:bd:95:00.8018 root 81c2.00:0c:30:50:c1:c0 pathcost 100 age 1 max 20 hello 2 fdelay 15
10:03:44.327008 xxx.net.ua > elf.yandex.ru: icmp: echo request
10:03:44.450936 elf.yandex.ru > xxx.net.ua: icmp: echo reply
10:03:45.337141 xxx.net.ua > elf.yandex.ru: icmp: echo request
10:03:45.453594 elf.yandex.ru > xxx.net.ua: icmp: echo reply
10:03:46.210391 802.1d config 81c2.00:0c:85:bd:95:00.8018 root 81c2.00:0c:30:50:c1:c0 pathcost 100 age 1 max 20 hello 2 fdelay 15

Вот я и не пойму как из этого вырвать размер пакета упавшего в фильтр.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Ловим пакеты.PCAP или что-то другое?"
Сообщение от Vladislav Lazarenko emailИскать по авторуВ закладки on 10-Авг-04, 12:37  (MSK)
>Вот что мне упало в файл:
>skif@server :less /var/tmp/filter_skif.file
>
>10:03:43.470994 elf.yandex.ru > xxx.net.ua: icmp: echo reply
>10:03:44.201320 802.1d config 81c2.00:0c:85:bd:95:00.8018 root 81c2.00:0c:30:50:c1:c0 pathcost 100 age 1 max 20
>hello 2 fdelay 15
>10:03:44.327008 xxx.net.ua > elf.yandex.ru: icmp: echo request
>10:03:44.450936 elf.yandex.ru > xxx.net.ua: icmp: echo reply
>10:03:45.337141 xxx.net.ua > elf.yandex.ru: icmp: echo request
>10:03:45.453594 elf.yandex.ru > xxx.net.ua: icmp: echo reply
>10:03:46.210391 802.1d config 81c2.00:0c:85:bd:95:00.8018 root 81c2.00:0c:30:50:c1:c0 pathcost 100 age 1 max 20
>hello 2 fdelay 15
>
>Вот я и не пойму как из этого вырвать размер пакета упавшего
>в фильтр.

АХТУНГ! Ты что, файл парсишь ? Из этой информации никак, pcap_t* - это твой PCAP объект. При его инициализации ты обязан указать свой обработчик. Так вот в обработчике среди параметров присутствует указатель на пакет (я уже не помню названия структур)... Вот оттуда можно наковырять размер пакета, с заголовком и без оного. Пример смотреть в исходниках trafshow.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Ловим пакеты.PCAP или что-то другое?"
Сообщение от Skif emailИскать по авторуВ закладки(ok) on 10-Авг-04, 13:14  (MSK)
>АХТУНГ! Ты что, файл парсишь ? Из этой информации никак, pcap_t* -
>это твой PCAP объект. При его инициализации ты обязан указать свой
>обработчик. Так вот в обработчике среди параметров присутствует указатель на пакет
>(я уже не помню названия структур)... Вот оттуда можно наковырять размер
>пакета, с заголовком и без оного. Пример смотреть в исходниках trafshow.
>


Угу весь прикол оказался, кому интересно в функции pcap_compile, там
указывается  регулярное выражение для bpf по коему идет отбор того, чего нам
надо. Блин. Кривые руки и мозги.

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру