URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5693
[ Назад ]

Исходное сообщение
"Зацените, если хотите."

Отправлено Fagot , 06-Сен-06 22:32 
Тут своял пару билингов небольших, может кому сгодится.
У меня работает в паре с ipcad-ом. Статистику ложит в MySQL.
http://fagot.110mb.com/bi/

Содержание

Сообщения в этом обсуждении
"Зацените, если хотите."
Отправлено apr2504 , 07-Сен-06 07:49 
>Тут своял пару билингов небольших, может кому сгодится.
>У меня работает в паре с ipcad-ом. Статистику ложит в MySQL.
>http://fagot.110mb.com/bi/

Симпатично. Только комментариев не хватает в исходниках.
Не всегда понятно, что там программа делает.
Как насчёт PostgreSQL ?


"Зацените, если хотите."
Отправлено Fagot , 07-Сен-06 09:33 
>Симпатично. Только комментариев не хватает в исходниках.
>Не всегда понятно, что там программа делает.
>Как насчёт PostgreSQL ?

Коментарии добавлю, не проблема.
А вот с PosgreSQL я не особо дружу.
Хотя можно и дописать там это савсем несложно делается.
Просто взять за основу mysql.c
так что если есть желание!


"Зацените, если хотите."
Отправлено Fagot , 07-Сен-06 11:35 
Для bi-0.1 написал комментарии.
Вечером сваяю статейку как для всего этого дела Linux настраивался!
(Обещаю неупоминать слова ./configure и ./make !)

"Зацените, если хотите."
Отправлено vic , 07-Сен-06 12:17 
>Для bi-0.1 написал комментарии.
>Вечером сваяю статейку как для всего этого дела Linux настраивался!
>(Обещаю неупоминать слова ./configure и ./make !)

Ткнулся в первый попавшийся файл:
1. char srcIP[15] - а надо 16. Под завершающий ноль место уже не модно выделять?
2. хранить и сравнивать IP в строках. Ну-ну. А чем in_addr_t (или int на худой конец) не устраивает? А кто-то хотел сэкономить на портах=)
3. configure, configure, configure - повторять пока не наступить счастье.

Дальше специально не смотрел =)

И вообще, возьмите исходники опенсорсных пакетов (не один, а несколько) посмотрите как люди пишут, почитайте опенсорсные доки и стандарты. И будет счастье, т.к. не надо будет писать всякие извинения типа:
"З.Ы.1. Прошу ошибки считать за улыбки!
З.Ы.2. Выпады типа зачем всё это надо Free-форева непринимается.
       Писалось для себя. Да и так время свободное занять!"

Стремитесь к лучшему.


"Зацените, если хотите."
Отправлено Fagot , 07-Сен-06 13:54 
>Ткнулся в первый попавшийся файл:
>1. char srcIP[15] - а надо 16. Под завершающий ноль место уже
>не модно выделять?
Исправлю не долго. Хотя проверял всё нормально без глюков выводит и при 15.
>2. хранить и сравнивать IP в строках. Ну-ну. А чем in_addr_t (или
>int на худой конец) не устраивает? А кто-то хотел сэкономить на
>портах=)
:-) Хорошая память! Это тоже можно испраить тока у меня глюк был,
изначально я и пытался сделать чтоб как int хранилось.
Получал адрес 335548844
Делаю в MySQL: select inet_ntoa(335548844); Результат: 20.0.17.172
Делаю на Си: inet_ntoa(335548844); Результат нормальный: 172.17.0.20
Не знаю в чём косяк.
>3. configure, configure, configure - повторять пока не наступить счастье.
Счастье так хрупко!
>
>Дальше специально не смотрел =)
>
>И вообще, возьмите исходники опенсорсных пакетов (не один, а несколько) посмотрите как
>люди пишут, почитайте опенсорсные доки и стандарты. И будет счастье, т.к.
>не надо будет писать всякие извинения типа:
>"З.Ы.1. Прошу ошибки считать за улыбки!
>З.Ы.2. Выпады типа зачем всё это надо Free-форева непринимается.
>       Писалось для себя. Да и
>так время свободное занять!"
>
>Стремитесь к лучшему.
Буду стараться! Спасибо!


