Strona 1 z 1
migracja PBR z Cisco do Junipera
: 13 lut 2018, 11:27
autor: h33ren
Siemka,
Mam taki PBR na switchu Cisco.
Kod: Zaznacz cały
interface Vlan130
ip vrf forwarding ace
ip address 172.16.30.1 255.255.255.0
no ip redirects
no ip unreachables
no ip proxy-arp
ip flow ingress
ip policy route-map SetNextHop
route-map SetNextHop permit 10
match ip address 121
set ip next-hop 172.16.21.1
set interface Vlan121
access-list 121 permit ip host 172.16.30.24 xx.xx.0.0 0.1.255.255
access-list 121 permit ip host 172.16.30.24 xx.xx.71.72 0.0.0.7
access-list 121 permit ip host 172.16.30.24 xx.xx.0.0 0.0.255.255
Mój pomysł by to zmigrować jest taki.
Kod: Zaznacz cały
firewall family inet {
filter SetNextHop {
term 0 {
from {
source-address {
172.16.30.24/32;
}
}
from {
destination-address {
prefix-list ADRESY-DOCELOWE;
}
}
then
{
next-interface irb.121;
}
then
{
next-ip 172.16.21.1/32;
}
then
{
accept;
}
interface irb.130 {
family inet {
filter {
input SetNextHop;
}
}
}
Co do wersji Junka nie mam pewności czy dobrze myślę że można zrobić next-interface oraz next-ip tak jak to napisałem. Również czy tak można zapisać source i destnation ?
Na stronie Junka są przykłady ale tam są dla interfejsów fizycznych (i często zakładają że PBR będzie między instancjami rutowania), a nie ma nigdzie dla VLANów gdzie oba VLANy są w tej samej instancji (mój scenariusz).
Re: migracja PBR z Cisco do Junipera
: 14 lut 2018, 13:16
autor: Szefo89
Juniper realizuje PBR przez dedykowaną instancję routingu, konfiguruje się ją jako typ forwarding. Następnie w filtrze dodajesz akcję "then routing-instance X". Nawet jeżeli cały ruch masz w jednej instancji, to żeby odpalić PBR (lub jak to nazywa Juniper - FBF), musisz stworzyć nową instancję.
Kod: Zaznacz cały
R# set routing-instances PBR instance-type forwarding
R# set routing-instances PBR routing-options 0/0 next-hop X
Jeżeli chcesz mieć różne next-hopy dla całego ruchu, to musisz niestety stworzyć kilka instancji routingu, typu PBR_TO-R2, PBR_TO-R3 i tak dalej.
Oprócz tego musisz pamiętać, żeby do nowej instancji routingu wrzucić IPki z interfejsów, robi się to rib-groupą interface-routes. Rib-groupę tworzysz w ten sposób:
Kod: Zaznacz cały
R# set routing-options rib-groups INTERFEJSY import-rib [inet.0 PBR.inet.0]
R# set routing-options interface-routes rib-group inet INTERFEJSY
Ta konfiguracja sprawi, że IPki Twoich interfejsów zostaną zaciągnięte z inet.0 do PBR.inet.0. Dzięki temu Twoje next-hop będą osiągalne z nowej tablicy routingowej.
Re: migracja PBR z Cisco do Junipera
: 14 lut 2018, 16:35
autor: h33ren
Dzięki za podpowiedź, ale w takim razie czy ten interfejs irb.121 może być równocześnie w dwóch routing-instance ?
Bo obecnie on jest w tym samym routing-instance typu virtual-router co irb.130.
No i czy irb.130 musi też być wrzucony do "nowego" routing-instance typu forwarding ?
Re: migracja PBR z Cisco do Junipera
: 15 lut 2018, 08:33
autor: Szefo89
Interfejs może być tylko w jednej tablicy, więc nie można go wrzucić do tej forwarding. Myk jest taki, że tworzysz firewall filter w którym definiujesz interesujący Ciebie ruch, a jako akcję podajesz "then routing-instance X". Taki filtr podpinasz pod Twój interfejs (który jest w stworzonym przez Ciebie virtual-routerze) i jeżeli przyjdzie określony przez Ciebie typ ruchu, to router będzie szukał next-hopa w innej tablicy routingu.
W konfiguracji routing-instance będziesz miał tylko jej typ (forwarding) oraz static route (0/0).
Niestety tak to realizuje Juniper, w Cisco jest to o wiele prostsze bo podpinasz tylko odpowiednią politykę pod interfejs i masz wszystko z głowy.
https://www.juniper.net/documentation/e ... ample.html
Tutaj masz przykład. Spróbuj z tym powalczyć, jakby coś nie działało to wrzuć swoją konfiguracje, zweryfikujemy
Re: migracja PBR z Cisco do Junipera
: 16 mar 2018, 10:41
autor: h33ren
Szefo
Spłodziłem tam kod dla Junka z tego Cisco PBR.
Cisco PBR
Kod: Zaznacz cały
interface Vlan130
ip vrf forwarding ace
ip address 172.16.30.1 255.255.255.0
no ip redirects
no ip unreachables
no ip proxy-arp
ip flow ingress
ip policy route-map SetNextHop
route-map SetNextHop permit 10
match ip address 121
set ip next-hop 172.16.21.1
set interface Vlan121
access-list 121 permit ip host 172.16.30.24 xx.xx.0.0 0.1.255.255
access-list 121 permit ip host 172.16.30.24 xx.xx.71.72 0.0.0.7
access-list 121 permit ip host 172.16.30.24 xx.xx.0.0 0.0.255.255
A na Junka napisałem taki kod
Kod: Zaznacz cały
policy-options {
prefix-list LISTA_121 {
xx.xx.0.0/15;
xx.xx.71.72/29;
xx.xx.0.0/16;
}
}
routing-instances {
ROUTE121 {
instance-type forwarding;
routing-options {
static {
route 0.0.0.0/0 next-hop 172.16.21.1;
}
}
}
}
firewall {
FILTER_130 {
term 1 {
from {
source-address {
172.16.30.24/32;
}
destination-address {
prefix-list LISTA_121;
}
}
then {
next-interface {
irb.121;
routing-instance ROUTE121;
}
}
}
}
}
routing-options {
interface-routes {
rib-group {
inet FBF_130_TO_121
{
import-rib INSIDE.inet.0
import-rib ROUTE121.inet.0
}
}
}
}
interfaces {
irb {
unit 130 {
family inet {
filter input FILTER_130;
}
}
}
}
Dobrze to zrobiłem czy się gdzieś walnąłem ?
Dodam że VLANy 121 i 130 (irb.121 i irb.130) są w tej samej routing instance o nazwie INSIDE.
Re: migracja PBR z Cisco do Junipera
: 17 mar 2018, 00:21
autor: Szefo89
Jeżeli dobrze pamiętam, to nie musisz dodawać interfejsu irb w filtrze w akcji THEN. Wystarczy podać tam instancję routingu, a reszta zadziała dzięki 0/0.
Oprócz tego wydaje mi się, że połączyłeś dwie komendy rib-groups w jedną, zrób to raczej tak:
Kod: Zaznacz cały
set routing-options rib-groups FBF_130_TO_121 import-rib [INSIDE.inet.0 ROUTE121.inet.0]
set routing-options interface-routes rib-group inet FBF_130_TO_121
Pierwszy wpis tworzy regułę pozwalającą na kopiowanie z INSIDE do ROUTE121, a później przypina się ją pod interface-routes.
Gdybyś chciał ograniczyć to do konkretnych prefixów, a nie wrzucać wszystkie interfejsy z INSIDE, to możesz stworzyć politykę i podpiąć ją w rib-group:
Kod: Zaznacz cały
set routing-options rib-groups FBF_130_TO_121 import-policy X
Re: migracja PBR z Cisco do Junipera
: 23 mar 2018, 18:32
autor: Szefo89
Generalnie udało mi się sprawdzić i Twoja wersja z pierwszego postu również działa. Widocznie Juniper uznał, że kombinowanie z instancjami routingu jest przesadzone
Pamiętaj tylko, że w akcji "next-ip" podajesz adres, ale także musisz dodać odpowiednią instancję routingu, jeżeli ten docelowy ipek nie znajduje się w głównej.
Re: migracja PBR z Cisco do Junipera
: 25 mar 2018, 15:47
autor: h33ren
O super dzięki że sprawdziłeś.
Ogólnie to po Wielkanocy jak skończę migracji innych elementów które mam w kolejce, to będę migrował właśnie ten PBR z Cisco na Junka i wtedy dam znać jak poszło. Ale generalnie powinno pójść bo mam też wskazówki od Ciebie.
Wielkie dzięki
Re: migracja PBR z Cisco do Junipera
: 05 cze 2018, 14:21
autor: h33ren
W koncu mialem okazje nad tym znowu usiasc. No i jak sie mozna spodziewac nie zadzialalo mi to.
Stwierdzilem ze zrobie tak jak radziles z osobna routing-instance (UWAGA ja nie mam opcji wyboru typu forwarding, a wiec wybralem virtual-router). Oto moj nowy kod.
Kod: Zaznacz cały
[policy-options]
policy-statement INSIDE-TO-ROUTE121-RIB {
term 1 {
from {
route-filter 172.16.21.0/24 exact;
}
then accept;
}
term 2 {
then reject;
}
}
routing-options {
rib-groups {
INSIDE-TO-ROUTE121 {
import-rib [ INSIDE.inet.0 ROUTE121.inet.0 ];
import-policy INSIDE-TO-ROUTE121-RIB;
}
}
[routing-instances]
ROUTE121 {
instance-type virtual-router;
routing-options {
interface-routes {
rib-group inet INSIDE-TO-ROUTE121;
}
static {
route 0.0.0.0/0 next-hop 172.16.21.1;
}
}
}
No i teraz pytanie, dlaczego jak wykonam komende
show route table ROUTE121 to nic w tabeli routingu nie ma ?
Re: migracja PBR z Cisco do Junipera
: 11 cze 2018, 10:11
autor: Szefo89
Jeżeli dobrze widzę, to na jakimś z interfejsów powinieneś mieć podsieć 172.16.21.0/24, czy to się zgadza? Dodając exact w filtrze, złapie Ci tylko sieć /24, nie złapie na przykład 172.16.21.0/30.
Czy w instancji INSIDE masz aktywne interfejsy? Czy pojawiają się one w tablicy routingu INSIDE.inet.0?
Rib-group o nazwie "interface-routes" wyciągnie tylko podsieci z interfejsów, nie skopiuje wszystkich z danej tablicy do drugiej.
Dziwne też, że nie masz typu "forwarding", co to jest dokładnie za Juniper?
Re: migracja PBR z Cisco do Junipera
: 12 cze 2018, 15:07
autor: h33ren
Jest to QFX 5110 i wg dokumentacji nie ma opcji typu forwarding, podobno wynika to z rodzaju chipa ASIC jaki jest zastosowany w tym modelu.
W każdym razie zrobiłem to jeszcze inaczej, i w czwartek rano mam maintenance żeby sprawdzić czy mi to zadziała. Dam znać po maintenance
Re: migracja PBR z Cisco do Junipera
: 14 cze 2018, 11:18
autor: h33ren
Dziala.
Rozwiazalem ten problem w nastepujacy sposob.
Najpierw okreslam co mi potrzebne z tabeli rutowania.
Kod: Zaznacz cały
policy-options {
policy-statement IMPORT-R121 {
term 1 {
from {
instance INSIDE;
route-filter 172.16.21.0/24 exact;
}
then accept;
}
term 2 {
then reject;
}
}
Robie instancje przekierowujaca.
Kod: Zaznacz cały
routing-instances {
...
ROUTE121 {
instance-type virtual-router;
routing-options {
static {
route 0.0.0.0/0 next-hop 172.16.21.1;
}
instance-import IMPORT-R121;
}
}
Teraz filter
Kod: Zaznacz cały
firewall {
family inet {
filter FILTER_130 {
term 1 {
from {
source-address {
172.16.30.24/32;
}
destination-address {
XX.64.0.0/10;
XX.160.0.0/12;
XX.212.0.0/15;
XX.224.0.0/11;
XX.80.0.0/12;
XX.78.0.0/15;
XX.187.0.0/16;
XX.128.0.0/16;
}
}
then {
routing-instance ROUTE121;
}
}
term 2 {
from {
source-address {
172.16.30.24/32;
}
}
then accept;
}
term 3 {
from {
source-address {
172.16.30.0/24;
}
}
then accept;
}
}
}
}
No i na koncu podpiecie pod interfejs.
Kod: Zaznacz cały
interfaces {
...
irb {
...
unit 130 {
family inet {
address 172.16.30.1/24;
filter {
input FILTER_130;
}
}
}
No i dziala