[решено] NAT/IFB/iproute2/iptables

дано:

eth0.1 - adsl
eth0.2 - сетка друзей, доступ к adsl через ppp
eth0.3 - моя сеть, доступ к adsl черен nat

задача:

делить adsl "поровну" (по определенным правилам)

правила расписаны
с eth0.1 все идет на ifb0

вопрос:

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

ps: imq не предлогать

неужели никто с

неужели никто с IFB Не работал?

anyone, can you help me?

anyone, can you help me?

.

я вообще ОЧЕНЬ далёк от этой темы.
Но такой душераздирающий английский...
Короче по ссылке http://www.kaladix.org/blueshield/blueshield-current.tar.bz2
есть скрипт, который я не осилил, но в нём
встречаются слова IFB, INGRESS, Bandwidth limitation и т.п.
P.S. сорри, если это "пальцем в небо" :-)
P.P.S. ну и "как будто из последних сил" http://www.opennet.ru/tips/info/1421.shtml

Это все было

Это все было просмотренно давным давно. Есть конкретный вопрос? Ответ, на который я не нашел:

_где_ метить пакеты (учитывая NAT)?

ps: если бы в нете была бы хотя бы схема где и как ifb перехватывает трафик, то тему осилил бы и сам

.

в "BlueShield DeveloperGuide.pdf" написано:

Цитата:
Traffic classification is done in the POSTROUTING chain of the mangle table using the iptables CLASSIFY target.

Поискал в гугле "iptables nat POSTROUTING CLASSIFY"
нашёл http://www.protocols.ru/modules.php?name=News&file=print&sid=103
но там написано

Цитата:
Операция может применяться только в цепочке POSTROUTING таблицы mangle и использует единственный параметр --set-class MAJOR:MINOR :
iptables -t mangle -A POSTROUTING .. -j CLASSIFY --set-class MAJOR:MINOR

А "учитывая NAT" или нет - я не осилил вчитаться.
P.S. сорри, если опять не то :-)

да пробывал уже

да пробывал уже :(

кстати, смущает

кстати, смущает меня больше всего то, что на

iptables -t mangle -A PREROUTING -i ifb0 -j ULOG
iptables -t mangle -A POSTROUTING -o ifb0 -j ULOG

тишина ;)

решение

после долгих мучений решение найдено.

а имеено, расскажу на примере шейпера для "eth0.2 - сетка друзей, доступ к adsl через ppp"

в /etc/ppp/ip-up.d/[скрипт] прописываем

tc qdisc add dev $1 root prio
tc filter add dev $1 protocol ip u32 match ip dst $5 action mirred egress redirect dev ifb0

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

iptables -t mangle -A POSTROUTING -d $5 -j CLASSIFY --set-class [класс]

в /etc/ppp/ip-down.d/[скрипт] ес-но все возвращаем на место.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".