"Зацените, если хотите."
Отправлено vic , 07-Сен-06 15:42 
>>Ткнулся в первый попавшийся файл:
>>1. char srcIP[15] - а надо 16. Под завершающий ноль место уже
>>не модно выделять?
>Исправлю не долго. Хотя проверял всё нормально без глюков выводит и при
>15.
Проверяй чительней:
192.168.21.134  еще жив (14 байт значимых) :)
192.168.212.134 уже мертв (все 15 байт значимых) :)

>>2. хранить и сравнивать IP в строках. Ну-ну. А чем in_addr_t (или
>>int на худой конец) не устраивает? А кто-то хотел сэкономить на
>>портах=)
>:-) Хорошая память!
Птица говорун отличается умом и сообразительностью <c> Говорун. :)

> Это тоже можно испраить тока у меня глюк был,
>изначально я и пытался сделать чтоб как int хранилось.
>Получал адрес 335548844
>Делаю в MySQL: select inet_ntoa(335548844); Результат: 20.0.17.172
>Делаю на Си: inet_ntoa(335548844); Результат нормальный: 172.17.0.20
>Не знаю в чём косяк.
А я знаю :) В сетевом порядке байт. А делать в мускуле подобные преобразования не надо.
Достаточно Си-ных, все равно проверку делать на корректность нуна ;)
Курить сетевое программирование Стивенса, рфс-ки всякие тож.



"Зацените, если хотите."
Отправлено Fagot , 07-Сен-06 23:14 
>> Это тоже можно испраить тока у меня глюк был,
>>изначально я и пытался сделать чтоб как int хранилось.
>>Получал адрес 335548844
>>Делаю в MySQL: select inet_ntoa(335548844); Результат: 20.0.17.172
>>Делаю на Си: inet_ntoa(335548844); Результат нормальный: 172.17.0.20
>>Не знаю в чём косяк.
>А я знаю :) В сетевом порядке байт. А делать в мускуле
>подобные преобразования не надо.
>Достаточно Си-ных, все равно проверку делать на корректность нуна ;)
>Курить сетевое программирование Стивенса, рфс-ки всякие тож.

Убадал этот глюк, щас усё нормально. Буду переделывать структуру БД.
(Будут храниться айпишники как int(10) )

А может сбор статистики по трафику завязать на имя пользователя?
Т.е. будет ложиться в бд:
UserName InternetIP Port Bytes [?Cost-типа скока в рублях получилось?]
???
Тогда можно не привязывать пользователя к конкретному IP,
а просто отслеживать это на момент обсчёта???


"Зацените, если хотите."
Отправлено Valik , 11-Сен-06 05:41 
>Первой попыткой был скрипт на sh.
>Второй попыткой стал скриптик на perl.
>Ну это собственно третья попытка на писано на Си.
Как на счет первых двух попытом, интерено просто посматреть реализацию


"Зацените, если хотите."
Отправлено Fagot , 11-Сен-06 08:56 
>>Первой попыткой был скрипт на sh.
>>Второй попыткой стал скриптик на perl.
>>Ну это собственно третья попытка на писано на Си.
>Как на счет первых двух попытом, интерено просто посматреть реализацию

Я их удалил. Просто посмотрел на скоростные результаты, ну и удалил.
На баше просто циклом обрабатывается отет от rsh и даные пихаются в БД путём вызова mysql -uuser -ppass bdname --exec="insert update etc..."

В перле аналогичный перебор ответа от rsh, но в БД данные пихал через DBI.


"Зацените, если хотите."
Отправлено dshadow , 28-Сен-06 15:45 
>Тут своял пару билингов небольших, может кому сгодится.
>У меня работает в паре с ipcad-ом. Статистику ложит в MySQL.
>http://fagot.110mb.com/bi/

не открывается этот сайт:
The page you're accessing no longer exists.


"Зацените, если хотите."
Отправлено Fagot , 28-Сен-06 17:09 
>>Тут своял пару билингов небольших, может кому сгодится.
>>У меня работает в паре с ipcad-ом. Статистику ложит в MySQL.
>>http://fagot.110mb.com/bi/
>
>не открывается этот сайт:
>The page you're accessing no longer exists.

Грохнул я его за непотребностью.
Сейчас новую версию ваяю. Пока не плохо получается.
Потом как-нить выложу если надо.