Paranoyas de ‘tecnologia’

Ene 16

Qué desastre, qué desastre, que no doy actualizado el blog… Apuffff y ahora con los exámenes va a estar más complicado. En fin.

Hoy os traigo una pequeña golosina para los que tengáis Wii. Hace un tiempo me compré el pack de instrumentos del rock band, que consta de una guitarra, una batería y un micrófono. El micrófono quedó relegado instantáneamente a un cajón. El caso es que mi tono de voz me impide cantar canciones con normalidad. Por norma general, una persona tiene un tono de voz normal intermedio, y a partir de ahí puede subir o bajar el tono de forma más o menos simétrica. Algo así:
Min – - – - – - – - – - Norm – - – - – - – - – - Max
Sin embargo, yo tengo un registro raro. Tengo un tono de voz normal situado en la parte superior de mi registro, y a partir de ahí, puedo bajar mucho, pero sólo bajar. Algo así:
Min – - – - – - – - – - – - – - – - – Norm – - – Max
La gran mayoría de las canciones usan tanto registro ascendente como descendente, por lo que yo siempre me quedo sin alcance y tengo que andar transportando, lo cual es un coñazo, así que eso, el micro se fue para un cajón derechito.

Ayer se me encendió la bombillita. Antes tenía un teclado con micrófono integrado, lo cual es bastante útil cuando tienes que hacer cosas, como trabajos en grupo a distancia. Como mi hermano me regaló un teclado decente, de corto recorrido y toda la pesca, me quedé sin ese micro integrado. En lugar de comprarme un micrófono de esos de 3 euros y medio en el carrefürer, me dije ¿y no habrá alguna forma de conectar el micrófono de la Wii al PC?

Pues sí que la hay. Es más, es increíblemente sencillo (para los linuxeros. Los que usáis windows probablemente ya sabéis cómo hacerlo, porque con vuestro sistema todo es más fácil y más userfriendly y nosequé hostias en vinagre, así que vosotros mismos). Lo único que hace falta es tener el módulo del kernel de audio usb (sección device drivers / sound card support / alsa / usb sound device), además de tener el soporte para USB, obviamente. Si usáis una distro con un kernel precompilado o usáis genkernel, lo más probable es que ya tengáis esto incluído en el kernel, ya que es un módulo muy común, así que no tendréis problema. Una vez hecho esto, la magia ya está creada. Basta con conectar el micrófono y ya funcionará.

Lo único que tenéis que hacer para poder grabar o hablar con alguien vía skype o similar, es seleccionar el dispositivo del micrófono, ya que ahora os reconocerá 2 bancos de sonido, por un lado el de la tarjeta de sonido, y por otro el del micrófono. Eso ya es cosa de cada programa, y basta con ir a las opciones y seleccionar el dipositivo adecuado. No es complicado.

Para unas instrucciones más detalladas de lo que os acabo de contar, basta con que consultéis este tutorial.

En cuanto a mis impresiones, pues la verdad es que quedé gratamente sorprendido con la calidad del micrófono. Se oye bajito, al menos con los programas con los que probé, porque no incluyen la típica opción de amplificar 20 dB, pero omitiendo eso, la calidad del sonido es muy buena, e incluso el propio micro tiene cancelación de ruido. Os dejo una pequeña prueba, para que lo comprobéis.

Nov 27

Como dije en alguna de las últimas entradas estaba pensando en actualizar mi equipo, por aquello de que el viejuno era muy viejuno. El pobre estaba a punto de cumplir 7 años (que ya los cumplió), y es un equipo sin memoria dual, sin hyperthreading y sin mil movidas que tienen los ordenadores de hoy en día, lo que hacía que su rendimiento fuese bastante pobre, incluso moviendo el sistema operativo a pelo.

