Pessoal,

Tenho, no firewall da minha rede wireless, a seguinte configuração:

- ETH0: IP 200.xxx.xxx.x, saída para internet;


Na ETH1, que é a placa de rede que vai para o AP, tenho os seguintes aliases:
- 200.xxx.xxx.xxx/128, para ter ip´s válidos nos meus clientes (alguns);
- IP 10.0.0.0/24, onde estão as minhas bridges; e
- IP´s 10.10.1.1, 10.10.2.1, 10.10.3.1, 10.10.4.1, 10.10.5.1, etc..., que são os aliases para meus clientes.

Preciso saber a regra de iptables q preciso inserir para poder "enxergar", de um IP válido da mesma ETH1, todos os outros IP´s inválidos, para facilitar a configuração e administração da minha rede...

Segue meu IPTABLES

#!/bin/sh
# description: Inicializaçao do IPTables
#
# chkconfig: 2345 80 30
# processname: iptables
#

#
# Funcionamento: Crie um arquivo no formato (a,b);(mac);(IP Source);(nome)
# Aonde a é aceitar e b é bloquear que serve para o caso de haver necessidade
# de bloquear algum IP e MAC, caso b não será bloqueado o IP, apenas o MAC
#

IPT=/usr/sbin/iptables

$IPT -t filter -A FORWARD -j DROP
$IPT -t filter -A INPUT -j DROP
$IPT -t filter -A OUTPUT -j DROP


PROGRAMA=/etc/init.d/iptables
NET_IFACE=eth0
LAN_IFACE=eth1
MACLIST=/etc/maclist
MACLISTV=/etc/maclistv

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

case $1 in
start)

$IPT -F
$IPT -t nat -F
$IPT -t filter -P FORWARD DROP


##### IP´ Inválidos
for i in `cat $MACLIST`; do
STATUS=`echo $i | cut -d ';' -f 1`
MACSOURCE=`echo $i | cut -d ';' -f 2`
IPSOURCE=`echo $i | cut -d ';' -f 3`

#Se status = a então eu libera a conexao
if [ $STATUS = "a" ]; then
$IPT -t filter -A FORWARD -d 0/0 -s $IPSOURCE -m mac --mac-source $MACSOURCE -j ACCEPT
$IPT -t filter -A FORWARD -d $IPSOURCE -s 0/0 -j ACCEPT
$IPT -t nat -A POSTROUTING -s $IPSOURCE -o $NET_IFACE -j MASQUERADE
$IPT -t filter -A INPUT -s $IPSOURCE -d 0/0 -m mac --mac-source $MACSOURCE -j ACCEPT
$IPT -t filter -A OUTPUT -s $IPSOURCE -d 0/0 -j ACCEPT
$IPT -t nat -A POSTROUTING -s $IPSOURCE -j SNAT --to 200.xxx.xxx.x
$IPT -t nat -A PREROUTING -s $IPSOURCE -p tcp --dport 80 -j DNAT --to-destination 200.xxx.xxx.x:3128
$IPT -A FORWARD -p TCP -s $IPSOURCE --dport 80 -d 0/0 -j REJECT
$IPT -A FORWARD -s $IPSOURCE -p tcp --dport 3128 -j ACCEPT

# Se for = b então bloqueia o MAC
else
$IPT -t filter -A FORWARD -m mac --mac-source $MACSOURCE -j DROP
$IPT -t filter -A INPUT -m mac --mac-source $MACSOURCE -j DROP
$IPT -t filter -A OUTPUT -m mac --mac-source $MACSOURCE -j DROP
fi

done

##### IP´s Válidos
for i in `cat $MACLISTV`; do
STATUS=`echo $i | cut -d ';' -f 1`
MACSOURCE=`echo $i | cut -d ';' -f 2`
IPSOURCE=`echo $i | cut -d ';' -f 3`

#Se status = a então eu libera a conexao
if [ $STATUS = "a" ]; then
$IPT -t filter -A FORWARD -d 0/0 -s $IPSOURCE -m mac --mac-source $MACSOURCE -j ACCEPT
$IPT -t filter -A FORWARD -d $IPSOURCE -s 0/0 -j ACCEPT
$IPT -t filter -A INPUT -s $IPSOURCE -d 0/0 -m mac --mac-source $MACSOURCE -j ACCEPT
$IPT -t filter -A OUTPUT -s $IPSOURCE -d 0/0 -j ACCEPT

# Se for = b então bloqueia o MAC
else
$IPT -t filter -A FORWARD -m mac --mac-source $MACSOURCE -j DROP
$IPT -t filter -A INPUT -m mac --mac-source $MACSOURCE -j DROP
$IPT -t filter -A OUTPUT -m mac --mac-source $MACSOURCE -j DROP
fi

done

$IPT -t nat -A POSTROUTING -s 172.1.1.0/255.255.255.0 -j MASQUERADE
$IPT -t filter -A FORWARD -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
$IPT -t filter -A FORWARD -d 172.1.1.0/255.255.255.0 -s 0/0 -j ACCEPT
$IPT -t filter -A INPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT
$IPT -t filter -A OUTPUT -s 172.1.1.0/255.255.255.0 -d 0/0 -j ACCEPT

#Bloqueia Netbeui
$IPT -t filter -A INPUT -j DROP -p udp --sport 137
$IPT -t filter -A INPUT -j DROP -p udp --dport 137
$IPT -t filter -A INPUT -j DROP -p udp --sport 138
$IPT -t filter -A INPUT -j DROP -p udp --dport 138
$IPT -t filter -A INPUT -j DROP -p udp --sport 139
$IPT -t filter -A INPUT -j DROP -p udp --dport 139
$IPT -t filter -A INPUT -j DROP -p udp --sport 213
$IPT -t filter -A INPUT -j DROP -p udp --dport 213
$IPT -t filter -A OUTPUT -j DROP -p udp --sport 137
$IPT -t filter -A OUTPUT -j DROP -p udp --dport 137
$IPT -t filter -A OUTPUT -j DROP -p udp --sport 138
$IPT -t filter -A OUTPUT -j DROP -p udp --dport 138
$IPT -t filter -A OUTPUT -j DROP -p udp --sport 139
$IPT -t filter -A OUTPUT -j DROP -p udp --dport 139
$IPT -t filter -A OUTPUT -j DROP -p udp --sport 213
$IPT -t filter -A OUTPUT -j DROP -p udp --dport 213
$IPT -t filter -A FORWARD -j DROP -p udp --sport 137
$IPT -t filter -A FORWARD -j DROP -p udp --dport 137
$IPT -t filter -A FORWARD -j DROP -p udp --sport 138
$IPT -t filter -A FORWARD -j DROP -p udp --dport 138
$IPT -t filter -A FORWARD -j DROP -p udp --sport 139
$IPT -t filter -A FORWARD -j DROP -p udp --dport 139
$IPT -t filter -A FORWARD -j DROP -p udp --sport 213
$IPT -t filter -A FORWARD -j DROP -p udp --dport 213


Os arquivos MACLIST e MACLIST possuem as MAC´s e os IP´s de cada cliente com ip inválido e válido, respectivamente...

Qualquer ajuda será bem-vinda!!!