PDA

Ver la Versión Completa : Conectando a través de Internet


muli
10-01-2004, 01:57:16
Bueno, ya he visto en el historico que existe bastante documentación sobre este tema, pero resulta que el problema que voy a comentar no lo he visto:

Tengo dos ordenadores con W2000 sp3, conectados a traves de una red normal, en uno de ellos el 192.168.1.3 y en la unidad I: en la carpeta "programa" estan los datos. Desde el otro ordenador introduzco la dirección 192.168.1.3:I:\Programa\Datos.GDB y funciona perfectamente.


El Asunto es el siguiente acabo de contratar ADSL con telefonica la contrato con Router y con Ip dinamica(la fija es mas cara), en la configuración del router abro el puerto 3050 lo pongo como TCP y lo direcciono a la dirección 192.168.1.3.
Si voy a alguna página web donde me dan las ips, me sale como IP Real: xx.xx.xxx.xxx y como IP por Proxy yy.yy.y.yy. Pues resulta que desde el ordenador de red al intentar acceder a la BD, con la siguiente ruta:xx.xx.xxx.xxx:192.168.1.3:I:\Programa\Datos.GDB
me dice:


UNABLE TO COMPLETE NETWORK REQUEST TO HOST "XX.XX.XXX.XXX"
Fail to establish a connection
No se ha podido establecer la conexion ya que el equipo de destino ha denegado activamente su conexión

Alguna ayuda por favor.

PD: Si hago un netstat -an desde la linea de comando en la linea referente al puerto 3050 me pone lo siguiente:

Proto Direccion Local Direccion Remota Estado
TCP 0.0.0.0:3050 0.0.0.0:0 LISTENING

kinobi
10-01-2004, 15:01:00
Hola,

muli comentó:
Si voy a alguna página web donde me dan las ips, me sale como IP Real: xx.xx.xxx.xxx y como IP por Proxy yy.yy.y.yy. Pues resulta que desde el ordenador de red al intentar acceder a la BD, con la siguiente ruta:xx.xx.xxx.xxx:192.168.1.3:I:\Programa\Datos.GDB
me dice:

Para conexiones desde máquinas que estén dentro de la red 192.168.1.x tendrás que utilizar la cadena de conexión: 192.168.1.3:I:\Programa\Datos.GDB

Para conexiones externas tendrás que utilizar la IP de la máquina (bien sea la IP de una de tus máquinas o un router; dependerá de tu configuración):
x.x.x.x:I:\Programa\Datos.GDB
Después, desde esa máquina o router, tendrás que hacer la traducción a la IP y puerto que dentro de tu red local está ejecutando el servidor InterBase. Es el mecanismo llamado NAT (Network Address Translation). Una búsqueda en Google te dará abundante documentación sobre el tema.

Saludos.

muli
11-01-2004, 17:47:49
Nada todo lo que encuentro sobre Nat en la Red, está documentado sobre Linux, ya no se que hacer.

Gracias.

guillotmarc
11-01-2004, 18:39:55
Hola.

Busca tu modelo de router. Deberias encontrar el manual del fabricante (en la web del fabricante o en un buscador como el google). En él encontrarás como configurar el protocolo NAT, para que todas las peticiones al puerto 3050 del router sean desviadas a la maquina donde tienes el Servidor de Interbase.

Saludos.

kinobi
11-01-2004, 18:56:55
Hola,

Nada todo lo que encuentro sobre Nat en la Red, está documentado sobre Linux, ya no se que hacer.

además de lo que comenta Marc, NAT es independiente del sistema operativo donde esté corriendo la máquina a la que rediriges el tráfico. Lo único que necesitas es que esa máquina ejecute una pila de protocolos TCP/IP, sea en Windows, en Linux, o en el sistema operativo que sea.

En resumen:

1. La redirección (a través de NAT) tendrás que hacerla en el router que te conecta a internet. Como ha comentado Marc, dependerá del router (o la máquina que haga tal función) su configuración.

2. El equipo al que se redirige el tráfico dentro de la red local, tiene que tener como gateway la dirección IP del router. (no precisa más configuración).

Saludos.

muli
11-01-2004, 20:55:17
Bueno, pues mirar en la configuracion del router he encontrado un apartado donde pone:
Advanced NAT Configuration... pincho ahí, y me lleva a un cuadro donde están todos los puertos que tengo abiertos en el router de la siguiente forma
------
Reserved Mappings
Global IP XX.XX.XXX.XXX ... Direccion ip que pongo en la ruta para llegar a la bd
Address Internal IP 192.168.1.3 .. equipo donde está la BD
Address Transport Type tcp
Port Number 3050

yo pienso que lo tengo bien, ya no se que hacer.
Y si como dice Kinobi, en la gateway del 192.168.1.3 tengo la ip del router.