Tras muchos meses analizando la evolución de las piezas que me interesaban en el mercado, me decidí a hacer el encargo a finales de septiembre. El equipo en sí tardó en llegar 2 semanazas (a pesar de que que el chaval de pcbox me dijo que llegaría en 2 días laborables), porque el disipador que encargué estaba agotado. Sin embargo, me lo sirvieron con una memoria diferente a la que yo quería, porque la que había encargado (una OCZ CL7 1600 MHz) estaba agotada. Me vendieron una kingston y me dijeron que me harían el cambio cuando llegase la mía, descontándome el precio de la que me estaban vendiendo, y para que no estuviese más tiempo sin el equipo. Tras más de mes y medio esperando, llamando yo puntualmente cada semana para ver cómo iba la cosa, me dijeron que la memoria de mis sueños se había descatalogado, y que el proveedor había pasado de ellos, así que tuve que joderme y encargar otra (una corsair CL9 1600MHz). La segunda opción es casi igual a la primera, aunque como podéis ver, tiene unos timings un poco más lentos. En fin, qué se le va a hacer. La memoria llegó hace semana y pico, me descontaron el precio íntegro de la que me habían vendido previamente y para casa tan contento.

El caso es que tras el tiempo de espera extra y toda la pesca, el equipo con el que me hice es tal que éste:
PLACA BASE: Asus P7P55D deluxe

La mayor curiosidad de esta placa es que tiene una especie de procesador secundario, que nos permite hacer tareas tan curiosas como una pequeña aplicación que overclockea automáticamente el equipo. Le pegué un testeo, pero la verdad es que no anda muy fina… También tiene un mando “a distancia” (con un cable) con botones para aumentar y disminuír en caliente la frecuencia del procesador, así como alternar entre diferentes perfiles de overclock, y otro botón para apagar y encender el equipo (al final éste último es el único que usas xD).

PROCESADOR: Intel core i7 860

Lo que más me extrañó del procesador es que no tiene pines. La superficie es completamente lisa, y los pines están en el socket. No se encajan en el procesador, sino que simplemente hacen contacto. Raruno…

DISIPADOR: Noctua NH-U12p

Como podéis ver, el disipador es descomunal. El problema es que no cabe en cualquier caja, y de hecho, aunque quepa, puede dar problemas (por ejemplo, a mí me bloquea un slot de ram, aunque es un slot secundario que no creo que llegue a usar).

MEMORIA: Corsair CL9 DHX 1600MHz DDR3

No voy a decir nada de la ram, aparte de que no se calienta nadita. Estoy hasta las pelotas de este tema por lo que comenté arriba xD.

GRÁFICA: Asus GTS250 1 GB

Cuando el equipo está arrancando, hace mucho ruido. Sin embargo, una vez que carga el sistema operativo, el ruido del ventilador baja al mínimo (siempre me da la impresión de que el equipo se me apaga xD). La temperatura está en unos 38ºC cuando no estoy haciendo nada, y sube a unos 45 cuando está trabajando, sin queja. Need for speed shift con todo a tope va fluido. Sin ninguna queja tampoco. Cuando pruebe el crysis ya contaré xD.

FUENTE: Corsair TX Series 750W

La presentación de la fuente en la caja es totalmente impecable. Incluso viene con una bolsita negra de terciopelo, chulísimo xD. Ahora en serio, dejando el tomate aparte, los voltajes de la fuente están estables en el valor en el que deben estar. Por ahora no dio ningún tipo de problemas (tampoco es que haya mucho más que decir). Como punto negativo, y es algo MUY negativo, no es una fuente modular, por lo que tenemos todos los cables dando el coñazo.

CAJA: Cooler master storm scout

Había otras cajas que me gustaban más que ésta, pero el disipador no me cabía en ninguna. La verdad es que en principio ésta me pareció fea de cojones, aunque es totalmente funcional, igual que una nave industrial. De todas formas, cada vez me gusta más, y tanto puerto USB en el frontal se agradece sobremanera. Es muy silenciosa y ventila muy bien, por el ventilador frontal y el superior, los dos enormes. Además tiene filtros para el polvo por todas partes, por lo que el interior está siempre impecable (eso sí, hay que pasarle el plumero de vez en cuando por el frontal (por fuera), porque es donde se acumula todo xD).

