Фильтр сетей на IPTABLES

Приветствую всех гентушников!
У меня есть небольшая проблема...
Имеются 2 сети:
NET1 – сеть корпуса
NET2 – сеть интернет
надо сделать так чтобы юзерам была доступна NET1, а в NET2 попадали только те IP которые я указал, причем они должны еще шейпится. NET1 доступна всем без ограничений.
Вот мой скрипт настройки iptables:

#!/bin/bash                                    
#                                              
DEV_IN="eth1"                                  
fwscript="/etc/init.d/iptables"                
fwcmd=`which iptables`                         
# Basic rules                                  
${fwcmd} -F                                    
${fwcmd} -t nat -F                             
${fwcmd} -t mangle -F                          
${fwcmd} -X                                    
tc qdisc del dev ${DEV_IN} root               
# Default policy                               
${fwcmd} -P INPUT ACCEPT                       
${fwcmd} -P OUTPUT ACCEPT                      
${fwcmd} -P FORWARD DROP                       
# Create chains
${fwcmd} -N NET1
# Redirect all trafic in filter
${fwcmd} -A FORWARD -s 192.168.1.3 -j NET1
${fwcmd} -A FORWARD -s 192.168.1.4 -j NET1
# Shaper
tc qdisc add dev ${DEV_IN} root handle 1: htb default 99
tc class add dev ${DEV_IN} parent 1: classid 1:1 htb rate 10mbit ceil 10mbit
tc class add dev ${DEV_IN} parent 1:1 classid 1:99 htb rate 256kbit ceil 256kbit
tc qdisc add dev ${DEV_IN} parent 1:99 handle 99: sfq perturb 10
# Rule by default
${fwcmd} -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
${fwcmd} -A FORWARD -j REJECT --reject-with icmp-net-prohibited
##############################################################################
wgetcmd=`which wget`
neturl="http://192.168.10.1/nets.txt"
#
${wgetcmd} -c ${neturl}
cat nets.txt | while read ip_addr; do
    if [ "${ip_addr}" ] ; then
          ${fwcmd} -A NET1 -d ${ip_addr} -j ACCEPT
    fi
done
##############################################################################
${fwcmd} -t mangle -A POSTROUTING -s 192.168.1.4 -j MARK --set-mark 99
${fwcmd} -t mangle -A POSTROUTING -d 192.168.1.4 -j MARK --set-mark 99
${fwcmd} -A NET1 -s 192.168.1.3 -j ACCEPT
${fwcmd} -A NET1 -s 192.168.1.4 -j ACCEPT
#
${fwcmd} -t nat -A POSTROUTING -o ${DEV_IN} -j MASQUERADE

Здесь в примере IP 192.168.1.4 шейпится, а 192.168.1.3 — нет.
Проблема в том что у IP 192.168.1.4 шейпится ВЕСЬ трафик, как этого избежать?
Заранее спасибо за ответ.

NightNord: теги [code], очевидно, придумали глупые инопланетяне?

Неужели никто не сталкивался

Неужели никто не сталкивался с такой проблемой?
Я пробовал сделать через маркиравки пакетов, но все пакеты попадающие в TC имеют одни и те же метки и TC эти пакеты благополучно фильтрует...

Если ничего не помогает, прочти наконец инструкцию...

А если помечать трафик на том

А если помечать трафик на том интерфейсе на котором требуется его шейпить?

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

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