dummynet Проблема с отдачей

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
UxN
рядовой
Сообщения: 49
Зарегистрирован: 2010-02-27 19:06:19
Откуда: Km.Ua
Контактная информация:

dummynet Проблема с отдачей

Непрочитанное сообщение UxN » 2010-10-09 23:03:26

Здрасте господа. Имею проблему с dummynet. Не шейпится аплод.

сам скрипт

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

#!/bin/sh
ipfw="/sbin/ipfw"
${ipfw} -q flush
${ipfw} -q pipe flush
${ipfw} -q queue flush
${ipfw} add divert natd all from any to any via vr0
${ipfw} add pipe 2 all from 172.16.7.5 to any out via vr0
${ipfw} pipe 2 config bw 100kbit/s queue 512kbit/s
${ipfw} add pipe 1 all from  any to 172.16.7.5 in via vr0
${ipfw} pipe 1 config bw 1024kbit/s queue 512kbit/s
Перепробовал уже много комбинаций.
Система:

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

uname -a
FreeBSD gemini.local 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Wed Aug  4 23:49:26 EEST 2010     uxn@gemini.local:/usr/obj/usr/src/sys/ROUTE  i386
Настройки dummynet:

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

gemini# sysctl net. | grep dummynet
net.inet.ip.dummynet.io_pkt_drop: 111
net.inet.ip.dummynet.io_pkt_fast: 18345
net.inet.ip.dummynet.io_pkt: 81658
net.inet.ip.dummynet.queue_count: 0
net.inet.ip.dummynet.fsk_count: 2
net.inet.ip.dummynet.si_count: 0
net.inet.ip.dummynet.schk_count: 4
net.inet.ip.dummynet.tick_lost: 0
net.inet.ip.dummynet.tick_diff: -3106
net.inet.ip.dummynet.tick_adjustment: 3117
net.inet.ip.dummynet.tick_delta_sum: -85
net.inet.ip.dummynet.tick_delta: -11
net.inet.ip.dummynet.red_max_pkt_size: 1500
net.inet.ip.dummynet.red_avg_pkt_size: 512
net.inet.ip.dummynet.red_lookup_depth: 256
net.inet.ip.dummynet.expire_cycle: 0
net.inet.ip.dummynet.expire: 1
net.inet.ip.dummynet.debug: 0
net.inet.ip.dummynet.io_fast: 0
net.inet.ip.dummynet.pipe_byte_limit: 1048576
net.inet.ip.dummynet.pipe_slot_limit: 100
net.inet.ip.dummynet.hash_size: 64
Как видно отсюда трафик не попадает на отдачу, а куда то идет.

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

gemini# ipfw show
00100    702    522432 divert 8668 ip from any to any via vr0
00200      0         0 pipe 2 ip from 172.16.7.5 to any out via vr0
00300    352    408387 pipe 1 ip from any to 172.16.7.5 in via vr0
65535 332000 269861754 allow ip from any to any

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

gemini# ipfw pipe show
00001:   1.024 Mbit/s    0 ms burst 0
q131073 512 KB 0 flows (1 buckets) sched 65537 weight 0 lmax 0 pri 0 droptail
 sched 65537 type FIFO flags 0x0 0 buckets 0 active
00002: 100.000 Kbit/s    0 ms burst 0
q131074 512 KB 0 flows (1 buckets) sched 65538 weight 0 lmax 0 pri 0 droptail
 sched 65538 type FIFO flags 0x0 0 buckets 0 active
