Jump to content

Recommended Posts

Posted

Давно страдаю несколькими мыслями, которые никак не могу воплотить в реальность. Так что прошу помощи у народа.

 

есть небольшая локалка, шлюз на линухе (FC_4), биллинг, нат... да много чего побочного еще... линк наружу - ppp0 внутрь - eth0 и резервный в автобалансе (подумываю о транке) eth1

 

общий канал наружу - 128 Кбит, в связи с чем - абоненты используют некоторый дискомфорт при работе в интерактиве (если кто-то усердно качает - сквид его ставит в очередь, однако некоторые - любят поиграт ь в он-лайн, или просто полазиьт п осайтикам очень энергично, ввиду чего те которые играют в популярную нынче "линейку" (Lineage2) порт 7777 испытывают серьезное нервное расстройство от увеличения латентности соединения (читай - время отклика) ака пинг, тоже самое с SSH и всяческими общалками), причем довольно ощутимый - вплоть до таймаута.

 

ну собственно вопрос старый - использую HTB.init - не сильно помогает ;((( я чего-то в нем недоонимаю - это факт. и так и сяк и эдак - все равно где-то что-то не так.

 

создал правила и на ppp0 и на eth0 (eth1 - ждет сбоя eth0 - и только потом подымается, "заменяя" его)... скорость вроде как шейпит, хотя шейпинга (условного, понимаю) входящих потоков - так и не вижу %( а вот приоретизации - не вижу никак вообще отнюдь...

 

может кто-то выложить пример или ткнуть носом в хороший ман с меткой пакетов файрволом ??? любая помощь приветствуется.

 

спасибо за внимание.

Posted

лНАХКЭМШИ mp3

лЕКНДХХ mp3

Nokia mp3

Mp3 free

аПЮР mp3

Flash mp3

Download mp3

Mp3 ЛСГШЙЮ

Mp3 ПЕЦХЯРПЮЖХЪ

рЮРС mp3

кЧАНБЭ mp3

аЕЯОКЮРМН mp3 ЯЙЮВЮРЭ

Mp3 ГБНМЙХ

гБЕПХ mp3

яЙЮВЮРЭ ОЕЯМЧ mp3

Mp3 АЕГ

яЙЮВЮРЭ mp3 ОЕЯМХ

оЕЯМЪ mp3

Mp3 ЯЮИРШ

Mp3 ОЕЯМХ

2 mp3

Wav mp3

Mp3 ЯНРНБШИ

Mp3 ru

цКЮГЮ mp3

Siemens mp3

аЕЯОКЮРМШЕ mp3

Mp3 ЙНМБЕПРНП

Mp3

Mp3 ЙНМБЕПРЕП

Cd mp3

Mp3 player

Mp3 АЕГ ПЕЦХЯРПЮЖХХ

Mp3 АЕЯОКЮРМН

Mp3 РЕКЕТНМ

Love mp3

оПНЦПЮЛЛШ mp3

яЙЮВЮРЭ mp3

Mp3 dj

Up mp3

Mp3 ОКЕЕП

Mp3 ЮПУХБШ

Mp3 mmf

Mp3 ЛСГШЙЮ АЕЯОКЮРМН

Mp3 ЛЕКНДХХ ЯЙЮВЮРЭ

Wma mp3

яЙЮВЮРЭ ЛСГШЙС mp3

Mp3 ЦПСОО

тНПЛЮР mp3

Mp3 ОПХЙНКШ

 

дНЛНТНМ

сЯРЮМНБЙЮ ДНЛНТНМЮ

йНД ДНЛНТНМЮ

бГКНЛ ДНЛНТНМЮ

дНЛНТНМШ БХГХР

дНЛНТНМ ЯУЕЛЮ

йКЧВ ДНЛНТНМЮ

дНЛНТНМШ vizit

Cyfral ДНЛНТНМ

дНЛНТНМ eltis

дНЛНТНМ ОЕРЕПАСПЦ

бХДЕН ДНЛНТНМШ

дНЛНТНМ ЯЕПБХЯ

лЕРЮЙНЛ ДНЛНТНМ

дНЛНТНМШ ТЮЙРНПХЮК

дНЛНТНМ ЯЮМЙР

нРЙПШРЭ ДНЛНТНМ

дНЛНТНМШ ЯЮМЙР ОЕРЕПАСПЦ

дНЛНТНМ ЖХТПЮК

лМНЦНЙБЮПРХПМШИ ДНЛНТНМ

пЕЛНМР ДНЛНТНМНБ

оНДЙКЧВЕМХЕ ДНЛНТНМНБ

дНЛНТНМ РПСАЙЮ

бГКНЛЮРЭ ДНЛНТНМ

дНЛНТНМНБ НАЯКСФХБЮМХЕ

дНЛНТНМ ЛНЯЙБЮ

дНЛНТНМШ ХМЯРПСЙЖХЪ

дНЛНТНМ commax

оПНДЮФЮ ДНЛНТНМЮ

дНЛНТНМШ ЯОА

тХПЛШ ДНЛНТНМШ

оПНЦПЮЛЛХПНБЮМХЕ ДНЛНТНМЮ

дНЛНТНМШ ЩКРХЯ

сЯРПНИЯРБН ДНЛНТНМЮ

дНЛНТНМШ ДБЕПХ

лНМРЮФЮ ДНЛНТНМЮ

сЯРЮМНБЙЮ ДНЛНТНМЮ ОЕРЕПАСПЦ

мНБНЯХАХПЯЙ ДНЛНТНМ

яУЕЛЮ ОНДЙКЧВЕМХЪ ДНЛНТНМЮ

оНДЗЕГДМШЕ ДНЛНТНМШ

нНН ДНЛНТНМШ

дНЛНТНМ ЙСОХРЭ

дНЛНТНМ ТНПСЛ

сЯРЮМНБЙЮ ДНЛНТНМЮ ЯЮМЙР ОЕРЕПАСПЦ

сМХБЕПЯЮКЭМШИ ДНЛНТНМ

сЯРЮМЮБКХБЮК ДНЛНТНМ

дНЛНТНМ ОЮМЕКЭ

дНЛНТНМ cyfral ЙНД

дНЛНТНМШ ЖЕМШ

нРЙПШРХЪ ДНЛНТНМНБ

Posted

дядька - я там тож активный участник, помойму я не правильно конкретизировал вопрос. итсправляюсь

 

ядро пробовал и со встроенными всеми фичками относительно HTB CBQ и QoS... и т.д. и с модульным исполнением - разницы никакой. все правила прописаны, класы и приоритеты розданы... но не работаит :( выложу примеры как тоько доберусь до машины... я где-то допустил ошибку в RULE HTBшном...

 

вот и прошу РАБОЧИЕ примеры, не примитивные как на опеннете, а кусочек реальности - желательно без маркировок пакетов... хотя насколько я понимаю - с маркировкой все намного гибче ????

Posted

Nallien, для этих целей использую cbq + iptables. Маркирую пакеты iptables, затем шейпю их по меткам. В вашем случае скорее всего подойдет использование приоритета.

Вот мой пример (ограничение по скорости):

DEVICE=eth0,10Mbit,1Mbit

RATE=512Kbit

PEAK=1Mbit

WEIGHT=52Kbit

PRIO=5

MARK=3

iptables -t mangle -A POSTROUTING -d xxx.xxx.xxx.xxx -j MARK --set-mark 3

Ограничение по приоритету:

DEVICE=eth0,10Mbit,1Mbit

RATE=512Kbit

PEAK=1Mbit

WEIGHT=52Kbit

PRIO=3

MARK=4

iptables -t mangle -A POSTROUTING -p tcp --sport 7777 -j MARK --set-mark 4

Чем меньше число PRIO (от 1 до 8), тем больший приоритет имеют пакеты

Posted

по-моему этот приоритет совершенно другое подразумевает....

приоритет этот не для пакетов а для правил....... т.е. если есть правило для айпишник 1.1.1.1 и появится ещё одно правило для айпишника 1.1.1.1 посылающего пакеты на 2.2.2.2 , то чтоб какое-то из правил имело приоритет(исполнялось первым...)

 

приоретизация пакетов в очереди параметром PRIO не регулируется

Posted

true - аригато :) есть теперь с чего разбираться начинать-то хоть...

 

хм...... если гость прав - то я знаю в чем моя ошибка.... но стоп....

 

а чем же тогда приоритет пакеов В очереди регулировать ???

помойму как раз PRIO ???

ну всюду пишут так... но как регулироватьшейпитьприоретизировать НЕ TCP протоколы ??? тот же пинг например...., да .. и я совсем запутался с правилами, что есьт исходящий... а что входящий трафик...

 

RULE=*:80,

RULE=*:80

 

какое из правил какой трафик ограничивать будет ??? относительно кого он исходящий, и относительно чего входящий ???

 

и есть ли какой-то более разумный способ ограничивать траф по айпи адресам (или групам беспорядочных адресов - ака клиентам), чем прописывать каждого к класу ?

 

как я это вижу сечас:

 

32Кбита________64Кбита________128Кбит (класы)

|...............................|..............................|

|...............................|..............................|

__________дочерние____класы___________

а в каждом из нихы - правила для разных скоростей....

Posted

Гость, PRIO - регулятор очереди :) (CBQ - Class Based Queue)

но как регулироватьшейпитьприоретизировать НЕ TCP протоколы ??? тот же пинг например....

А что мешает помечать ICMP пакеты, скажем?

iptables -t mangle -A INPUT -p icmp -j MARK --set-mark 4 # входящие пакеты

С UDP пакетами то же самое (им можно максимальный приоритет выставить).

да .. и я совсем запутался с правилами, что есьт исходящий... а что входящий трафик...

Зависит от того, какой хотите трафик шейпить: проходящий (NAT, masqarade & etc.) или входящий/выходящий? Пример, что я привел выше - для NAT. 1-й - ограничить входящую скорость для клиента с IP xxx.xxx.xxx.xxx до 512Кбит, 2-ой - установить приоритет 3 для пакетов, приходящих с порта 7777

 

Вообще, есть хороший мануал для начинающих:

http://linuxportal.ru/print.php/87_0_3_0_M/

Posted

спасибо... но уже использую HTB очень долго думал что же все-таки лучше - и выбрал... на свою голову :) основной фактор - CBQ не работает с ppp интерфейсами.

 

и меня интересует способы управления без участия iptables (если таковые есть в поноценном состоянии)... а маркировкой скорее всего все и кончится...

Posted

моя некомпетентность :)

 

скрипт придется писать на живом сервере... так что хотелось бы минимальным вмешательством (понимаю что маркировка - ничего плохого сделать не может %))) но ве равно как-то не по себе)...

 

