# [TCP-IP] Ip de origen en proceso local (SOLVED)

## ZaPa

Hola.

Estoy funcionando con squid actualmente, pero al intentar insertar una regla para marcar paquetes que vengan desde la red local no lo consigo....

Primero.. redirecciono las peticiones del puerto 80 a squid que esta a la escucha por el puerto '8080'...

(estas reglas estan ejecutandose en la misma máquina que squid)

[eth0 - interfáz de la red local y eth1 - Interfáz wan]

```

iptables -t nat -A PREROUTING -i eth0 -p tcp -s 192.168.15.0/24  --dport 80 -j DNAT --to 192.168.15.1:8080

```

Ok... ahora, al intentar marcar los paquetes que salen de eth1, de la siguiente forma, no funciona...

```

iptables -t mangle -A POSTROUTING -o eth1 -s 192.168.15.0/24 --dport 80 -j MARK --set-mark blblabjalb

iptables -t mangle -A POSTROUTING -o eth1 -s 192.168.15.0/24 --dport 80 -j RETURN

```

Me encuentro que esta regla no funciona :S al parece no concuerda con ningún paquete... y al hacer:

```

iptables -t mangle -A POSTROUTING -o eth1 --dport 80 -j MARK --set-mark blblabjalb

iptables -t mangle -A POSTROUTING -o eth1 --dport 80 -j RETURN

```

Sin especificar la dirección de la red local como dirección de origen funciona......

Y si lo intento con --sport 8080 (ip de squid) tampoco funciona......

Mi pregunta es....

 Al redireccionar paquetes a una dirección ip, este paquete pierde la dirección y puerto de origen?

Un saludo.

Espero respuestas.

----------

## paynalton

mmm, estas intentando marcar los paquetes que van hacia internet???

en tal caso, deberías marcar con mangle los paquetes antes de redireccionarlos, poniendolos en prerouting en lugar de postrouting y en un nivel superior a el desvio que haces para el puerto 8080.

----------

## ZaPa

Hola.

¿Debo marcar antes de la redirección al puerto 8080? porque? despues de la redirección no se puede marcar el paquete? 

consigo marcarlo pero sin --sport ni -s  y me gustaria saber si es que se pierden estos datos al hacer un redireccionamiento con NAT..

De todas formas..para hacer lo que mencionas, deberia de marcar en PREROUTING pero utilizando como interfáz de entrada eth0 que seria la del lado del LAN.... ¿cierto?

Como he comentado en mi anterior post, he podido marcar el tráfico pero mi cuestión es si despues de un redireccionamiento se pierde la ip de origen (-s) y puerto de origen (--sport)...

Un saludo.

----------

## paynalton

imagina que los paquetes son eso, paquetes, y que al llegar por el puerto un "administrador de cola" revisa la dirección a la que estan destinados, la prioridad, la ruta, todo, y los coloca en la bandeja para que los repartidores hagan sus entregas.

IPTables funciona como un intruso que cambia las direciones antes de que los paquetes lleguen al gestor de cola, en este caso, cambias el número de puerto del 80 al 8080.

Aparte, squid procesa todos los paquetes y lanza dcopias de los mismos, recibe las respuestas y manda nuevos paquetes de regreso, siguiendo sus propias reglas como si fuese un agente de la aduana, de manera que todos los paquetes que salen de squid salen como si pertenecieran al equipo local.

----------

## ZaPa

Problema solventado.

Al realizar un redireccionamiento  del tráfico pasa a ser tráfico de un proceso local entrante (INPUT) al tener squid en la misma máquina que se ejecutan las reglas iptables.

Era como lo creia.

Saludos.

----------

## briseo

Hola buenas, porfa si me pueden ayudar, tengo squid funcionando en mi pc por la cual toda mi red lan sale a internet, estoy intentando marcar los paquetes de correo electronico (SMTP), la cual no me funciona.

iptables -t mangle -A PREROUTING --dport 25 -j MARK --set-mark 1

Por favor si m pueden decir cual es el error o si hace falta mas reglas. Gracias

----------

