Релиз Carbon Reductor 7.4 RC4

Релиз Carbon Reductor 7.4 RC4

В Carbon Reductor 7.4 значительно улучшены самые важные подсистемы. Это полностью переработанная обработка списков, ставшая более гибкой и проще для расширения. Это максимально быстрый разбор реестра, экономично относящийся к столь ценным ресурсам процессора. Это DNS-резолвер, практически не влияющий на работу других подсистем. Помимо этого были полностью обновлены мастер установки и мастер настройки сети, выгрузка единого реестра стала более устойчивой к временным проблемам на стороне сервера, а также произведено множество других улучшений, направленных на повышение удобства и производительности.

Всё это доступно в Carbon Reductor 7.4.

Совершенно новая обработка списков

В обработке списков большое число нововведений. В первую очередь она стала унифицированной для большей части списков. Код стал стройнее и проще, добавление новых видов списков стало проще для разработчиков, а структура списков стала в разы проще для понимания.

Подробнее

Теперь имеется следующая структура внутри /usr/local/Reductor/lists/:

  • load — все агрегированные, обработанные и используемые Carbon Reductor списки;
  • rkn — всё, что парсер реестра извлёк из него;
  • provider — собственные списки провайдера;
  • carbonsoft — списки от carbonsoft для оперативного устранения проблем с фильтрацией без обновления самого Carbon Reductor;
  • resolver — результаты резолва по разным спискам доменов;
  • tmp — промежуточные результаты обработки списков, необходимые обычно только разработчикам.

Унифицированы и имена (расширения) файлов (подробнее в документации). Также теперь списки url_https обрабатываются, как и url_http, что повышает качество фильтрации на стороне прокси-серверов.

Новый разбор реестра

Новая версия парсера реестра в 7 раз быстрее и требует в 13 раз меньше оперативной памяти. Благодаря этому у процессора теперь больше времени на то, чтобы заниматься своей основной задачей — фильтрацией трафика, что позитивно влияет на качество её исполнения.

Обновлён резолвер

Обновление реестра, обработка списков и резолв теперь могут проходить одновременно абсолютно не мешая друг другу, благодаря хорошо продуманной системе блокировок.

Также у резолвера появилась возможность опроса кэша резолва по отдельным спискам доменов, дающая на выходе раздельные списки IP адресов, которые могут использоваться для различных целей (блокировка в файрволе, анонсирование по BGP и т.д.).

Мастер настройки Carbon Reductor

Мастер настройки обновлён и теперь учитывает все новые возможности Carbon Reductor, такие как DNS и SNI фильтрация, валидирует вводимые данные и в целом удобнее. Теперь сразу после установки Carbon Reductor, вероятность того, что потребуется что-то донастраивать будет значительно меньше.

Мастер настройки сети

Теперь мастер настройки сети даёт возможность посмотреть какой трафик приходит в зеркало трафика, если его настроили до установки Carbon Reductor. Также теперь поддерживается пять схем настройки захвата зеркала трафика:

  • L2, только чистый трафик без тэгов
  • L2, только тэгированный трафик
  • L2, перемешанный чистый и тэгированный трафик
  • L3, только чистый трафик
  • L3, только тэгированный трафик

В случае с L3-зеркалами теперь автоматически выставляется опция, отключающая проверки наличия бриджей при старте.

Повышение отказоустойчивости выгрузок

Теперь выгрузки запускаются реже, но в случае временных проблем на стороне сервера Роскомнадзора ожидают некоторое время и повторяют запрос. Это уже попало в критические исправления 7.3.2 176, но упоминалось только в твиттере.

Возможность использования совместно с прокси-серверами

Теперь есть возможность отправлять часть ресурсов в прокси-сервер по BGP или с помощью DNS спуфинга (последнее поддерживается только прокси-сервером поставляемым в комплекте с Carbon Reductor 8 Alpha).

Возможность легко снизить нагрузку на сервер

Вам больше не требуется идеально настраивать зеркало трафика для того, чтобы снизить нагрузку на сервер в 20 и более раз с помощью опции NOTRACK.

Теперь при включении этой опции, трафик с IP-адресом Carbon Reductor, под которым он выходит в интернет через основной маршрут будет отбрасываться перед правилом NOTRACK, применяемым к зеркальному трафику. В результате эта опция не будет приносить никаких проблем, связанных с потерей доступа в сеть сервера Carbon Reductor.

Прочее

  • Возможность пропускать определённую подсеть "в разрыв";
  • Запуск обновления больше не запускает резолвер, так как это довольно долгая процедура. Теперь единственная точка запуска резолвера — crond;
  • Решены проблемы с не поднимающимся веб-интерфейсом после выключения опции "Заглушка на своём сервере";
  • Исправлена ошибка с вычислением длины генерируемого пакета HTTP 302 редиректа в некоторых случаях при использовании опции "Добавлять домен в URL редиректа". Из-за неё некоторые виды оборудования дробили пакет на несколько частей, отбрасывая вторую часть, в итоге редирект игнорировался некоторыми операционными системами;
  • DNS-фильтрация теперь поддерживается для IPv6-транспорта.

Желающим присоединиться к тестированию перед обновлением

Приблизительно через неделю мы планируем выпустить эту версию как master — то есть для всех, в плановом обновлении. Если у вас имеется тестовый сервер или Вы готовы тестировать на «продакшне», а потом откатиться — создайте в хелпдеске заявку «Тестирование Carbon Reductor 7.4″.


Спасибо, что пользуетесь Carbon Reductor!

Релиз Carbon Reductor 7.3.2

Релиз Carbon Reductor 7.3.2

Всем привет!

В этом месяце команда Carbon Reductor уделила значительное внимание новому «SNI‑модулю», который позволит избежать массовых блокировок по IP.

Полный список обновлений ниже:


Выгрузки реестра

Исправлена логика работы RKND (демон, инициирующий срочные выгрузки единого реестра в соответствии с последними рекомендациями Роскомнадзора). Совпадение даты локальной копии реестра и даты на стороне сервера Роскомнадзора считалось устареванием реестра и RKND продолжал его выкачивать раз в пять минут вплоть до появления новой штатной выгрузки.

Улучшен и обкатан SNI-модуль

Теперь у нас есть техническая возможность избежать массовых блокировок ресурсов по IP, использующих HTTPS-протокол и CDN. Также новый модуль является подстраховкой для фильтрации DNS-трафика, если она по какой-либо причине не срабатывает.

В теории, в следующей версии, которая включит в себя новый парсер реестра можно будет отключить резолвер доменов блокируемых https-ресурсов.

Отключение резолвера после выхода следующей версии (мы напишем об этом, прямо сейчас ничего отключать не надо!) даст пару плюсов в плане блокировки:

  • Снизится число лишних блокировок ресурсов по IP, когда множество сайтов расположено на одном хостинге;
  • Не будут блокироваться легальные сайты в ситуации, когда по злому умыслу в настройках DNS владельцы заблокированных ресурсов указывают их IP-адреса.

DNS-модуль

Добавлена поддержка фильтрации DNS-запросов с указанием дополнительного поля “UDP Payload Size” – теперь фильтрация работает в том числе и для современных Linux-хостов.

Прочее

  • Повышена безопасность процесса записи URL и доменов в модули;
  • При обнаружении ошибки диагностики «Загрузка URL» показывается больше отладочной информации;
  • Незначительно оптимизирована производительность модуля HTTP фильтрации (минус две арифметические операции в 80% попавших на обработку пакетов).

Спасибо, что пользуетесь Carbon Reductor! До связи.

Релиз Carbon Reductor 7.2.2

Релиз Carbon Reductor 7.2.2

Добрый день!

В этом месяце Роскомнадзор опять подкинул работы новыми рекомендациями по работе с единым реестром, которым Carbon Reductor теперь соответствует. Традиционно выкладываем структурированный список обновлений:


Выгрузки реестра и его обработка

Новое:

  • добавлен демон rknd, инициирующий экстренные выгрузки реестра. Он уже помог обнаружить и исправить три недостатка в процессах выгрузки реестра и загрузки URL/доменов в ядро;
  • добавлена поддержка масок доменов в разборе реестра;
  • добавлена отказоустойчивость для выгрузок реестра;
  • теперь отчёт о возникновении проблемы с выгрузкой реестра содержит в себе подробности этой проблемы.