La broma total, incluyendo la caja, me salió por poco más de 1000€ al final (1020 o 1030, no lo sé seguro, por ésto de haberlo pagado en 2 facturas). La verdad es que no me parece excesivo, teniendo en cuenta que es un equipo entero, que es punterillo y que tengo pensado que me dure al menos lo que me duró el otro (7 añitos). En cuanto a las impresiones en general… La verdad es que estoy un poco decepcionado. Evidentemente, este equipo va mil veces mejor que el antiguo. Si me pongo a comprimir alguna cosa, a ver vídeo en alta resolución, a navegar por la típica página que lo bloquea todo… Pues sí, va mucho mejor que el antiguo, y no se bloquea como el otro, que como tuviese el procesador un poco ocupado, no se movía ni el puntero. El caso es que sigue teniendo problemas que pensé que se superarían. Por ejemplo, si estoy haciendo algo que requiera uso intensivo del disco duro, como mover de un sitio para otro muchos ficheros simultáneamente, sigue existiendo el maldito cuello de botella del disco, que hace que se ralentice todo bastante (tengamos en cuenta que ahora tengo un disco SATA2 y antes tenía un IDE133), y como que poner un RAID0 iba a ser un poco caro, sobre todo porque necesitaría 4 discos, por aquello de la fiabilidad. Por otro lado, esta placa base tiene un sistema que permite overclockear el equipo automáticamente, lo cual en teoría es bueno (como el comunismo, jé), pero a la hora de llevarlo a la práctica, es muy inestable, y apenas consigue subir 150 MHz antes de que casque todo. Y la verdad, trabajando a 2800 MHz con 8 hilos… 150 MHz son absolutamente inapreciables.

En cuanto a las cosas buenas, lo típico. Esta caja está mucho mejor ventilada que la antigua, por eso de que tiene ventiladores a puntapala, y además es muy silenciosa. Al tener filtros para el polvo por todas partes, el interior siempre está limpio, pero, eso sí, hay que estar continuamente limpiándole el frontal, porque es ahí donde se acumula todo, y queda bastante feo. También es muy cómodo tener tanto USB frontal, porque no tengo que recurrir al panel trasero para nada. La gráfica también mueve lo que le echen. Por ahora lo único que probé en condiciones fue el “The witcher” y el “Need for speed shift”, ambos con las opciones gráficas configuradas a romper, y ejecutados de manera fluida.

Nov 26

Para los que no lo sepan, google wave es una herramienta innovadora parida por google (por quién si no xD) que más o menos junta en un único protocolo la mensajería instantánea, el email, las redes sociales…
Grosso modo podríamos decir que es una herramienta para trabajo conjunto y comunicación en tiempo real. Es un poquillo complicado de describir, pero bueno, echando una ojeada por la nube, podéis encontrar mucha información al respecto.

Hace unos días me enviaron una invitación y llevo un par de semanas pegándole un testeo. La mayoría de la gente dice que es una mierda, pero bueno, yo no estoy de acuerdo. Sí es cierto que consume recursos a mansalva, porque es javascript puro y duro por doquier, y actualmente no va muy fino porque no es ni siquiera versión beta, además de que como todavía no hay mucha gente que lo tenga, no se puede interactuar mucho. En cualquier caso, basándome en mi propia experiencia, opino que es una herramienta muy útil, sobre todo en casos como hacer trabajos conjuntos con gente a la que no vemos a diario, compartir ficheros multimedia, enviar algún que otro mensaje, sustituyendo al mail o a los condenados mensajes offline del msn…

Supongo que cuando esté un poco más pulido, se le podrá sacar más jugo, pero bueno, yo ya digo que a mí tal y como está ya me parece bastante útil. Ahí queda eso.

Ah, se me olvidaba, si alguien quiere, tengo invitaciones para crear una cuenta :P .

Abr 24

Si os digo que penséis mentalmente cómo abriríais un fichero cualquiera de vuestro ordenador, seguramente lo primero que os vendría a la cabeza sería abrir el típico explorador, que se inicia en un directorio concreto, y a partir de ahí vamos clickando en los directorios siguiendo una ruta determinada hasta el fichero que queremos abrir.

Ésto es así desde el principio de los tiempos, desde que existen las interfaces gráficas (e incluso en modo texto se hace de esta forma). Tengo constancia de un par de variantes, pero poco conocidas y que no llegaron a ningún lado.

Ahora imaginaos que vuestro disco duro es como el planeta tierra visto desde el espacio, y que queréis ir… yo qué sé… a la tienda de appinformatica de Pontevedra. Primero os iríais acercando a Europa, luego a España, luego a Galicia, luego a Pontevedra, luego a la ciudad de Pontevedra, luego a la calle San Antoniño, y finalmente aterrizaríais en el edificio correspondiente. Imaginad hacer esto mismo con los ficheros de vuestro ordenador. Pues bien, esta alternativa ya existe, y se llama Eagle mode. Mejor no os hablo del explorador. Entrad en el enlace y ved el vídeo, porque es muy explicativo de lo que estoy diciendo.

