URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 83375
[ Назад ]

Исходное сообщение
"Минимальный шейпер LInux"

Отправлено zubovnikola , 16-Дек-08 13:11 
Подскажите можно ли средствами tc, iptables ограничить канал на отдельный порт для отдельного ip-адреса или хотя бы интерфейса для отдельного ip-адреса. Если можно, подскажите команду, а не manual по tc, iptables.

Содержание

Сообщения в этом обсуждении
"Минимальный шейпер LInux"
Отправлено случайно проходил , 16-Дек-08 13:40 
>Подскажите можно ли средствами tc, iptables ограничить канал на отдельный порт для
>отдельного ip-адреса или хотя бы интерфейса для отдельного ip-адреса. Если можно,
>подскажите команду, а не manual по tc, iptables.

примерно так
iptables -t mangle -A OUTPUT -s 10.0.0.67 -p tcp --sport 25  -j MARK --set-mark 25
iptables -t mangle -A OUTPUT -s 10.0.0.67 -p tcp --sport 80  -j MARK --set-mark 80

/sbin/tc qdisc  add dev eth0 parent root handle 1:  cbq avpkt 1000 bandwidth 1000mbit

/sbin/tc class  add dev eth1 parent 1:0 classid 1:25 cbq rate 256Kbit allot 1500 prio 5 bounded isolated
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 1 handle 25 fw classid 1:25

/sbin/tc class  add dev eth1 parent 1:0 classid 1:80 cbq rate 640Kbit allot 1500 prio 5 bounded isolated
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 1 handle 80 fw classid 1:80


"Минимальный шейпер LInux"
Отправлено случайно проходил , 16-Дек-08 13:41 
>[оверквотинг удален]
>
>/sbin/tc class  add dev eth1 parent 1:0 classid 1:25 cbq rate
>256Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 1 handle
>25 fw classid 1:25
>
>/sbin/tc class  add dev eth0 parent 1:0 classid 1:80 cbq rate
>640Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle
>80 fw classid 1:80

поправил (eth1 на eth0)


"Минимальный шейпер LInux"
Отправлено случайно проходил2 , 16-Дек-08 13:43 
>[оверквотинг удален]
>
>/sbin/tc class  add dev eth0 parent 1:0 classid 1:25 cbq rate
>256Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle
>25 fw classid 1:25
>
>/sbin/tc class  add dev eth0 parent 1:0 classid 1:80 cbq rate
>640Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle
>80 fw classid 1:80

popravil chutok


"Минимальный шейпер LInux"
Отправлено prohozii , 16-Дек-08 13:43 
>[оверквотинг удален]
>
>/sbin/tc class  add dev eth0 parent 1:0 classid 1:25 cbq rate
>256Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle
>25 fw classid 1:25
>
>/sbin/tc class  add dev eth0 parent 1:0 classid 1:80 cbq rate
>640Kbit allot 1500 prio 5 bounded isolated
>/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle
>80 fw classid 1:80

popravil chutok


"Минимальный шейпер LInux"
Отправлено zubovnikola , 16-Дек-08 23:05 
что то не получается
У меня фаервол так настроен, программист настраивал, я в этом не силен:

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F

iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Я так понимаю идет сброс правил и потом устанавливается на входящие соединения сброс кроме тех что после открыты, а выход открыт.

у меня есть правило

iptables -A INPUT -s 192.168.1.1 --dport 80 -i eth0 -j ACCEPT

Как дополнить фаерволл, что бы при запуске сбрасывались настройки tc, а после устанавливались правила tc для 80 порта, но как на вход так и на выход, скажем на 128 кбит?


"Минимальный шейпер LInux"
Отправлено zubovnikola , 17-Дек-08 13:48 
или может у кого подобный скрипт есть

"Минимальный шейпер LInux"
Отправлено Mr_Dee , 17-Дек-08 15:42 
что бы было попроще ставь прогу - shaper  (работает через cbq.init) там создаются отдельные файлики правил для иходящего траццика и входящего . (контролировать на линухе можно только исходящий траффик , а значит что бы обрезать входящую скорость нужно ставить правило на тот интерфейс что смотрит в интернет , а исходящую тот что смотрит на локалку ) .

"Минимальный шейпер LInux"
Отправлено zubovnikola , 17-Дек-08 16:43 
>что бы было попроще ставь прогу - shaper  (работает через cbq.init)
>там создаются отдельные файлики правил для иходящего траццика и входящего .
>(контролировать на линухе можно только исходящий траффик , а значит что
>бы обрезать входящую скорость нужно ставить правило на тот интерфейс что
>смотрит в интернет , а исходящую тот что смотрит на локалку
>) .

довольно старая http://sourceforge.net/projects/cbqinit/ ((

а при POSTROUTING можно скорость в tc урезать? (на вход/выход)