* [Comm] Снова про htb
@ 2005-11-30 11:22 Владимир Гусев
2005-11-30 12:22 ` Alexey V. Novikov
` (3 more replies)
0 siblings, 4 replies; 21+ messages in thread
From: Владимир Гусев @ 2005-11-30 11:22 UTC (permalink / raw)
To: ALT Linux Community
Здравствуйте!
Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников рассылки
уже применяет htb для управления исходящим траффиком на ADSL ? Поделитесь
опытом и конфигами-образцами.. Никак не могу въехать, хотя теорию вопроса
в принципе понял..
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 11:22 [Comm] Снова про htb Владимир Гусев
@ 2005-11-30 12:22 ` Alexey V. Novikov
2005-11-30 13:13 ` Владимир Гусев
2005-11-30 15:00 ` [Comm] Снова про htb sergey ivanov
` (2 subsequent siblings)
3 siblings, 1 reply; 21+ messages in thread
From: Alexey V. Novikov @ 2005-11-30 12:22 UTC (permalink / raw)
To: ALT Linux Community
[-- Attachment #1: Type: text/plain, Size: 474 bytes --]
30.11.2005 14:22, Владимир Гусев пишет:
> Здравствуйте!
>
> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
> рассылки уже применяет htb для управления исходящим траффиком на ADSL ?
> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
> теорию вопроса в принципе понял..
У меня крутится свой скрипт на htb.
Вроде более-менее адекватный.
Некоторые финты там сделаны,
чтобы не использовать метки iptables.
--
WBR, Alexey V. Novikov
[-- Attachment #2: shaper.sh.bz2 --]
[-- Type: application/binary, Size: 1780 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 12:22 ` Alexey V. Novikov
@ 2005-11-30 13:13 ` Владимир Гусев
2005-11-30 13:21 ` Alexey V. Novikov
0 siblings, 1 reply; 21+ messages in thread
From: Владимир Гусев @ 2005-11-30 13:13 UTC (permalink / raw)
To: ALT Linux Community
>> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
>> рассылки уже применяет htb для управления исходящим траффиком на ADSL ?
>> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
>> теорию вопроса в принципе понял..
> У меня крутится свой скрипт на htb.
Крутится? Как его использовать?
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 13:13 ` Владимир Гусев
@ 2005-11-30 13:21 ` Alexey V. Novikov
2005-11-30 14:25 ` [Comm] Снова про htb (теперь и про cbq) Владимир Гусев
0 siblings, 1 reply; 21+ messages in thread
From: Alexey V. Novikov @ 2005-11-30 13:21 UTC (permalink / raw)
To: ALT Linux Community
30.11.2005 16:13, Владимир Гусев пишет:
>>> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
>>> рассылки уже применяет htb для управления исходящим траффиком на ADSL ?
>>> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
>>> теорию вопроса в принципе понял..
>>
>> У меня крутится свой скрипт на htb.
>
>
> Крутится? Как его использовать?
Отредактировать по-вкусу (UPLINK, DOWNLINK, DEV)
и запустить из rc.local :)
Просто скрипт из пакета iproute-htb меня не устроил.
К тому же хотелось самому разобраться.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-11-30 13:21 ` Alexey V. Novikov
@ 2005-11-30 14:25 ` Владимир Гусев
2005-12-01 5:48 ` Alexey V. Novikov
0 siblings, 1 reply; 21+ messages in thread
From: Владимир Гусев @ 2005-11-30 14:25 UTC (permalink / raw)
To: ALT Linux Community
>>>> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
>>>> рассылки уже применяет htb для управления исходящим траффиком на
>>>> ADSL ?
>>>> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
>>>> теорию вопроса в принципе понял..
>>>
>>> У меня крутится свой скрипт на htb.
>> Крутится? Как его использовать?
> Отредактировать по-вкусу (UPLINK, DOWNLINK, DEV)
> и запустить из rc.local :)
> Просто скрипт из пакета iproute-htb меня не устроил.
> К тому же хотелось самому разобраться.
Теперь понял.. это тот скрипт, который крутится при service htb start..
Вам памятник надо поставить..
а я тут уже за cbq хватился.. мне всего-то нужно сделать ограничение на
smtp, чтобы кто-то с толстым письмом не засорял весь канал..
сделал в /etc/sysconfig/cbq/ файлик:
DEVICE=eth1,100Mbit,1Mbit
RATE=10Kbit
WEIGHT=2Kbit
PRIO=5
RULE=,:25
где eth1 - внутр. интерфейс сервера
потом сделал service cbq compile
потом service cbq start
И вот не понял - правильно ли, что нужно указать в этом случае внутренний
интерфейс (по логике правильно)?
Будет ли работать вариант, если я вместо глобального RULE=,:25 укажу
конкретных "злоумышленников"?
Читал в инете - пишут, что нужно добавить в iptables для eth1 MASQUERADE..
И вообще - как проверить - работает или нет?
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 11:22 [Comm] Снова про htb Владимир Гусев
2005-11-30 12:22 ` Alexey V. Novikov
@ 2005-11-30 15:00 ` sergey ivanov
2005-11-30 20:50 ` [Comm] " Michael Shigorin
2005-12-02 16:14 ` [Comm] " Sergey Ivanov
2005-12-03 1:00 ` Aleksey Avdeev
3 siblings, 1 reply; 21+ messages in thread
From: sergey ivanov @ 2005-11-30 15:00 UTC (permalink / raw)
To: ALT Linux Community
[-- Attachment #1: Type: text/plain, Size: 594 bytes --]
Владимир Гусев пишет:
> Здравствуйте!
>
> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
> рассылки уже применяет htb для управления исходящим траффиком на ADSL
> ? Поделитесь опытом и конфигами-образцами.. Никак не могу въехать,
> хотя теорию вопроса в принципе понял..
>
У меня всё работало с Сизифовским iproute-htb, никаких своих скриптов
писать не пришлось.
Сейчас пытаюсь добиться чтобы оно работало с etcnet, но похоже придётся
возвращаться к iproute-htb, так как etcnet, как мне показалось, ещё в
зачаточном состоянии и таких задач решать не может.
--
Сергей
[-- Attachment #2: htb.tbz2 --]
[-- Type: application/octet-stream, Size: 479 bytes --]
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Comm] Re: Снова про htb
2005-11-30 15:00 ` [Comm] Снова про htb sergey ivanov
@ 2005-11-30 20:50 ` Michael Shigorin
0 siblings, 0 replies; 21+ messages in thread
From: Michael Shigorin @ 2005-11-30 20:50 UTC (permalink / raw)
To: ALT Linux Community
On Wed, Nov 30, 2005 at 10:00:58AM -0500, sergey ivanov wrote:
> У меня всё работало с Сизифовским iproute-htb, никаких своих
> скриптов писать не пришлось. Сейчас пытаюсь добиться чтобы оно
> работало с etcnet, но похоже придётся возвращаться к
> iproute-htb, так как etcnet, как мне показалось, ещё в
> зачаточном состоянии и таких задач решать не может.
Так мож допишите нужный кусок? hiddenman@ вон взял и родил
поддержку iptables.
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-11-30 14:25 ` [Comm] Снова про htb (теперь и про cbq) Владимир Гусев
@ 2005-12-01 5:48 ` Alexey V. Novikov
2005-12-01 10:10 ` Владимир Гусев
2005-12-02 7:42 ` Владимир Гусев
0 siblings, 2 replies; 21+ messages in thread
From: Alexey V. Novikov @ 2005-12-01 5:48 UTC (permalink / raw)
To: ALT Linux Community
30.11.2005 17:25, Владимир Гусев пишет:
>>>>> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
>>>>> рассылки уже применяет htb для управления исходящим траффиком на
>>>>> ADSL ?
>>>>> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
>>>>> теорию вопроса в принципе понял..
>>>>
>>>>
>>>> У меня крутится свой скрипт на htb.
>>>
>>> Крутится? Как его использовать?
>>
>> Отредактировать по-вкусу (UPLINK, DOWNLINK, DEV)
>> и запустить из rc.local :)
>> Просто скрипт из пакета iproute-htb меня не устроил.
>> К тому же хотелось самому разобраться.
>
>
> Теперь понял.. это тот скрипт, который крутится при service htb start..
> Вам памятник надо поставить..
Это не тот скрипт, это его аналог.
> а я тут уже за cbq хватился.. мне всего-то нужно сделать ограничение на
А вот cbq слегка ругают.
> smtp, чтобы кто-то с толстым письмом не засорял весь канал..
> сделал в /etc/sysconfig/cbq/ файлик:
>
> DEVICE=eth1,100Mbit,1Mbit
> RATE=10Kbit
> WEIGHT=2Kbit
> PRIO=5
> RULE=,:25
>
> где eth1 - внутр. интерфейс сервера
>
> потом сделал service cbq compile
> потом service cbq start
>
> И вот не понял - правильно ли, что нужно указать в этом случае
> внутренний интерфейс (по логике правильно)?
Нет, шейпится в основном лишь исходящий трафик.
Для входящего есть лишь ingress с вожможностью
отброса лишних пакетов.
> Будет ли работать вариант, если я вместо глобального RULE=,:25 укажу
> конкретных "злоумышленников"?
> Читал в инете - пишут, что нужно добавить в iptables для eth1 MASQUERADE..
Читайте лучше оригинал (в переводе)
http://www.opennet.ru/docs/RUS/LARTC/
> И вообще - как проверить - работает или нет?
Например так:
# tc -s -d qdisc ls
qdisc pfifo_fast 0: dev eth0 [Unknown qdisc, optlen=20]
Sent 1077000 bytes 3023 pkts (dropped 0, overlimits 0)
qdisc ingress ffff: dev eth1 ----------------
Sent 1043770 bytes 2909 pkts (dropped 0, overlimits 0)
qdisc sfq 150: dev eth1 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 16690 bytes 302 pkts (dropped 0, overlimits 0)
qdisc sfq 140: dev eth1 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 48073 bytes 854 pkts (dropped 0, overlimits 0)
qdisc sfq 130: dev eth1 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
qdisc sfq 120: dev eth1 limit 128p quantum 1514b flows 128/1024 perturb
10sec
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
qdisc htb 1: dev eth1 r2q 10 default 15 direct_packets_stat 1 ver 3.16
Sent 228569 bytes 2368 pkts (dropped 0, overlimits 26)
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-01 5:48 ` Alexey V. Novikov
@ 2005-12-01 10:10 ` Владимир Гусев
2005-12-02 7:42 ` Владимир Гусев
1 sibling, 0 replies; 21+ messages in thread
From: Владимир Гусев @ 2005-12-01 10:10 UTC (permalink / raw)
To: ALT Linux Community
>> И вообще - как проверить - работает или нет?
> Например так:
> # tc -s -d qdisc ls
Как обнуляется cbq (htb)?
Если, к примеру я ранее сделал service cbq compile для одного содержимого
файла, а после стопнул cbq, изменил содержимое этого же файла, снова
сделал service cbq compile и потом service cbq start.
Происходит автоматическое затирание старого и применение нового, или одно
накладывается на другое?
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-01 5:48 ` Alexey V. Novikov
2005-12-01 10:10 ` Владимир Гусев
@ 2005-12-02 7:42 ` Владимир Гусев
2005-12-02 9:24 ` Alexey V. Novikov
1 sibling, 1 reply; 21+ messages in thread
From: Владимир Гусев @ 2005-12-02 7:42 UTC (permalink / raw)
To: ALT Linux Community
> Читайте лучше оригинал (в переводе)
> http://www.opennet.ru/docs/RUS/LARTC/
Вот сколько ни читал всяких разных HOWTO и прочих, не заметил, в
частности, ответ на вопрос, какое значение должно быть у "пропускной
способности" DEVICE=eth0 - пропускная способность сетевой карты или
пропускная способность канала ADSL.
В одном месте пишут 100Mbit, что говорит о карте, в другом 10Mbit, что
непонятно - это может относиться и к карте, и к выделенному каналу..
В третьих инструкциях пишут другие цифры, заставляющие думать о том, что
эта цифра - толщина канала..
Так что же это на самом деле?
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 7:42 ` Владимир Гусев
@ 2005-12-02 9:24 ` Alexey V. Novikov
2005-12-02 10:20 ` Владимир Гусев
0 siblings, 1 reply; 21+ messages in thread
From: Alexey V. Novikov @ 2005-12-02 9:24 UTC (permalink / raw)
To: ALT Linux Community
02.12.2005 10:42, Владимир Гусев пишет:
>> Читайте лучше оригинал (в переводе)
>> http://www.opennet.ru/docs/RUS/LARTC/
>
>
> Вот сколько ни читал всяких разных HOWTO и прочих, не заметил, в
> частности, ответ на вопрос, какое значение должно быть у "пропускной
> способности" DEVICE=eth0 - пропускная способность сетевой карты или
> пропускная способность канала ADSL.
> В одном месте пишут 100Mbit, что говорит о карте, в другом 10Mbit, что
> непонятно - это может относиться и к карте, и к выделенному каналу..
> В третьих инструкциях пишут другие цифры, заставляющие думать о том,
> что эта цифра - толщина канала..
> Так что же это на самом деле?
Видимо читали Вы все-таки плохо, перечтите еще разок.:)
До меня тоже не с первого прочтения дошло.:)
Дело в том, что для того, чтобы шейпить трафик, надо
очередь пакетов перенести из неконтролируемого устройства
(обычно - самого медленного, т.е. ADSL) в компьютер.
Следовательно - ставим самую маленькую на _исходящем_
в инет траффике, т.е. скорость upload ADSL и даже
еще чуть-чуть поменьше. Это сработает например на отправку
большой почты. Если же у Вас, скажем, сервер с большим
трафиком в локалке, таким что канал может быть забит
кем-то под завязку, то стоит шейпить трафик исходящий с
сервера через сетевуху, тогда ставите скорость
сетевухи.
Вроде бы должно быть все ясно.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 9:24 ` Alexey V. Novikov
@ 2005-12-02 10:20 ` Владимир Гусев
2005-12-02 10:43 ` Alexey V. Novikov
0 siblings, 1 reply; 21+ messages in thread
From: Владимир Гусев @ 2005-12-02 10:20 UTC (permalink / raw)
To: ALT Linux Community
>> Вот сколько ни читал всяких разных HOWTO и прочих, не заметил, в
>> частности, ответ на вопрос, какое значение должно быть у "пропускной
>> способности" DEVICE=eth0 - пропускная способность сетевой карты или
>> пропускная способность канала ADSL.
> Дело в том, что для того, чтобы шейпить трафик, надо
> очередь пакетов перенести из неконтролируемого устройства
> (обычно - самого медленного, т.е. ADSL) в компьютер.
> Следовательно - ставим самую маленькую на _исходящем_
> в инет траффике, т.е. скорость upload ADSL и даже
> еще чуть-чуть поменьше. Это сработает например на отправку
> большой почты.
Кстати, о большой почте..
вот я создал такой файл /etc/sysconfig/cbq-15.smtp
[root@gate cbq]# cat cbq-15.smtp
#параметры пропускной способности исходящ. траффика ADSL - 1.5 Mbit,
соответственно вес его - 192
#eth0 - внешний интерфейс шлюза, смотрит в "инет"
DEVICE=eth0,1.5Mbit,192Kbit
RATE=10Kbit
WEIGHT=1Kbit
PRIO=5
#тут весь траффик со всех компов локальной сети (за шлюзом) по 25 порту
куда угодно
RULE=192.168.1.0/24:25,
Будет ли работать такая конфигурация? Не повлияет ли она случайно на
входящий трафик вообще?
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 10:20 ` Владимир Гусев
@ 2005-12-02 10:43 ` Alexey V. Novikov
2005-12-02 11:24 ` Владимир Гусев
0 siblings, 1 reply; 21+ messages in thread
From: Alexey V. Novikov @ 2005-12-02 10:43 UTC (permalink / raw)
To: ALT Linux Community
02.12.2005 13:20, Владимир Гусев пишет:
> Кстати, о большой почте..
> вот я создал такой файл /etc/sysconfig/cbq-15.smtp
>
> [root@gate cbq]# cat cbq-15.smtp
> #параметры пропускной способности исходящ. траффика ADSL - 1.5 Mbit,
> соответственно вес его - 192
> #eth0 - внешний интерфейс шлюза, смотрит в "инет"
> DEVICE=eth0,1.5Mbit,192Kbit
> RATE=10Kbit
> WEIGHT=1Kbit
> PRIO=5
> #тут весь траффик со всех компов локальной сети (за шлюзом) по 25 порту
> куда угодно
> RULE=192.168.1.0/24:25,
>
> Будет ли работать такая конфигурация? Не повлияет ли она случайно на
> входящий трафик вообще?
Меня смущает RULE, похоже что :25 это исходящий порт, тогда это неправильно.
Может его записать вот так
RULE=,:25
Если я правильно разобрался в скрипте cbq, то должно прокатить.
На входящий трафик повлиять не должно.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 10:43 ` Alexey V. Novikov
@ 2005-12-02 11:24 ` Владимир Гусев
2005-12-02 11:54 ` Alexey V. Novikov
0 siblings, 1 reply; 21+ messages in thread
From: Владимир Гусев @ 2005-12-02 11:24 UTC (permalink / raw)
To: ALT Linux Community
>> вот я создал такой файл /etc/sysconfig/cbq-15.smtp
>> [root@gate cbq]# cat cbq-15.smtp
>> #параметры пропускной способности исходящ. траффика ADSL - 1.5 Mbit,
>> соответственно вес его - 192
>> #eth0 - внешний интерфейс шлюза, смотрит в "инет"
>> DEVICE=eth0,1.5Mbit,192Kbit
>> RATE=10Kbit
>> WEIGHT=1Kbit
>> PRIO=5
>> #тут весь траффик со всех компов локальной сети (за шлюзом) по 25
>> порту куда угодно
>> RULE=192.168.1.0/24:25,
>> Будет ли работать такая конфигурация? Не повлияет ли она случайно на
>> входящий трафик вообще?
> Меня смущает RULE, похоже что :25 это исходящий порт, тогда это
> неправильно.
> Может его записать вот так
> RULE=,:25
> Если я правильно разобрался в скрипте cbq, то должно прокатить.
> На входящий трафик повлиять не должно.
Мда.. действительно, пересмотрел и понял, что скорее всего неверно..
Да, правильно будет RULE=,:25 или ,192.168.1.0/24:25
Сработает ли такой вариант, если я буду вместо глобального ,:25 указывать
несколько конкретных IP?
RULE=,192.168.1.15:25
RULE=,192.168.1.22:25
RULE=,192.168.1.45:25
указав тем самым самых "злостных нарушителей" ? В руководствах вроде
написано, что можно, причем правила будут действовать одновременно..
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 11:24 ` Владимир Гусев
@ 2005-12-02 11:54 ` Alexey V. Novikov
2005-12-02 13:40 ` Владимир Гусев
0 siblings, 1 reply; 21+ messages in thread
From: Alexey V. Novikov @ 2005-12-02 11:54 UTC (permalink / raw)
To: ALT Linux Community
02.12.2005 14:24, Владимир Гусев пишет:
>> Меня смущает RULE, похоже что :25 это исходящий порт, тогда это
>> неправильно.
>> Может его записать вот так
>> RULE=,:25
>> Если я правильно разобрался в скрипте cbq, то должно прокатить.
>> На входящий трафик повлиять не должно.
>
>
> Мда.. действительно, пересмотрел и понял, что скорее всего неверно..
> Да, правильно будет RULE=,:25 или ,192.168.1.0/24:25
>
> Сработает ли такой вариант, если я буду вместо глобального ,:25
> указывать несколько конкретных IP?
>
> RULE=,192.168.1.15:25
> RULE=,192.168.1.22:25
> RULE=,192.168.1.45:25
>
> указав тем самым самых "злостных нарушителей" ? В руководствах вроде
> написано, что можно, причем правила будут действовать одновременно..
Ну вот опять, теперь у Вы указали адрес и порт назначения,
в то время как адрес должен быть исходящий, а порт назначения.
Впрочем, в случае nat или masq на этом этапе исходящий адрес -
это адрес Вашего шлюза, поэтому не сработает.
Оставьте только один порт, на остальных это сильно не скажется.
А RULE можно дествительно можно указывать несколько,
только вот действовать они будут не совсем одновременно,
т.к. на каждое RULE будет вызываться
tc filter add dev $DEVICE parent 1:0 protocol ip \
prio $PRIO_RULE u32 $u32_s $u32_d classid 1:$CLASS
P.S.: Все-таки еще раз перечитайте LARTC, многое
станет несколько понятнее.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb (теперь и про cbq)
2005-12-02 11:54 ` Alexey V. Novikov
@ 2005-12-02 13:40 ` Владимир Гусев
0 siblings, 0 replies; 21+ messages in thread
From: Владимир Гусев @ 2005-12-02 13:40 UTC (permalink / raw)
To: ALT Linux Community
>>> Может его записать вот так
>>> RULE=,:25
>> Мда.. действительно, пересмотрел и понял, что скорее всего неверно..
>> Да, правильно будет RULE=,:25 или ,192.168.1.0/24:25
>> Сработает ли такой вариант, если я буду вместо глобального ,:25
>> указывать несколько конкретных IP?
>> RULE=,192.168.1.15:25
>> RULE=,192.168.1.22:25
>> RULE=,192.168.1.45:25
> Ну вот опять, теперь у Вы указали адрес и порт назначения,
> в то время как адрес должен быть исходящий, а порт назначения.
> Впрочем, в случае nat или masq на этом этапе исходящий адрес -
> это адрес Вашего шлюза, поэтому не сработает.
> Оставьте только один порт, на остальных это сильно не скажется.
> А RULE можно дествительно можно указывать несколько,
> только вот действовать они будут не совсем одновременно,
> т.к. на каждое RULE будет вызываться
> tc filter add dev $DEVICE parent 1:0 protocol ip \
> prio $PRIO_RULE u32 $u32_s $u32_d classid 1:$CLASS
Ага, теперь вроде бы что-то проясняется в голове...
> P.S.: Все-таки еще раз перечитайте LARTC, многое
> станет несколько понятнее.
Ну теперь, когда с рулем RULE=,:25 все вроде заработало, можно спокойно изучить.. Хотя асом я уже никогда не стану..
Огромное спасибо за помощь и терпение!
--
С уважением,
Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 11:22 [Comm] Снова про htb Владимир Гусев
2005-11-30 12:22 ` Alexey V. Novikov
2005-11-30 15:00 ` [Comm] Снова про htb sergey ivanov
@ 2005-12-02 16:14 ` Sergey Ivanov
2005-12-02 19:42 ` [Comm] " Michael Shigorin
2005-12-03 16:32 ` [Comm] " Владимир Гусев
2005-12-03 1:00 ` Aleksey Avdeev
3 siblings, 2 replies; 21+ messages in thread
From: Sergey Ivanov @ 2005-12-02 16:14 UTC (permalink / raw)
To: ALT Linux Community
Владимир Гусев wrote:
> Здравствуйте!
>
> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
> рассылки уже применяет htb для управления исходящим траффиком на ADSL
> ? Поделитесь опытом и конфигами-образцами.. Никак не могу въехать,
> хотя теорию вопроса в принципе понял..
>
Попробую описать, как обстоит дело с htb в Сизифе. Основной инструмент
для конфигурации - пакет etcnet.
1. Я советую, поставив этот пакет, сначала спрятать куда-нибудь все
директроии интерфейсов из /etc/net/ifaces ( кроме lo, default и
unknown) и запустить /etc/net/scripts/initconf. Его выдачу сохранить и
на основании этой выдачи организовать файл /etc/net/iftab, который
определит логические имена интерфейсов. Например, одну сетевую карту
можно из eth0 переименовать в соответствии с её макадресом в wan, другую
- в lan. Я для себя использовал вместо wan имя провайдера (comcast), а
вместо lan - придуманное самим имя локального домена своей сети
192.168.10.0/24 (menlo). Ну и дальше буду их использовать, чтобы не
ошибиться где-нибудь заменяя их на более нейтральные типа wan и lan.
Далее создайте директории с именами определёнными в таблице
/etc/net/iftab, внутри /etc/ifaces. Я создал /etc/net/ifaces/comcast и
/etc/net/ifaces/comcast. И положил туда нужные мне файлы options. Для
внешней сети comcast достаточно определить TYPE и BOOTPROTO, я добавил
строчку MODULE как того рекомендовал initconf:
---
# cat <<EOF >/etc/net/ifaces/comcast/options
TYPE=eth
BOOTPROTO=dhcp
MODULE=tulip
EOF
---
Для интерфейса локальной сети menlo адрес задан статически, так что там
кроме файла options ещё нужен файл ipv4address:
---
# cat <<EOF >/etc/net/ifaces/menlo/options
TYPE=eth
BOOTPROTO=static
MODULE=natsemi
EOF
# echo "192.168.10.1/24" >/etc/net/ifaces/menlo/ipv4address
---
2. Дальше настраиваете ip-forwarding и nat masquarading. За первый
отвечает строчка
net.ipv4.ip_forward = 1
в файле /etc/net/sysctl.conf, в то время как другое делается добавлением
строки
"masquerade out-iface comcast"
в файл /etc/net/ifaces/default/fw/iptables/nat/POSTROUTING:
---
echo "masquerade out-iface comcast"
>>/etc/net/ifaces/default/fw/iptables/nat/POSTROUTING
---
После этого ваш раутер после # service network restart уже должен начать
выполнять свою функцию разделения доступа в интернет.
3. Далее я настраивал распознавание и маркирование пакетов, кторым надо
было обеспечить гарантированную ширину пропускания канала. Для меня это
были два телефонных адаптера, которые не искажают звук только если им
предоставлены 10 килобит в секунду. Эти адаптеры стоят в локальной сети
и dhcp сервер по их макадресам даёт им статические адреса. Эти адреса я
и использовал в качестве критерия для маркировки. Маркировка
обеспечивается следующим образом:
---
#cat <<EOF >/etc/net/ifaces/default/fw/iptables/mangle/PREROUTING
mark 21 if from 192.168.10.21 from-iface menlo
mark 22 if from 192.168.10.5 from-iface menlo
EOF
---
Мысль для себя на будущее: наверно можно было маркировать по мак-адресу,
и тем самым избежать необходимости настраивать статические адреса
выдаваемые dhcpd.
4. Ну а теперь остаётся самое настроить qos htb для идущего наружу
интерфейса comcast.
---
## создаём дисциплину 1
# mkdir -p /etc/net/ifaces/comcast/qos/1
## определяем что эта дисциплина - htb
## и её дефолтный класс для неклассифицированного траффика 77.
# echo "htb default 77" /etc/net/ifaces/comcast/qos/1/qdisc
## создаём корневой класс 1 (1:1)
# mkdir /etc/net/ifaces/comcast/qos/1/1
## определяем ширину пропускания интерфейса (upload)
# echo "htb rate 360kbps" /etc/net/ifaces/comcast/qos/1/1/class
## создаём класс для первого телефонного адаптера
# mkdir /etc/net/ifaces/comcast/qos/1/1/21/
## определяем для него ширину пропускания 80 килобит/сек.
# echo "htb rate 80kbps" >/etc/net/ifaces/comcast/qos/1/1/21/class
## задаём фильтр этого класса, отбирающий для него пакеты с маркой "21"
# echo "protocol ip prio 1 handle 21 fw"
>/etc/net/ifaces/comcast/qos/1/1/21/filter
## создаём класс для второго телефонного адаптера
# mkdir /etc/net/ifaces/comcast/qos/1/1/22/
## определяем для него ширину пропускания 80 килобит/сек.
# echo "htb rate 80kbps" >/etc/net/ifaces/comcast/qos/1/1/22/class
## задаём фильтр этого класса, отбирающий для него пакеты с маркой "22"
# echo "protocol ip prio 1 handle 22 fw"
>/etc/net/ifaces/comcast/qos/1/1/22/filter
## создаём класс для дефолтного траффика:
# mkdir /etc/net/ifaces/comcast/qos/1/1/77/
## определяем для него ширину пропускания 200 (= 360 - (80 + 80))
килобит/сек.
## с возможностью заимствования неиспользуемого в данный момент траффика
других классов
## вплоть до 360kbps, то есть полной ширины исходящего канала
# echo "htb rate 200kbps ceil 360kbps"
>/etc/net/ifaces/comcast/qos/1/1/77/class
---
И, если бы etcnet поддерживал htb, то больше ничего не надо бы делать.
Однако увы, приходится портить его скрипты, так как они не обращают
внимания на то, что фильтры должны прикрепляться к корню, то есть к
дисциплине 1:, то есть к директории /etc/net/ifaces/comcast/qos/1, хотя
и иметь в качестве направления фильтрации именно тот класс в директории
которого созданы.
Так что берём и заменяем строчку
---
$TC filter add dev $NAME $PARENTNODE `head -1 $NODEDIR/extra.filter
2>/dev/null` $FILTEREXPR flowid $NODEID
---
в файле /etc/net/scripts/config-qos
на строчку:
---
$TC filter add dev $NAME parent 1\:0 `head -1 $NODEDIR/extra.filter
2>/dev/null` $FILTEREXPR flowid $NODEID
---
Строчка "parent 1\:0" согласована с тем, что корневую дисциплину этого
интерфейса я назвал дисциплиной "1".
Теперь телефонам будет предоставляться 80 килобит в секунду как только
они того потребуют, а если они недоиспользуют эти 80kbps, всё оставшееся
будет предоставляться другим соединениям.
Других дисциплин, кроме htb, не пробовал. Возможно, что для них
правильно именно так, как устроено изначально в файле
/etc/net/scripts/config-qos
--
С уважением,
Сергей Иванов.
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Comm] Re: Снова про htb
2005-12-02 16:14 ` [Comm] " Sergey Ivanov
@ 2005-12-02 19:42 ` Michael Shigorin
2005-12-02 21:00 ` Sergey Ivanov
2005-12-03 16:32 ` [Comm] " Владимир Гусев
1 sibling, 1 reply; 21+ messages in thread
From: Michael Shigorin @ 2005-12-02 19:42 UTC (permalink / raw)
To: ALT Linux Community
On Fri, Dec 02, 2005 at 11:14:50AM -0500, Sergey Ivanov wrote:
> Попробую описать, как обстоит дело с htb в Сизифе. Основной
> инструмент для конфигурации - пакет etcnet.
А на wiki.sisyphus.ru/admin/etcnet забросите? ;-)
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Re: Снова про htb
2005-12-02 19:42 ` [Comm] " Michael Shigorin
@ 2005-12-02 21:00 ` Sergey Ivanov
0 siblings, 0 replies; 21+ messages in thread
From: Sergey Ivanov @ 2005-12-02 21:00 UTC (permalink / raw)
To: shigorin, ALT Linux Community
Michael Shigorin wrote:
>On Fri, Dec 02, 2005 at 11:14:50AM -0500, Sergey Ivanov wrote:
>
>
>>Попробую описать, как обстоит дело с htb в Сизифе. Основной
>>инструмент для конфигурации - пакет etcnet.
>>
>>
>
>А на wiki.sisyphus.ru/admin/etcnet забросите? ;-)
>
>
Забросил. Изначально - стеснялся, так как очень некрасиво.
--
Сергей.
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-11-30 11:22 [Comm] Снова про htb Владимир Гусев
` (2 preceding siblings ...)
2005-12-02 16:14 ` [Comm] " Sergey Ivanov
@ 2005-12-03 1:00 ` Aleksey Avdeev
3 siblings, 0 replies; 21+ messages in thread
From: Aleksey Avdeev @ 2005-12-03 1:00 UTC (permalink / raw)
To: ALT Linux Community
Владимир Гусев пишет:
> Здравствуйте!
>
> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
> рассылки уже применяет htb для управления исходящим траффиком на ADSL ?
> Поделитесь опытом и конфигами-образцами.. Никак не могу въехать, хотя
> теорию вопроса в принципе понял..
>
Использую, правда не на хосте, а непосредственно на модеме (у меня
DSL-504T с прошивкой от mcmcc).
Как сделано -- описал сдесь
<http://www.livejournal.com/users/solo_oboroten/57050.html>.
PS: Неуверен, что правила оптимальны, но своей цели добился: задержки
при работе по ssh, при забитом канале, стали терпимыми.
--
С уважением. Алексей.
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Comm] Снова про htb
2005-12-02 16:14 ` [Comm] " Sergey Ivanov
2005-12-02 19:42 ` [Comm] " Michael Shigorin
@ 2005-12-03 16:32 ` Владимир Гусев
1 sibling, 0 replies; 21+ messages in thread
From: Владимир Гусев @ 2005-12-03 16:32 UTC (permalink / raw)
To: ALT Linux Community
>> Кому-нибудь удалось разобраться с htb? Кто-нибудь из участников
>> рассылки уже применяет htb для управления исходящим траффиком на ADSL
>> ? Поделитесь опытом и конфигами-образцами.. Никак не могу въехать,
>> хотя теорию вопроса в принципе понял..
> Попробую описать, как обстоит дело с htb в Сизифе.
Встречный вопрос - насколько актуальна эта замечательная инструкция для
Мастера 2.4 ?
Дело в том, что я с каких-то пор перестал интересоваться Сизифом, собирая
некоторые несложные новинки для себя из исходников, и к грядущей третьей
версии отношусь пока очень осторожно и с недоверием..
--
С уважением, Владимир Гусев
^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2005-12-03 16:32 UTC | newest]
Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-30 11:22 [Comm] Снова про htb Владимир Гусев
2005-11-30 12:22 ` Alexey V. Novikov
2005-11-30 13:13 ` Владимир Гусев
2005-11-30 13:21 ` Alexey V. Novikov
2005-11-30 14:25 ` [Comm] Снова про htb (теперь и про cbq) Владимир Гусев
2005-12-01 5:48 ` Alexey V. Novikov
2005-12-01 10:10 ` Владимир Гусев
2005-12-02 7:42 ` Владимир Гусев
2005-12-02 9:24 ` Alexey V. Novikov
2005-12-02 10:20 ` Владимир Гусев
2005-12-02 10:43 ` Alexey V. Novikov
2005-12-02 11:24 ` Владимир Гусев
2005-12-02 11:54 ` Alexey V. Novikov
2005-12-02 13:40 ` Владимир Гусев
2005-11-30 15:00 ` [Comm] Снова про htb sergey ivanov
2005-11-30 20:50 ` [Comm] " Michael Shigorin
2005-12-02 16:14 ` [Comm] " Sergey Ivanov
2005-12-02 19:42 ` [Comm] " Michael Shigorin
2005-12-02 21:00 ` Sergey Ivanov
2005-12-03 16:32 ` [Comm] " Владимир Гусев
2005-12-03 1:00 ` Aleksey Avdeev
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git