но вот как раз сейчас приступаю к маркировке...может кто поделиться готовыми шаблонами ?

 

1. я так понимаю все меньше 64 Б - без очереди... аки по идее... где-то читал что-то похожее...... ну пинг туда же .... ссш... телнет...

 

2. игры, аська, голосовые чаты...

 

3. www, почта pop и smtp....

 

4.... таааккк.... ну фтп...

 

5... ослики и все остальное...

 

вроде так.... осталось реализовать.

Posted

страшная штука :) вот это возможности... нда... можно сделать модульный скрипт... который будет выдирать из билинга необхо... а тьфу, я все равно на такое не способен :)

 

эх.... нет. маркировка - доходней в разы.

Posted

Такс...... вот как я это делаю.... но терзают меня смутные сомнения... да и вроде как ходит не все и не туда....

 

eth0  

eth0-2:10.www  

eth0-2:20.smtp  

eth0-2:25.lprio  

eth0-2:30.local  

eth0-2.root  



ppp0  

ppp0-2:10.hprio  

ppp0-2:20.www  

ppp0-2:30.default  

ppp0-2.root

 

содержимое следующего характера (2:20 к примеру) одинаково и на eth0 и на ppp0

 

RATE=30Kbit

CEIL=96Kbit

LEAF=sfq