Я уже даже не знаю что делать(((
Ash nazg durbatul?k, ash nazg gimbatul, ash nazg thrakatul?k, agh burzum-ishi krimpatul.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
UxN
рядовой
Сообщения: 49
Зарегистрирован: 2010-02-27 19:06:19
Откуда: Km.Ua
Контактная информация:

Re: dummynet Проблема с отдачей

Непрочитанное сообщение UxN » 2010-10-10 0:48:08

Ет самое.... еще заметил странность дамминет не шейперит исходящий трафик с внутренной сети... хотя он шейперит исходящий трафик на внешней сети...
Только стоит поменять

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

${ipfw} add pipe 2 all from 172.16.7.5 to any out via vr0
на

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

${ipfw} add pipe 2 all from ${ext_ip} to any out via vr0
как вдруг он начинает шейпить...
Есть подозрение что где то теряется трафик и не попадает в трубу... Или может я не прав??
Ash nazg durbatul?k, ash nazg gimbatul, ash nazg thrakatul?k, agh burzum-ishi krimpatul.

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: dummynet Проблема с отдачей

Непрочитанное сообщение hizel » 2010-10-10 11:50:34

шейпить надо до nat-а и после nat-а в зависимости от направления, это очевидно
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
UxN
рядовой
Сообщения: 49
Зарегистрирован: 2010-02-27 19:06:19
Откуда: Km.Ua
Контактная информация:

Re: dummynet Проблема с отдачей

Непрочитанное сообщение UxN » 2010-10-10 11:54:42

А что можно сделать? Почему то я грешу на freebsd-8.1. Я его cvsup-ом обновлял с 7.3.
Ash nazg durbatul?k, ash nazg gimbatul, ash nazg thrakatul?k, agh burzum-ishi krimpatul.

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: dummynet Проблема с отдачей

Непрочитанное сообщение hizel » 2010-10-10 11:56:44

почитать вдумчиво документацию и составить правильно правила

вам потом предстоит еще разобратся с новым dummynet :)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
UxN
рядовой
Сообщения: 49
Зарегистрирован: 2010-02-27 19:06:19
Откуда: Km.Ua
Контактная информация:

Re: dummynet Проблема с отдачей

Непрочитанное сообщение UxN » 2010-10-11 23:05:35

Спасиба вам большое... Я пере установил систему... а проблема была в правилах (хотя в большинстве примерах так написано)

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

${ipfw} add pipe 2 all from 172.16.7.5 to any out via vr0
${ipfw} pipe 2 config bw 100kbit/s queue 512kbit/s
я почему-то не догадался что 172.16.7.5 находиться внутри, а vr0 внешний интерфейс.

А нужно было сделать так:

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

${ipfw} add pipe 2 all from 172.16.7.5 to any 
${ipfw} pipe 2 config bw 100kbit/s queue 512kbit/s
правда минус в том что нужно вместо any вбивать все кроме внутренней подсети.
У меня вопрос, но уже не по теме. Если есть три сети A- внутренняя, B- внешняя провайдерская и внешняя C. То как сделать чтобы правило было:
ipfw add pipe 2 all from 172.16.7.5 to C and not ( A and B ) ???
Еще раз спасибо!
Ash nazg durbatul?k, ash nazg gimbatul, ash nazg thrakatul?k, agh burzum-ishi krimpatul.

Shuriks
проходил мимо

Re: dummynet Проблема с отдачей

Непрочитанное сообщение Shuriks » 2010-10-12 4:16:22

Я так понял 172.16.7.5 это адрес интерфейса смотрящего во внутреннюю сеть. Появляется один нюанс. Если эта машина только шлюз в инет, то может и сойдет такой вариант:

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

${ipfw} add pipe 2 all from 172.16.7.5 to any 
${ipfw} pipe 2 config bw 100kbit/s queue 512kbit/s
Но если там еще вертятся другие сервисы типа самбы, фтп, веб, почты и т.д., то ты также рубишь и от них канал в локальную сеть, что не есть гуд. Собственно ты сам ответил на свой вопрос: нужно вбивать что-то вместо any. Но не все адреса кроме локальной сети, а использовать инверсию, в моем случае это так:

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

inet="not 192.168.0.0/16,172.16.0.0/12,10.0.0.0/8,169.254.0.0/16,224.0.0.0/4" 
А потом уж загоняешь в трубу трафик к $inet.

Аватара пользователя
UxN
рядовой
Сообщения: 49
Зарегистрирован: 2010-02-27 19:06:19
Откуда: Km.Ua
Контактная информация:

Re: dummynet Проблема с отдачей

Непрочитанное сообщение UxN » 2010-10-12 19:38:25

СПАСИБО БОЛЬШОЕ)))) ОЧЕНЬ БЛАГОДАРЕН!!!!
Ash nazg durbatul?k, ash nazg gimbatul, ash nazg thrakatul?k, agh burzum-ishi krimpatul.