Me sorprendió gratamente por muchas razones. Para empezar, es muy fácil de instalar y utilizar. Basta con un comando para compilarlo, otro para instalarlo (no es necesario instalarlo en ningún sitio, podemos ejecutarlo directamente una vez compilado), y para ejecutarlo basta con lanzar un script que crea el propio compilador. El control es realmente bueno. Si andamos cortos de recursos, el zoom y renderizado de las previsualizaciones irá a saltos, pero en ningún momento perderemos el control del sistema (¿verdad, firefox? ¬¬). La versión estable es REALMENTE ESTABLE, a pesar de ser una beta. Yo llevo un buen rato dándole vueltas y no dio ni un sólo error.

En fin, que merece la pena echarle un vistazo, y si usáis linux, en serio, probadlo, porque no os va a costar absolutamente nada compilarlo y merece la pena la experiencia. Yo estoy pensando en usarlo bastante…

Abr 15

Esto es algo que había hecho una vez en windows, y resultó tan sencillo como seleccionar los dos interfaces de red del equipo que iba a usar como pasarela y seleccionar la opción “establecer pasarela”, o algo similar (hace mucho que lo hice y hace mucho que no uso windows). En cualquier caso, me vi en la necesidad de hacer algo similar en linux, pero fue bastante más complicado de lo que pensé que sería. Aquí os pongo el proceso que tuve que seguir de forma muy detallada, para que no os perdáis. Difícil y nada sencillo, pero sí para toda la familia.

Bueno, pues eso, la configuración de la red es la siguiente:

Para poner correctamente la parte cableada, que es de lo que se trata aquí, configuramos las interfaces de los 3 equipos de la siguiente forma:

EQUIPO 1

auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0

allow-hotplug eth0
iface eth0 inet static
address 192.168.0.5
netmask 255.255.255.0
gateway 192.168.0.1
up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.2
up route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.0.7
auto eth0

Aquí lo que hacemos es indicarle al equipo que la red wifi (subred 1) se encuentra a través de la puerta de enlace 0.2, y que la subred 2 se encuentra a través de la puerta de enlace 0.7

SERVIDOR

auto lo
iface lo inet loopback

iface eth0 inet static
address 192.168.0.7
netmask 255.255.255.0
gateway 192.168.0.1
up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.2
auto eth0

iface eth1 inet static
address 192.168.2.1
netmask 255.255.255.0
auto eth1

Aquí le indicamos al servidor que la red wifi se encuentra a través de la puerta de enlace 0.2, al igual que con el anterior equipo. A la conexión punto a punto no es necesario ponerle una puerta de enlace.

EQUIPO 2

auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0

allow-hotplug eth0
iface eth0 inet static
address 192.168.2.5
netmask 255.255.255.0
gateway 192.168.2.1
up route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.2.1
up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.2.1
auto eth0

Aquí le indicamos al equipo que para acceder a las otras 2 subredes tiene que pasar por la puerta de enlace 2.1.

Una vez hecho ésto, tendremos acceso desde cada subred únicamente hasta el servidor, ya que éste no retransmitirá los paquetes de una de sus interfaces a la otra. Para solucionar ésto, es necesario introducir un script de iptables que fuerce esta retransmisión. El script sugerido es el siguiente:

#!/bin/sh

echo Aplicando Reglas de Firewall...

## FLUSH de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

## Establecemos politica por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables -A FORWARD -i eth1 -d 192.168.0.0 -j ACCEPT
iptables -A FORWARD -i eth1 -d 192.168.1.0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.2.0 -j ACCEPT

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

Aquí hacemos lo siguiente: lo primero es eliminar las anteriores configuraciones de iptables si las hubiese (si tenéis alguna otra cosa, evidentemente tendréis que cambiar ésto).
Posteriormente se establece la política por defecto como aceptación de todos los paquetes (es inseguro. Si os preocupa la seguridad tendréis que cambiar el script para denegarlos por defecto).
A continuación, introducimos una línea para enmascarar la conexión procedente de la subred 2 hacia el exterior. Esta línea es importante, ya que de no ponerla, no podremos conectarnos al router, y por tanto, no habrá acceso hacia internet ni hacia la subred 1.
Después viene el grueso del script. En estas 3 líneas se redireccionan los paquetes, a saber: lo que llega por el interfaz 1 y se dirige a la red 0 se reenvía. Lo mismo para lo que llega por el interfaz 1 y se dirige a la red 1 y para lo que llega por el interfaz 0 y se dirige a la red 2.
Por último ponemos a 1 el bit que activa el ip-forwarding (muy importante. De lo contrario, el script no hará nada).