PRIO=2

MARK=20

 

правила табличек:

 

#!/bin/bash

IPTABLES=/sbin/iptables





#Flush MANGLE tables

$IPTABLES -t mangle -F



#__________Высокий приоритет

#______SSH

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 23 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 23 -j MARK --set-mark 10



#______Lineage2

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 7777 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 7777 -j MARK --set-mark 10



#______ICQ

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 5190 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 5190 -j MARK --set-mark 10



#______DNS

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 53 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 53 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p udp --dport 53 -j MARK --set-mark 10

$IPTABLES -t mangle -A PREROUTING -p udp --sport 53 -j MARK --set-mark 10



#______Ping

$IPTABLES -t mangle -A PREROUTING -p icmp -j MARK --set-mark 10



#$IPTABLES -t mangle -A PREROUTING -p tcp --sport 7 -j MARK --set-mark 10

#$IPTABLES -t mangle -A PREROUTING -p tcp --sport 7 -j MARK --set-mark 10

#$IPTABLES -t mangle -A PREROUTING -p tcp --sport 7 -j MARK --set-mark 10



#_________________________Средний приоритет

#_______________________WWW_

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 80 -j MARK --set-mark 20

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 8080 -j MARK --set-mark 20

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 3128 -j MARK --set-mark 20



#_______________________FTP

