Error de configuracion? No funciona Load Balancer



  • Buenas gente,
    La situacion es la siguiente:
    tengo 3 conexiones a internet: un pppoe, un cablemodem y un enlace Telmex con ips fijas.
    Hice 2 pools en load balancer uno balanceado con las 3 conexiones y un fileover entre el pppoe y telmex. En todos los casos el monitor es el gateway de cada enlace

    Reglas:

    Port forward:
    telmex- tcp/udp-  2222- ip servidor interno- 22(ssh)

    Rules: FIrewall
    interface telmex
    **tcp/udp- - - ip servidor interno- 22(ssh)- * - (el gateway es el default)
    interface lan
    ***- alias que contiene al servidor interno- *- - - gateway del enlace telmex-

    el gateway por defecto del pfsense es la conexion pppoe.

    El error es:
    Si se cae la conexion pppoe no me responde el servidor interno, en los logs veo el ingreso hacia el servidor interno pero no sale sin embargo el servidor interno tiene internet y al hacer un traceroute sale como lo indica la regla de la interface lan (por el gateway del enlace telmex). Probe lo que me parecia que era el error

    A
    **tcp/udp- - - ip servidor interno- 22(ssh)- * - (el gateway es el default)

    lo cambie por
    **tcp/udp- - - ip servidor interno- 22(ssh)- gateway failover -
    **tcp/udp- - - ip servidor interno- 22(ssh)- gateway balanceado -
    y por ultimo use
    **tcp/udp- - - ip servidor interno- 22(ssh)- gateway telmex -

    lo demas quedo igual, y ninguna funciono (no reinicie el servidor).

    Otra duda relacionada:
    No logro entender bien este comentario que se encuentra junto a la definicion del gateway  al crear la regla "Leave as 'default' to use the system routing table. Or choose a gateway to utilize policy based routing." si dejo el default usa el gateway de la interface por la que entro ??lo que indicaria que esta regla estaria bien **tcp/udp- - - ip servidor interno- 22(ssh)- * - (el gateway es el default)
    Espero que se entienda si no cualquier cosa avisen y mando lo que necesiten.

    Saludos
    Nicolas



  • ¡Hola!

    Si lo que quieres es acceder a tu servidor desde Internet ahí no interviene para nada el balanceo.

    El balanceo es siempre saliente, no entrante.

    Para acceder a tu servidor desde Internet tienes que emplear las distintas IPs públicas que tengas, a menos que dispongas de un proveedor que te mantenga un pool de DNS. Es decir, que un mismo nombre se resuelva con un grupo de IPs, como hace los "grandes": google.com, yahoo.com

    Saludos,

    Josep Pujadas



  • Josep, el tema es que en el enlace telmex sirvo unas paginas web que estan saliendo por el enlace de las ip fijas sin problema (el servidor DNS lo tengo aca mismo en la misma salida que las paginas web), puedo ingresar lo mas bien a estas paginas desde fuera de la empresa pero si se cae mi conexion pppoe que no tiene otra relacion con telmex que por el load balancer, ya no puedo entrar a dichas paginas que sirvo por el otro enlace.
    En resumen, si se cae el pppoe, no puedo ingresar a las web que estan a traves de la conexion telmex.

    saludos



  • Perdona, pero sigo sin terminar de entender el problema…

    ¿Tienes un servidor web y es visible desde fuera a través de una IP dinámica?

    O al revés, ¿vas a unas páginas de Internet empleando una IP dinámica?



  • Tengo un servidor web que es visible desde afuera a traves de una IP FIJA (telmex), pero si se me cae el enlace pppoe (telefonica) ya no pueden acceder al servidor web (el enlace telmex sigue funcionando ok, el caido es telefonica ).

    Gracias Josep por la ayuda.

    saludos
    Nicolas



  • Ok, entiendo…

    Pon una regla en LAN con origen la IP del servidor y destino cualquiera empleando la puerta de enlace que tiene la IP fija.

    La regla tiene que estar por delante de las de balanceo.

    Creo que hay un problema de enrutamiento. No debería pasar, pero es bastante evidente que hay peticiones que entran por la IP fija y acaban saliendo (?) por la no fija.

    ¿El cableado de la instalación es claro? Quiero decir si físicamente todas las WAN están separadas...

    A ver cómo va haciendo esto.

    Saludos,

    Josep Pujadas



  • Hola Josep
    tengo 2 lans una para los usuarios comunes y otras para los servidores una llamada lan y la otra lan192 (esta ultima la de los servidores)

    En la lan tengo una regla para un grupo (alias) especial de usuarios que salen por el gateway de la ip fija
    y otra para que el resto salga por el balanceo

    En la lan192 (la de los servidores) tengo un alias donde estan todos los servidores para que salgan por el gateway de la ip fija

    en cuanto al cableado es bastante claro el equipo que corre pfsense tiene 5 placas de red una para la lan192, una para lan, una para wan (pppoe), una para ip fija (telmex) y una ultima para otro enlace de cablemodem. Hay un switch al cual van las placas de red de las dos lan, en cuanto a las conexiones a internet van directamente a las placas de red del equipo que corre pfsense.

    Anteriormente esto no pasaba, dado el problema anterior que tenia (se reseteaba el equipo, era una memoria gracias por tu consejo en ese caso tambien) hice varias exportaciones de la configuracion. La configuracion original la hice sobre la version 1.2.2 y ahora estoy corriendo la 1.2.3.

    No le encuentro logica al error ya que la misma configuracion estaba funcionando, el unico cambio que hice fue rearmar los pools de load balancer, solo tengo un proxy corriendo.
    Solo para descartar voy a reiniciar los switch como para que limpien las tablas de enrutamiento.

    una ultima consulta: las reglas del port forward con origen la interface de ip fija me crea una regla de firewall en esa interface de ip fija, en esas reglas de firewall creadas automaticamente el gateway es el default, eso es correcto verdad?

    saludos Josep



  • Hay un switch al cual van las placas de red de las dos lan

    ¡Ojo con esto! Puede ser el problema…

    Cuando se comparte switch hay que estar muy seguro de no estar mezclando redes. Tienes que tener dos rangos distintos y asegurarte que en cada LAN las reglas no dejen entrar el tráfico de la otra LAN. Sería ideal tener cada LAN en un switch separado o levantar VLAN en el switch, aunque esto último tampoco me gusta demasiado. Prefiero los cables separados...

    La configuracion original la hice sobre la version 1.2.2 y ahora estoy corriendo la 1.2.3.

    El balanceo cambió de 1.2.2 a 1.2.3. Antes iba con un daemon llamado slbd y ahora es el propio PF (Packet Filter) quien se ocupa del balanceo. Deberías comprobar que no tienes ningún proceso llamado slbd, a través de la consola:

    ps -aux | grep slbd

    Digo esto porque en mi caso me encontré con restos de slbd… al pasar de 1.2.2 a 1.2.3. La solución fue arreglar "a mano" la porquería que había quedado en la sección del load balancer de config.xml.

    Saludos,

    Josep Pujadas



  • Buenas el error se sigue manteniendo

    Tienes que tener dos rangos distintos y asegurarte que en cada LAN las reglas no dejen entrar el tráfico de la otra LAN

    reinicie switch, las lan estan en dos rangos distintos (una 192 y la otra 10) hay equipos que tienen que pasar de una lan a otro asi que hay reglas que permiten el paso.

    El balanceo cambió de 1.2.2 a 1.2.3. Antes iba con un daemon llamado slbd y ahora es el propio PF (Packet Filter) quien se ocupa del balanceo. Deberías comprobar que no tienes ningún proceso llamado slbd, a través de la consola:

    volvi a generar toda la configuracion desde 0 sobre la nueva version 1.2.3 para asegurarme que no quede sucio el archivo de configuracion

    Creo que no hay otra posibilidad que un error de ruteo, puede que tenga mal hecha las reglas (quizas siempre estuvieron mal pero como nunca se me corto el pppoe nunca se hizo evidente el error).

    Necesitaria un ejemplo para clarificar
    tengo una ip fija externa, dentro de la lan hay un servidor web xxx.xxx.xxx.xxx, la mision es que la web quede visible siempre por esa ip fija pese a que se caiga el enlace pppoe (este es el gateway por defecto)

    saludos y gracias por la ayuda
    Nicolas



  • Agrego un poco de info a ver si sirve

    el servidor que sale por la ip fija, si desconecto el pppoe, siguen navegando, no se puede acceder a la pagina (error original) pero puedo navegar desde el servidor.

    si cambio los gateways en las reglas de firewall puedo ver el cambio de ip (por lo tanto del gateway) en www.whatismyip.com y por ssh logueandome en un servidor remoto (last login from …)

    alcanza esto para descartar firewall rules?

    con respecto al nat outbound el servidor deberia salir con una ip (de las 3 ip,s fijas que tiene la interface) pero cuando lo chequeo en whatismyip.com me va cambiando entre las 3.

    No se me ocurre que mas probar. Voy a hacer un downgrade a la version 1.2.2 a ver si funciona mi nuevo archivo de configuracion o si no pruebo la configuracion vieja para asegurarme que eso estaba funcioando bien.

    saludos



  • con respecto al nat outbound el servidor deberia salir con una ip (de las 3 ip,s fijas que tiene la interface) pero cuando lo chequeo en whatismyip.com me va cambiando entre las 3

    Pienso que no puedes tener al servidor en balanceo de dentro hacia afuera. Hay que asegurar su ruta al salir.

    Pon una regla para el servidor por delante de la de balanceo, especificando que sale por la gateway de IP fija.

    En http://forum.pfsense.org/index.php/topic,20382.msg104729.html#msg104729 hay un ejemplo, asegurando rutas en el caso de tener routers ADSL detrás de pfSense. Creo que el problema es similar…

    Saludos,

    Josep Pujadas



  • Pienso que no puedes tener al servidor en balanceo de dentro hacia afuera. Hay que asegurar su ruta al salir.

    No esta saliendo por balanceo, esta saliendo por el gateway de la ip fija (esto esta definido en la reglas de firewall).
    En el nat outbound tengo definido la ip de salida y eso es lo no esta respetando. Este enlace de ip fija tiene 3 ips fijas y un mismo gateway ( 2 de esas ip estan definidas en virtual ip y la otra en la interface directamente ) aca es donde el nat outbound deberia mostrar la ip que tengo definida en las reglas nat pero no sucede.

    seguire probando, hasta ahora descubri que la configuracion que armas en la version 1.2.3 no la podes cargar en la 1.2.2

    saludos
    Nicolas



  • mas info:
    Hice un downgrade a la version que instale originalmente 1.2.2 con el archivo de configuracion viejo y tampoco funciono.
    esto solo agraga mas dudas, quizas nunca funciono bien la configuracion, ya la revise muchas veces, no encuentro nada logico.

    Por lo pronto para pasar en limpio el error es el siguiente:

    tengo un pfsense con 1 interface con 3 ips fijas y otra interface  pppoe
    tengo servidores a los cuales se accede desde afuera, ya se para ver paginas web, o por ssh para administrarlos, etc, por medio del enlace con ips fijas.
    si se corta el pppoe los servidores siguen teniendo internet pero no se puede acceder a ellos desde afuera o sea no se pueden ver las paginas web que estan sirviendo ni acceder por ssh.

    saludos
    Nicolas



  • Pues si no damos con el problema habrá que cambiar algo de la topología…

    Podrías probar metiendo un equipo que haga sólo el PPPOE para sacarlo de pfSense, a ver qué...

    ¿Todas las WAN de pfSense tienen directamente la IP pública?



  • Si las 3 wan tiene ips publicas conectadas directamente

    telmex: 3 ip fijas
    wan: speedy pppoe
    flash: cablemodem (dhcp)

    estoy tratando de entender el show states a ver si con esos log puedo encontrar algun error. Sabes si hay forma de seguir la conexion, algo similar al traceroute pero que me muestre las rutas que toma dentro del pfsense.

    instale la version 2 de pfsense parece muy buena sobre todo por que puedo configurar cualquier wan con pppoe de esa forma dejaria las ip fijas como gateway por defecto (WAN) y el pppoe en otra interface (OPT1), pero todavia no esta estable.

    saludos



  • Nuevo sintoma si se cae pppoe el load balancer lo noto y la marca offline, si se cae cablemodem sigue figurando online. Cada conexion tiene su gateway como monitor.

    saludos



  • Mas info
    segun lo que muestra el show states tanto con el pppoe conectado como desconectado muestra las mismas rutas origen>router>destination

    esto es
    origen> ip fija> destino
    destino>origen

    lo que cambia es el state que nunca llega a established

    saludos



  • Sabes si hay forma de seguir la conexion, algo similar al traceroute pero que me muestre las rutas que toma dentro del pfsense.

    http://www.freebsd.org/cgi/man.cgi?query=traceroute

    http://www.freebsd.org/cgi/man.cgi?query=tcpdump



  • No veo nada, con traceroute ya habia probado desde los servidores y salen por el gateway correcto, no se que otra info puedo buscar . No se me ocurre como ver de afuera (wan) hacia adentro (lan) del pfsense, por lo que vi en show states las rutas las arma bien (funcione o no el pppoe) pero por algun motivo no establece comunicacion.
    No se si el wireshark me puede aclarar algo o no. Esa va a ser mi prueba de manana.

    saludos



  • Redefinicion del error

    hoy hice pruebas con el wireshark, revise logs, etc y el problema es el siguiente:

    Tanto con el pppoe conectado, como desconectado, la peticion desde internet a los servidores dentro de la red llega perfecto el problema es que no sale. En los logs no figura ni bloqueado, en el wireshark tampoco hay respuesta desde alguna de las ips del pfsense.
    Pero tanto con el pppoe conectado como desconectado la navegacion desde los servidores funciona y sale por el gateway asignado (nunca dejan de acceder a internet los servidores que estan dentro de la lan).

    en resumen las peticiones ingresan bien y los servidores que tienen que responderlas nunca pierden la conexion a internet. Pero asi y todo, si desconecto pppoe, desde internet no pueden acceder a mis paginas web ( ni rdp, ni ssh, a ningun servicio que tengo publicado en el port forward)

    Que partes del pfsense pueden influir sobre la respuesta a los request que hacen desde internet ??

    saludos
    Nicolas



  • Hola nick.

    Me gustaria ayudarte pero no puedo porque en realidad lei tu post porque necesito ayuda jeje.

    Lei que tiennes un enlace telmex con ips fijas y por eso pense que a lo mejor tu podrias ayudarme ya que al parecer tu ya lo configuraste.

    Yo tengo un enlace al igual que tu con un rango de 16 direcciones ips (x.x.x.224/28)

    mi gateway es la x.x.x.225/28

    y puedo usar ips desde la x.x.x.226/28 hasta las x.x.x.x.238/28

    a mi tarjeta de red externa le estoy poniendo la x.x.x.x.229/28 porque a esa ip apunta el dominio web que tenemos y pues no he hecho los tramites para tener la admon de ese dominio asi que no puedo cambiarlo, pero bueno, actualmente lo tengo trabajando con un fortinet pero lo quiero cambiar por un pfsense debido a que el fortinet funciona como demo solamente.

    el problema esta en que no encuentro como configurar el rango de direcciones en el pfsense, la .229 funciona sin problemas debido a que es la direccion de la tarjeta fisica, pero si quiero hacer nat a cualquier otra ip del rango no puedo, no se en que parte del pfsense se puede configurar el rango para que pueda hacer nat en cualquiera de las otras ips del rango, de antemano gracias por tu ayuda.



  • bunbury

    disculpa la demora pero no habia vuelto a entrar al foro.
    lo que hice fue instalar el cmdshell eso ejecuta un comando al iniciar el pfsense  ahi le pongo

    ifconfig [placa de red] alias [IP] [mascara]

    una por cada ip

    y despues para poder hacer nat creo las mismas ips virtuales en firewall, virtual ip.

    cuando creas la regla de nat en la interface vas a tener la posibilidad de decirle que ip usar

    espero te sirva saludos



  • hice lo que me dijiste y al parecer no funciona.

    tengo unas dudas.

    1.- que es el cmdshell y como se instala?
    estuve buscando en internet y la mayoria me hace referencia pero a la shell de windows

    2.- con que mascara de red debo agregar el alias?
    porque por inercia y logica lo hice con la mascara de subred 255.255.255.240 ke es la ke korresponde al /28 pero cuando pongo ifconfig en la consola del pfsense el broadcast de la interface fisica me marca como 255.255.255.255 y en los alias que agregue me marca 255.255.255.240, justo a como las meti, ahi es donde no se si debo usar la misma que tiene la interface fisica o si debo usar la que me da el proveedor de internet?

    3.- cuando agrego la ip virtual que tipo debo usar? proxy arp, carp o other?

    3.- podrias decirme el proceso de configuracion que realizaste tu?

    si se te dificulta el entrar al foro quizas seria mejor por correo, mi correo es scarymp3 en hotmail punto com

    de antemano gracias.

    Nota del moderador: No poner direcciones de correo tal cual. Conviene enmascararlas, tal como me he permitido dejarla en negrita. De esta forma no sereis tan fácilmente víctimas de spam. Si se deja la dirección tal cual en una página web hay programas de escaneo que obtienen así las direcciones de correo.


Log in to reply