Una vez hecho ésto, basta con añadir el script a /etc/init.d/ e introducirlo en el arranque del sistema para que se active siempre.

Mar 05

El gadget de mis sueños está cada vez más cerca. Para ser exactos, ya existe, aunque por ahora es solamente un prototipo.

El cacharro que se ve en el video utiliza tinta electrónica, y la pantalla es táctil y flexible. No se especifica mucho más, así que supondremos que eso es todo.

Si la cosa está “únicamente” así, entonces lo que le falta a ésto para ser el cacharro del que yo hablo es, para empezar, que sea más usable. La pantalla debe ser más flexible, ya que ésta, a pesar de poder doblarse un poquito, parece que es muy frágil. Además es pequeña, y la que describo yo debe ser al menos tamaño A4. Debe tener también un tiempo de respuesta mayor, ya que como se ve en el vídeo, tarda unas décimas en escribir lo que le indicamos, y eso hace que la experiencia sea un poco desagradable. También falta la compatibilidad con ficheros y acceso a un sistema de almacenamiento, a ser posible de forma inalámbrica. Y a modo de pijadita, colorines :P .

En cualquier caso, ahí está ya el prototipo, y ahora, simplemente, es evolucionar algo que ya existe. Hasta el viaje más largo empieza con un primer paso.

Ene 25

Llevo ya un tiempo dándole vueltas a la idea de actualizar mi cacharro. El pobre ya tiene 6 años y medio, y aunque sigue cumpliendo su función perfectamente y moviendo un SO actual (y también muchos juegos actuales, aunque con poca resolución), ya le va tocando jubilarse y dejar paso a las nuevas generaciones.

Tras echar una ojeada a un buen montón de artículos sobre el core i7 (AKA nehalem) me decidí por ese “pequeñín”, que en realidad es todo un grandullón. En realidad, mi economía da como mucho para el de gama “baja”, y entrecomillo “baja” porque el de gama baja se pasa al quad core por la piedra fácilmente, como dirían Matías el humilde & company.

Como no podía ser menos, al procesador lo acompañan una placa base y una gráfica de escándalo, y claro, para alimentar a esa bestia hace falta una nueva fuente de alimentación, porque ésta de 12€ no da ni para pipas. En fin, entre unas cosas y otras, por supuesto, el presupuesto se dispara. Por ahora está tal que así:

Presupuesto PCBOX

Placa base Procesador Disipador Memoria Grafica Fuente

Asus P6T Deluxe OCP Intel Core i7 920 Noctua nh-u12p 1333 kingston 3×1GB Asus 9800GT Glaciator 1GB SLI Tacens valeo II 700W

309€ 269€ 67,86€ 87,56€ 150,36€ 119,97€

TOTAL: 1003,75€

Presupuesto APP

Placa base Procesador Disipador Memoria Grafica Fuente

Asus P6T Deluxe OCP Intel Core i7 920 Asus silent knight II 1333 kingston 3×1GB Asus 9800GT Glaciator 512MB Tacens valeo II 700W

321,2€ 307,2€ 60,7€ 69,3€ 134€ 109,4€

TOTAL: 1001,8€

Ahora cosas a reseñar, que hay varias. Como podéis comprobar, los componentes son los mismos para todo excepto para la gráfica y el disipador. El disipador de PCBOX es un poco más caro, pero es específico para socket 1366, por lo que me convence más que el de APP. Sin embargo el de APP, a pesar de ser genérico, es Asus y tengo muy buena experiencia con todo lo de esa marca. Tendré que consultar para decidirme.

En cuanto a la gráfica, no hay discusión posible. La de APP es 15 euros más barata, pero tiene la mitad de memoria y ATENCIÓN, ese modelo no soporta SLI (o al menos no lo indica), y si en el futuro quiero utilizarlo, no podré. Además, en fin, por 15 euros el doble de memoria. La de PCBOX de cabeza.

