Como acceder a un servidor casero HTTP, FTP o NAS con IP din

Perfil del autor

Iniciado por MigueK
En Manuales e instructivos Más de un año


Topic en Manuales e instructivos N°38
Público Privacidad
Normal Tipo
1 Respuestas
133 Visitas
2 Puntos
VERIFICADO
MigueK Moderador 97 6
Topics 23
Respuestas 91
MigueK Moderador
Más de un año
Como acceder a un servidor casero HTTP, FTP o NAS con IP din


Método alternativo a servicios como NO IP o DynDNS para apuntar siempre a nuestro ROUTER y poder acceder a nuestros servidor casero HTTP, FTP o NAS aunque tengamos IP dinámica.Con este sistema si ya tenemos un hosting gratuito o de pago no necesitaremos darnos de alta en ningún servicio como NO IP o DynDNS ni instalar ninguno de sus programas en nuestro servidor.Algunas de las ventajas son:
– No necesitas darte de alta en servicios como NO IP
– NO necesitas instalar ningún programa del cual no sabes que hace ni que código tiene.
– Es completamente trasparente porque controlas y conoces el código de todos tus archivos.
– Que te lo has hecho tu mismo.
 
Archivo llamador.swf  (Poner en el menu inicio del servidor casero con windows y especificar la ruta del archivo dameip.php)

//1000mls x 60s=60000mls   60000mls x 5m=300000mls
var timer:Timer = new Timer(300000);

timer.addEventListener(TimerEvent.TIMER, llamar);

function llamar(e:Event=null):void {
var loader:URLLoader = new URLLoader();
loader.load(new URLRequest("http://www.tudominio.com/dameip.php?user=user&pass=1234"));
}
timer.start();
llamar();


Archivo dameip.php (Poner en un directorio del hosting y especificar la ruta del archivo ip.txt)

 <?php
/*
Los proxys van añadiendo al final de la cabecera
las direcciones ip que van "ocultando".

Para localizar la ip real del usuario se comienza
a mirar por el principio hasta encontrar una
dirección ip que no sea del rango privado.

En caso de no encontrarse ninguna se toma como valor el REMOTE_ADDR
*/
if($_GET["user"]=="user" && $_GET["pass"]=="1234"){

if( $_SERVER['HTTP_X_FORWARDED_FOR'] != '' ){
$client_ip =( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] :"unknown" );
$entries = split('[, ]', $_SERVER['HTTP_X_FORWARDED_FOR']);
reset($entries);
while (list(, $entry) = each($entries)){
$entry = trim($entry);
if ( preg_match("/^([09]+\\.[09]+\\.[09]+\\.[09]+)/",$entry,$ip_list) ){
$private_ip = array(
'/^0\\./',
'/^127\\.0\\.0\\.1/',
'/^192\\.168\\..*/',
'/^172\\.((1[69])|(
2[09])|(
3[01]))\\..*/',
'/^10\\..*/');
$found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
if ($client_ip != $found_ip){
$client_ip = $found_ip;
break;
}
}
}
}else{
$client_ip =( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR']:( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR']:"unknown" );
}

/*
w Apertura para sólo escritura; coloca el puntero al principio del fichero
y lo trunca a longitud cero. Si el fichero no existiera lo intenta crear
*/
$fp = fopen('ip.txt', "w");
fwrite ($fp,$client_ip);
fclose($fp);
}
?>


Archivo index.php (Poner en un directorio del hosting y especificar la ruta del archivo ip.txt)

 <?php
$fp = fopen('ip.txt', "r");
$ip = fread($fp,filesize('ip.txt'));
fclose($fp);
header ("Location: http://".$ip);
?>


Por ultimo crear el archivo ip.txt en el directorio deseado del hosting y darle atributos chmod 666


Enlace al manual original

2 puntos
1
Loading...

¿Como comentar?

Para poder comentar necesitas estar Registrado.


Si ya eres miembro ingresa a tu cuenta.