Pregunta ¿Cómo crear un punto de acceso wifi en la redirección de Windows 7 + a una página web local?


Antes de profundizar en la pregunta, algunos antecedentes rápidos:
He creado un pequeño experimento que funciona junto con una computadora que ejecuta Windows 7. En esta computadora, hay un pequeño servidor web que sirve una página web continuamente actualizada con información de estado proveniente del experimento. Ahora este experimento se mostrará en algunos eventos (imagine MakerFaire, ...) y me encantaría que las personas pudieran usar sus teléfonos inteligentes (o laptops) para mostrar directamente esta página web con la menor configuración de su parte posible.

Básicamente, lo que intento lograr es:

  1. Crear un punto de acceso Wifi usando el adaptador wifi incorporado de la computadora a qué personas se puede conectar (abierto o protegido con contraseña)

  2. Interceptar y redirigir las solicitudes DNS y / o HTTP para que la página web del experimento se muestre cuando abren un navegador (como un portal cautivo)

Hasta ahora he podido lograr el punto 1 usando la característica de red alojada de Windows 7, que funciona muy bien para la parte Wifi AP. Sin embargo, estoy atascado cuando se trata de modificar las respuestas DHCP para proporcionar un servidor DNS personalizado que, a su vez, reenvíe todo el tráfico a mi servidor web: ¿hay alguna forma de hacerlo?

Algunas limitaciones que tengo (de lo contrario sería demasiado fácil ;-)):

  • Estoy atrapado con Windows 7 (sé con Linux que el problema se habría resuelto hace mucho tiempo).
  • La computadora es una máquina independiente, es decir, no hay acceso a otras redes ni a Internet. ¡Lo que también significa que no hay enrutador ni ningún otro dispositivo externo!

¡Alguna ayuda o sugerencia será muy apreciada!


7


origen


Puede darle al ordenador del servidor web una dirección IP estática dentro del segmento de la red (por ejemplo, 192.168.0.200) y luego en la dirección del teléfono inteligente la página web como http://192.168.0.200/webpage. Si teme un conflicto de DHCP, modifique el enrutador para excluir 200 de su rango (es decir, 192.168.0.0-199). Algunos enrutadores usan direcciones de 192.168.1.x. - harrymc
Tal vez eso no es lo suficientemente explícito en mi publicación original, pero no hay enrutador u otro equipo involucrado: ¡solo la PC con Windows con su adaptador Wifi incorporado! - Federico


Respuestas:


  1. Obtener MaraDNS

MaraDNS es un servidor DNS gratuito, liviano y relativamente fácil de configurar para Windows y Linux. Descárguelo de aquí y descomprímalo en alguna carpeta.

  1. Configurar MaraDNS

Abra "secret.txt" y cambie el valor a algo más (caracteres aleatorios).

La configuración MaraDNS está en el archivo "mararc" en el mismo directorio. Los servidores DNS tienen dos conjuntos de funcionalidades. Pueden funcionar como un "servidor de nombres autorizado" o un "servidor de nombres recursivo / de almacenamiento en caché".

Los servidores de nombres autorizados especifican las direcciones IP para los nombres de dominio. Los servidores de nombres recursivos almacenan información de servidores de nombres autorizados y transmiten consultas de forma recursiva.

Configuraremos la funcionalidad autoritativa y recursiva en MaraDNS.

2.1 Configuración autorizada

Configuraremos el servidor para proporcionar nombres autorizados de los nombres de dominio de LAN. Elija cualquier dominio, elegí "local.com" (tenga en cuenta que no podrá acceder al sitio web real "local.com" si elige un nombre de dominio existente).

Agregue líneas de configuración a "mararc" como estas:

csv2 = {}
csv2["local.com."] = "db.lan.txt"

Donde local.com es el nombre de dominio que eligió, y db.lan.txt es el nombre del segundo archivo de configuración que crearemos a continuación (cámbielo si desea nombrar el segundo archivo de configuración).

Cree un nuevo archivo llamado "db.lan.txt" en el mismo directorio que MaraDNS.

Para cada una de las computadoras que desea resolver con un nombre, agregue una línea a "db.lan.txt". Por ejemplo, para dos máquinas, una "dev.local.com" y la otra "blog.local.com", agregue las siguientes líneas:

dev.%       192.168.1.4 ~
blog.%        192.168.1.6 ~

¡Hecho!

2.2 Configuración recursiva

Configuraremos MaraDNS para que pregunte a sus servidores de nombres predeterminados por todos los demás dominios para que pueda resolver todos los demás nombres de dominio a sus direcciones IP correctas.

Averigüe las direcciones de servidor DNS de su ISP. Es probable que se enumeren en la página de estado del enrutador o verificando los detalles en su adaptador de red.

Ahora agregue los servidores DNS de su ISP como servidores ascendentes en "mararc":

upstream_servers = {}
upstream_servers["."] = "xxx.xxx.xxx.xxx, yyy.yyy.yyy.yyy"

Donde xxx.xxx.xxx.xxx y yyy.yyy.yyy.yyy son los servidores DNS de su ISP.

¡Hecho!

  1. Ejecute MaraDNS y pruébelo con askmara.exe

Haga doble clic en "runmara.bat" y deje el servidor en funcionamiento.

Abra un símbolo del sistema, vaya al directorio MaraDNS e intente ejecutar:

askmara.exe Agoogle.com.

y

askmara.exe Ablog.local.com.

Deberías recibir respuestas como esta:

# Querying the server with the IP 127.0.0.1
# Question: Agoogle.com.
google.com. +300 a 74.125.67.100
google.com. +300 a 74.125.53.100
google.com. +300 a 74.125.45.100
# NS replies:
# AR replies:

y:

# Querying the server with the IP 127.0.0.1
# Question: Ablog.local.com.
blog.local.com. +86400 a 192.168.1.6
# NS replies:
#local.com. +86400 ns synth-ip-7f000001.local.com.
# AR replies:
#synth-ip-7f000001.local.com. +86400 a 127.0.0.1

Si tiene problemas con la primera consulta, ha estropeado la configuración recursiva de DNS (¿son correctas las direcciones de su servidor DNS del ISP?) Y si obtiene un error con la segunda consulta, ha estropeado la configuración autorizada.

  1. Cambie MaraDNS para responder a las consultas de su LAN

Cierre la ventana MaraDNS y cambie las dos primeras líneas de "mararc" a algo como:

ipv4_bind_addresses = "192.168.1.2
recursive_acl = "192.168.1.0/24"

Donde 192.168.1.2 es la dirección IP de la computadora en la que se ejecutará el servidor y la parte "192.168.1" de recursive_acl es la misma que en su red (podría ser 192.168.0.0/24).

Inicie MaraDNS nuevamente y déjelo en funcionamiento.

  1. Configure su enrutador para distribuir su nuevo servidor DNS

Abra la interfaz web de su enrutador y encuentre la configuración del servidor DHCP. Debería haber una opción para configurar un servidor DNS. Escriba la dirección IP de la computadora en la que se ejecutará el servidor DNS.

Para cada una de sus computadoras, desconecte la red (por ejemplo, deshabilitándola y habilitándola en Windows, o usando "ifconfig eth0 down" / "ifconfig eth0 up" en Linux).

Eso es todo, ahora debería poder referirse a sus computadoras LAN por sus nombres de dominio.

Fuente


2



¡Hola! Gracias por sugerir un servidor DNS que se ejecuta bajo Windows. Sin embargo, creo que omitió una parte esencial de la pregunta cuando menciona la configuración del servidor DHCP "en el enrutador": la solución completa (servidor wifi AP + DNS + servidor DHCP + servidor web) debe ser "autónomo" en Windows ORDENADOR PERSONAL... - Federico
Entonces, realmente tienes 5 preguntas aquí: ¿cómo configurar un wifi AP en Win7? ¿Cómo se configura un servidor DNS en Win7? ¿Cómo se configura un servidor DHCP en Win7? ¿Cómo se configura un servidor web en Win7? ¿Cómo se integran los 4 elementos para que funcionen juntos? - Everett
No creo que alguna vez haya formulado ninguna de esas preguntas ... La única pregunta es: ¿cómo puedo personalizar las respuestas DHCP (para incluir un servidor DNS personalizado) distribuidas por el servidor DHCP creado en la función Red Hosted de Windows? 7? - Federico
Sí, lo hizo: la solución completa (servidor wifi AP + DNS + servidor DHCP + servidor web) debe ser "autónomo" - Everett
Como te gustan las comillas: "Estoy atascado cuando se trata de modificar las respuestas de DHCP []: ¿hay alguna forma de hacerlo?". Nunca dije que tuviera problemas para configurar un servidor DNS o un servidor web ... - Federico