Al final, el resultado es casi el mismo en ambos sitios, pero como podéis ver, la mayoría de componentes están sustancialmente más baratos en PCBOX (sobre todo el procesador). Si pillo el componente más barato de cada tienda, exceptuando el disipador y la gráfica, que pillo los de PCBOX, me queda un total de 974,92€. No podéis negar que es un pepinazo de ordenador, pero evidentemente es un coste totalmente inviable para tan sólo esos 6 componentes básicos. Tocará esperar como mínimo hasta verano. En cualquier caso, ya tengo una hoja de cálculo con este presupuesto, para ir viendo poco a poco la evolución de los precios de estos componentes.

Se nota que estamos de exámenes, ¿verdad?

Ene 12

Servidor de descargas con mldonkey (III)

SEPTIMO PROBLEMA: tenía lowID. La solución es sencilla, una redirección de puertos en el router. Sin embargo, no son únicamente los puertos de los servidores a los que nos conectemos. El mldonkey utiliza algunos puertos más para gestionar la conexión (podemos verlos en el fichero de configuración downloads.ini).

Bueno, una vez instalado todo y configurado el mldonkey en el equipo viejo para poder gestionarlo desde toda la red (así se puede poner a bajar desde cualquier ordenador de la casa, y siempre se descarga en el equipo viejo), sólo faltaba un script que pasase ficheros a mi equipo en cuanto estuviesen descargados, por aquello de no llenar aquel disco duro. Como ese ordenador va a estar siempre encendido, lo más cómodo es que el script esté en mi ordenador, y cada cierto tiempo, monte la unidad de red del viejo, compruebe si hay ficheros y, si los hay, los transifera aquí con wget. El script es algo tan sencillo como ésto:

#!/bin/bash

directorio_local="*directorio donde queremos las descargas*"

mkdir $directorio_local/temporal

mount *directorio NFS*
cd *directorio NFS*/incoming/files

for i in * ; do
    cd $directorio_local/temporal

    wget -c ftp://*ip del servidor*/incoming/files/"${i}" --user=*usuario FTP* --password=*password del usuario FTP*

    tamanho1=`ls -l "${i}"`
    tamanho1=`echo $tamanho1 | cut -d\  -f5`
    tamanho2=`ls -l *directorio NFS*/incoming/files/"${i}"`
    tamanho2=`echo $tamanho2 | cut -d\  -f5`

    if [ "$tamanho1" = "$tamanho2" ] ; then
	rm -f *directorio NFS*/incoming/files/"${i}"
	mv "${i}" ../
    fi
done

umount *directorio NFS*

Como veis, en el script se hace uso de todo, del servidor ftp y del directorio NFS. Monta la unidad NFS, comprueba si hay ficheros y luego descarga cada uno por ftp. Para eso es necesario tener un servidor ftp instalado (recordad que lo instalamos al principio “para lo que pudiese hacer falta” :P ). Una vez descargado cada fichero, se comprueba si el tamaño de origen y destino coincide (está entero) y si coinciden, se borra del origen. Además, está implementado un pequeño sistema de seguridad. Los ficheros se descargan inicialmente a un directorio temporal, y cuando la descarga está completa, se mueve al directorio principal. Ésto es así por si reiniciamos el equipo mientras se está copiando algo. De esta forma, sabemos que todo lo que tenemos en el directorio principal está terminado. Tampoco pasa nada por interrumpir una transferencia, porque el parámetro -c del wget continua las descargas incompletas.

Para que se ejecute de vez en cuando, basta con añadirlo al cron (para eso hay múltiples tutoriales por ahí, nada del otro mundo). Además, se puede automatizar un poquito más. Mldonkey permite establecer usuarios, por lo que si queremos colas de descarga separadas, creamos distintos usuarios no administradores, e indicamos un directorio de ficheros descargados distinto para cada uno, indicándole al script de cada usuario que se haga con los ficheros del directorio correspondiente. No es complicado utilizando el gestor web del mldonkey.

En fin, eso es todo. Nada fácil y nada sencillo, pero al menos sí para toda la familia :P

Ene 10

Servidor de descargas con mldonkey (II)

Ahora la fonera tenía millones de posibilidades más de las que tenía antes, y había que configurar todo de nuevo. Me pasé un buen rato hasta que di con una configuración que funcionase, porque según lo que pongamos, perdemos el acceso de unas redes a otras, perdemos el acceso de unas redes a internet, perdemos la posibilidad de conectarnos por ip fija… en fin, una locura. La configuración con la que me funcionó es ésta:

