- Раздел 22: Балансировщик: мониторинг и диагностика - Раздел 23: Распознавание протоколов (DPI Engine) - Раздел 24: Траблшутинг Каждый раздел включает команды, описания и практические примеры для диагностики и мониторинга работы балансировщика и системы фильтрации.
124 lines
12 KiB
Markdown
124 lines
12 KiB
Markdown
# 15. Фильтр: настройка интерфейсов и общих параметров
|
||
|
||
[← Оглавление](../README.md) · [← Раздел 14: Фильтр: конфигурация подсистем](14.md)
|
||
|
||
---
|
||
|
||
## 15.1. Интерфейсы: enable/disable, description (LACP не используется)
|
||
|
||
Фильтр обрабатывает трафик на **уровне L2** — для внешнего наблюдателя устройство представляет собой «прозрачный провод». На пути прохождения трафика **нет L3-интерфейсов**. Если посмотреть на интерфейсы в операционной системе Linux (на которой основано устройство), виден **только management-интерфейс** — все остальные интерфейсы отданы под управление **DPDK** и обрабатываются специализированным программным обеспечением.
|
||
|
||
Настройки интерфейсов для пропуска трафика **минимальны**:
|
||
|
||
| Действие | Команда |
|
||
| ------------------ | ------------------------------ |
|
||
| Включить интерфейс | `enable` |
|
||
| Выключить интерфейс| `disable` |
|
||
| Задать описание | `description "текст"` |
|
||
|
||
Лог-интерфейсы **жёстко привязаны** к конкретным физическим портам и не могут быть переназначены.
|
||
|
||
В конфигурации могут присутствовать настройки протокола **LACP** — в проекте ТСПУ он **не используется**. Эти параметры существуют по умолчанию, их не нужно изменять или удалять.
|
||
|
||
## 15.2. NAT Defaults — общие параметры устройства
|
||
|
||
Секция `nat-defaults` содержит общие параметры, влияющие на работу всего устройства. Название секции — наследие от CGNAT-платформы, однако параметры применяются ко всему функционалу фильтра, включая DPI.
|
||
|
||
### 15.2.1. VLAN Mode: untag / vlan / QinQ — глубина поиска IP-заголовка (всегда QinQ)
|
||
|
||
Параметр **VLAN Mode** определяет, насколько глубоко фильтр ищет IP-заголовок внутри Ethernet-фрейма:
|
||
|
||
| Значение | Поведение | Применение в ТСПУ |
|
||
| ------------ | ----------------------------------------------------------------- | ------------------ |
|
||
| **untag** | IP-заголовок ищется только в нетегированных фреймах. Пакеты с VLAN-тегами пропускаются прозрачно | Нет |
|
||
| **vlan** | IP-заголовок ищется в пакетах без тегов и с одним VLAN-тегом | Нет |
|
||
| **QinQ** | IP-заголовок ищется при любом количестве VLAN-тегов: 0, 1 или 2 | **Всегда** |
|
||
|
||
В проекте ТСПУ параметр **всегда должен быть установлен в `QinQ`**. При любом другом значении часть трафика (с VLAN-тегами) будет **прозрачно пропускаться** без обработки, что недопустимо.
|
||
|
||
### 15.2.2. Sessions per Translation (по умолчанию 4096)
|
||
|
||
Параметр задаёт **максимальное количество сессий** в рамках одной трансляции. Значение по умолчанию — **4096**. В проекте ТСПУ менять его не требуется — этого значения достаточно для всех сценариев.
|
||
|
||
### 15.2.3. Forward Traffic: всегда ON
|
||
|
||
Параметр **Forward Traffic** управляет пересылкой трафика через устройство:
|
||
|
||
| Значение | Поведение |
|
||
| -------- | ------------------------------------------------------------ |
|
||
| **on** | Трафик проходит через фильтр и отправляется дальше |
|
||
| **off** | Трафик принимается, но не отправляется (режим зеркала) |
|
||
|
||
В проекте ТСПУ параметр **всегда должен быть `on`** (значение по умолчанию). Режим `off` используется только при работе с зеркалированным трафиком, что в данном проекте не применяется.
|
||
|
||
### 15.2.4. L2 MTU: максимум 9216 (по RFC)
|
||
|
||
Параметр **L2 MTU** определяет максимальный размер кадра на уровне L2. По умолчанию установлено значение **1522**.
|
||
|
||
В проекте ТСПУ рекомендуется устанавливать **максимально возможное значение — 9216** (максимум по RFC). Это позволяет полностью исключить проблемы с MTU:
|
||
|
||
```text
|
||
nat-defaults
|
||
l2-mtu 9216
|
||
```
|
||
|
||
На балансировщиках MTU на интерфейсах также выставляется в районе **9000**, что позволяет закрыть проблему MTU на всей цепочке оборудования ТСПУ.
|
||
|
||
### 15.2.5. LLDP: выключен (требование операторов — прозрачность)
|
||
|
||
Протокол **LLDP** (Link Layer Discovery Protocol) на фильтрах **должен быть выключен**. Это сделано по требованию операторов связи, которые не хотят видеть оборудование ТСПУ в своей сети.
|
||
|
||
Принцип прозрачности: оператор ожидает, что ТСПУ — это «невидимый провод». Если LLDP включён, устройство начинает анонсировать себя в сети оператора, что нарушает эту прозрачность. Например, МТС потребовал отключить LLDP, поскольку устройства ТСПУ появлялись на их схемах сети.
|
||
|
||
### 15.2.6. Permit Invalid Flow: всегда ON — приём TCP-сессий без SYN
|
||
|
||
Параметр **Permit Invalid Flow** — один из **наиболее критичных** параметров конфигурации. Он **всегда должен быть включён** в проекте ТСПУ.
|
||
|
||
**Что он делает:**
|
||
|
||
| Значение | Поведение |
|
||
| -------- | --------------------------------------------------------------- |
|
||
| **off** | TCP-сессия заводится **только** по TCP SYN-пакету. Пакеты без SYN-флага дропаются |
|
||
| **on** | TCP-сессия заводится по **любому** TCP-пакету, включая пакеты без SYN |
|
||
|
||
**Почему `off` опасен в контексте ТСПУ:**
|
||
|
||
1. **Переключение режимов.** При переключении ТСПУ из режима байпаса обратно в рабочий режим (inline) на фильтры мгновенно поступает большой объём трафика — уже установленных TCP-сессий. SYN-пакеты для этих сессий давно прошли. Если `permit invalid flow` выключен, фильтр **дропнет** весь этот трафик. Для абонентов это означает, что **все их TCP-сессии** отвалятся по тайм-ауту и потребуют переустановки;
|
||
|
||
2. **Асимметричный трафик.** Если исходящий трафик уходит через один фильтр, а входящий приходит через другой — на одном из фильтров сессия не будет установлена (нет SYN-флага), и трафик будет дропаться.
|
||
|
||
С этой проблемой сталкивались **неоднократно** на практике.
|
||
|
||
## 15.3. Тайм-ауты сессий и трансляций
|
||
|
||
В секции `nat-defaults` также настраиваются **тайм-ауты** для сессий и трансляций (подробнее о сессиях и трансляциях — в [разделе 12](12.md)):
|
||
|
||
- Тайм-ауты для **трансляций** и **сессий** задаются **раздельно**;
|
||
- Параметры различаются по типу протокола (TCP, UDP, ICMP);
|
||
- Значения в `nat-defaults` являются **значениями по умолчанию**, которые наследуются каждым создаваемым пулом;
|
||
- При необходимости тайм-ауты могут быть **переопределены** на уровне конкретного пула.
|
||
|
||
В секции также присутствует параметр **limiter** — ограничения на количество выделяемых портов для одного пользователя. Этот параметр актуален **только для NAT** и в проекте ТСПУ **не используется**.
|
||
|
||
## 15.4. IPv6: включение, диапазон адресов для обработки
|
||
|
||
Поддержка IPv6 была добавлена в прошивку позднее основного функционала. Настройка расположена в отдельном разделе:
|
||
|
||
| Параметр | Описание |
|
||
| --------------------- | ------------------------------------------------------------ |
|
||
| **Enable/disable** | Включение или выключение обработки IPv6-трафика |
|
||
| **Тайм-ауты** | Отдельные тайм-ауты для IPv6-сессий (по умолчанию можно не менять) |
|
||
| **Диапазон адресов** | Список IPv6-адресов и VLAN, которые будут обрабатываться |
|
||
|
||
В проекте ТСПУ IPv6 должен быть **включён**. По умолчанию в диапазон обработки включены **все IPv6-адреса во всех VLAN** — менять это значение, как правило, не требуется.
|
||
|
||
При необходимости можно:
|
||
|
||
- **Включить** в обработку только конкретные диапазоны IPv6-адресов;
|
||
- **Исключить** определённые диапазоны из обработки;
|
||
- Полностью **отключить** обработку IPv6-трафика (тогда DPI-фильтрация по IPv6 выполняться не будет, трафик пройдёт прозрачно).
|
||
|
||
---
|
||
|
||
[← Оглавление](../README.md) · [← Раздел 14: Фильтр: конфигурация подсистем](14.md) · [Раздел 16: Фильтр: ACL и пулы →](16.md)
|