Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    [RESUELTO] AYUDA CON WPAD (Proxy No transparente Automático)

    Scheduled Pinned Locked Moved Español
    7 Posts 2 Posters 1.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      fabshdz
      last edited by

      Amigos del foro, les solicito su apoyo, se que el tema ya está muy trillado, pero por más que leo los manuales de javcasta, no logro echarlo a andar…

      Pondré toda la configuración posible para que me echen la mano.

      Todo lo que he visto, es para una sola RED o LAN, yo tengo múltiples Vlans y es un dolor de cabeza no poder usar el proxy transparente para el filtrado de contenidos.

      Les agradezco nuevamente su apoyo.

      Saludos
      ![DIAGRAMA GENERAL - VISTA GENERAL.jpg](/public/imported_attachments/1/DIAGRAMA GENERAL - VISTA GENERAL.jpg)
      ![DIAGRAMA GENERAL - VISTA GENERAL.jpg_thumb](/public/imported_attachments/1/DIAGRAMA GENERAL - VISTA GENERAL.jpg_thumb)

      1 Reply Last reply Reply Quote 0
      • F
        fabshdz
        last edited by

        Pongo aquí mi archivo proxy.pac

        y aprovecho para una pregunta.. qué significa el DIRECT??
        y también… si uno implementa esta configuración, todos deben de pasar por el proxy ??

        
        // Ponga el código aquí.
        function FindProxyForURL(url, host) {
            //proxy  wpad.dragonesceb.local:3128 == 192.168.1.1:3128;
            var wpad = "PROXY wpad.dragonesceb.local:3128";
            host = host.toLowerCase();
            var hostIP = dnsResolve(host);
            if (hostIP == 0) return wpad;
            if (isPlainHostName(host)) return "DIRECT";
            if (shExpMatch(host, ".local")) return "DIRECT";
            //mi dominio dragonesceb.local;
            if (shExpMatch(host, ".dragonesceb.local")) return "DIRECT";
            //redes privadas;
            if (isInNet(dnsResolve(host), "127.0.0.0", "255.0.0.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "10.0.0.0", "255.0.0.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "10.0.0.0", "255.255.0.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "10.0.0.0", "255.255.255.0")) return "DIRECT";
            //mis redes privadas;
            if (isInNet(dnsResolve(host), "192.168.13.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.14.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.15.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.16.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.17.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.18.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.19.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.20.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.21.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.22.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.23.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.24.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.25.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.26.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.27.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.28.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.29.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.30.0", "255.255.255.0")) return "DIRECT";
        
            //end mi red privada;
            if (isInNet(dnsResolve(host), "192.168.0.0", "255.255.0.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "192.168.0.0", "255.255.255.0")) return "DIRECT";
            if (isInNet(dnsResolve(host), "172.16.0.0", "255.240.0.0")) return "DIRECT";
            if (shExpMatch(host, "fe80::*")) return "DIRECT";
            if (shExpMatch(url, "http:*")) return wpad;
            if (shExpMatch(url, "https:*")) return wpad;
            return wpad;
        }
        
        

        Utilizo el DNS Resolver, dejo una imagen de los Host Overrides

        Y como ejemplo, tomaré solamente la Vlan 14, pongo imagen de la configuración del DHCP (adjunto imagen)

        Ngix escucha sobra la dirección física de la LAN 192.168.1.1

        Agrego la imagen de las reglas de firewall de la vlan 14

        DNS_Host.PNG
        DNS_Host.PNG_thumb
        DHCP_VLAN14.PNG
        DHCP_VLAN14.PNG_thumb
        Firewall_Rules_Vlan14.PNG
        Firewall_Rules_Vlan14.PNG_thumb
        ngnix_conf.PNG
        ngnix_conf.PNG_thumb

        1 Reply Last reply Reply Quote 0
        • perikoP
          periko
          last edited by

          Estas usando pfsense o un servidor web externo?

          Un observacion, ningun servidor web usa UDP para trabajar, en tus reglas puedes eliminar TCP/UDP hacia el pfsense y dejar solo TCP.

          Has seguido este manual?

          https://doc.pfsense.org/index.php/WPAD_Autoconfigure_for_Squid

          Tu archivo esta muy avanzado, inicia por lo basico como lo indica el manual.

          Saludos.

          Necesitan Soporte de Pfsense en México?/Need Pfsense Support in Mexico?
          www.bajaopensolutions.com
          https://www.facebook.com/BajaOpenSolutions
          Quieres aprender PfSense, visita mi canal de youtube:
          https://www.youtube.com/c/PedroMorenoBOS

          1 Reply Last reply Reply Quote 0
          • F
            fabshdz
            last edited by

            Ok, vamos avanzando… el servidor de nginx desde la vlan 14, al escribir wpad.dragonesceb.local responde con la página default del servidor, pero si pongo wpad.dragonesceb.local, está aferrado a contestar con https, aún cuando en el nginx.conf dice 192.168.1.1:80...

            viendo con el wireshark me marca que efectivamente lo cambia al https y me da un error 301

            WIRESHARK.PNG
            WIRESHARK.PNG_thumb
            WIRESHARK2.PNG
            WIRESHARK2.PNG_thumb

            1 Reply Last reply Reply Quote 0
            • perikoP
              periko
              last edited by

              Limpia el cache de tus navegadores, ngix que solo responda por el 80, wpad no trabaja en https.

              Necesitan Soporte de Pfsense en México?/Need Pfsense Support in Mexico?
              www.bajaopensolutions.com
              https://www.facebook.com/BajaOpenSolutions
              Quieres aprender PfSense, visita mi canal de youtube:
              https://www.youtube.com/c/PedroMorenoBOS

              1 Reply Last reply Reply Quote 0
              • F
                fabshdz
                last edited by

                Bueno ya limpié el cache.. y he optado por otra opción.

                No usar el pfsense como servidor http, ahora utilizo otra computadora en el 192.168.8.250 con nginx y ya funciona, he logrado recibir el archivo proxy.pac, wpad.dat y wpad.da

                El proxy sigue estando en el pfsense y aquí es lo interesante… Creo que ahora el detalle está en el archivo proxy.pac

                La dirección IP de la tarjeta de red física (LAN) es la 192.168.1.1

                Actualmente, si yo quiero poner la Vlan14 con  192.168.14.0/24, para que pase por el proxy, lo hago de manera manual, y el proxy es el 192.168.14.1:3128 que es la IP virtual de la interface con el pfsense.

                Creo que para usar el wpad, todos tendrían que ir al 192.168.1.1:3128, es así ???

                Creo que ahora todo pasa al archivo proxy.pac y las reglas de firewall

                alguien sabe si el que uso actualmente, está correcto??

                1 Reply Last reply Reply Quote 0
                • F
                  fabshdz
                  last edited by

                  Ya no logré hacer las pruebas al 100%, ya que hoy salimos temprano y prácticamente me sacaron de la escuela  ;D

                  Pero al parecer ya funciona!!

                  Había un pequeño detalle en la configuración del squid, donde le dices las interfaces donde va a escuchar, yo en el archivo proxy.pac, le decía que vaya a la 192.168.1.1, la cual es la IP de la LAN, pero no había seleccionado la LAN en el squid, solo las vlans  ::)

                  Ya les digo que pasa el día lunes…

                  Saludos

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post
                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.