Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16/04/2008, 09:35
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Re: IP externa y localhost

La web es internet. Se denomina intranet a las redes internas de las empresas, por ejemplo, que pueden tener o no conexión directa a internet, sea por proxies o routers, que hacer de "puerta de entrada" a la intranet.
En las intranets, cada PC tiene una IP, que puede ser fija o no. Si es dinámica (no fija) el server de red usa habitualmente DHCP, que es el protocolo que permite que las PC cambien constantemente la IP sin por eso dejar de ser reconocidas en la red interna. En ese caso, las máquinas se reconocen por el "nombre" del equipo y el grupo de trabajo.
Si la IP interna es fija, cada máquina tiene una sola IP, y las subredes tienen direcciones distintas, pero en todos los casos comienzan con 192.168.X.X, que es la característica de las intranets. En ese caso debe también definirse la subnetmask, gateway y broadcast.

La cosa es simple, pero hay que meterse en el corazón de las redes:

1. "localhost" es un alias para tu propia PC. El server de MySQL está instalado en ella y las llamadas a MySQL nunca salen de tu propia máquina. De hecho siguen funcionando aunque desonectes el cable de red de tu PC. Ponerle "localhost" o 127.0.0.1, o 127.0.0.45, dará el mismo resultado. Pero si la página PHP tiene una llamada a "localhost", y el servidor es remoto, la página llamara a la PC donde se está ejecutando... que no es donde esta el servidor.

2. Para poder conectarse entre dos máquinas en forma directa o les pones IP fija o les dejas IP dinámica. Si pones IP fija tendría que ser, por ejemplo: 127.0.0.1 a una y 127.0.0.2 a la otra, con Gateway 127.0.0.0 y broadcast 127.255.225.255.

3. SI las máquinas se conectan con un hub o switch intermedio, es mas o menos lo mismo que el anterior.

4. Si las máquinas se conectan a través de un router, la cosa cambia. Si están del mismo lado de subred, no hay problema, pero si están en subredes diferentes, las políticas del router deben permitir el uso del puerto 3306 (que el router controla entre subredes) y permitir también el enlace entre subredes.
5. Si la PC server será usada para comunicarse con la web, existen ciertos detalles:
a) Puede usarse un proxy.
b) Puede usarse una IP pública distinta de la de la empresa.
c) Puede usarse la IP de la empresa, de modo que la página y el server de MySQL actúen de proxy.

En cualquier caso, la IP que debes poner en el string de conexión tiene que estar dentro de alguno de estos ejemplos

Finalmente, si la página y la base están en un servidor (host) determinado, los administradores del host te deben indicar cuál es la IP que usará, ya que el host es el que realizará el enrutamiento de las solicitudes.

Última edición por gnzsoloyo; 16/04/2008 a las 10:03