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

Исходное сообщение
"некорректная работа ipfw count"

Отправлено crazy8 , 07-Окт-08 05:01 
Добрый день!
Долго считал трафик с помощью правил ipfw count, всё было нормально, но с месяц назад появились странности. Вот, взгляните на этот результат команды ipfw show:

00050  4439  1302601 tee 20001 ip from any to any via tun0
00100  2695   805238 count ip from any to any via tun0 in
00101  1713   489367 count ip from any to any via tun0 out
00103     0        0 deny ip from 127.0.0.0/8 to any
00105     0        0 deny ip from 192.168.1.0/24,192.168.0.0/24 to any via tun0 in
00106     0        0 deny ip from 192.168.1.0/24,192.168.0.0/24 to any via tun2 in
00107     0        0 deny ip from 192.168.1.0/24,192.168.0.0/24 to any via tun1 in
00108  2714   812754 count ip from any to any via tun0 in
00109  1725   489847 count ip from any to any via tun0 out
00116     0        0 allow tcp from any to xx.xx.xx.xx dst-port yy.yy.yy.yy
00117     0        0 fwd xx.xx.xx.xx tcp from yy.yy.yy.yy zz.zz.zz.zz to any
00118     0        0 fwd xx.xx.xx.xx1 tcp from yy.yy.yy.yy1 zz.zz.zz.zz1 to any
00118     0        0 fwd xx.xx.xx.xx2 tcp from yy.yy.yy.yy2 zz.zz.zz.zz2 to any
00119     0        0 fwd xx.xx.xx.xx3 tcp from yy.yy.yy.yy3 to any dst-port zz.zz.zz.zz3
00120     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy dst-port zz.zz.zz.zz via tun2
00121     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy1 dst-port zz.zz.zz.zz1 via tun0
00122     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy1 dst-port zz.zz.zz.zz2 via tun0
00123     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy2 dst-port zz.zz.zz.zz3 via tun0,tun2,tun1
00124     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy2 dst-port zz.zz.zz.zz1 via tun1
00125     0        0 deny log logamount 65534 tcp from not xx.xx.xx.xx to yy.yy.yy.yy3 dst-port zz.zz.zz.zz1 via tun1
00130     0        0 allow tcp from xx.xx.xx.xx to yy.yy.yy.yy dst-port zz.zz.zz.zz5 keep-state
00140  2360   777364 count ip from any to any via tun0 in
00141  1416   113119 count ip from any to any via tun0 out

По логике вещей, количество байт и пакетов правил 100 и 101 должно совпадать с правилами 108,109 и 140, 141. Но, результат вы видите сами. Что это может быть?


Содержание

Сообщения в этом обсуждении
"некорректная работа ipfw count"
Отправлено PavelR , 07-Окт-08 06:34 
>Добрый день!
>Долго считал трафик с помощью правил ipfw count, всё было нормально, но
>с месяц назад появились странности. Вот, взгляните на этот результат команды
>ipfw show:

..
>По логике вещей, количество байт и пакетов правил 100 и 101 должно
>совпадать с правилами 108,109 и 140, 141. Но, результат вы видите
>сами. Что это может быть?

1. Автор темы обкурился.
2. Часть правил были занулены или добавлены после добавления других правил.



"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 09:27 
>1. Автор темы обкурился.

не понял шутки

>2. Часть правил были занулены или добавлены после добавления других правил.

Не понял. Вы видите вывод команды ipfw show. Здесь все правила которые существуют. Если бы что-то попадало в другие правила - там бы не было нулей.


"некорректная работа ipfw count"
Отправлено adews , 07-Окт-08 09:01 
С какого перепугу оно должно совпадать?



"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 09:28 
>С какого перепугу оно должно совпадать?

а с какого перепугу не должны совпадать два абсолютно одинаковых правила count?


"некорректная работа ipfw count"
Отправлено Pahanivo , 07-Окт-08 09:49 
>>С какого перепугу оно должно совпадать?
>
>а с какого перепугу не должны совпадать два абсолютно одинаковых правила count?
>

а это точно полный листинг?


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 10:06 
>а это точно полный листинг?

Да. Есть правила после этих, но они ведь никак не могут влиять на результат.



"некорректная работа ipfw count"
Отправлено Pahanivo , 07-Окт-08 10:40 
>>а это точно полный листинг?
>
>Да. Есть правила после этих, но они ведь никак не могут влиять
>на результат.

Блин ну не парь уже мозг - покажи полный листинг без редактирования.


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 11:39 
>Блин ну не парь уже мозг - покажи полный листинг без редактирования.

Там более тысячи правил. Какой смысл полного листинга?



"некорректная работа ipfw count"
Отправлено Аноним , 07-Окт-08 11:51 
>>Блин ну не парь уже мозг - покажи полный листинг без редактирования.
>
>Там более тысячи правил. Какой смысл полного листинга?

сорри за офтоп, но зачем так извращаться с подсчетом, если можно поставить что-нить аля ipcad с netflow?


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 12:00 
>сорри за офтоп, но зачем так извращаться с подсчетом, если можно поставить
>что-нить аля ipcad с netflow?

