В данном разделе описывается основная концепция управления трафика в Linux.
Чтобы унифицировать настройку шейпера была разработана схема единого пакетного настройщика шейпера shaper_start. Для настройки используется файл /etc/rc.conf (вне зависимости от ОС). В нем настраиваются:
Правила шейпера
Правила блокировок ресурсов (Netblock)
Правила NAT
Редирект при негативном депозите
Ограничение на количество TCP/IP сессий
shaper_start.sh программа которая управляющая фаерволом и шейпером.
Установка
cp /usr/abills/misc/linux/shaper_start.sh /etc/init.d update-rc.d shaper_start.sh defaults
Аргументы программы:
start | Включить шейпер |
---|---|
stop | Отключить шейпер |
status | Посмотреть поднятые правила |
test | Включить шейпер на 10 минут. Сделано с целью тестирования и предотвращения блокировки сервера |
Настройка
Список /etc/rc.conf параметров для shaper_start.sh
abills_firewall=«YES» | Включить пред настроенные правила фаервола для Linux |
---|---|
abills_shaper_enable=«YES» | Включить шейпер |
abills_shaper_if=«eth0» | Интерфейс шейпера (по умолчанию ng* ) |
abills_nas_id=«» | |
abills_ip_sessions=«» | лимитирование количества IP сессий для клиента |
abills_nat=«EXTERNAL_IP:INTERNAL_IPS INTERNAL_IPS2:NAT_IF;» | Включение NAT EXTERNAL_IP - IP адрес интерфейса смотрящего в интернет. Если параметр не указан система автоматически первый адрес с интерфейса маршрутизации по умолчанию INTERNAL_IPS - Пул адресов которым разрешён доступ в интернет INTERNAL_IPS2 - Второй пул адресов которым разрешён доступ в интернет NAT_IF - имя интерфейса смотрящего в интернет. Если параметр не указан система автоматически определяет интерфейс маршрутизации по умолчанию . Если нужно указать несколько внешних IP, определяются полностью сети и указываются через точку с запятой (;) |
abills_dhcp_shaper=«» | Включить IPoE шейпер. Только если у Ва установлен модуль FreeRADIUS DHCP |
abills_neg_deposit=«» | Включение пере направления на портал при израсходовано депозите |
abills_portal_ip=«me» | IP адрес портала. По умолчанию me |
abills_mikrotik_shaper=«» | поднятие правил шейпера на Mikrotik серверах доступа, аргумент номера серверов доступа |
abills_ipn_nas_id=«1» | Номер IPN сервера доступа |
abills_ipn_if=«» | Интерфейс для IPN шейпера |
abills_ipn_allow_ip=«» | список адресов разрешенных без авторизации |
abills_squid_redirect=«YES» | Включение перенаправления на прокси сервер все трафика в 40 таблице. Для работы с перенаправлением пользователей нужно указать в фильтре тарифного плана или в фильтре учётной записи занесение IP в 40 таблицу. настройка squid версии 2.6 и выше: squid.conf http_port 192.168.0.1:3128 transparent |
После добавления правил достаточно рестартануть службу.
/etc/init.d/shaper_start.sh restart
Дополнительные правила
abills_iptables_custom=«/etc/fw.conf»
При включении данной опции система добавляет правила из указанного файла в iptables. Данная опция обрабатывается после выполнения всех предыдущих команд. Файл загружается программой iptables-restore.
Форма