Мое почтение, коллегам.
На шлюзе Freebsd стояли правила выхода в инет через squid. Для проброса портов использовал natd. Позже добавился второй канал на другого провайдера, начал использовать опцию tcp_outgoing в squid.
Часть http трафика отправлял через один канал, часть через другой.
Со временем правил стало много, решил перейти на ядерный nat и прозрачный squid. Перешел. Правила стали короткими, для задействования squid использовал правило fwd.
Естественно, что tcp_outgoing в настройках squid перестал работать. Я для себя понимаю это так. Пакет идущий по правилам ipfw уже имеет установленные параметры откуда он пришел и как уйдет из системы.
Логичным продолжением для задействования второго канала для меня стало попробовать использовать setfib.
Пересобирать ядро с options ROUTETABLES не стал. Добавил в loader.conf строку net.fibs=2
Посмотрел в скрипт rc.d/squid Там есть строки посвященные setfib
Я прочитал это так. Скрипт анализирует, была ли сборка squid произведена с поддержкой fib
# setup FIB tables:
if command -v check_namevarlist > /dev/null 2>&1; then
check_namevarlist fib && return 0
fi
Пошел в options порта squid. Нет там fib.
Есть мысли попробовать собрать ядро с поддержкой routetables и пересобрать squid. Может он при сборке смотрит на параметр и добавляет fib.
Как собрать squid с поддержкой fib?
Отправлено спустя 18 минут 27 секунд:
Сейчас проверил, все вроде нормально.
При старте squid нигде не пишет, что используется fib. Показанный выше кусочек из стартового скрипта выходит из условия.
Если в rc.conf добавить squid_fib, то squid на него реагирует как надо.
Так что собирать squid с поддержкой fib не требуется
squid и fib
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- проходил мимо
squid и fib
Может myip acl использовались? В прозрачном режиме это адреса серверов куда squid лезет.
-
- мл. сержант
- Сообщения: 102
- Зарегистрирован: 2015-08-26 8:17:23
-
- проходил мимо
squid и fib
myip это адрес squid при общении с клиентами. В непрозрачном режиме адрес на локальном интерфейсе сервера. В transparent система отвечает клиенту с адреса к которому обращался клиент, соответственно myip зависят от запроса. Внешние запросы squid это отдельные от клиентских запросов соединения, tcp_outgoing должны работать как и раньше не зависимо от режима tranparent.
-
- мл. сержант
- Сообщения: 102
- Зарегистрирован: 2015-08-26 8:17:23