Ipacct стоит. На него, кстати, заворачивает правило 50.
Через count я считал до того как познакомился с ipacctd. Ipacct всем хорош, но когда у тебя ежедневно на почтовик коннектится по 250 тыс. хостов, то количество записей в базе за месяц составляет 6-7 млн. И простенькие отчеты вроде суммарного трафика от провайдера или трафика конкретного юзера, которые регулярно запрашивается в течение дня, на такой базюке грузят mysql по самое нехочу. Я уже думаю насчет разведения статистики по почтовику и по всему остальному (почтовик генерит 70% логов ipacct), но пока нужно с ipfw count жить)


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 11:52 
Уточню. До появления глюков, учет велся по правилу 140 и 141. В прошлом месяце я обнаружил, что трафик по этим двум правилам резко сократился. При том, что никаких изменений в правила до номера 140 не вносилось. Правила 100, 101 и 108,109 я уже добавил после, когда начал выяснять что за ерунда происходит. По идее, сумма счетчиков правил 100 и 101 или 108 и 109 или 140 и 141 должна быть равна счетчикам правила 50. Это выполняется, как ни странно, только для правил 108 и 109!
Да, забыл сказать, речь идет о FreeBSD 6.1-Release.

"некорректная работа ipfw count"
Отправлено Square , 07-Окт-08 12:26 
>Уточню. До появления глюков, учет велся по правилу 140 и 141. В
>прошлом месяце я обнаружил, что трафик по этим двум правилам резко
>сократился. При том, что никаких изменений в правила до номера 140
>не вносилось. Правила 100, 101 и 108,109 я уже добавил после,
>когда начал выяснять что за ерунда происходит. По идее, сумма счетчиков
>правил 100 и 101 или 108 и 109 или 140 и
>141 должна быть равна счетчикам правила 50. Это выполняется, как ни
>странно, только для правил 108 и 109!
>Да, забыл сказать, речь идет о FreeBSD 6.1-Release.

Добавь логирование, проведи тестовый замер и сравни какие пакеты не учитывались.


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 12:27 
>Добавь логирование, проведи тестовый замер и сравни какие пакеты не учитывались.

О! Спасибо за идею! Попробую.


"некорректная работа ipfw count"
Отправлено Square , 07-Окт-08 12:32 
>>Добавь логирование, проведи тестовый замер и сравни какие пакеты не учитывались.
>
>О! Спасибо за идею! Попробую.

Собери тестовую схему в вмваре....


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 19:39 
>Добавь логирование, проведи тестовый замер и сравни какие пакеты не учитывались.

Посмотрел - похоже на то, что он тупо не считает произвольные пакеты. Никакой закономерности.
Кстати, я даже вычислил конкретную дату и время когда это началось (у меня по крону каждые 15 минут в текстовый файлик записывается результат выполнения команды ipfw show с последующим обнулением счетчиков; так вот - конкретно видно что до определенного момента всё считалось корректно, а потом началась такая вот ерунда). И, похоже, я в это время что-то таки делал на сервере. Но что именно - не помню.


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 19:35 
Кому там нужен был полный листинг правил. Сейчас специально грохнул все правила и добавил следующие четыре правила:

00010  358   27284 count ip from any to any via tun0 in
00020  255   30168 count ip from any to any via tun0 out
00040  272   18594 count ip from any to any via tun0 in
00050  223   26013 count ip from any to any via tun0 out

Больше никаких правил нет. Что за глюк?


"некорректная работа ipfw count"
Отправлено PavelR , 07-Окт-08 19:56 
>[оверквотинг удален]
>00010  358   27284 count ip from any to any
>via tun0 in
>00020  255   30168 count ip from any to any
>via tun0 out
>00040  272   18594 count ip from any to any
>via tun0 in
>00050  223   26013 count ip from any to any
>via tun0 out
>
>Больше никаких правил нет. Что за глюк?

Сделай ipfw -z а потом смотри.


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 20:20 
>Сделай ipfw -z а потом смотри.

Упс, точно. Здесь всё нормально работает)


"некорректная работа ipfw count"
Отправлено crazy8 , 07-Окт-08 20:40 
Век живи - век учись. Всё дело было вот в этом правиле.

> 0 allow tcp from xx.xx.xx.xx to yy.yy.yy.yy dst-port zz.zz.zz.zz5 keep-state

keep-state каким-то образом влиял на подсчёт. Каким - попробую разобраться завтра.
Всем спасибо за советы.



"некорректная работа ipfw count"
Отправлено PavelR , 07-Окт-08 22:24 
>Век живи - век учись. Всё дело было вот в этом правиле.
>
>
>> 0 allow tcp from xx.xx.xx.xx to yy.yy.yy.yy dst-port zz.zz.zz.zz5 keep-state
>
>keep-state каким-то образом влиял на подсчёт. Каким - попробую разобраться завтра.
>Всем спасибо за советы.

Lol.


"некорректная работа ipfw count"
Отправлено crazy8 , 08-Окт-08 15:35 
>Lol.

Хороший ответ, конечно, но, уважаемый Вадим, написавший вот это
http://www.opennet.me/base/net/ipfw_flow_map.txt.html
дал более исчерпывающий ответ и помог разобраться в чём было дело.
За что ему большое спасибо.


"некорректная работа ipfw count"
Отправлено PavelR , 08-Окт-08 15:39 
>>Lol.
>
>Хороший ответ, конечно, но, уважаемый Вадим, написавший вот это
>http://www.opennet.me/base/net/ipfw_flow_map.txt.html
>дал более исчерпывающий ответ и помог разобраться в чём было дело.
>За что ему большое спасибо.

Да, Вадим мега чувак, в одном городе кстати живем )


"некорректная работа ipfw count"
Отправлено crazy8 , 09-Окт-08 04:45 
>Да, Вадим мега чувак, в одном городе кстати живем )

Кстати, со мной в соседней области)


"некорректная работа ipfw count"
Отправлено Аноним , 09-Окт-08 14:41 
>>Да, Вадим мега чувак, в одном городе кстати живем )
>Кстати, со мной в соседней области)

А я в соседней стране. Земляки!