[root@ ~]# pfctl -f /etc/pf.conf No ALTQ support in kernel ALTQ related functions disabled
Мой рассказ пойдет об шейпинге в пакетном фильтре. А точнее я расскажу о том, как включить поддержку очередей в ядро. Для шейпинга во фряхе используется ALTQ.
ALTQ это альтернативная платформа организации очередей для BSD. ALTQ обеспечивает организации очередей, и другиё QoS методы, разделение ресурсов Quality of Service. В основном это реализовано на BSD маршрутизаторах. ALTQ портирован на дистрибутивы FreeBSD, NetBSD, и интегрирован в PF пакетный фильтр OpenBSD.
По умолчанию поддержка altq не включена в ядро (в связи с этим PF выводит где только можно соответствующие сообщения). Для поддержки шейпинга, необходимо собрать ядро дополнительными опциями.
Приступим.
Исходники ядра лежат в /usr/src/sys/. Если у вас нет этой папки, то значит исходников нет и их необходимо скачать. Например утилитой cvsup.
Важно! Необходимо загружать исходники той же версии, что и версия вашей FreeBSВ (uname -r). При попытки загрузки ядро, версия которого не совпадает с общей версией FreeBSD, в лучшем случае, ядро просто не загрузится.
Переходим в директорию:
cd /usr/src/sys/`uname -m`/conf
Обратите внимание, вложенная команда `uname -m` вернет тип процессора. Обычно это i386 или amd64.
Скопируем старый файл конфигурации в новый файл конфигурации:
cp GENERIC MYGENERIC
Открываем файл и начинаем редактирование:
mcedit MYGENERIC
Меняем строку
ident GENERIC
на
ident MYGENERIC
Дописываем в соответствующие места следующие строки:
device pf device pflog device pfsync options ALTQ options ALTQ_CBQ options ALTQ_RED options ALTQ_RIO options ALTQ_HFSC options ALTQ_PRIQ options ALTQ_NOPCC
Попытаемся собрать новое ядро:
cd /usr/src make buildkernel KERNCONF="MYGENERIC" make installkernel KERNCONF="MYGENERIC"
После перезагрузки поддержка очередей будет доступна в вашем pf!
0 Комментарии。