Исправления:

  • процессы выгрузки реестра и загрузки URL в ядро теперь не могут быть запущены более 1 раза одновременно. Ранее это приводило к проблеме, идентифицируемой диагностикой как «Проверка загрузки URL в ядро»;
  • в случае запуска выгрузок на не активированном Carbon Reductor запускалась старая версия системы активации, что завершалось не удачно. Удалена и заменена актуальной.

Модули ядра

DNS

Новое:

  • добавлена поддержка выбора режима матчинга: ‑‑exact и with-subdomains (по умолчанию). Пока не используется, в devel-ветке есть код, который добавляет такую поддержку в кастомные списки DNS (и сами кастомные списки DNS);
  • добавлена поддержка регистронезависимого ‑‑icase поиска, отключенная по умолчанию. Он значительно менее производительный, лучше его добавлять дополнительным правилом для тех подсетей откуда запросы часто идут не в нижнем регистре.

Исправления:

  • значительно снижена вероятность коллизии хэшей в dnsmatch, что позитивно сказывается на производительности;
  • удалено всё оставшееся отладочное логирование, а также логирование checked/matched в dnsmatch.

HTTP

  • добавлена поддержка очень коротких доменов в HTTP-матчере (например, http://x.yz).

Прочее

Новое:

  • периодические задачи, потенциально способные повлиять на работоспособность фильтрации, подстроены под график проверок Ревизора. Сохраняет дампы трафика в аккуратно подобранной структуре каталогов в /var/lib/revisor_dump/. Добавление в «крон» только вручную;
  • добавлена утилита для сохранения трафика от проверок «Ревизора» для последующего анализа — revisor_dump.sh;
  • при запуске рестарта по SSH, логируется IP-адрес запустившего;
  • добавлен скрипт для превращения списка бэкапов в git-репозиторий с файлом xml для отслеживания изменений в нём;
  • commit’ы в /etc/sysconfig/network-scripts/, создаваемые мастером настройки сети стали удобочитаемы.

Исправления:

  • проверка обработки пакетов в диагностике иногда имела ложные срабатывания;
  • в некоторых случаях проброс переменной LC_CTYPE отличного от ru_RU.UTF-8 при подключении к Carbon Reductor по SSH и запуск обработки списка приводил к ошибке при обработке списков;
  • принятие решения об обновлении на новую версию целиком лежит на сервере обновления, все «умности» на клиентской стороне удалены;
  • не создавались ссылки на цепочку mirror_traffic в таблице raw, если не была включена опция NOTRACK. В результате не работала его особая обработка и отсеивание лишнего на раннем этапе.

Спасибо, что доверяете решениям Carbon Soft!

 

Итоги за июль — Carbon Reductor

Итоги за июль — Carbon Reductor

Добрый день!

РКН нагнетает с каждым днём: добавляет всё больше сайтов в список заблокированных, обновляет требования по блокировке, рекомендует заблокировать YouTube, находит способы обхода блокировки и т.д.

А мы всё также поддерживаем наших клиентов, разрабатываем новые решения и используем нестандартные ухищрения с целью решения Ваших проблем!

Как всегда публикуем новые отзывы от пользователей Carbon Reductor:


Отзыв от ООО «ТРК ТОНУС»

Откуда возникла потребность в поиске решения фильтрации трафика?

Потому что обязаны фильтровать. Потребность со стороны закона;

Как узнали о нашем продукте?

Я ранее еще регистрировался на вашем сайте по поводу биллинга, рассматривал информацию. Ну и потом заметил на сайте, что есть блокировка. Списывался с вашими техниками по поводу установки Carbon Reductor на сторонний биллинг. Т.е. я думал сначала, что привязка идет к конкретному биллингу, потом выяснилось что нет. Поэтому принято решение устанавливать его;

Почему выбрали именно нас? Что стало решающим при выборе компании?

Да не знаю, по функционалу: всё описано, всё доступно, легко и просто;

Как проходит работа с нами после покупки? Все ли обновления устраивают, техподдержка?

Да, вот сейчас единственное ждем обновления, чтобы https можно было вырезать, а так всё нормально, всё хорошо;

Есть ли идеи по улучшению продукта? Какой функционал вы бы хотели увидеть?

В принципе так-то всё устраивает. Единственное, знаете, столкнулись, не знаю проблема, не проблема, может быть это индивидуально – набирали свой лист блокировки, который дала прокуратура. И как-то некорректно получилось. Т.е. если через веб-интерфейс вносишь, то как-то некорректно срабатывает. Если же через консоль редактируешь файл, то все корректно. Сейчас проблемы нет, эти сайты уже попали в списки РКН. Но ситуация была. Но опять-таки, это была не проблема, это не тяжело;


Отзыв от ООО «Теле-дом»

Откуда возникла потребность в поиске решения фильтрации трафика?

Ну как, законодательство обязывает;

Как узнали о нашем продукте?

Просто в интернете, через поисковик;

Почему выбрали именно нас? Что стало решающим при выборе компании?

На тот момент я не находил больше ничего путного. У вас был неплохой сайт, документация, решили попробовать, вроде бы неплохо;

Как проходит работа с нами после покупки? Все ли обновления устраивают, техподдержка?

По началу там были какие-то проблемы по спискам Минюста, что они там не актуально немножко обновлялись. После, вроде бы, претензий нет.

Есть ли идеи по улучшению продукта? Какой функционал вы бы хотели увидеть?

Да, честно говоря, даже не задумывался об этом. Поэтому не готов сейчас ответить на этот вопрос;


Спасибо, что используете продукты компании Carbon Soft!

Релиз Carbon Reductor 7.1.2

Релиз Carbon Reductor 7.1.2

Ежемесячное обновление Carbon Reductor уже подоспело. Добавлен новый функционал и исправлены ошибки. Чтобы разобраться в новых фичах, пойдем по порядку.

Новая система обновления

Теперь вопрос «нужно ли обновляться и на какую версию» решается на стороне сервера. Благодаря этому мы лучше контролируем массовые обновления.

Текущая логика работы такова: на свежую версию обновляются 10 случайных (вероятность 30%) серверов в период первой половины рабочего дня отдела технической поддержки с понедельника по четверг. После этого версия «замораживается» на 24 часа в случае минорных изменений и на 120 часов в случае мажорных изменений, а обращающимся за обновлением отдаётся ссылка на последнюю “обкатанную” версию.

Carbon Reductor Satellite 2.0

Реализация «Ревизора», которая отправляет данные о проверках фильтрации только туда, куда Вы попросите, обновилась.

  • Система умеет проверять фильтрацию HTTP, HTTPS и DNS ресурсов;
  • Поддерживает хуки, так что можно отправлять результаты проверки в собственные системы мониторинга. То есть Вы сможете заблаговременно узнать о проблемах на сервере;
  • Время работы полной проверки сокращено с 5-ти до 1-го часа;
  • Теперь для обновления достаточно одной команды.

Доработки DNS-спуфинга

Теперь DNS-спуфинг работает сразу после установки и дополнительно разработана система интеграции с DNS-серверами провайдера. Поддерживаются bind/named и unbound.

Резолвер

Исправления:

  • Благодаря правильному анализу опции «поддержка IPv6» меньше проблем при использовании интеграции с маршрутизатором;
  • Редуктор не блокирует страницу-заглушку при неправильной настройке зеркала.

Файрвол и веб-интерфейс

Новое:

  • Веб-интерфейс недоступен, если не указан IP администратора;
  • Можно указать конкретные IP-адреса и порты на которых будет доступен веб‑интерфейс. По умолчанию он работает на 0.0.0.0:8080.

Исправления:

  • Исправлена проблема проверки доступности при использовании некоторых систем мониторинга. Проверка TTL=1 переехала из «mangle PREROUTING» в «raw PREROUTING» в цепочку «mirror traffic»;
  • Кастомные редиректы HTTP теперь наследуют опции «--log» и «--save-domain».

Прочее

Новое:

  • На случай внезапно возникшей необходимости доработки системы обращений url‑списков внедрена поддержка черных и белых «Хотфикс-списков». Они страхуют Вас на время, пока Вы не обновитесь на версию с доработками. Отключаемая опция;
  • Адрес дефолтной заглушки для демонстрации работы редиректа переехал с deny.carbonsoft.ru на denypage.ru.

Исправления:

  • Упрощена система обработки списков. Кэш сигнатур изменил формат, благодаря этому теперь нет проблем и специальной обработки URL с некоторыми спецсимволами;
  • Система мониторинга путалась при создании тикетов между несколькими Carbon Reductor, зарегистрированными на одну компанию. В результате периодически возникала ситуация, когда по одному серверу создавалась заявка, а потом сразу же закрывалась по данным, поступившим от другого сервера;
  • Просроченная оплата теперь не плодит несколько тикетов в хелпдеске.

Релиз Carbon Reductor 7.0.0

Релиз Carbon Reductor 7.0.0

Фильтрация HTTPS-ресурсов с активной динамической сменой IP адресов

Мы почти две недели готовили решение проблемы с ресурсами, часто меняющими IP адрес и, наконец, готовы выпустить новую мажорную версию 7.0.0! (На CentOS 7 она работать не будет, если что, а то мало ли, что подумаете).

  • Благодаря этому появляется возможность заредиректить пользователя на заглушку при обращении к HTTPS ресурсу
  • Помимо этого решается проблема с ресурсами, часто меняющими IP адреса
  • Возможно, благодаря этому можно будет отключить резолвер
  • На текущий момент поддерживается только A и AAAA записи для IPv4 запросов по UDP
  • На текущий момент генерируется пакет с TTL = 1 минуте, чтобы абоненты с кэшированием DNS не страдали долго из-за теоретических ошибочных блокировок.
  • Проверено: 100% юнит-тестов проходят, а модуль обкатан на серверах 5 провайдеров размером от 500 до 100000 абонентов.
  • Модуль интеграции с биллингом теперь тоже поддерживает использование нового модуля, что особенно важно для блокировки youtube.com / google.com и других ресурсов, использующих QUIC (HTTPS over UDP).

По умолчанию после обновления модуль отключен, включить можно в настройках алгоритма фильтрации. Проверка утилитой Роскомнадзора прошла успешно, данные о проверке ревизором получим завтра с утра.

Из задумок, что сделать дальше:

  • Поддержка IPv6-запросов
  • Поддержка ответа с несколькими IP адресами
  • «Рандомизация» TTL чтобы не вызывать лишних подозрений
  • Поддержка TCP’шных DNS-запросов

Типовое решение для веб-сервера-заглушки

Поскольку модуль подмены DNS-ответов может редиректить абонентов только на IP, а не на конкретный URL, приходится немного модифицировать веб-сервера с заглушками. Поскольку клиентов много, мы постарались максимально автоматизировать этот процесс, а также учли несколько нюансов и проблем, возникающих при большом количестве обращений к серверу. Подробная инструкция по настройке и установке: https://github.com/carbonsoft/reductor_blockpages

P.S: Мы в скором времени сделаем поддержку такой заглушки прямо на Carbon Reductor, пока релизим так, чтобы те, кто ждал этой возможности не ждали её ещё несколько дней. Праздники же скоро, всё такое. Скорее всего необходимо будет добавить на Carbon Reductor ещё один IP адрес, доступный всем абонентам.

Упрощение файрвола и ненадобность части хуков

Теперь оптимизация подсистемы роутинга отключена по умолчанию, а при включении затрагивает только трафик, который попадает на интерфейсы, находящиеся в бриджах. Иными словами, чтобы разрешить доступ к какому-либо порту редуктора по интерфейсу для менеджмента достаточно просто добавить правило в filter INPUT с помощью хука, а mangle PREROUTING трогать не надо. Отрезание лишнего трафика происходит там же, где и применение правил NOTRACK (если опция включена) — в raw PREROUTING, цепочка — mirror_traffic.

Примечание — работает только с L2-зеркалами. L3 нужно будет настраивать вручную с помощью хуков. (пока что).

Веб-интерфейс

Помимо самого редуктора мы обновили веб-интерфейс до версии 1.1.8. Там много мелких улучшений в удобстве использования.

  • Видно какая вкладка/список сейчас открыты.
  • Вывод информации о сервере более стал унифицированным и читаемым.
  • У части графиков удалена ненужная легенда
  • И вообще местами текст переработан, исправлена куча орфографических ошибок (которых от себя даже не ожидали, очень стыдно), каша из английского и русского текста.

Иными словами смотреть в вебку стало немного приятнее. Обновить её нужно вручную, автоматическое обновление для неё мы пока не прикрутили, но в скором времени запилим и это. :)

