Простите за ламерские вопросы, но опять ipacctd
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
- Сообщения: 2
- Зарегистрирован: 2006-10-24 6:38:41
Простите за ламерские вопросы, но опять ipacctd
Рассказываю всё по порядку. Прочитав стать всем небезызвестного автора http://www.lissyara.su/?id=1134, решил заняться подсчётом трафика и у себя. Устанавливаю из портов ipacctd (система у меня уже собрана с поддержкой IPFW). В rc.firewall дописываю после ${FwCMD} -f flush следующее:
${FwCMD} add divert 10001 ip from any to any via vr0
Соответственно дописываю в rc.conf
ipacctd_enable="YES"
ipacctd_flags="-v"
ipacctd_rules="vr0"
ipacctd_rule_vr0_flags="-p 10001 -f /var/log/traffic_vr0.log"
ipacctd_rule_vr0_pid="/var/run/ipacctd.sk0"
Стартую ipacctd. Оный запускается без проблем. Перезагружаю правила фаервола. И тут вылезает первая проблема – система всю сеть потеряла. Решил заменой divert на tee. Теперь вроде и сеть видно, и вроде ipacctd трафик считает. Но системная консоль мне каждые две минуты выдаёт следующее:
ipacctd [482] : (port 10001) send: Can’t assign requested address
Limiting closed port response from 249 to 200 packets per second
Limiting closed port response from 212 to 200 packets per second
Limiting closed port response from 232 to 200 packets per second
Limiting closed port response from 258 to 200 packets per second
ipacctd [482] : (port 10001) send: Permission denied
ipacctd [482] : (port 10001) send: Permission denied
Limiting closed port response from 233 to 200 packets per second
ipacctd [482] : (port 10001) send: Permission denied
ipacctd [482] : (port 10001) send: Host is down
ipacctd [482] : (port 10001) send: Can’t assign requested address
...
и так далее... Хотя трафик вроде считается. В первую очередь меня обеспокоило почему не получилось через divert? Что может быть не так?
${FwCMD} add divert 10001 ip from any to any via vr0
Соответственно дописываю в rc.conf
ipacctd_enable="YES"
ipacctd_flags="-v"
ipacctd_rules="vr0"
ipacctd_rule_vr0_flags="-p 10001 -f /var/log/traffic_vr0.log"
ipacctd_rule_vr0_pid="/var/run/ipacctd.sk0"
Стартую ipacctd. Оный запускается без проблем. Перезагружаю правила фаервола. И тут вылезает первая проблема – система всю сеть потеряла. Решил заменой divert на tee. Теперь вроде и сеть видно, и вроде ipacctd трафик считает. Но системная консоль мне каждые две минуты выдаёт следующее:
ipacctd [482] : (port 10001) send: Can’t assign requested address
Limiting closed port response from 249 to 200 packets per second
Limiting closed port response from 212 to 200 packets per second
Limiting closed port response from 232 to 200 packets per second
Limiting closed port response from 258 to 200 packets per second
ipacctd [482] : (port 10001) send: Permission denied
ipacctd [482] : (port 10001) send: Permission denied
Limiting closed port response from 233 to 200 packets per second
ipacctd [482] : (port 10001) send: Permission denied
ipacctd [482] : (port 10001) send: Host is down
ipacctd [482] : (port 10001) send: Can’t assign requested address
...
и так далее... Хотя трафик вроде считается. В первую очередь меня обеспокоило почему не получилось через divert? Что может быть не так?
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Код: Выделить всё
sockstat | grep ipacc
Код: Выделить всё
ipfw show
Убей их всех! Бог потом рассортирует...
-
- проходил мимо
- Сообщения: 2
- Зарегистрирован: 2006-10-24 6:38:41
Совсем забыл упомянуть - у меня работает NAT.
root ipacctd 482 5 div4 *:10001 *:*
root ipacctd 482 6 dgram syslogd[423]:3
00100 21884 3655671 divert 8668 ip from any to any via vr0
00100 144 6542 allow ip from any to any via lo0
00200 21884 3655671 tee 10001 ip from any to any via vr0
00200 0 0 deny ip from any to 127.0.0.0/8
00200 0 0 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
00210 0 0 unreach host ip from 179.1.79.255 to any in recv vr0
00300 0 0 deny ip from 127.0.0.0/8 to any
00400 188 10528 allow icmp from any to any
00500 0 0 deny tcp from any to any 135
00600 0 0 deny tcp from any to any 139
00700 0 0 deny ip from 179.1.0.0/16 to any in recv vr0
00800 0 0 deny ip from 80.237.x.y/27 to any in recv xl0
00900 0 0 deny ip from any to 10.0.0.0/8 via vr0
01000 0 0 deny ip from any to 172.16.0.0/12 via vr0
01100 0 0 deny ip from any to 192.168.0.0/16 via vr0
01200 498 238714 deny ip from any to 179.1.79.0/24 via vr0
01300 0 0 deny ip from any to 0.0.0.0/8 via vr0
01400 0 0 deny ip from any to 169.254.0.0/16 via vr0
01500 0 0 deny ip from any to 192.0.2.0/24 via vr0
01600 0 0 deny ip from any to 224.0.0.0/4 via vr0
01700 0 0 deny ip from any to 240.0.0.0/4 via vr0
01800 28793 6463700 allow tcp from any to any established
01900 0 0 allow ip from any to any frag
02000 0 0 allow tcp from any to 80.237.x.xx 21 setup
02100 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 21 setup
02200 0 0 allow tcp from any to 80.237.x.xx 20 setup
02300 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 20 setup
02400 1 48 allow tcp from any to 80.237.x.xx 25 setup
02500 1 48 allow tcp from any to 179.1.79.254 25 setup
02600 0 0 allow tcp from any to 80.237.x.xx 587 setup
02700 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 587 setup
02800 0 0 allow tcp from any to any 53
02900 0 0 allow tcp from any 53 to any
03000 245 16065 allow udp from any to any 53
03100 418 66622 allow udp from any 53 to any
03200 0 0 deny tcp from any to any 135-139 via vr0
03300 0 0 deny tcp from any 135-139 to any
32300 0 0 allow tcp from any to 80.237.x.xx 80 setup
32400 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 80 setup
32500 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 10000 setup
32700 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 1080 setup
32800 0 0 allow tcp from any to 80.237.x.xx 110 setup
32900 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 110 setup
33000 0 0 allow tcp from any to 80.237.x.xx 44 setup
33100 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 44 setup
33200 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 3128 setup
33300 0 0 deny log tcp from any to any in recv vr0 setup
33400 682 30816 allow tcp from any to any setup
33500 0 0 allow udp from 80.237.x.xx to any 53 keep-state
33600 0 0 allow udp from 80.237.x.xx to any 123 keep-state
65535 168 19550 deny ip from any to any
Код: Выделить всё
sockstat | grep ipacc
root ipacctd 482 6 dgram syslogd[423]:3
Код: Выделить всё
ipfw show
00100 144 6542 allow ip from any to any via lo0
00200 21884 3655671 tee 10001 ip from any to any via vr0
00200 0 0 deny ip from any to 127.0.0.0/8
00200 0 0 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
00210 0 0 unreach host ip from 179.1.79.255 to any in recv vr0
00300 0 0 deny ip from 127.0.0.0/8 to any
00400 188 10528 allow icmp from any to any
00500 0 0 deny tcp from any to any 135
00600 0 0 deny tcp from any to any 139
00700 0 0 deny ip from 179.1.0.0/16 to any in recv vr0
00800 0 0 deny ip from 80.237.x.y/27 to any in recv xl0
00900 0 0 deny ip from any to 10.0.0.0/8 via vr0
01000 0 0 deny ip from any to 172.16.0.0/12 via vr0
01100 0 0 deny ip from any to 192.168.0.0/16 via vr0
01200 498 238714 deny ip from any to 179.1.79.0/24 via vr0
01300 0 0 deny ip from any to 0.0.0.0/8 via vr0
01400 0 0 deny ip from any to 169.254.0.0/16 via vr0
01500 0 0 deny ip from any to 192.0.2.0/24 via vr0
01600 0 0 deny ip from any to 224.0.0.0/4 via vr0
01700 0 0 deny ip from any to 240.0.0.0/4 via vr0
01800 28793 6463700 allow tcp from any to any established
01900 0 0 allow ip from any to any frag
02000 0 0 allow tcp from any to 80.237.x.xx 21 setup
02100 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 21 setup
02200 0 0 allow tcp from any to 80.237.x.xx 20 setup
02300 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 20 setup
02400 1 48 allow tcp from any to 80.237.x.xx 25 setup
02500 1 48 allow tcp from any to 179.1.79.254 25 setup
02600 0 0 allow tcp from any to 80.237.x.xx 587 setup
02700 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 587 setup
02800 0 0 allow tcp from any to any 53
02900 0 0 allow tcp from any 53 to any
03000 245 16065 allow udp from any to any 53
03100 418 66622 allow udp from any 53 to any
03200 0 0 deny tcp from any to any 135-139 via vr0
03300 0 0 deny tcp from any 135-139 to any
32300 0 0 allow tcp from any to 80.237.x.xx 80 setup
32400 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 80 setup
32500 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 10000 setup
32700 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 1080 setup
32800 0 0 allow tcp from any to 80.237.x.xx 110 setup
32900 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 110 setup
33000 0 0 allow tcp from any to 80.237.x.xx 44 setup
33100 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 44 setup
33200 0 0 allow tcp from 179.1.79.255 to 179.1.79.254 3128 setup
33300 0 0 deny log tcp from any to any in recv vr0 setup
33400 682 30816 allow tcp from any to any setup
33500 0 0 allow udp from 80.237.x.xx to any 53 keep-state
33600 0 0 allow udp from 80.237.x.xx to any 123 keep-state
65535 168 19550 deny ip from any to any
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
Из man ipacctd.
Попробуй выставить побольше.
Limiting closed port response from 249 to 200 packets per second
Такие вещи у меня появлялись на 3COM'ах.
Мой лог:
Код: Выделить всё
-m recs Максимальное число записей в хэше (по умолчанию - 30000). Под
записью понимается уникальное сочетание ip_src/ip_dst для обыч-
ного режима и ip_src/ip_dst/s_port/d_port/ip_proto для расширен-
ного режима. Наличие этой опции предотвращает DoS атаки, так как
для каждого элемента хэша требуется определённое количество опе-
ративной памяти.
Код: Выделить всё
-b size Установить размеры буферов приёма/передачи divert(4) сокета рав-
ные size. При большом количестве пакетов в секунду рекоменду-
ется выставлять равным максимальному значению (равному значению
sysctl(8) переменной kern.ipc.maxsockbuf.
Limiting closed port response from 249 to 200 packets per second
Такие вещи у меня появлялись на 3COM'ах.
Мой лог:
Код: Выделить всё
Oct 25 09:50:00 ns ipacctd[50013]: (port 666) accounting dumped to /tmp/ipacct/ipacct.666 (17778 packets, 24548238 bytes)
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
та же самая фигня...
Конфиг такой:
Код: Выделить всё
Oct 14 15:40:27 ipacctd[16706]: (port 10001) send: Can't assign requested address
Oct 14 21:44:35 ipacctd[16706]: (port 10001) send: Can't assign requested address
Oct 14 21:44:46 ipacctd[16706]: (port 10001) send: Can't assign requested address
Код: Выделить всё
ipacctd_rule_fxp0_flags="-p 10001 -m 100000 -b 130000 -f /var/log/traffic.log"
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
Не может забиндить 10001 порт:
sockstat | grep 10001
sockstat | grep 10001
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
Код: Выделить всё
root ipacctd 16706 5 div4 *:10001 *:*
Код: Выделить всё
system("killall -1 ipacctd && sync && sleep 5");
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
У тебя висит на 10001 порту ipacctd
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
и? а разьве не должен? у него по конфигу этот порт. после killall -1 выводится в лог сообщениеdikens3 писал(а):У тебя висит на 10001 порту ipacctd
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
Не простите, как вопрос задаём, так и отвечаем:burn писал(а):и? а разьве не должен? у него по конфигу этот порт. после killall -1 выводится в лог сообщениеdikens3 писал(а):У тебя висит на 10001 порту ipacctd
Что я тут должен был подумать? Предположил что он у тебя не запускается. :-)Oct 14 15:40:27 ipacctd[16706]: (port 10001) send: Can't assign requested address
Oct 14 21:44:35 ipacctd[16706]: (port 10001) send: Can't assign requested address
Oct 14 21:44:46 ipacctd[16706]: (port 10001) send: Can't assign requested address
Думай почему такие строки вываливаются. Попробуй другие способы.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
какие другие?
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
Снимай статистику не через kill, а через cat к примеру.
Побалуйся с параметрами запуска.
Побалуйся с параметрами запуска.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
пробовал через кат) там периодически пишет host is downdikens3 писал(а):Снимай статистику не через kill, а через cat к примеру.
Побалуйся с параметрами запуска.

- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
Чё то глюки какие-то.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
- ADRE
- майор
- Сообщения: 2641
- Зарегистрирован: 2007-07-26 8:53:49
- Контактная информация:
Re: Простите за ламерские вопросы, но опять ipacctd
- письмо от разработчика:
RVP> Основная причина по которой sendto() в divert сокет может вернуть
> RVP> permission denied это наличие ниже deny правила ipfw, под которое попадает
> RVP> посылаемый пакет.
> Так оно и есть,
> Я бы хотел считать весь трафик, который например приходит с внешнего
> интерфеса что бы контролировать провайдера, но часть есстественно
> попадает под deny.
> Я так понял беспокоиться незачем? Такой пакет считается?
RVP>Ну да. На оба вопроса
Последний раз редактировалось ADRE 2007-11-28 11:27:45, всего редактировалось 1 раз.
//del
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2007-08-21 1:12:11
Re: Простите за ламерские вопросы, но опять ipacctd
гуд, спасибо!