JunOS. Интересный факт о Firewall Filter’s

5 Сен
2011

В недавнем времени начал снова пользоваться JunOS и натолкнулся на оригинальную «фичу» в Firewall Filter, которую раньше не замечал, либо ее не было.

К примеру необходимо просчитать трафик по различным протоколам на интерфейсах маршрутизатора.
Стандартно я всегда предполагал сделать это создав 2 фильтра на каждый интерфейс (отдельно на входящий и исходящий).
firewall {
family inet {
filter ae0.45-in {
term 1 {
from {
protocol udp;
count;
}
then {
next term;
}
}
term 2 {
from {
protocol tcp;
count;
}
then {
next term;
}
}
term 3 {
from {
protocol icmp;
count;
}
then {
next term;
}
}
term 4 {
then {
accept;
}
}
}
filter ae0.45-out {
term 1 {
from {
protocol udp;
count;
}
then {
next term;
}
}
term 2 {
from {
protocol tcp;
count;
}
then {
next term;
}
}
term 3 {
from {
protocol icmp;
count;
}
then {
next term;
}
}
term 4 {
then {
accept;
}
}
}
}
}
interfaces {
ae0 {
unit 45 {
family inet {
filter {
input ae0.45-in;
output ae0.45-out;
}
address 10.10.0.1/30;
}
}
}
}

Такое написание каждого фильтра делает работу крайне сложной, а конфигурацию сильно перегруженной, однако если использовать один FF для интерфейсов, то значения их будут суммироваться. Однако в JunOS можно избежать этого неприятного эффекта и сократить конфигурационный файл (не забивая его лишним текстом).
Создаем FF общий для нескольких интерфейсов.
firewall {
family inet {
filter FF-count {
interface-specific;
term 1 {
from {
protocol udp;
count;
}
then {
next term;
}
}
term 2 {
from {
protocol tcp;
count;
}
then {
next term;
}
}
term 3 {
from {
protocol icmp;
count;
}
then {
next term;
}
}
term 4 {
then {
accept;
}
}
}
}
}
interfaces {
ae0 {
unit 45 {
family inet {
filter {
input FF-count;
output FF-count;
}
address 10.10.0.1/30;
}
}
}
}

Добавив опцию <interface-specific> в FF, можно применять его на различных интерфейсах. В нашем случае JunOS начнет динамически создавать счетчики для интерфейсов, так же разделяя входящее и исходящее направление.
По материалам Хабрахабр.



загрузка...

Комментарии:

Наверх