The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"ipfw pipe и половина канала"
Отправлено zhukovia, 09-Май-09 12:23 
Пробую сделать систему ограничения и контроля трафика на ipfw с помощью pipe.
При этом хочется ограничивать только внешний канал, а работу из сети с сервером оставить без лимита. Для этого я написал следующую конфигурацию.
Создаю 3 pipe:
pipe 1 (для внутренней сети 1gbit),
pipe 2 (для для трафика от меня в интернет 180kbit),
pipe 3 (для для трафика ко мене из интернета 180kbit).
Затем делаю 6 очередей:
1 и 11 (для внутренней сети pipe 1),
2 (для для трафика от меня в интернет pipe 2 с Высоким преоритетом),
3 (для для трафика от меня в интернет pipe 2 с Низким преоритетом),
22 (для для трафика ко мене из интернета pipe 3 с Высоким преоритетом),
33 (для для трафика ко мене из интернета pipe 3 с Низким преоритетом).
Получается следующая картина:
1. Трафик для внутренней сети почему то тоже запихивается во 2 и 3 pipe и в результате все тормозит доже при отображении telnetа (это если что то еще качать по ftp из инета).
2. Скорость скачки с инета вместо положенных 180 kbit дает только половину (те скорость только 10 kb вместо 22 kb). Но если закоментировать 7 и 8 правило то скорость скачки становится как раз 20 kb, только внутренняя сеть все так же тормозит.
В чем может быть причина?
*************************************************************************
#!/bin/sh
ipfw -f flush
ipfw -f pipe flush
ipfw disable one_pass

peer="192.168.101.136"
localhost="192.168.101.254"
lanaddr="192.168.101.0/24"
inetaddr="84.150.110.16"

ipfw="ipfw -q"
lancard="rl0"
wancard="tun0"

upload="180kbps"
download="180kbps"
highprior="50"
lowprior="2"
highport="20,21,22,23,25,80,110,179,443,2222,3389,8080,8081"

${ipfw} pipe 1 config bw 1000Mbit/s queue 20
${ipfw} pipe 2 config bw ${upload} queue 20
${ipfw} pipe 3 config bw ${download} queue 20
${ipfw} queue 1 config pipe 1 weight 100 queue 20 mask dst-ip 0xffffffff
${ipfw} queue 11 config pipe 1 weight 100 queue 20 mask src-ip 0xffffffff

${ipfw} queue  2 config pipe 2 weight ${highprior} queue 20 mask dst-ip 0xffffffff
${ipfw} queue  3 config pipe 2 weight ${lowprior} queue 20 mask dst-ip 0xffffffff
${ipfw} queue 22 config pipe 3 weight ${highprior} queue 20 mask src-ip 0xffffffff
${ipfw} queue 33 config pipe 3 weight ${lowprior} queue 20 mask src-ip 0xffffffff

#---begin-lan network
${ipfw} add 1 queue  1 ip from ${localhost} to ${lanaddr} out via ${lancard}
${ipfw} add 2 queue 11 ip from ${lanaddr} to ${localhost} in via ${lancard}
#---end-lan network
#---begin-wan network
${ipfw} add 5 queue 22 ip from any to any ${highport} out xmit ${wancard}
${ipfw} add 6 queue 2 ip from any ${highport} to any out xmit ${lancard}
${ipfw} add 7 queue 33 ip from any to any out xmit ${wancard}
${ipfw} add 8 queue 3 ip from any to any out xmit ${lancard}
#---end-wan network
${ipfw} add  100 pass all from ${peer} to any in via ${lancard}
${ipfw} add  101 divert natd  all from ${peer} to any out via ${wancard}
${ipfw} add  102 divert  natd  all from any to any in via ${wancard}
${ipfw} add  103 pass all from me to any out via ${wancard}
${ipfw} add  104 pass all from any to ${peer} out via ${lancard}
${ipfw} add  105 pass all from any to ${peer} in via ${wancard}
${ipfw} add  65000 pass all from any to any
*************************************************************************

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру