[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Ayuda Urgente: Iptables e ip rule no funcionan correctamente en debian 6?



On Wednesday 05 September 2012 16:13:44 Francisco J. Bejarano wrote:
> Hola
> 
> Tengo un problema con iptables y reglas de enrutamiento (iproute2 (ip
> rule)). Expongo mi caso:
> 
> Actualicé de Debian 4 a Debian 6.0.5 con los pasos intermedios, de 4 a 5
> y de 5 a 6. En debian 4 todo funcionaba okpero en Debian 6.0.5 ha dejado
> de funcionar la parte de enrutado de los paquetes marcados.

Uoou! Menuda actualización, y felicidades por tu osadia y haberlo logrado 
(casi del todo).

[..]

> # ip rule
> 0: from all lookup local,
> 30010: from all lookup fwmark 0x2 TB2
> 30020: from all lookup fwmark 0x1 TB1
> 30030: from 10.0.2.0/24 lookup TB3
> 30040: from 10.0.1.0/24 lookup TB3
> 30060: from all lookup main
> 30070: from all lookup default
> 
> Ok. ¿Alguien sabe lo que puedo estar haciendo mal? ¿Ha cambiado la forma
> marcado en el firewall iptables o de crear las reglas de ruteo?

Tengo montado algo parecido, e ip rule me muestra esa información con otro 
orden, primero la marca y luego la tabla de enrutamiento, además, el campo 
"from" contiene específicamente la IP de la interfície, no de la red. Como 
hace NAT, la IP de orígen del paquete cambia por la IP de la ethernet que hace 
NAT.
He adaptado un poco mi salida para que concuerde mas con tu configuración:

# ip rule
0:      from all lookup local 
32761:  from all fwmark 0x2 lookup TB2 
32762:  from all fwmark 0x1 lookup TB1 
32763:  from 10.0.2.2 lookup TB2 
32764:  from 10.0.2.1 lookup TB1 
32766:  from all lookup main 
32767:  from all lookup default 

Aquí, las dos IPs 10.0.2.x són las IPs externas del firewall, las que envian 
los paquetes hacia las adsl, en tu salida aparece un rango de IPs, y sospecho 
que són las IPs internas de la red.

Tengo las rutas en un script bash dentro un loop que recorre todas las 
ethernets e ips que hay conectadas, por si te sirve, la líniea es:

ip rule add from ${EXTIPs[n]} table TB$((n+1))

Donde EXTIP es un array con las IPs de la ethernets externas, y "n" es el 
contador del loop. Una vez haciendo el loop, quedaria:

ip rule add from 10.0.2.2 table TB2
ip rule add from 10.0.2.1 table TB1

Las tablas de enrutamiento deben definirse también en /etc/iproute2/rt_tables, 
no comentas nada sobre este archivo en tu correo y desconozco si estan o no. 
En ese archivo, después de las "reserved values" deberia haber algo como:

11      TB1
12      TB2

> Registro los paquetes en el registro de sistema que se marcan con 1 o 2
> y en el log se muestran. Existe tráfico que se marca con 1 y 2, pero
> después, el tráfico no se envía a las tablas de enrutamiento correctas.
> ¿Es un bug de ip rule (iproute2) o algo así? Muestra del log
> 
> Sep  5 15:24:55 firewall kernel: [1883719.204551] fwmark 1: IN=eth1 OUT=
> MAC=00:18:8b:f9:f3:34:00:24:8c:de:c8:fb:08:00 SRC=10.0.1.153
> DST=10.0.1.1 LEN=40 TOS=0x00 PREC=0x00 TTL=128 ID=1436 DF PROTO=TCP
> SPT=57856 DPT=22 WINDOW=16323 RES=0x00 ACK FIN URGP=0 MARK=0x1
> Sep  5 15:24:55 firewall kernel: [1883719.205085] fwmark 1: IN=eth1 OUT=
> MAC=00:18:8b:f9:f3:34:00:24:8c:de:c8:fb:08:00 SRC=10.0.1.153
> DST=10.0.1.1 LEN=40 TOS=0x00 PREC=0x00 TTL=128 ID=1437 DF PROTO=TCP
> SPT=57856 DPT=22 WINDOW=16323 RES=0x00 ACK URGP=0 MARK=0x1
> Sep  5 15:25:20 firewall kernel: [1883744.276724] fwmark 2: IN=eth2 OUT=
> MAC=00:0d:88:c5:ba:53:20:cf:33:d3:a6:d5:08:00 SRC=10.0.2.226
> DST=10.0.2.1 LEN=52 TOS=0x00 PREC=0x00 TTL=64 ID=8254 DF PROTO=TCP
> SPT=52845 DPT=22 WINDOW=2641 RES=0x00 ACK URGP=0 MARK=0x2
> Sep  5 15:25:20 firewall kernel: [1883744.280404] fwmark 2: IN=eth2 OUT=
> MAC=00:0d:88:c5:ba:53:20:cf:33:d3:a6:d5:08:00 SRC=10.0.2.226
> DST=10.0.2.1 LEN=100 TOS=0x00 PREC=0x00 TTL=64 ID=8255 DF PROTO=TCP
> SPT=52845 DPT=22 WINDOW=2641 RES=0x00 ACK PSH URGP=0 MARK=0x2

Como los paquetes se marcan correctamente, he omitido por completo la parte de 
iptables, no parece ser el problema. Las he mirado por encima y me han 
parecido correctas.

> Por favor, necesito ayuda con este problema. Toda mi red de trabajo está
> en una estado degradado ya que he de enviar trafico por diferentes rutas
> para que no se saturen las lineas y este depende del puerto al que se
> accede. Ya no sé que más ver para resolver este problema.

Conozco perfectamente esta sensación ;-)
No desesperes, ánimos!

> Gracias de antemano y un saludo

-- 

Marc Olivé
Blau Advisors

www.blauadvisors.com  

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: