JUNIPER: Bir OSPF arayüzünde FBF'yi etkinleştirdiğimde neden OSPF bitişikliği bozuluyor?


9

Filtre Tabanlı Yönlendirme (FBF), yani Politika Tabanlı Yönlendirme'yi test ettiğim bir test laboratuarı oluşturdum. Soru aşağıda takip edilecektir, ancak önce detaylar:

Topoloji diyagramı aşağıdadır:

resim açıklamasını buraya girin

AMAÇ: Site 1'den Sahnelemeye yönlendirilen herhangi bir trafik, Bağlantı 2 üzerinden Bağlantı 1 üzerinden WAN'a değil, WAN'a yönlendirilmelidir. Çünkü Bağlantı 1, iki veri merkezi arasındaki çoğaltma trafiğine doygun kalacaktır.

  • SW-1 ve SW-2 Juniper EX4200 anahtarlarıdır
  • RTR-1 ve RTR-2 Ardıç J4350'ler
  • PE-1 ve PE-2, sağlayıcı WAN omurgasını simüle etmek için ISIS ve MPLS VPN çalıştıran Cisco 1841 yönlendiricileridir

SW-1, SW-2, RTR-1 ve RTR-2, Bölge 0'daki tüm OSPF komşularıdır. Hem RTR-1 hem de RTR-2, ASBR'lerdir ve OSPF'ye BGP tarafından öğrenilen yolları enjekte eder. Her yönlendirici, kendi sitesi için WAN'a (ayrıca yedeklilik için diğer site için önceden beklemiş olan yollara) giden reklam yollarını yönlendirir.

Trafiği Site 1'den Site 2'de Sahnelemeye yönlendirmek, SW-2'de Staging'e statik yolun daha yüksek bir metrikle OSPF'ye yeniden dağıtılmasıyla kolayca gerçekleştirilir. Bu rota RTR-2 tarafından WAN'a tanıtıldığından, RTR-1 bu rotayı öğrenecek ve 0 metriğiyle OSPF'ye yeniden dağıtacaktır. SW-1'den SW-2'de öğrenilen OSPF rotası daha yüksek bir metrik olacaktır, yönlendirme WAN yerine tercih edilecektir.

Site 2'den gelen dönüş trafiğinin de asimetrik yönlendirmeden kaçınmak için bu şekilde akması gerekir. FBF, SW-2'ye giren gelen arayüze (Bağlantı 4) uygulanır. Bu filtre, Staging (10.100.190 / 24) kaynaklı tüm trafiği alacak ve bir sonraki atlama RTR-2'sini yapacaktır. Laboratuarda test ettiğim gibi FBF'nin bu kısmı çalışıyor.

RTR-2'nin Site 1'e giden tercih edilen yolu Bağlantı 1 üzerinden olduğundan, RF-2'nin gelen LAN arayüzüne (SW-2'ye bakacak şekilde) FBF'yi bir kez daha uygulamamız gerekir.

Sorun şu ... Bu yönlendiriciye FBF uygulandığında, SW-2 ile OSPF bitişikliği kopuyor.

SORU: OSPF bitişikliği neden RTR-2 ve SW-2 arasında kesiliyor?

RTR-2 ve SW-2 için yapılandırma eklenmiştir:

RTR-2 Yapılandırmaları

root@RTR-2> show configuration interfaces | display set    
set interfaces ge-0/0/0 unit 0 family inet filter input FBF-TEST
deactivate interfaces ge-0/0/0 unit 0 family inet filter
set interfaces ge-0/0/0 unit 0 family inet address 10.100.254.2/24
set interfaces ge-0/0/3 description "Uplink to WAN"
set interfaces ge-0/0/3 unit 0 family inet address 200.200.200.2/30
set interfaces lo0 unit 0 family inet address 10.100.199.4/32

root@RTR-2> show configuration routing-options | display set 
set routing-options interface-routes rib-group inet STAGING-RIB
set routing-options rib-groups STAGING-RIB import-rib inet.0
set routing-options rib-groups STAGING-RIB import-rib PATH-1.inet.0
set routing-options rib-groups STAGING-RIB import-rib PATH-2.inet.0
set routing-options router-id 200.200.200.2
set routing-options autonomous-system 1

