Как заставить squid понимать что по одному из ip р&



  • Gateway monitor проверят доступность внешних ресурсов по пингам но иногда бывает что icmp работает когда как с tcp проблемы (как будто некоторые провайдеры используют прокси).
    Задача заключается в том чтобы научить squid определять доступны ли ресурсы но это вряд ли можно сделать в pfsense.
    Потому подумал может скриптом как то извратиться например дергать через fetch заголовки с tcp/80 по обоим внешним адресам по очереди с коротким таймаутом и если не отдается ответ 200 то подправлять конфиг squid (например убрать tcp_outgoing_address для проблемного ip) и перезапускать?
    Запускать по крону раз в 3 минуты например.
    Есть идеи?



  • Пока что получилось нечто:

    #!/bin/sh
    
    IPS="x.x.x.x x.x.x.x"
    SITES="geektimes.ru thg.ru"
    SQUID="/usr/local/sbin/squid"
    SQUID_CONF="/usr/pbi/squid-amd64/local/etc/squid/squid.conf"
    
    for ip in $IPS; do
            for site in $SITES; do
                    nc -z -s $ip $site 80 -w 1
                    if [ $? -ne 0 ]; then
    			if [ `cat $SQUID_CONF|grep 'tcp_outgoing_address $ip'|wc -l` -eq 1 ]; then
                           		/usr/bin/sed -i '' 's/tcp_outgoing_address $ip/#tcp_outgoing_address $ip/g' $SQUID_CONF
    				$SQUID -k re
    			fi
    		else
    			if [ `cat $SQUID_CONF|grep '#tcp_outgoing_address $ip'|wc -l` -eq 1 ]; then
    				/usr/bin/sed -i '' 's/#tcp_outgoing_address $ip/tcp_outgoing_address $ip/g' $SQUID_CONF
    				$SQUID -k re
    			fi
    		fi
            done
    done
    


  • @igroykt:

    Gateway monitor проверят доступность внешних ресурсов по пингам но иногда бывает что icmp работает когда как с tcp проблемы (как будто некоторые провайдеры используют прокси).

    1. Какие IP мониторятся на доступность ? У меня это гугл-днс - 8.8.4.4 и 8.8.8.8

    2. Далее. У Вас так же  ?

    ![pfSense- System_ General Setup.jpg](/public/imported_attachments/1/pfSense- System_ General Setup.jpg)
    ![pfSense- System_ General Setup.jpg_thumb](/public/imported_attachments/1/pfSense- System_ General Setup.jpg_thumb)



  • @werter:

    @igroykt:

    Gateway monitor проверят доступность внешних ресурсов по пингам но иногда бывает что icmp работает когда как с tcp проблемы (как будто некоторые провайдеры используют прокси).

    1. Какие IP мониторятся на доступность ? У меня это гугл-днс - 8.8.4.4 и 8.8.8.8

    2. Далее. У Вас так же  ?

    thg,ru и geektimes.ru






  • thg.ru и geektimes.ru

    Не думаю, что это хорошая идея - пинговать каждые 10 (?) сек эти ресурсы.
    Вдруг какой antiddos для этих ресурсов "отреагирует" на Ваши частые icmp.

    Исп-те 8.8.4.4 и 8.8.8.8 . Или Яндекс ДНСы, OpenDNS



  • @werter:

    thg.ru и geektimes.ru

    Не думаю, что это хорошая идея - пинговать каждые 10 (?) сек эти ресурсы.
    Вдруг какой antiddos для этих ресурсов "отреагирует" на Ваши частые icmp.

    Исп-те 8.8.4.4 и 8.8.8.8 . Или Яндекс ДНСы, OpenDNS

    поменял.
    а по сквиду какие идеи?



  • Могу ошибаться, но ведь с неск-ми WAN-ми со squid в 2.2.х проблемы?



  • @werter:

    Могу ошибаться, но ведь с неск-ми WAN-ми со squid в 2.2.х проблемы?

    ну я так понимаю проблема не в самой балансировке а в фейловере что и пытаюсь решить



Log in to reply