#_______________________FTP



#_____________________________________________Низкий приоритет

#______________________ALL

#$IPTABLES -t mangle -A POSTROUTING -o ppp0 -j MARK --set-mark 30

#$IPTABLES -t mangle -A PREROUTING -i ppp0 -j MARK --set-mark 30



#_______________________FTP

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 20 -j MARK --set-mark 30

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 21 -j MARK --set-mark 30

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 20 -j MARK --set-mark 30

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 21 -j MARK --set-mark 30



#______________________POP

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 25 -j MARK --set-mark 30

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 25 -j MARK --set-mark 30



#______________________SMTP

$IPTABLES -t mangle -A PREROUTING -p tcp --dport 110 -j MARK --set-mark 30

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 110 -j MARK --set-mark 30

 

 

но получается так.. что в "20" ничего не попадает... в чем моя ошибка ? или я не правильно понимаю вывод скрипта ??? как вообще можно проверить работоспособность ?

 

 14:35:11 up 8 days, 19:35,  1 user,  load average: 0.00, 0.04, 0.03

                                         Interval    Cumulated Total

Dev  Classid   Tokens   Ctokens Rate      Speed       Send      Send

-------------------------------------------------------------------------

eth0 1:10      36085    35501   1.95KB    2.24KB/s    73.22KB   1.63MB

eth0 1:2       13973    1162    135.22KB  135.96KB/s  4.80MB    170.22MB

eth0 1:20      437725   137556  0B        0B/s        0B        0B

eth0 1:25      795648   133462  1B        0B/s        3.88KB    15.50KB

eth0 1:30      2282     1181    132.91KB  133.72KB/s  4.72MB    168.57MB

 

 14:54:11 up 8 days, 19:54,  1 user,  load average: 0.29, 0.19, 0.10

                                         Interval    Cumulated Total

Dev  Classid   Tokens   Ctokens Rate      Speed       Send      Send

-------------------------------------------------------------------------

ppp0 1:10      256573   134144  411B      260B/s      11.82KB   300.40KB

ppp0 1:2       83968    134144  979B      576B/s      31.09KB   658.39KB

ppp0 1:20      437725   137556  0B        0B/s        0B        0B

ppp0 1:30      787458   132096  553B      316B/s      19.27KB   357.99KB

 

судя по всему ввв - идет в обход ВСЕХ правил.......

 

арррррррр... застрелюсь скоро :(

Posted
Nallien,
$IPTABLES -t mangle -A PREROUTING -p tcp --sport 80 -j MARK --set-mark 20

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 8080 -j MARK --set-mark 20

$IPTABLES -t mangle -A PREROUTING -p tcp --sport 3128 -j MARK --set-mark 20

;)

