¿Cómo puedo reenviar solicitudes a mi propia dirección IP a una dirección IP local en mi red (posiblemente con nombre)?

Mi configuración

Tengo un servidor linux corriendo en mi sótano. Tengo actualmente mi ranurador que mira a ese servidor para la búsqueda del DNS, así que puedo utilizar nombrado para spoof un manojo de nombres de dominio para señalar a la dirección local de mi servidor local, 192.168.0.111 . Esto funciona muy bien.

También estoy funcionando Apache y PHP en este servidor, y he trasladado el puerto 80 en mi ranurador a esta máquina, así que mi IP público xx.xxx.x.xx se envía al servidor del sótano.

Este es un gran desarrollo creado para mí, porque puedo desarrollar sitios web en mi red local y tirar de ellos en numerosos dispositivos con una dirección *.mylocal.net . También puedo compartir rápidamente un sitio web en mi IP pública con otros que están fuera de mi red.

Tengo un IP estático, así que hace esto aún más fácil.

El problema

Algunas aplicaciones necesitan tener una URL absoluta. Mi DNS falsificado no funciona fuera de mi red, y tampoco mi dirección IP interna.

Necesito poder tener acceso a los sitios en la misma IP que se accede públicamente, que es mi IP pública: xx.xxx.x.xx


Por alguna razón, no puedo acceder a mi propia dirección IP pública desde mi propia red.

El IP público de mi enrutador es xx.xxx.x.xx , y cuando golpeo xx.xxx.x.xx desde fuera de mi red veo exactamente lo que quiero – mi sitio web de desarrollo. Pero, cuando golpeé xx.xxx.x.xx desde dentro de mi red, la conexión se agota.


Supongo que mi ISP tiene un firewall que bloquea las solicitudes de xx.xxx.x.xx a xx.xxx.x.xx donde el origen y el destino son los mismos IP (o tal vez esto es imposible en cualquier red?)

Entonces, ¿cómo puedo configurar mi red para reenviar la solicitud interna a mi IP pública a la IP local de mi servidor de sótano?

Me gustaría hacer esto dentro del servidor DNS local que configuro, o en mi enrutador, por lo que el cambio se puede aplicar a todos los dispositivos de mi red, y no sólo el servidor del sótano o las ventanas de la tableta / portátil, etc individualmente.

Esto es normal que suceda. El problema no es un firewall a nivel de ISP, sino simplemente su enrutador. Cuando señala una dirección desde su LAN a una IP pública que se encuentra dentro de su LAN, sucede lo siguiente:

Your PC -> Your Router -> Internet -> Your Router -> Your other PC .

El problema es que cuando una conexión a Internet es redirigida de nuevo a su enrutador, el enrutador se confunde porque la conexión ya viene de su enrutador, y como tal no funciona. La única manera de conseguir este funcionamiento es haciendo que el punto de la dirección pública a su red local de inside su red, así que nunca sale de su LAN.

Dado que ya tienes tu servidor DNS en tu servidor linux, agrega tu dominio mylocal.net y todos los subdominios allí, y haz que apunte a tu dirección IP local, 192.168.0.111, y asegúrate de que la cuenta real de mylocal.net realice DNS para el mundo exterior.

He aquí un ejemplo de lo que sucederá:

Supongamos que ha configurado test.mylocal.net para que apunte a su IP pública denominada 12.34.56.78

Ahora, desde fuera de su LAN, hacer ping a test.mylocal.net responderá a 12.34.56.78.

En su servidor DNS Linux, agregue test.mylocal.net y apunte a 192.168.0.111.

Cuando estás dentro de tu red , y entra en test.mylocal.net en tu navegador, sucede lo siguiente:

  • Navegador: ¿Es un host local establecido con test.mylocal.net? No.
  • Navegador, envía la solicitud al servidor DNS local.
  • El servidor DNS local es su servidor DNS linux: ¿está configurado test.mylocal.net? Sí, devuelve 192.168.0.111
  • El navegador ahora se conecta a su servidor web y muestra la página.

Desde fuera de la red:

  • Navegador: ¿Es un host local establecido con test.mylocal.net? No.
  • Navegador, envía la solicitud al servidor DNS local.
  • El servidor DNS local es el enrutador de alguien o el servidor DNS.
  • El servidor DNS local no tiene una entrada específica para test.mylocal.net, devuelve No.
  • El servidor DNS local pregunta al servidor DNS de Internet cuál es el IP.
  • Internet DNS Server ha recibido su test.mylocal.net con una actualización y devuelve el IP público.
  • El navegador no solicita a su IP pública.
  • El navegador se conecta al enrutador.
  • Router reenvía la solicitud a su servidor linux.
  • Servidor Linux sirve la página web.
  • El navegador muestra la página web.

Hola Por favor trate de editar su archivo de host y siga los pasos.

  • Vaya a -> C: \ WINDOWS \ System32 \ drivers \ etc \ hosts
  • Haga clic con el botón derecho en el archivo de hosts, haga clic en Propiedades y desactive la casilla Sólo lectura.
  • A continuación, haga clic en Aceptar.

2) Ahora puede editar el archivo hosts:

Es posible que necesite una cuenta de administrador para editar el archivo hosts. – Abrir NotePad (Vista / 7, Ejecutar como administrador) – Ahora haga clic en "Archivo" y luego "Abrir". – Ahora ingrese el nombre de archivo (Copiar / Pegar todo): C: \ WINDOWS \ System32 \ drivers \ etc \ hosts y haga clic en "Abrir"

  • A continuación, agregue estas líneas al final del archivo hosts:

127.0.0.1 su IP pública o DNS

Gracias..