Corsair 4 Опубліковано: 2009-01-13 04:36:40 Автор Share Опубліковано: 2009-01-13 04:36:40 Я вешал свой шейпер на внешний ай пи и ничего не происходит. он вообще не направляет трафик в эти очереди. А как именно поменять конфиг фаервола? Ссылка на сообщение Поделиться на других сайтах
Aivan 2 Опубліковано: 2009-01-13 07:04:14 Share Опубліковано: 2009-01-13 07:04:14 А как именно поменять конфиг фаервола? Тут я уже затрудняюсь подсказать... Пусть эксперты помогут. Ссылка на сообщение Поделиться на других сайтах
Corsair 4 Опубліковано: 2009-01-13 13:50:38 Автор Share Опубліковано: 2009-01-13 13:50:38 И на этом спасибо )) Ссылка на сообщение Поделиться на других сайтах
Corsair 4 Опубліковано: 2009-01-13 13:52:16 Автор Share Опубліковано: 2009-01-13 13:52:16 Ну так кто же мне подскажет как справиться с этой ситуацией. Я пробовал использовать sbq как указанно в примере выше, но ничего не получилось Ссылка на сообщение Поделиться на других сайтах
ZuarasiZ 37 Опубліковано: 2009-01-14 07:53:39 Share Опубліковано: 2009-01-14 07:53:39 #!/bin/bash # http://al.ndd.ru/routing/lartc3.html # Объявляем переменные # Скорость доступа в Инет INET_TO_USER="800kbit" USER_TO_INET="128kbit" # Скорость досутупа на сервер SRV_TO_USER="70mbit" USER_TO_SRV="70mbit" # Диапазон IP-адресов, для которых применяем шейпер START_IP=2 #END_IP=254 # Диапазон создаваемых классов для шейпера START_CLASS=2 END_CLASS=254 # Класс для доступа к локальным сетям (серверу) LAN_CLASS=255 # Класс по-умолчанию для доступа в Интернет DEFAULT_INET_CLASS=256 # На каком интерфейсе применять шейпер DEVICE="eth0" # Локальная сеть (в нашем случае сервер) #LOCAL_LAN="192.168.0.0/24" LOCAL_LAN="192.168.0.1/32" # ================================================================================ # Итак, начнём. # Очистка правил для интерфейса (входящих и исходящих qdisc). /sbin/tc qdisc del dev $DEVICE root /sbin/tc qdisc del dev $DEVICE ingress /sbin/tc qdisc add dev $DEVICE handle ffff: ingress # === Исходящая скорость от сервера (для пользователя будет входящей скоростью). /sbin/tc qdisc add dev $DEVICE root handle 1: htb default $DEFAULT_INET_CLASS # Общая исходящая скорость интерфейса. /sbin/tc class add dev $DEVICE parent 1: classid 1:1 htb rate 100mbit burst 200k # Класс по-умолчанию. Режем скорость (только не шибко сильно, потому как не будет резать), # выдаем наименьший приоритет. /sbin/tc class add dev $DEVICE parent 1:1 classid 1:$DEFAULT_INET_CLASS htb rate 10kbit prio 3 /sbin/tc qdisc add dev $DEVICE parent 1:$DEFAULT_INET_CLASS handle $DEFAULT_INET_CLASS: sfq perturb 10 # Исходящая скорость от файлового сервера (или подсетей) к пользователям. /sbin/tc class add dev $DEVICE parent 1:1 classid 1:$LAN_CLASS htb rate $SRV_TO_USER burst 200k prio 1 /sbin/tc qdisc add dev $DEVICE parent 1:$LAN_CLASS handle $LAN_CLASS: sfq perturb 10 /sbin/tc filter add dev $DEVICE parent 1:0 protocol ip prio 1 u32 match ip src $LOCAL_LAN flowid 1:$LAN_CLASS # === Входящий трафик на сервер (для пользователя будет исходящей скоростью). /sbin/tc filter add dev $DEVICE parent ffff: protocol ip prio 1 u32 match ip dst $LOCAL_LAN police rate $USER_TO_SRV burst 200k drop flowid :1 # ПРИМЕЧАНИЕ. Параметр prio определяет приоритет правил (чем ниже цифра - тем приоритет выше, # наивысший приоритет равен prio 0). В нашем случае, сначала отработают правила для # ограничения скорости локальной сети, и если трафик не соотвтетствует этим правилам, будут # вступать в силу правила для ограничения скорости Интернет. # Собственно, правила для нарезки скорости для Интернет ресурсов. while [ $START_CLASS -le $END_CLASS ] do CURRENT_USER_IP=192.168.0.$START_IP # Весь исходящий от сервера трафик не относящийся к городской сети ограничивать по скорости. /sbin/tc class add dev $DEVICE parent 1:1 classid 1:$START_CLASS htb rate $INET_TO_USER burst 10k prio 2 /sbin/tc qdisc add dev $DEVICE parent 1:$START_CLASS handle $START_CLASS: sfq perturb 10 /sbin/tc filter add dev $DEVICE parent 1:0 protocol ip prio 2 u32 match ip dst $CURRENT_USER_IP flowid 1:$START_CLASS # Весь входящий от пользователей трафик ограничивать по скорости. /sbin/tc filter add dev $DEVICE parent ffff: protocol ip prio 2 u32 match ip src $CURRENT_USER_IP police rate $USER_TO_INET burst 6k drop flowid :1 ((START_CLASS++)) ((START_IP++)) #echo "$CURRENT_USER_IP" done # P.S. Для более корректной и точной нарезки исходящей скорости от пользователей в Интернет, # лучше создать ряд правил для WAN-интерфейса. Ссылка на сообщение Поделиться на других сайтах
Corsair 4 Опубліковано: 2009-01-15 09:57:23 Автор Share Опубліковано: 2009-01-15 09:57:23 Спасибо всем кто откликнулся. Заработало. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас