Ver Mensaje Individual
  #18 (permalink)  
Antiguo 18/10/2012, 13:01
piponito
 
Fecha de Ingreso: octubre-2012
Mensajes: 7
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Acceso remoto USB con TP Link Router wifi TL-WR2543ND

El puerto no está cerrado por el ISP. Ya hemos comentado aquí que sí que podemos acceder al FTP de nuestro router mediante un cliente web FTP.

También hemos comentado aquí que en la página http://ftptest.net/ puedes comprobar que desde la parte WAN es accesible. Y también desde http://www.canyouseeme.org/ puedes ver si el puerto 21 está abierto.

Explicación de por qué no se puede acceder al FTP con la dirección pública (créditos a xavisuper de bandaancha.eu):

El protocolo FTP usa dos canales TCP: uno de control, que se abre desde un puerto efímero del cliente (llamémosle TCP/xxxx) hacia el puerto TCP/21 del servidor, y uno de datos, que por defecto se abre desde el puerto TCP/20 del servidor hacia el cliente, al mismo puerto efímero (TCP/xxxx) .
Normalmente con el canal de control no hay problemas: puedes abrir conexión y lanzar comandos.
El problema del FTP con el NAT y con los firewall viene a la hora de abrir el canal de datos (por donde se transmite un fichero, y tb. por donde se transmite un DIR).

El protocolo FTP tiene dos comandos, PORT y PASV, que no son de uso obligado, pero la mayoría de clientes FTP envía sin participación del usuario. En ambos comandos (en un caso en el paquete de ida, y en el otro en la respuesta), se comunica al interlocutor la dirección IP de la máquina y un puerto escogido aleatoriamente, para abrir el canal de datos. Ya no se usa por tanto el puerto TCP/20. Esto puede ser un problema para los firewall's, porque no saben, en un momento dado, que puerto deben abrir para un canal de datos.

El problema del NAT está en que los mecanismos de NAT traducen direcciones de la cabecera IP, pero no miran dentro del paquete. Si como hemos dicho, los comandos PORT y PASV comunican una dirección IP, ésta será una IP privada, previa al NAT, y llegará al otro extremo sin traducir, por lo que este otro extremo intentará abrir el canal de datos contra una IP equivocada.

Por lo general, en routers y firewalls buenos, estos problemas se solucionan con ALG's (Application Level Gateway), que son capaces de reconocer tráfico FTP (entre otros), buscar dentro de los paquetes los comandos PORT y PASV, abrir el puerto que ahí se diga, y traducir convenientemente la dirección IP. De esta forma, sí funcionará el FTP en entornos donde hay firewalls y NAT's.


Y como he dicho arriba:

La salvedad es que SÍ se podría hacer eso siempre y cuando tu router tenga una función llamada NAT Loopback. Por ejemplo los firmwares DD-WRT sí que implementan esa función.

Un saludo.