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

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

    Scheduled Pinned Locked Moved Russian
    8 Posts 2 Posters 1.3k 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.
    • I
      igroykt
      last edited by

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

      1 Reply Last reply Reply Quote 0
      • I
        igroykt
        last edited by

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

        #!/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
        
        1 Reply Last reply Reply Quote 0
        • werterW
          werter
          last edited by

          @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)

          1 Reply Last reply Reply Quote 0
          • I
            igroykt
            last edited by

            @werter:

            @igroykt:

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

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

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

            thg,ru и geektimes.ru

            monitor_ip.jpg_thumb
            monitor_ip.jpg
            dns_setup.jpg_thumb
            dns_setup.jpg

            1 Reply Last reply Reply Quote 0
            • werterW
              werter
              last edited by

              thg.ru и geektimes.ru

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

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

              1 Reply Last reply Reply Quote 0
              • I
                igroykt
                last edited by

                @werter:

                thg.ru и geektimes.ru

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

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

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

                1 Reply Last reply Reply Quote 0
                • werterW
                  werter
                  last edited by

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

                  1 Reply Last reply Reply Quote 0
                  • I
                    igroykt
                    last edited by

                    @werter:

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

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

                    lb.jpg
                    lb.jpg_thumb

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