htb.init y cbq.init QoS

Imagen de nino1511

Forums: 

Estimados

Para todos aquellos que tienen problemas de P2P, etc va lo siguiente. "Va por tí Ecuador":

Si deseas limitar Ares o cualquier otro p2p sin bloquearlo solo asignarle prioridad baja, la solución ha estado tan cerca pero a la vez tan lejos.

Partiendo de un Centos 5.5 + kernel-2.6.18-194.17.1.el5 + iptables-1.3.5-5.3.el5_4.1 + squid + nat + htb-gen0.8xxxxx.

Te bajas en este caso el cbq.init lo colocas en /sbin/ por lo general ya viene este script.
Dentro de la ruta /etc/sysconfig/cbq/ creas unos ficheros que ubico a continuación:

cbq-0003.p2p-in
avpkt

El avpkt viene por defecto solo contiene AVPKT=3000, no le hacemos nada a este archivo.

Trabajamos en el cbq-0003.p2p.in que viene siendo 0003 es un número hexadecimal y el .www es un nombre referencia le puedes colocar lo que desees para que te acuerdes lo que tienes dentro.

vim cbq-0003.p2p-in

DEVICE=eth1,100Mbit,10Mbit
RATE=100Kbit
WEIGHT=10Kbit
PRIO=7
#puertos por donde baja el ares archivos hay muchísimos mas.
RULE=:3059,
RULE=:0,
RULE=:42812,
RULE=,:0
RULE=:47734,
RULE=:14414,

##################fin ####
Lo que hice es, limitar puertos en la tarjeta eth1 (lan) "RULE:0," con esto lo que le digo es que coja todo lo que se conecta a este puerto (puerto 0 muestra el jnettop cuando el ares esta descargando).

Para ejecutar es con
cbq compile
cbq start

Si te sale un error como el que sigue:
find: warning: you have specified the -maxdepth option after a non-option argument -type, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.

No lo he podido solucionar pero si funciona igual, esto es algún modulo en el kernel de la parte del qos que falta yo he activado todo lo referente a esto pero aún así sigue saliendo.

Tu tarea es escanear los puerto que se conectan los p2p y colocarlos en tu archivo reiniciar el cbq y listo, con esto limitas solo p2p o cualquier puerto específico que desees.

Además que si estas limitando con cbq osea el script de iptables esta basado en cbq debes usar el htb.init que es muy parecido solo cambian ciertas cosas.

La ruta para el htb.init es también en /sbin/ los archivos de limitación debes colocarlos en la ruta /etc/sysconfig/htb/ Ej:
eth1
eth1-2.root

Donde eth1 contiene:

DEFAULT=30
R2Q=100

y eth1-2.root contiene:

DEVICE=eth1,100Mbit,10Mbit
RATE=1Kbit
CEIL=1Kbit
PRIO=7
RULE=:3059,
RULE=:0,
RULE=:42812,
RULE=,:0
RULE=:47734,
RULE=:14414,
RULE=:0,192.168.1.103
RULE=:24507,
RULE=:46133,
LEAF=sfq

Para ejecutar es
/sbin/htb.init compile
/sbin/htb.init start

Amigos estarán separando el tráfico http, ftp, p2p, etc y así hacer mejor la calidad de servicio de su red.

Una de las ventajas de htb.init sobre cbq es que maneja un rango de mínimo y máximo con el rate y el ceil.

Para mas info visiten alcancelibre.org en la sección de manuales esta la parte de cbq.

Se que hay genios por ahi que diran eso yo lo sabia o te falta esto, pero esto no para ellos va para los que tienen problemas en este sentido o quieren mejorar su calidad de servicio.

Saludos
Primero Muerto antes que perder la vida.

Ha me olvidaba. Deben colocar

Imagen de nino1511

Ha me olvidaba.

Deben colocar una regla para que los demás puertos se limiten Ej:


vim cbq-0006.lan2-in

DEVICE=eth1,100Mbit,10Mbit
RATE=100Kbit
WEIGHT=32Kbit
PRIO=7
RULE=192.168.1.0/24
LEAF=sfq


cbq compile
cbq start

Vamos Ecuador, si se puede