Прочее

  • Для того чтобы диагностика и выгрузки не ругались на отсутствие сертификата теперь достаточно указать, что выгрузка идёт с собственного сервера (не нужно указывать дополнительно опцию skip_sign_request).
  • Диагностика при исправлении проблемы с актуальностью списков запускает выгрузку списков с timeout (≈55 минут) аналогично cron, в результате это защищает от зависания этого процесса.
  • Устранён небольшой Warning по поводу использования устаревшего BaseException в резолвере.
  • Увеличены TTL для записей нерезолвящихся доменов с 1 до 3 часов (для резолвящихся максимальный TTL остаётся 1 час). Ранее из-за большого числа таких доменов резолвер циклился. Впрочем, скоро он скорее всего всё равно станет не нужен.
  • Число тредов резолвера можно задать через QDNS_THREADS=8 ./bin/reload_ip.sh Повышена отказоустойчивость в случае проблем с /var/log/
  • Удалён fallback-режим (-134 строчки кода, ура).

Релиз Carbon Reductor 6.2.0

Релиз Carbon Reductor 6.2.0

Итак, выпускаем версию чуть раньше времени, потому что фишек накопилось много, более того, в devel билде лежат серьёзные доработки по снижению нагрузки в файрволе, надо уже на них переключаться, а это выкатить в master.

