Re: Problemas con iptables (marcar un usuario) [SOLUCIONADO]
He resuelto el problema recompilando el paquete iptables con las cabeceras del
kernel actual. En la base de datos de paquetes debian ya había un bug abierto
contra este paquete.
Gracias a todos!
El Miércoles, 26 de Febrero de 2003 21:56, Juan escribió:
> El Miércoles, 26 de Febrero de 2003 11:01, Victor Calzado Mayo escribió:
> > Hola
> >
> > On Wednesday 26 February 2003 02:36, Juan wrote:
> > > El Martes, 25 de Febrero de 2003 21:57, Juan escribió:
> > > > Hola, estoy intentando marcar el tráfico que genera un usuario para
> > > > poder luego gestionar su ancho de banda cómodamente con htb. (En
> > > > concreto quiero controlar el ancho de banda que me consume el
> > > > mldonkey).
> > > >
> > > > El caso es que al escribir esta regla:
> > > >
> > > > iptables -t mangle -A OUTPUT -m owner --uid-owner 1003 -j MARK
> > > > --set-mark 4
> > > >
> > > > Me contesta:
> > > >
> > > > iptables: Invalid argument
> >
> > Asegurate de que tienes compilados todos los módulos de iptables ( o como
> > residentes en el kernel ) y que además de lo que tienes cargado cargas el
> > módulo de mangle, el de owner y el de mark iptable_mangle ipt_mark
> > ipt_owner...
> >
> > # lsmod |grep ip
> > ipt_MARK 1368 1 (autoclean)
> > ipt_owner 1784 1 (autoclean)
> > iptable_mangle 2776 1 (autoclean)
> > iptable_filter 2412 0 (autoclean) (unused)
> > ip_tables 14936 4 [ipt_MARK ipt_owner iptable_mangle
> > iptable_filter]
> >
> >
> > un "iptables -L -t mangle" debería devolverte:
> >
> > Chain OUTPUT (policy ACCEPT)
> > target prot opt source destination
> > MARK all -- anywhere anywhere OWNER UID
> > match 1003 MARK set 0x4
>
> He revisado el howto, y he compilado el kernel con todas las opciones y he
> cargado todos los módulos, pero me sigue dando el mismo error.
>
> root@micelio:~# lsmod
> Module Size Used by Not tainted
> sch_red 2400 0 (unused)
> sch_dsmark 3712 0 (unused)
> cls_fw 2328 0 (unused)
> ipt_unclean 6712 0 (unused)
> ipt_state 568 0 (unused)
> ipt_TOS 1080 0 (unused)
> ipt_tos 440 0 (unused)
> ipt_mark 440 0 (unused)
> ipt_mac 664 0 (unused)
> ipt_LOG 3160 0 (unused)
> ipt_length 472 0 (unused)
> ipt_limit 952 0 (unused)
> ipt_helper 632 0 (unused)
> ipt_esp 536 0 (unused)
> ipt_ECN 1624 0 (unused)
> ipt_ecn 728 0 (unused)
> ipt_DSCP 1048 0 (unused)
> ipt_dscp 440 0 (unused)
> ipt_conntrack 1080 0 (unused)
> ip_conntrack 16544 3 [ipt_state ipt_helper ipt_conntrack]
> ipt_ah 536 0 (unused)
> ip_queue 4988 0 (unused)
> iptable_filter 1668 0 (unused)
> ipt_MARK 792 0 (unused)
> ipt_owner 1336 0 (autoclean)
> iptable_mangle 2192 0 (autoclean) (unused)
> ip_tables 10360 21 [ipt_unclean ipt_state ipt_TOS ipt_tos
> ipt_mark ipt_mac ipt_LOG ipt_length ipt_limit ipt_helper ipt_esp ipt_ECN
> ipt_ecn ipt_DSCP ipt_dscp ipt_conntrack ipt_ah iptable_filter ipt_MARK
> ipt_owner iptable_mangle]
> soundcore 3492 0 (autoclean)
> sch_ingress 1440 1 (autoclean)
> cls_u32 4508 5 (autoclean)
> sch_sfq 3392 3 (autoclean)
> sch_htb 18048 1 (autoclean)
> parport_pc 21000 1 (autoclean)
> lp 5984 0 (autoclean)
> parport 24576 1 (autoclean) [parport_pc lp]
> usb-uhci 21228 0 (unused)
>
> root@micelio:~# iptables -A OUTPUT -t mangle -m owner --uid-owner 1003 -j
> MARK --set-mark 1 -v
> MARK all opt -- in * out * 0.0.0.0/0 -> 0.0.0.0/0 OWNER UID match 1003
> MARK set 0x1
> iptables: Invalid argument
>
> root@micelio:~# iptables -L -t mangle
> Chain PREROUTING (policy ACCEPT)
> target prot opt source destination
>
> Chain INPUT (policy ACCEPT)
> target prot opt source destination
>
> Chain FORWARD (policy ACCEPT)
> target prot opt source destination
>
> Chain OUTPUT (policy ACCEPT)
> target prot opt source destination
>
> Chain POSTROUTING (policy ACCEPT)
> target prot opt source destination
> root@micelio:~#
>
> He puesto el comando iptables con -v para que sea mas "verboso" pero
> tampoco da mucha luz sobre lo que pasa. Ya no se que hacer, he estado
> mirando todos los manuales y nada. He probado también marcando la cabezera
> TOS, pero me sigue dando el mismo error:
>
> root@micelio:~# iptables -A OUTPUT -t mangle -m owner --uid-owner 1003 -j
> TOS --set-tos 0x08
> iptables: Invalid argument
>
> Por lo que el error me imagino que estará en la tabla mangle o en la
> selección por UID. Tengo kernel 2.4.20-xfs y Debian Sarge ¿alguna idea?
>
> Salu2.
Reply to: