XMEN BLOGGER: April 2010

Tuesday, April 13, 2010

Acceso a la PlayStationNetwork con v3.15 desde el NSLU2


Es fácil, disponer de un equipo con Linux e instalarle un DNS y un Servidor Web como pueden ser el Bind y el Apache...

Yo he tirado de mi NSLU2 para montar este "salto" para "enañar" a nuestra PS3...

El modo de funcionamiento es sencillo, en la PS3, pones como servidor DNS la ip de nuestro Linux... Entonces, todas las peticiones de resolución de Nombres de nuestra PS3 que realiza a la web de la PlayStationNetwork para saber que versión es la actual, nuestro nuevo servidor DNS "transparente" con Bind, la dirige a nuestro Apache que contiene los datos de actualización correspondientes a la versión antigua... En nuestro caso la v3.15, logicamente, tiene que ser la misma versión que tiene nuestra PS3!!!!

Yo tengo montado en mi NSLU2, la distribución Debian Lenny para ARMv5... Vaya, el procesador del NSLU2...

Por tanto usaré los propios paquetes de Debian para realizar la instalación... Tiraré del apt-get para instalar Bind9 y Thttpd, que es un servidor Web más ligerito que el Apache...

Los pasos a seguir son los siguientes...

Instalamos el Bind9 y el Thttpd:

# apt-get -y install bind9 thttpd

Vamos al directorio donde se encuentra nuestro Bind instalado y nos descargamos la entrada de nuestra resolución DNS de la PlayStationNetwork:

# cd /var/lib/bind
# wget http://www.xs4all.nl/~graver1/ps3/ps3.update.playstation.net.hosts

Modificamos la entrada para añadir la ip de nuestro equipo, es importante que la ip sea fija... En mi caso, mi NSLU2 tiene la 192.168.5.53:

# vi ps3.update.playstation.net.hosts

$ttl 38400
ps3.update.playstation.net. IN SOA ps3proxy. me (
1
10800
3600
604800
38400 )
ps3.update.playstation.net. IN NS ps3proxy.
*.ps3.update.playstation.net. IN A 192.168.5.53


Editamos el fichero de configuración del Bind añadiendo lo siguiente:
# vi /etc/bind/named.conf
zone "ps3.update.playstation.net" {
type master;
file "/var/lib/bind/ps3.update.playstation.net.hosts";
};


Reiniciamos el servicio del Bind:

# rndc reload
server reload successful

Ahora añadimos los ficheros de la web de la PSN que busca nuestra PS3 para saber si esta actualizada o no a la ruta de nuestro servidor web:

# cd /var/www
# wget http://www.xs4all.nl/~graver1/ps3/ps3update.tar.bz2
# tar xf ps3update.tar.bz2


Y ya esta listo para funcionar... Sólo queda cambiar las propiedades de red de nuestra PS3 y decirle que su DNS es nuestro Linux!!!!

Por si no sabeis como hacerlo...

En la PS3, vamos a Ajustes -> Ajustes de red -> Ajustes de conexión a internet.
Seleccionamos Personalizar ajustes, en ajustes de dirección poner lo que muestra por defecto (seguramente automatica), y cuando llegemos a la opción Ajustes de DNS, elegimos manual, e introducimos la ip de nuestro Linux en el DNS primario (es un servidor DNS transparente que "engaña" a la Play para poderse conectar a la PLayStationNetwork), en el DNS secundario lo podemos dejar en blanco (con todo 0.0.0.0) -> MTU en automatico -> No usar Proxy -> y "Usar UPnP". Ya queda Listo!!!!

Decir, que con esta configuración, se puede acceder a todos los contenidos de la PSN, descargar Demos y jugar Online... Eso si, si las demos descargadas piden la v3.21, no se podrá jugar...