Configuración 1
Aquí podemos ver lo básico. La fonera está configurada para conectarse a la red con una ip fija, con su máscara y sus dns correspondientes. Debajo vemos la configuración del interfaz wifi, tambiéncon su ip fija, y especificando como puerta de enlace la ip del router (de lo contrario, no hay acceso a internet).

Configuración 2
Tenemos varios modos de funcionamiento para la fonera. Como ya hay un router actuando de puerta de enlace, si nos fiamos de la ayuda, deberíamos poner la fonera como router y no como puerta de enlace. Sin embargo, si hacemos ésto perdemos la conexión a internet de todos los dispositivos que se conecten a la fonera. Es necesario configurarla como puerta de enlace.

Configuración 3
En cuanto al modo de funcionamiento, debe ser como punto de acceso. En el tipo de red, podría haber puesto b sin problemas, porque sigue siendo superior a la velocidad del USB del ordenador viejo. Sin embargo, ésto limitaría a todos los demás equipos que se pudiesen conectar, por lo que preferí dejarla en mixed, con los rates en auto.

Configuración 4
Ésto es MUY importante. Debemos desactivar el firewall. De lo contrario, no devuelve ni los pings.

Bueno, una vez configurado el firmware nuevo, intenté dejar las redes como estaban y acceder de una red a la otra. Sorpresa, todavía no funcionaba y recibía el mismo mensaje de paquetes filtrados de antes. Aquí ya tenía un nudo cerebral, pero tras intentar varias cosas, se me ocurrió establecer rutas estáticas, y resultó ser la solución. Establecí ésta en el router:

                       Menu 12.1.1 - Edit IP Static Route

                    Route #: 2
                    Route Name= mldonkey
                    Active= Yes
                    Destination IP Address= 192.168.1.5
                    IP Subnet Mask= 255.255.255.0
                    Gateway IP Address= 192.168.0.2
                    Metric= 1
                    Private= No

Con ésto desde windows ya podía acceder desde una red a la otra, pero desde linux no. Evidentemente el problema residía en que en linux había que establecer la misma ruta para el sistema, que en windows se hace automáticamente (punto a favor). Fácil, simplemente añadir ésto en /etc/network/interfaces, en el campo donde configuráis vuestra tarjeta de red:

up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.2

Esto significa que para acceder a cualquier elemento de la red 1, se debe pasar por 0.2, que es el interfaz cableado de la fonera.

Con ésto ya podía acceder por red desde el equipo nuevo al viejo y viceversa. Ahora había que montar los directorios del viejo en red dentro del nuevo, preferiblemente como una carpeta, para aumentar la comodidad. Ésto se hace de forma muy sencilla con NFS. Basta con seguir este tutorial. Una vez hecho ésto ya podía acceder desde este ordenador al viejo, a sus ficheros y demás.

SEXTO PROBLEMA: al acceder de esta forma e intentar copiar un fichero de un equipo a otro, no me da problemas siempre que los ficheros sean inferiores a 5 megas. Cuando intento transferir ficheros mayores, empieza a transmitir a saco, satura la red… Pensé que podría ser culpa del equipo viejo, porque tiene 10 años y el receptor está conectado a un puerto USB1.0 (ni siquiera es 1.1), por lo que la velocidad de transferencia está limitada a 1.5Mbps (no llega a 200 kB/s), y quizás se saturaba con el flujo entrante. Para descartarlo, probé a transmitir un fichero desde el equipo viejo al nuevo, y la red se saturaba igual, así que el problema es de la red en sí. Estuve indagando mecanismos de control de flujo, para limitar la velocidad, etc, pero no encontré nada que lo pudiese hacer de forma sencilla. Sin embargo me di cuenta de que con wget, podía transferir ficheros de un equipo a otro reduciendo considerablemente la saturación. Va bastante lento, aproximadamente a 1/3 de la velocidad que podría dar de sí la red (va a una media de unos 50 kB/s), pero bueno, al menos funciona, y supongo que con un equipo de hace 10 años, otro de hace 6, una fonera y dos paredes de por medio, no puedo pedir mucho más.

Una vez hecho todo ésto, instalé en el equipo antiguo el mldonkey

Servidor de descargas con mldonkey (IV)

Ene 08

Servidor de descargas con mldonkey (I)