Резолвер

Попробовали решить проблему появляющихся в отчётах ревизора проскальзывающих HTTPS-ссылок по ресурсам, периодически меняющимся IP адресам.

  • (bug) резолвер https забивал /tmp/ временными файлами.
  • (bug) больше не резолвятся домены, исключённые из реестра, но оставшиеся в кэше (позже сделаем удаление их из кэша по истечении ttl записи)
  • (feature) Теперь резолвер сохраняет свои предыдущие результаты, у каждого ip отдельный ttl, по умолчанию 480 минут, но можно передать параметром, например IP_TTL=400 (или 4000). Максимальный ttl записи уменьшен до 60 минут.
  • (feature) поддерживаются белые списки для резолва (our.whitehttpslist)
  • (improve) предупреждение про длительную работу резолвера
  • (improve) более понятное логирование использования кэша резолва при рестарте, раньше часто вводило в заблуждение
  • (dev) улучшено логирование резолвера, можно запустить RESOLVER_DEBUG=1 ./reload_ip.sh
  • (dev) общий shell-код обработки списков ip и url вынесен в библиотеку
  • (dev) Добавлен хук обновления для «миграции» кэша резолва в новый формат

P.S: В ходе тестов выяснилось, что новый концепт резолвера пока не приносит максимальную пользу из-за не совсем оптимальных значений TTL для записей и IP. Пока экспериментируем, предположительно в течении двух-трёх дней выпустим обновление, где значения по умолчанию будут наиболее подходящими для реального мира.

