Mi B.D. No se conecta externamente
Buenas tardes, hace mucho que no me ponía a programar con mi querido Delphi, y ahora lo hago por que la asociación con la que llevo muchos años, tiene necesidades nuevas y la verdad es que me estoy volviendo loco con ello.
El problema es que necesitan que la B.D. este en un equipo fijo encendido y desde cualquier punto poder acceder a los datos, el tema es que he hecho lo siguiente con un equipo de casa, ya que aún no está el equipo donde se quiere montar este servidor.
Si lo hago desde mi casa de un equipo a otro, o a través de la wifi, conecta perfectamente, pero en cuanto lo hago desde otro rúter, no hay manera, me asigna un fallo de conexión y la verdad es que no se cual es el fallo Uso un IBDatabase, un IBTrasanction y ibdataset como base de datos y el código para conectarme externamente es el siguiente
Estoy probándolo en la versión Comunity edition de Delphi 10.4 Por cierto también he probado con la conexión de la siguiente forma 192.168.25.58/3050:C:\AHINOR\AHINOR.FDB, y dentro del mismo rutér bien, pero desde fura no hay manera, y es un coñazo tener que desplazarme cada dos por tres para hacer las pruebas Como siempre os doy las gracias de antemano, espero me podáis ayudar a ver por donde está el fallo y si existe alguna manera de probarlo dentro de mi red como si fuese dos redes diferentes, para no tener que estar subiendo a la sede que esta bastante lejos de donde vivo ahora. Un saludo y gracias |
Por cierto el motor es el de Firebird 2.5(1) si no recuerdo mal
|
192.168.25.58 es una IP interna/privada:
https://www.ipaddresslocation.org/cidr/ip-ranges.php Lo que significa que no es para acceder "remotamente" por internet, si no a los equipos "locales" de tu red. Necesitas es una IP publica. Pero, el problema es que esa IP publica la requieres que sea "fija". Si tienes un plan de internet donde esta el servidor tienes que mirar si esta esa opción, contratarla o usar un VPN, que en otras palabras seria mejor, si tienes total control sobre la cantidad de equipos a conectar y este no es una app general para el publico. La mejor VPN para usar hoy es https://www.wireguard.com o usar https://tailscale.com que es una version comercial con una capa gratuita y muy simple de usar y te sirve para chequear el asunto. Otra opción es contratar una maquina virtual "en la nube" y asi tienes un servidor remoto con una IP publica que ademas le puedes poner un DNS. |
Gracias lo estudiare, te lo aseguro, pero en gran parte voy perdido, ya que siempre he programado para local y hace años para redes privadas, pero mirare lo de la red pública.
Nuevamente muchas gracias. |
Básicamente, los clientes deben conectar a la IP pública del servidor. Y en el router donde está el servidor debes redireccionar el puerto 3050 a la IP local del mismo.
|
Comunity edition de Delphi 10.4 Dice que las conexiones a bases de datos por Firedac, solo puede ser en forma local.
No se si local se refiere al mismo equipo donde se ejecuta la aplicación o dentro de la red local.. |
No me había fijado, pero sí, la Community tiene "capada" muchas características de uso de base de datos.
|
Buenos días, perdonar que no contestase antes, al final opte por usar DuckDNS ( https://www.duckdns.org/ ), y la verdad es que va fenomenal, no es para uso definitivo, pero si me permite hacer las pruebas que quiero y de momento bien.
Lo único es que me he dado cuenta que como también trabajamos en red privada a la vez, al conectar he tenido que poner un selector , para que elijan si es conexión por red interna o externa. Muchas gracias como siempre. En cuanto a las limitaciones de la versión cumunity, las solvente usando directamente los componentes IBX y no por Firedac. Y uso está versión, ya que mi Delphi 10 no me dejan instalarlo nuevamente y la gente de Danisoft dice que ya lo he instalado demasiadas veces. Por eso odio el software con licencias en red, que tendrá que ver si lo instalo 1 o 1000 veces si son todos equipos míos. Déjemelos que lo que quieren es sacarme unos miles de euros que ni puedo ni quiero pagar, ya que aún programo a la antigua usanza y siempre para mi, para la asociación de la que soy miembro, etc. Y no para ganar dinero. |
^\||/^\||/^\||/
duckdns es el que uso para conectar externamente con mi raspberry. |
La franja horaria es GMT +2. Ahora son las 19:59:33. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi