.png)
Estoy usando una configuración de dos enrutadores con el siguiente hardware:
Netgear WNDR3400V2 - 192.168.1.1 - DD-WRT
Belkin F9K1105 v1 - 192.168.1.50 - FW estándar
Belkin está configurado como un conmutador al que tengo conectado un servidor web.
[Internet] -> Netgear -> Belkin -> Servidor
Cuando me conecto internamente, registra mi IP adecuadamente (por ejemplo, 192.168.1.51) Al conectarmeexternamente, todas las IP se ven como 192.168.1.1 (la IP del enrutador principal)
Esto, por supuesto, funciona bien cuando no está detrás de un segundo enrutador, pero desafortunadamente mi configuración actual es por necesidad.
Me preguntaba si podría obtener alguna instrucción específica sobre cómo poder "ver" correctamente las direcciones IP externas del servidor.
¡Gracias de antemano!
Respuesta1
El problema parece estar en las reglas predeterminadas de iptables que configura DD-WRT.
Eliminar la línea MASQUERADE en POSTROUTING soluciona el problema, las conexiones externas ya no aparecen como la IP interna de mi enrutador principal.
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE 0 -- anywhere anywhere
SNAT 0 -- 192.168.1.0/24 anywhere to:1.1.1.1
RETURN 0 -- anywhere anywhere PKTTYPE = broadcast
Esto elimina el primer elemento de la lista anterior:
iptables -t nat -D POSTROUTING 1
Puede encontrar más información sobre la solución anterior aquí:https://www.reddit.com/r/HomeNetworking/comments/40swj2/firewall_log_shows_router_ip_for_all_incoming/cyxaz3t/
Ahora todo debería funcionar bien.
Nota al margen: si ya no puede acceder a sus servicios a través de una IP externa desde una IP interna, es posible que deba realizar una o ambas de las siguientes acciones (yo requerí ambas):
Asegúrese de desmarcar "Filtrar redirección WAN NAT" en "DD-WRT -> Seguridad -> Firewall"
Ejecute lo siguiente:
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.0/24 -j MASQUERADE
Reemplazar ambas apariciones de 192.168.1.0/24 con lo que sea relevante para su configuración.
Para hacerlo más fácil, recomiendo simplemente guardarlo en el script del Firewall en "Administración -> Comandos".
iptables -t nat -D POSTROUTING 1
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.0/24 -j MASQUERADE