Posted

dport !!!!!!!!!!!! ну я уже поставил - результат тот же :{З.

 

:(((((((((( арррррррр... где же я туплю ?

 

как мне пометить ВСЕ пакеты ??? если я помечу все идущее на ppp0, правила для предыдущих (приоретизированных) - будут действовать ??? в часности должен быть у "общего" номер больше их... так ?

 

спустя долгие часы - все по прежнему....

 

пустая очередь 20 и усе :(

Posted
основной фактор - CBQ не работает с ppp интерфейсами.

кто сказал????

я на них его в основном и юзаю, разруливая правила в ip-up/down. А вообще - лучше юзать на IMQ. И без марок обойтись не сложно.

Posted

хм.... читал на оффе что CBQ не работает с PPP... может что-то тсарое читал ?

 

значь работает ??? но HTB - точнее и чеснее... марки - уже сипользую...

 

а вот IMQ .... хм.... ядро у меня 2.6.x - то такого модуля там нету... и при сборе - тоже нет, ну или я не нашел :)

 

сейчас вот пытаюс прикрутить патч на более свежее ядро... пока безрезультатно.

 

IMQ - действительно даст полноценно управлять и ВХОДЯЩИМ трафиком ?

  • 2 weeks later...
Posted

арррррр ;( све по- прежнему..... вторая очередь пустует !? я так понимаю - что ошибка в таблицах но где же !?

  • 1 month later...
Posted

все бесполезно %( жизнь не удалась. толку никакого. сколько не мечу, как ни стреляю - все равно. я уже всерьез задумываюсь о том, правильные ли данные выводит monitor_tc_top.pl...

 

но скрипт вроде использую многие...

 

ПОДСКАЖИТЕ хоть что нить :( неужели никто не занимается приоретизацией ??? ну шейпинг-то так или иначе через пулы ?

Posted

А на основе чего делаете выводы что не работает приоритизация?

 

P.S. Я не ас в приоритизации на linux, но я пытаюсь перевести разговор в русло решения вопроса, поиска причины траблов.

Posted

ну - в проверке на практике, и скрипт есть, который мониторит очереди HTB и количесвто прошедшего сквозь них... чем порекомендуете ? логирование пакетов ???

 

К слову - я толком не вьду как читает марки конфигурационный скрипт HTB.init

 

decimal пишут.... тоесть если я ставлю марк... брррр.... запутался :( дясятичные или шеснадцатеричные значения-то !?

 

пойду еще хов-ту по табличкам почитаю.

Posted

Nallien

CBQ великолепно работает на любых интерфейсах, как и НТВ.

Единственная проблема - в том что б интерфейс был уже поднят наа момент выставления шейперов.

Как тут уже говорили - использовать скрипты ip-up.

 

У меня скрипт выбирает из БД значение полосы на основе логина пользователя, т.е. некое подобие интеграции в биллинг - ИМХО ничего сложного.

 

Если же хотите сделать приоритезацию - то все намного интереснее, и простыми скриптами не обойтись.

Posted

имеено приоретизацию. честно говоря - начиналось все с шейпинга, но (к слову) -тоже ничем удачным не кончилось, поскольку нужно было каждые потоки шейпить (по портам) раздельно... а потом само собою возник вопрос о приоретизации. ну чтобы онлайн-геймеры бегали, 1С не так глюкавило ссш по божески на просаженом канале... в общем вы поняли :)

 

честно говоря, мне кажеться что я неправильно понял принцып маркировки пакетов -j MARK 20 - какое значение дает ? тоесть, что писать в рулсах ? не 20 же ? decimal значение ?

 

только не давно заметил, что по сути - у меня все идет в дефолтовый поток... из чего и сделал вывод о полностью неправильном построении правил маркирования.

 

эххх...

 

буду благодарен за кусочек работающей связки iptables -j MARK и рулсво под HTB или CBQ, на примере которых можно было бы рассмотреть принцып маркировки...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.