root@RTR-2> show configuration routing-instances | display set  
set routing-instances PATH-1 instance-type forwarding
set routing-instances PATH-1 routing-options static route 10.100.30.0/24 next-hop 200.200.200.1
set routing-instances PATH-1 routing-options static route 10.100.30.0/24 qualified-next-hop 10.100.254.1 preference 100
set routing-instances PATH-2 instance-type forwarding
set routing-instances PATH-2 routing-options static route 10.100.30.0/24 next-hop 10.100.254.1
set routing-instances PATH-2 routing-options static route 10.100.30.0/24 qualified-next-hop 200.200.200.1 preference 100

root@RTR-2> show configuration firewall | display set             
set firewall family inet filter FBF-TEST term TERM-1 from source-address 10.100.190.0/24
set firewall family inet filter FBF-TEST term TERM-1 from source-address 10.100.191.0/24
set firewall family inet filter FBF-TEST term TERM-1 then routing-instance PATH-1
set firewall family inet filter FBF-TEST term DEFAULT then routing-instance PATH-2

root@RTR-2> show configuration protocols | display set 
set protocols bgp path-selection cisco-non-deterministic
set protocols bgp log-updown
set protocols bgp group TEST type external
set protocols bgp group TEST local-address 200.200.200.2
set protocols bgp group TEST import REJECT
set protocols bgp group TEST export ADVERTISED
set protocols bgp group TEST peer-as 65000
set protocols bgp group TEST neighbor 200.200.200.1 preference 20
set protocols ospf rib-group STAGING-RIB
set protocols ospf export BGP-to-OSPF
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 priority 150
set protocols ospf area 0.0.0.0 interface lo0.0 passive

SW-2 Yapılandırmaları

root@SW-2> show configuration interfaces | display set 
set interfaces ge-0/0/0 unit 0 family inet address 10.10.10.2/30
set interfaces ge-0/0/1 unit 0 family ethernet-switching port-mode access
set interfaces ge-0/0/1 unit 0 family ethernet-switching vlan members VLAN-254
set interfaces ge-0/0/11 description "Uplink to STAGING"
set interfaces ge-0/0/11 unit 0 family inet filter input FBF-TEST
set interfaces ge-0/0/11 unit 0 family inet address 10.100.100.1/30
set interfaces lo0 unit 0 family inet address 10.100.199.2/32
set interfaces vlan unit 2 family inet address 10.100.2.1/24
set interfaces vlan unit 251 family inet address 10.100.251.1/24
set interfaces vlan unit 254 family inet address 10.100.254.1/24

root@SW-2> show configuration routing-options | display set 
set routing-options nonstop-routing
set routing-options interface-routes rib-group inet STAGING-RIB
set routing-options static route 172.22.128.0/21 next-hop 10.22.76.1
set routing-options static route 10.22.20.0/24 next-hop 10.22.76.1
set routing-options static route 10.100.190.0/24 next-hop 10.100.100.2
set routing-options static route 10.100.191.0/24 next-hop 10.100.100.2
set routing-options rib-groups STAGING-RIB import-rib inet.0
set routing-options rib-groups STAGING-RIB import-rib PATH-1.inet.0
set routing-options rib-groups STAGING-RIB import-rib PATH-2.inet.0
set routing-options router-id 10.100.254.1

root@SW-2> show configuration routing-instances | display set  
set routing-instances PATH-1 instance-type forwarding
set routing-instances PATH-1 routing-options static route 10.100.30.0/24 next-hop 10.100.254.2
set routing-instances PATH-1 routing-options static route 10.100.30.0/24 qualified-next-hop 10.10.10.1 preference 100
set routing-instances PATH-2 instance-type forwarding
set routing-instances PATH-2 routing-options static route 10.100.30.0/24 next-hop 10.10.10.1
set routing-instances PATH-2 routing-options static route 10.100.30.0/24 qualified-next-hop 10.100.254.2 preference 100

root@SW-2> show configuration firewall | display set             
set firewall family inet filter FBF-TEST term TERM-1 from source-address 10.100.190.0/24
set firewall family inet filter FBF-TEST term TERM-1 from source-address 10.100.191.0/24
set firewall family inet filter FBF-TEST term TERM-1 then routing-instance PATH-1
set firewall family inet filter FBF-TEST term DEFAULT then routing-instance PATH-2

root@SW-2> show configuration protocols | display set   
set protocols ospf export ADVERTISED
set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 interface-type p2p
set protocols ospf area 0.0.0.0 interface vlan.2 passive
set protocols ospf area 0.0.0.0 interface vlan.251 passive
set protocols ospf area 0.0.0.0 interface vlan.254 priority 250

FBF testi ACL'yi ekleyebilir misiniz, sanırım
SW2'nin

ACL dahil edilmiştir. "Yapılandırma güvenlik duvarını göster" satırına bakın.
NetEng76

Arayüz yapılandırmalarını ekleyebilir misiniz?
user2697 18:13

Yukarıdaki orijinal gönderiye arayüz yapılandırmalarını ekledim.
NetEng76

Filtrenizin her dönemin sonunda "kabul et" satırı olmamalı mı? Aksi takdirde benzersiz bir trafik bırakmaz mı?
SpacemanSpiff

Yanıtlar:


4

Yani, dün JTAC ile çalıştıktan sonra, "Ben", gerçekten kendi başına çözdüğümden beri JTAC'a ihtiyacım yoktu. .

Güvenlik duvarı filtresi "else" trafiğini (VARSAYILAN terim) alıp, SW-2'ye trafik gönderdiği için her iki şekilde de yardımcı olmayan yönlendirme örneği PATH-2'ye gönderdiği için OSPF bitişikliği kopuyordu. "sonra kabul et" ifadesi kolayca yapılabilirdi

Yani, sorunu onarmak için ..

Yeni SW-2 ve RTR-2 düzeltilmiş yapılandırmalar:

delete routing-instances PATH-2
delete firewall family inet filter FBF-TEST term DEFAULT
set firewall family inet filter FBF-TEST term PERMIT-ANY then accept

SW-2 için yeni yapılandırma pasajları:

routing-options {
    nonstop-routing;
    interface-routes {
        rib-group inet STAGING-RIB;
    }
    static {
        route 10.100.190.0/24 next-hop 10.100.100.2;
        route 10.100.191.0/24 next-hop 10.100.100.2;
    }
    rib-groups {
        STAGING-RIB {
            import-rib [ inet.0 PATH-1.inet.0 ];
        }
    }
    router-id 10.100.254.1;
}
firewall {
    family inet {
        filter FBF-TEST {
            term TERM-1 {
                from {
                    source-address {
                        10.100.190.0/24;
                        10.100.191.0/24;
                    }
                }
                then {
                    routing-instance PATH-1;
                }
            }
            term PERMIT-ANY {
                then accept;
            }
        }
    }
}
routing-instances {
    PATH-1 {
        instance-type forwarding;
        routing-options {
            static {
                route 10.100.30.0/24 {
                    next-hop 10.100.254.2;
                    qualified-next-hop 10.10.10.1 {
                        preference 100;
                    }
                }
            }
        }
    }
}

RTR-2 için yeni yapılandırma pasajları:

routing-options {
    interface-routes {
        rib-group inet STAGING-RIB;
    }
    rib-groups {
        STAGING-RIB {
            import-rib [ inet.0 PATH-1.inet.0 ];
        }
    }
    router-id 200.200.200.2;
    autonomous-system 1;
}
firewall {
    family inet {
        filter FBF-TEST {
            term TERM-1 {
                from {
                    source-address {
                        10.100.190.0/24;
                        10.100.191.0/24;
                    }
                }
                then {
                    routing-instance PATH-1;
                }
            }
            term PERMIT-ANY {
                then accept;
            }
        }
    }
}
routing-instances {
    PATH-1 {
        instance-type forwarding;
        routing-options {
            static {
                route 10.100.30.0/24 {
                    next-hop 200.200.200.1;
                    qualified-next-hop 10.100.254.1 {
                        preference 100;
                    }
                }
            }
        }
    }
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.