SRX i Kolejność reguł

JunOS / Juniper / Netscreen
Wiadomość
Autor
Marek607
wannabe
wannabe
Posty: 146
Rejestracja: 02 gru 2014, 10:38
Lokalizacja: Kutno
Kontakt:

SRX i Kolejność reguł

#1

#1 Post autor: Marek607 »

Hej,
Zrobiłem sobie proste reguły w srx-ie:

Kod: Zaznacz cały

        term 5 {
            from {
                protocol udp;
                source-port 1024-65535;
                destination-port 9987;
            }
            then {
                policer TS;
                count teamspeak_counter;
                next term;
            }
        }
        term 9 {
            from {
                source-port 123;
            }
            then {
                policer dropAll;
                count term9_counter;
                accept;
            }                           
        }
        term 10 {
            from {
                packet-length 34;
                protocol udp;
                destination-port 9987;
            }
            then {
                policer block_34_udp;
                count term10_counter;
                discard;
            }
Policy

Kod: Zaznacz cały

    policer TS {
        filter-specific;
        if-exceeding {
            bandwidth-limit 10m;
            burst-size-limit 5m;
        }
        then discard;

Kod: Zaznacz cały

   policer block_34_udp {
        filter-specific;
        if-exceeding {
            bandwidth-limit 2m;
            burst-size-limit 3m;
        }
        then discard;

Puszczając duży ruch na port 9987 z długością pakietu 34 przechodza one dalej.
Patrząc na counter i ruch to term 5 jest aplikowana, ale kolejna właściwa czyli 10 nie.

mam jeszcze term 20, 30 itp, i one są aplikowane, tylko że tam juz inne porty źródlowe i docelowe.
Ktoś mógłby podpowiedzieć czego mi brakuje?

Marek607
wannabe
wannabe
Posty: 146
Rejestracja: 02 gru 2014, 10:38
Lokalizacja: Kutno
Kontakt:

#2

#2 Post autor: Marek607 »

update - zauwazyłem że jest aplikowana reguła, ale 20:

Kod: Zaznacz cały

       term 20 {
            from {
                protocol udp;
            }
            then {
                policer from_all_udp;
                count term20_counter;
                accept;
            }
        }
Jak dodałem do term10 source port 1024-65000 to licznik poolicy from_all_udp przeskakuje na zero i nie jest liczony

saiqard
wannabe
wannabe
Posty: 385
Rejestracja: 09 lip 2012, 22:10
Lokalizacja: Wałbrzych/Wrocław

#3

#3 Post autor: saiqard »

Na srx'ach ruch wpada w pierwszy term do którego pasuje i jest przez niego przetwarzany. Nie są sprawdzane kolejne termy.

Marek607
wannabe
wannabe
Posty: 146
Rejestracja: 02 gru 2014, 10:38
Lokalizacja: Kutno
Kontakt:

#4

#4 Post autor: Marek607 »

W takim razie po co opcja next term?
I w jaki sposób mogę zrealizować że np term 1 przycina mi tylko ruch na danym porcie a term 2,3,4 w zależności od pakietu źródlowego/docelowego itp wykonuje określone zadania?

http://www.juniper.net/documentation/en ... terms.html

Z tego rozumiem że next term przekazuje ruch dalej., konsola pokazuje to samo:

next Continue to next term in a filter

Kod: Zaznacz cały

marek# set firewall filter attack2 term 10 then next ?                        
Possible completions:
  term                 Continue to next term in a filter
[edit]
marek# set firewall filter attack2 term 10 then next    

Marek607
wannabe
wannabe
Posty: 146
Rejestracja: 02 gru 2014, 10:38
Lokalizacja: Kutno
Kontakt:

#5

#5 Post autor: Marek607 »

ajj, ile to dzisiaj edycji, ale nie poddaje się ;)
Po calym dniu doszłem do źródla problemu - jest nim packet-lenght
Ilekroć do term dodam packet-lenght to reguła jest z miejsca omijana.
ustawiłem nawet zakres 0-65000 i nic nie dało, reguła nie jest brana pod uwagę.
Usuwam długośc pakietu - wszystko poprawnie działa.

Ktoś może mial ten problem i mógłby pomóc?

ODPOWIEDZ