Утилиты и производительность

  • (improve) скрипт link_rx_speed теперь поддерживает vlan-интерфейсы
  • (improve) скрипт support_info лучше разбирает структуру бриджей при работе в виртуальных машинах (отличается содержимое /sys/..)
  • (feature) добавлен скрипт для поиска записей по URL / IP в архиве выгрузок реестра, очень удобно разбираться в ситуациях в духе «а должно оно вообще блокироваться?»
  • (feature) автоматическая настройка rps теперь поддерживает Vlan и QinQ-Vlan интерфейсы (пока что сомневаемся, стоит ли его включать для самих сетёвок, в случае, если у них больше одной очереди)

Отказоустойчивость, минимизация простоев и улучшение результатов проверок ревизором

  • (bug) Выгрузки реестра теперь выполняются сперва с опцией cache=None для suds.client.Client, затем без. На части серверов без этой опции выгрузки не проходили по таймауту.
  • (bug) Добавлена случайная задержка от 0 до 300 секунд в начале критического обновления, чтобы снизить «хабраэффект» на сервер обновлений.
  • (feature) в диагностику добавлена проверка модуля на зависание
  • (feature) изменена логика рестарта и обновления carbon reductor. В случае, если настройки ipset’ов и контрольные суммы модулей ядра не изменились (это бывает довольно редко), Carbon Reductor не прерывает работу в процессе обновления и рестарта. На всякий случай имеется force-флаг: /etc/init.d/reductor restart —force. Повторный старт не приводит к ошибкам. Модуль интеграции с биллингом тоже поддерживает мягкий рестарт.
  • (feature) увеличена скорость быстрой перезаливки ipset (при ≈4000 ip с ≈0.7сек => ≈0.02сек) за счёт использования ipset swap.
  • (feature) в случае, если sys.kernel.panic = 0 при старте выставляем его в 100, чтобы сервер перезагружался в случае kernel panic.
  • (logic) Перенесли штатное обновление carbon reductor на 9 утра из-за вероятности пересечения с проверкой ревизора, полезно для клиентов без резервирования Carbon Reductor

