Страница 1 из 1

Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 14:56:16
terminus
http://www.opennet.ru/base/sys/freebsd_ ... n.txt.html
Решение:

Никогда не удалять правила фаервола, которые отправляют пакеты в DUMMYNET.
Создать при старте или при необходимости, определить пайпы или
queue и не торгать их больше. Надо запретить пакеты - или deny раньше по
фаерволу или дать пользователю пару бит в сек. Надо отменить шейпинг -
говорим "bw 0" или сказать skipto. Да, есть мнение, что наличее ненужных
pipe (так как скорость на них не лимитируется) только уменьшает
производительность (занимают память и dummynet с частотой Hz (из
параметров ядра) их обходит), но лучше так, чем kernel panic.

После замены логики - сервер без перезагрузок более недели.

P.S. Не пробывали только менять правила фаэрвола через сеты (ipfw set
см. man ipfw) - быть может там другая ситуация
Очень позновательно - я так просветлился по поводу ipfw в очередной раз :smile:

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 16:24:54
hizel
человек не разобрался полностью и накатал статью, фиерия :fool:

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 18:35:49
terminus
Ценность заметки - описание грабелек ;-)

Интересно он накатает потом PR или нет...

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 19:52:49
Andy
terminus писал(а):Интересно он накатает потом PR или нет...
Я думаю хер забьет. Потюкает кого-нибудь в рассылке, будет послан, а потом может и пофиксят.

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 21:44:41
Alex Keda
а почему у меня таких багов не было?
Я чё-то неправильно делал?

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-09 22:30:29
hizel
у мя тоже видимо лапы не из того места растут :(

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-10 10:46:17
terminus
Хз что там у него не так, но вот он сетует, что это стало получаться после перехода на 100 мбит соединение, когда оно забито под потолок...

Энивей - предупрежден, значит вооружен. Теперь хотябы + 0.5 к экспириенсу, и если случится что-то похожее, то будет что вспомнить.

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-10 10:53:21
hizel
7.1 уже кстати релиз ;)
io_fast что то хвалят :/

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-10 22:35:15
Alex Keda
сходил таки по линку и почитал чё обсуждаем =))
у автора явный проблемы с русским, а в последнем сообщении он юзал фрю 6.5 =(
вобщем - ф топку.

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-11 4:40:43
warzon

Код: Выделить всё

internet# ipfw show
00001    850   322724 allow ip from any to 10.10.10.100
01042  80678  6069748 queue 244 ip from 192.168.1.5 to any out via tun0
01043  85500 32934276 queue 243 ip from any to 192.168.1.5 in via tun0
01052    593   133398 queue 254 ip from 192.168.1.10 to any out via tun0
01053    638   473388 queue 253 ip from any to 192.168.1.10 in via tun0
02041  85885  6540468 allow ip from 192.168.1.5 to any
02042  92654 34268069 allow ip from any to 192.168.1.5
02051    917   157215 allow ip from 192.168.1.10 to any
02052    947   559343 allow ip from any to 192.168.1.10
50000     63    11644 allow udp from any to any dst-port 5555 via ed0
50100     68     4082 allow tcp from any to any dst-port 53
50200     40     3829 allow tcp from any 53 to any
50300   7107   511792 allow udp from any to any dst-port 53
50400   6817  1339328 allow udp from any 53 to any
50500      0        0 allow tcp from any to any dst-port 20,21 via ed0
50600      0        0 allow tcp from any 20,21 to any via ed0
50700    271    20724 allow tcp from any to any dst-port 22
50800    231    44556 allow tcp from any 22 to any
50900    165    17628 deny ip from any to any not verrevpath in
51000     10     7135 deny ip from any to any frag
51100     20     1120 deny ip from any to 10.0.0.0/8 via tun0
51200      0        0 deny ip from any to 172.16.0.0/12 via tun0
51300   8903   429076 deny ip from any to 192.168.0.0/16 via tun0
51400      0        0 deny ip from 0.0.0.0/8 to any via tun0
51500      0        0 deny ip from any to 169.254.0.0/16 via tun0
51600      0        0 deny ip from any to 192.0.2.0/24 via tun0
51700      0        0 deny ip from any to 224.0.0.0/4 via tun0
51800      0        0 deny ip from any to 240.0.0.0/4 via tun0
51900      0        0 deny ip from any to 62.149.17.70 via tun0
65535 130250 14214050 allow ip from any to any
internet# ipfw -q add 1 deny all from any to trident.com.ua via tun0
internet# ipfw -q add 1 deny all from any to 212.72.38.0/24 via tun0
internet# ipfw -q add 1 deny all from any to 77.232.67.0/24 via tun0
internet# ipfw -q add 1 deny all from any to 77.232.67.0/24 via tun0
internet# fg
mc

internet# ifpw show
ifpw: Command not found.
internet# ipfw show
00001    870   325984 allow ip from any to 10.10.10.100
00001      9      468 deny ip from any to 62.149.17.70 via tun0
00001      0        0 deny ip from any to 212.72.38.0/24 via tun0
00001      6      312 deny ip from any to 77.232.67.0/24 via tun0
01042  82855  6212098 queue 244 ip from 192.168.1.5 to any out via tun0
01043  87804 33603325 queue 243 ip from any to 192.168.1.5 in via tun0
01052   1489   321245 queue 254 ip from 192.168.1.10 to any out via tun0
01053   1505   926848 queue 253 ip from any to 192.168.1.10 in via tun0
02041  88245  6699644 allow ip from 192.168.1.5 to any
02042  95139 34972269 allow ip from any to 192.168.1.5
02051   2434   394197 allow ip from 192.168.1.10 to any
02052   2365  1123747 allow ip from any to 192.168.1.10
50000     63    11644 allow udp from any to any dst-port 5555 via ed0
50100     68     4082 allow tcp from any to any dst-port 53
50200     40     3829 allow tcp from any 53 to any
50300   7339   529291 allow udp from any to any dst-port 53
50400   7026  1380857 allow udp from any 53 to any
50500      0        0 allow tcp from any to any dst-port 20,21 via ed0
50600      0        0 allow tcp from any 20,21 to any via ed0
50700    271    20724 allow tcp from any to any dst-port 22
50800    231    44556 allow tcp from any 22 to any
50900    165    17628 deny ip from any to any not verrevpath in
51000     10     7135 deny ip from any to any frag
51100     20     1120 deny ip from any to 10.0.0.0/8 via tun0
51200      0        0 deny ip from any to 172.16.0.0/12 via tun0
51300   8903   429076 deny ip from any to 192.168.0.0/16 via tun0
51400      0        0 deny ip from 0.0.0.0/8 to any via tun0
51500      0        0 deny ip from any to 169.254.0.0/16 via tun0
51600      0        0 deny ip from any to 192.0.2.0/24 via tun0
51700      0        0 deny ip from any to 224.0.0.0/4 via tun0
51800      0        0 deny ip from any to 240.0.0.0/4 via tun0
51900      0        0 deny ip from any to 62.149.17.70 via tun0
65535 130542 14241205 allow ip from any to any
internet# ipfw pipe show
00152: 510.000 Kbit/s    0 ms   20 sl. 0 queues (1 buckets) droptail
00141: 200.000 Kbit/s    0 ms    5 sl. 0 queues (1 buckets) droptail
00142: 100.000 Kbit/s    0 ms    5 sl. 0 queues (1 buckets) droptail
00151:   1.000 Mbit/s    0 ms   20 sl. 0 queues (1 buckets) droptail
q00254: weight 80 pipe 152   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp     192.168.1.10/44336    92.192.71.83/2676  1489   321245  0    0   0
q00253: weight 80 pipe 151   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp     92.192.71.83/2676     192.168.1.10/44336 1505   926848  0    0   0
q00244: weight 50 pipe 142   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp      192.168.1.5/4823     92.63.96.176/80    82914  6221823  0    0   0
q00243: weight 50 pipe 141   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp     92.63.96.176/80        192.168.1.5/4823  87881 33655197  0    0  55

Код: Выделить всё

FreeBSD internet.GW 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Thu Feb  5 05:07:23 UTC 2009    
 root@internet.GW:/usr/obj/usr/src/sys/warzoni  i386
)) всё пашет так это цеветочки на одном 50 онлайн *)

Re: Статья на opennet про паники при манипуляциях с dummynet

Добавлено: 2009-02-11 4:42:22
warzon
прошу извенить меня, не заметил прокрутки......можете удалить в принципе.нестрашно :smile: