Squid и 2 WAN



  • Есть PfSense 2.1 со Squid3, 2 WAN интерфейса, 1 LAN интерфейс, и две организации, работающие в одной сети. Задача: юзеров одной организации пустить через первый WAN, юзеров второй организации пустить через второй WAN. В правилах Firewall я выставил, кому через какой шлюз работать, NAT правила прописал вручную. Все работает корректно, трафик распределяется по нужным WAN, кроме HTTP, который заворачивается на прозрачный сквид, сквидгард и havp. Все, что работает через сквид, уходит на шлюз по умолчанию, независимо от того, какой шлюз прописан в правилах Firewall. Как победить эту проблему? Читал пару тем про Multi-WAN, но там везде балансировка нагрузки и резервирование канала, и то не совсем понял. А мне нужно конкретно указать, какой юзер через какой шлюз должен работать.



  • Никак.
    Если при работе пользователей напрямую Вы можете определять какие пользователи через какой внешний интерфейс получают данные, то через Squid это не получится.



  • или городить огород, используя виртуализацию и несколько пфсенсов…



  • А есть способ собирать статистику без сквида? Кэш в нем все-равно отключен, от сквида требовалась только статистика, кто куда ходил и сколько чего накачал.



  • @vadimb:

    А есть способ собирать статистику без сквида? Кэш в нем все-равно отключен, от сквида требовалась только статистика, кто куда ходил и сколько чего накачал.

    ipcad + lightsquid

    forestman99
    https://forum.pfsense.org/index.php/topic,21394.msg168129.html#msg168129



  • @dvserg:

    Никак.
    Если при работе пользователей напрямую Вы можете определять какие пользователи через какой внешний интерфейс получают данные, то через Squid это не получится.

    Сделать можно, работает. См. последний пост топика: https://forum.pfsense.org/index.php?topic=34810.0
    Применительно к проблеме автора, настраиваем все, как написано в первом посте https://forum.pfsense.org/index.php?topic=34810.0 кроме:

    1. MultiWAN (не нужен)

    2. Squid: Custom Options:

    acl LAN1toWAN1 src 192.168.1.0/24;
    acl LAN2toWAN2 src 192.168.2.0/24;
    tcp_outgoing_address 127.0.0.1 LAN1toWAN1;
    tcp_outgoing_address 127.0.0.2 LAN2toWAN2;

    1. Outbound NAT (половина магии тут):

    WAN1      127.0.0.1/32    *    *    *    *    1024:33279
    WAN1      127.0.0.2/32    *    *    *    *    33280:65535

    WAN2      127.0.0.0/8    *    *    *    *    1024:65535

    1. Firewall: Rules - Floating (остальная магия):

    делаем 2 правила как на скриншоте, но в первом ставим Gateway: WAN1GW, во втором -WAN2GW
    в первом заполняем Source port range: from:1024, to:33279, во втором - 33280, to:65535

    Заводим второй loopback интерфейс: ifconfig lo1 create 127.0.0.2 и рестартуем squid



  • 2 rubic
    Конечно можно и так через Custom options, но это магия вне Хогвартса.
    Я исходил в ответе из возможностей WebGUI и предполагаемого опыта топик-стартера.
    Хорошо бы было, если бы он кроме копи-паста разобрался в деталях.



  • Спасибо за предложенные варианты, на днях попробую.