P.S: в 6.2.2. будет доступна опция «хардкорная оптимизация трафика», которая отрезает весь лишний трафик (только с сетёвок с зеркалом, находящихся в бриджах, по аналогии с NOTRACK) ещё в raw PREROUTING. Хуки, добавляющие правила в mangle PREROUTING для того, чтобы открыть какой-либо порт на редукторе станут ненужными (filter INPUT нужно будет оставить). Наработки уже есть, осталось только навести лоск.

P.P.S: пустой ip.load не опасная штука, ipset с адресами из этого файла в этот момент заполнен и используется. В скором времени мы придумаем что сделать, чтобы он не смущал в течении всего процесса обновления кэша резолва (в среднем ≈17 секунд).

Обработка списков и разбор реестра

Тут мелочи, но они значительно улучшили результаты проверок ревизором.

  • (bug) В случае, если запись в реестре содержит только домен и ip — блокируем все URL на этом домене по http и IP адрес по https + добавляем домен в список резолвящихся.
  • (bug) исправлена (опять?!) логика с точками в конце GET запроса.
  • (feature) На основе wget сделали дополнительную обработку URL содержащих экранированные символы или кириллицу, перед отправкой в ядро.

Прочее

  • (bug) Удаление дефолтного конфига nginx при рестарте во избежание конфликта с конфигом веб-интерфейса reductor после обновления nginx
  • (bug) Теперь в отчётах по выгрузкам отображаются 60 последних дат, до этого из-за ротирования логов показывалось 0-3.
  • (improve) увеличены начальные задержки между обращениями к серверу РКН (начинаем с 30 секунд, раньше с 10)
  • (improve) подобраны наиболее оптимальные значения hashsize и maxelem для всех ipset.
  • (dev) Адрес дефолтной заглушки переехал (у тех у кого была прописана — поменялся автоматически при обновлении) с helpdesk.carbonsoft.ru/deny на https://deny.carbonsoft.ru/. Решили оставить шуточку про «может лучше посмотреть котиков?» в качестве дополнительной мотивации использовать собственную заглушку — выглядит солиднее, да и меньше канал забиваться будет.

Релиз Carbon Reductor 6.1.0

Релиз Carbon Reductor 6.1.0

Привет! Вышло свежее обновление Carbon Reductor 6.1.0. В этой версии появилось только одна важная доработка о которой стоит рассказать — это поддержка double buffer.

В Carbon Reductor была проблема с тем, что при обновлении и загрузке списков в ядро имелся промежуток в 2-3 секунды, в течение которого сайты не фильтровались. Поскольку реестр растёт и списки становятся больше, этот промежуток начал расти.

Нам удалось от этой проблемы избавиться, теперь можно загружать списки в ядро хоть в бесконечном цикле — пропусков в фильтрации не будет. Carbon Reductor полностью готов для постоянных проверок «ревизоров» и больше не пропустит случайные 5-10 ресурсов.

Попробовать Carbon Reductor бесплатно можно здесь. Если у вас появился вопрос, то напишите на a.fomina@carbonsoft.ru. Успехов!

Релиз Carbon Reductor 6.0

Релиз Carbon Reductor 6.0

Всем привет! У нас очень хорошие новости. Случилось нечто невероятное, из-за этого мы увеличили мажорную версию Carbon Reductor. Это случается довольно редко, примерно раз в год. Что же случилось? Заинтригованы? Поехали! Читать далее

Среди наших клиентов