Una vez configurada la red, comprobé que con el otro ordenador tenía internet. Efectivamente, el ordenador viejo ya hacía pings a google como un campeón. Le instalé un servidor ssh para poder controlarlo (sin pantalla ni teclado, sería un poco complicado xD) y un servidor ftp para lo que pudiese hacer falta. Los configuré (para más ayuda, google es el camino) y andando. Luego reinicié el cacharro y configuré la bios para que no parase el arranque ante ningún error (por razones de fecha [ese cacharro tiene la pila de la bios gastada], teclado [press F1 to continue, y no hay teclado] y demás), y una vez hecho todo ésto, intenté acceder desde éste al viejo. Tacháaaaaaaaaaan.

CUARTO PROBLEMA: no había acceso desde una red a la otra. Ningún ordenador de la red 0 podía comunicarse con ninguno de la red 1, ni siquiera para hacer pings (el mensaje era que los paquetes estaban siendo filtrados):

fenix:/home/sparkster# ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
From 192.168.153.1 icmp_seq=1 Packet filtered

Lo extraño es que desde la red 1 sí tenía acceso a la 0. Tras trastear con varias posibilidades (cambiar máscaras de subred [estaban todas a 255.255.255.0], intentar con la misma red [se me iba al carajo la conexión a internet, cosas de la fonera], cambiar la red 0 por la 1 y la 1 por la 2, etc), supuse que el problema de todo estaba en la fonera, así que decidí la solución más salomónica, más peligrosa, que me dio más problemas y que a la larga era la única solución posible para evitar problemas futuros: flashear la fonera.

Los que tengáis una fonera, sabréis que es una mierda. El firmware que trae es una cacadelavaca, con muy pocas posibilidades, muy capado… Además cada vez que enchufas la fonera, se conecta a internet, cambia el firmware ella solita y hace las de dios. Además leí que el firmware que anda rulando por ahí, de dd-wrt, es bastante completo, lo que ya me hizo decidirme de todo.

QUINTO PROBLEMA: todos los tutoriales que hay para flashear la fonera (TODOS, ABSOLUTAMENTE TODOS) están mal, tienen errores, están incompletos… Vamos, que fue una odisea. Pensé que había estropeado la fonera 3 o 4 veces, porque no se resseteaba, no podía acceder a ella, no servía con desenchufarla… Y resulta que era otro paso de esos “complicados” que no figuran en los tutos… No voy a enlazar ningún tutorial porque no recomiendo intentar flashearla a menos que estéis muy familiarizados con redboot, con telnet y con ssh, además de haber flasheado ya cosas con anterioridad, porque es muy fácil que por culpa de toda esa morralla incompleta que hay por ahí os quedéis sin fonera. En cualquier caso, los pasos que tuve que seguir yo para flashearla son los siguientes (no servirá para que hagáis nada, pero os hacéis una idea).

  1. Entrar en la fonera para verificar la versión del firmware. Era una avanzada, por lo que había que downgradearla
  2. Resetear la fonera para downgradear el firmware (pulsando reset entre 30 y 40 segundos)
  3. Una vez reseteada, configurar la interfaz cableada poniéndola con ip fija (ya la tenía así, pero al resetear se pierde la configuración)
  4. No permitir que la fonera se conecte a internet para que no se actualice el firmware, abrir un script que hay por la web para hacerle un chanchullo al cacharro y que me permita acceder por ssh
  5. Acceder por ssh y cambiar unos cuantos parámetros para que me permita el acceso por redboot y que no se actualice el firmware
  6. Acceder por telnet para cargar los ficheros del redboot y alguna cosilla más. Reiniciar la fonera
  7. Acceder por redboot para cargar parte del firmware nuevo
  8. Enchufar la fonera, esperar 5 segundos, abrir una sesión telnet antes de que pasen 8, cancelar el arranque para que no se cuelgue (flipa) y cargar más cosillas del firmware
  9. Reiniciar la fonera con el firmware nuevo

Algunos de esos pasos, como ya dije, estaban incompletos, erróneos o directamente no aparecían en los tutoriales (como esa sesión telnet antes de 8 segundos tras enchufar la fonera), por lo que pensé que la había jodido varias veces (tras algunos de esos pasos intermedios, la fonera deja de funcionar correctamente, y ya no es accesible de forma normal).

Servidor de descargas con mldonkey (III)