Фильтрация IPv6

по сравнению с
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (26)

просмотр истории страницы
На текущий момент реализована фильтрация как HTTP, так и HTTPS-ресурсов.
Согласно памятке оператора связи мы реализовали поддержку разбора записей IPv6-адресов из реестра и фильтрацию IP адресов по всем протоколам.

В списке роскомнадзора явно заданных IP адресов пока нет, но при проверке утилитой запросы к https-ссылкам могут идти по IPv6, так что мы резолвим и в IPv4 и в IPv6.
h1. Требования к работе IPv6 фильтрации

h1. Включить фильтрацию
# Работающий протокол IPv6 в сети оператора связи: абоненты должны иметь возможность получить IPv6 адрес и успешно осуществлять соединения по этому протоколу.
# Подать зеркалированый IPv6-трафик на порт Carbon Reductor DPI.
## В случае L2 зеркала (с порта коммутатора) (вне зависимости от VLAN) ничего не требуется менять. Если L2-зеркало было настроено на Linux-маршрутизаторе с помощью утилиты tc - настроить IPv6 по аналогии не получится.
## В случае L3 зеркала (на IP адрес Carbon Reductor DPI) необходимо донастроить маршрутизатор для отправки и добавить IPv6 адрес на интерфейс для приёма зеркала. Мастер настройки сети сейчас это не поддерживает, необходимо редактировать конфигурацию интерфейса вручную.
# На Carbon Reductor DPI требуется настроить белый IPv6-адрес (не link-local вида FE80::/10) на интерфейсе, который отправляет Reject-ответы на запросы клиентов оператора связи к запрещённым ресурсам.
# Убедитесь что абоненты доступны для сервера Carbon Reductor DPI с помощью утилиты ping6.
# Включите опцию IPv6 в настройках Carbon Reductor DPI.

{panel}
menu -> Reducotor -> Настройка алгоритма фильтрации -> Фильтровать IPv6
/app/reductor/service restart
{panel}
h2. Включить опцию IPv6

Если потребуется что-то большее - создайте тикет в технической поддержке, пока пожеланий на эту тему не поступало.

h1. Проблемы
menu \-> Reductor \-> Настройка алгоритма фильтрации \-> Фильтровать IPv6

Имеются проблемы с работой на ядре 2.6.32-358.el6.x86_64, нужно обновиться:

!2.png|border=1!

{panel}
yum -y install kernel && reboot
{panel}
И выполнить рестарт редуктора.

При отладке не забывайте, что смотреть правила по ipv6 нужно утилитой ip6tables, а не iptables\!
{code}
chroot /app/reductor/
service reductor restart
{code}

h1. Советы от пользователей

{quote}
Если в сети которая скидывается зеркалом для анализа гуляет ipv6 автоконфиг, то , при установках по умолчанию CentOS 6 и интерфейс в мироре хватает автоконфиг.
h2. Возможные проблемы и решения

Дальше, по крайней мере в нашем случае, блокиратор пытался отправить пакет с этого интерфейса, что у него конечно не получалось . (у нас же там мирор).
|| Проблема || Решение ||
| Ошибки в конфигурации сетевых интерфейсов. \\ | Внимательно смотреть на ошибки, возникающие при выполнении команды service network restart |
| IPv6 идёт мимо зеркала | Проверять настроенное зеркало трафика с помощью тестовой машины, curl и tcpdump. \\
При обращении в техподдержку прикрепляйте схему сети и настройки зеркала трафика. |
| Трафик не попадает из mangle PREROUTING в \\
filter FORWARD. | Скорее всего есть ошибки в настройках маршрутизации. Попробуйте выполнить \\
ip \-6 route get $ip-адрес-тестовой-машины \\
ip \-6 route get $ip-адрес-запрещённого-ресурса \\
Если одна из этих команд выполняется с ошибкой - нужно её исправить. |
| Трафик всё ещё не попадает \\
из mangle PREROUTING в filter FORWARD. \\ | Иногда после исправления проблем с маршрутизацией проблема сохраняется до тех пор, пока  \\
не будет перезапущен контейнер с редуктором с помощью команды /app/reductor/service restart \\
Мы сейчас изучаем что именно приводит к такому эффекту. \\ |

Мы вылечили простейшим net.ipv6.conf.eth1/5.disable_ipv6 = 1 в sysctl для случая когда 1.5 это точка перехвата трафика.

   
{quote} {info}
Если в сети которая подается зеркалом для анализа присутствует ipv6 автоконфиг, то при установках по умолчанию CentOS 6, интерфейс принимающий зеркало трафика считывает автоконфиг.
Вследствие этого, Reductor может пытаться отправить пакет с этого интерфейса, что является некорректной работой.
Исправить можно указав "net.ipv6.conf.eth1/5.disable_ipv6 = 1" в sysctl в случае когда eth1/5 - это точка  захвата трафика.
{info}