[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[openbsd] pflow и altq на одном интерфейсе
Приветствую!
Прошу помощи в решении одной задачи. Проблема в следующем.
Eсть OpenBSD 4.6 в качестве роутера + NAT для локальной сети.
Чтобы посчитать трафик с помощью pflow, его нужно прикрутить
к внутреннему интерфейсу, иначе в статистике будет внешний адрес.
pflow работает исключительно с правилами keep state.
В то же время, чтобы на внутреннем интерфейсе отправить трафик
_к пользователю_ в ту или иную очередь - не должно быть состояния,
иначе правило с queue не срабатывает.
Вот пример:
TRANSLATION RULES:
nat on vlan2 inet proto tcp from 10.51.109.40/29 to any -> 193.200.84.226
nat on vlan2 inet proto udp from 10.51.109.40/29 to any -> 193.200.84.226
nat on vlan2 inet proto icmp from 10.51.109.40/29 to any -> 193.200.84.226
FILTER RULES:
block drop in all
pass in quick on vlan2 proto tcp from any to (vlan2) port = ssh flags S/SA keep state (if-bound)
pass out quick on vlan2 all flags S/SA keep state (if-bound)
pass in quick on vlan2 all no state
* pass in quick on vlan621 inet from 10.51.109.40/29 to any flags S/SA keep state (if-bound, pflow)
* pass out quick on vlan621 inet from any to 10.51.109.40/29 no state queue to_Gonta
ALTQ:
queue root_em0 on em0 bandwidth 1Gb priority 0 {DEFQ, to_Customers}
queue DEFQ on em0 bandwidth 100Mb hfsc( default )
queue to_Customers on em0 bandwidth 10Mb {to_Akim, to_Gonta}
queue to_Akim on em0 bandwidth 512Kb hfsc( upperlimit 512Kb )
queue to_Gonta on em0 bandwidth 512Kb hfsc( upperlimit 512Kb )
Правила, помеченные звездочкой - будет срабатывать только первое правило.
Второе на сработает для ответного трафика никогда, следовательно
очередь - не работает. Если же сделать первое правило с no state,
то очередь работает, но при этом становится невозможным использование
pflow. Если же pflow перенести на внешний интерфейс, то в статистике
не будет внутренних адресов.
Так как быть? Как одновременно использовать pflow, nat и altq?
Заранее спасибо.
--
MINO-RIPE
--
To unsubscribe send an e-mail to openbsd+unsubscribe@uaoug.org.ua
For retrieval in messages archive http://www.uaoug.org.ua/archive