Tendré que hacer algo en Interbase?

Tendré que hacer algo en el S.O. W2000 prof sp3?

kinobi
11-01-2004, 21:00:56
Una pregunta: si tu dirección IP externa es dinámica, tal como comentaste en tu primer mensaje en el hilo, ¿cómo sabes desde el equipo remoto qué IP debes poner en la cadena de conexión?

Saludos.

cauce
11-01-2004, 22:23:55
Esta es la política de Telefónica para las ADSL sin IP fija. No solo pasas através del proxy cache, sino de además no te aseguran la apertura de puertos en sentido descendente (internet->router) salvo que contrates una IP fija, con lo cual ya puedes configurar bien NAT el el router que no te sirve de nada.

Eso fue lo que me dijo un técnico de Telefónica cuando llamé para pedir incidencia por un problema similar en un cliente al cuan queríamos redireccionar el puerto 80 y el 22 del router a un servidor de su intranet. Me comunicaron que sin IP fija no abrían los puertos.

No obstante, en conexiones ADSL con puertos abiertos si he probado a conectar una aplicación en remoto a Interbase/Firebird enrutando el puerto 3050 y te diré que el rendimiento es pésimo. Te bloqueará la base de datos si usas un dbgrid, ya que consume mucho tráfico (ignoro porqué). Sí resulta más eficiente utilizar ibsql y apañarte la salida de texto en pantalla mediante grids simples o cualquier otro componente de texto.

En definitiva, una aplicación para intranet que no haya sido concebida desde su origen para conexiones lentas tipo ADSL, a mi parecer que no resultan operativas en dicho entorno, o al menos esa ha sido mi experiencia puntual (vamos que no he estudiado el tema en profunidad).

kinobi
11-01-2004, 22:48:41
Hola,

Esta es la política de Telefónica para las ADSL sin IP fija.
Hace tiempo que tomaron esa postura. A los clientes con cierta antigüedad, como es mi caso (más de dos años y medio) nos siguen manteniendo la IP fija (sin cláusulas adicionales). Eso sí, aunque nunca me la han cambiado, tampoco tengo asegurado (por contrato) que vaya a ser así siempre. Es más, en cuanto al ancho de banda, sólo garantizan un mínimo, muy mínimo (no tengo ahora mismo el dato a mano), porcentaje del ancho de banda contratado.

No solo pasas através del proxy cache,
Pero el proxy sólo es para determinados servicios. En el caso del puerto InterBase, dudo mucho que estén cacheando el tráfico.

sino de además no te aseguran la apertura de puertos en sentido descendente (internet->router) salvo que contrates una IP fija, con lo cual ya puedes configurar bien NAT el el router que no te sirve de nada.
Aunque no es política sólo de Telefónica, otros operadores (especialmente de cable) hacen lo mismo.

No obstante, en conexiones ADSL con puertos abiertos si he probado a conectar una aplicación en remoto a Interbase/Firebird enrutando el puerto 3050 y te diré que el rendimiento es pésimo.
Como apuntas más abajo, una aplicación diseñada para el ancho de banda de una red local tiene un rendimiento inaceptable cuando "se baja" al ancho de banda de una conexión remota (incluso con la conexión de 2 Mbps).

Te bloqueará la base de datos si usas un dbgrid, ya que consume mucho tráfico (ignoro porqué).
Por la sincronización de los datos que visualiza el control con los datos del Dataset asociado y el servidor de datos en el back-end. Los controles enlazados a datos (en general) no fueron diseñados teniendo en mente que se fuesen a utilizar en aplicaciones cliente/servidor sobre líneas de comunicaciones tan "lentas" (ojo a las comillas).

Saludos.

muli
11-01-2004, 23:59:34
Vale tomada nota acerca de los puertos en Ip dinamica. Y entonces que estructura recomendais para una aplicación que tiene que estar conectada entre coruña madrid y barcelona por ejemplo. Claro tendría que ser a través de internet

Saudiños a todos.

kinobi
12-01-2004, 00:48:09
Hola,

al ser una cuestión tan genérica, te remito a un hilo de hace unos días donde se discutió el tema en el foro "Conexión con bases de datos". Esta es la dirección al hilo:

http://www.clubdelphi.com/foros/showthread.php?t=6435

Saludos.

Jan
12-01-2004, 15:45:08
Yo he hecho prueba através de ADSL usando Datasnap, y limitando el número de registros que traes simultaneamente, el resultado era aceptable. Ten encuenta que si usas ADSL en las dos partes y el envío, no recuerdo si estaba limitado a 64Kbps o así, entonces este ancho de banda es el total del que vas a disponer para la conexión, es decir, los 256 Kbps no te valen para nada.

Por cierto que, no sé que ocurre con otros operadores de cable, pero ONO no te cierra ningún puerto.