Помогите раставить все точки над всеми И. Немогу понять как всетки правильно управлять входящим трафиком на сервер со стороны интернета. Прочел кучу доков с разными способами. Во всех говорится что нужно перенаправлять трафик на устройства IMQ или IFB. Зачем нужно перенаправлять входящий трафик на сервер со стороны интернета, который предназначен какому-то клиенту, на устройство IMQ? Если этот трафик можно словить меткой на интрефейсе который смотрит на локальную сеть в цепочке POSTROUTING. Вот выставляю кусок примера шейпера. IF_LAN смотрит в локальную сеть. Вместо eth1 вписывал и imq0. Разницы неощутил. Везде на форумах встречаю что-то типа «входящий трафик после ната, если не перенаправлен на IMQ или IFB, не шейпится или шейпится криво». Вообщем мрак какой-то особенно после «шейпится криво», как это? Ну и последний вопрос: если все таки нужно перенаправлять входящий трафик на IMQ, то с какими опциями его нужно собирать, если используется SNAT, АВ или ВА?
#!/bin/bash IF_INET=eth0 IF_LAN=eth1 IP=10.10.1.5
#iptables -t mangle -N JUMP #iptables -t mangle -A JUMP -o eth1 -j IMQ --todev 0
#UP tc qdisc del dev $IF_INET root tc qdisc add dev $IF_INET root handle 1: htb default 2 tc class add dev $IF_INET parent 1: classid 1:1 htb rate 512kbit ceil 512kbit tc class add dev $IF_INET parent 1:1 classid 1:2 htb rate 256kbit ceil 512kbit prio 3 tc qdisc add dev $IF_INET parent 1:2 handle 2: sfq perturb 10 #DOWN tc qdisc del dev $IF_LAN root tc qdisc add dev $IF_LAN root handle 1: htb default 2 tc class add dev $IF_LAN parent 1: classid 1:1 htb rate 5mbit ceil 5mbit tc class add dev $IF_LAN parent 1:1 classid 1:2 htb rate 512kbit ceil 5mbit prio 3 tc qdisc add dev $IF_LAN parent 1:2 handle 2: sfq perturb 10
iptables -A INPUT -s $IP -j ACCEPT iptables -A FORWARD -s $IP -j ACCEPT iptables -A FORWARD -d $IP -j ACCEPT iptables -A OUTPUT -d $IP -j ACCEPT
iptables -t nat -A POSTROUTING -o $IF_INET -s $IP -j SNAT --to-source 10.54.109.64
#UP iptables -t mangle -A POSTROUTING -s $IP -o $IF_INET -j MARK --set-mark 100 iptables -t mangle -A POSTROUTING -s $IP -o $IF_INET -j RETURN #iptables -t mangle -A POSTROUTING -s $IP -o $IF_INET -j JUMP
#DOWN iptables -t mangle -A POSTROUTING -d $IP -o $IF_LAN -j MARK --set-mark 100 iptables -t mangle -A POSTROUTING -d $IP -o $IF_LAN -j RETURN #iptables -t mangle -A POSTROUTING -d $IP -o $IF_LAN -j JUMP
#UP tc class add dev $IF_INET parent 1:1 classid 1:100 htb rate 75kbit ceil 512kbit prio 1 tc qdisc add dev $IF_INET parent 1:100 handle 100: sfq perturb 10 tc filter add dev $IF_INET parent 1: protocol ip prio 1 handle 100 fw classid 1:100
#DOWN tc class add dev $IF_LAN parent 1:1 classid 1:100 htb rate 128kbit ceil 1024kbit prio 1 tc qdisc add dev $IF_LAN parent 1:100 handle 100: sfq perturb 10 tc filter add dev $IF_LAN parent 1: protocol ip prio 1 handle 100 fw classid 1:100