JUNIPER: Чому примикання OSPF порушується, коли я включаю FBF на інтерфейс OSPF?


9

Я створив тестову лабораторію, де я тестую перенаправлення на основі фільтрів (FBF), він же маршрутизацію на основі політики. Питання випливатиме нижче, але спочатку деталі:

Нижче наведена схема топології:

введіть тут опис зображення

ЗАВДАННЯ: Будь-який трафік, призначений для Постановки з Сайту 1, повинен пролягати через Посилання 2 в WAN, а НЕ через Посилання 1. Оскільки Посилання 1 буде насичена трафіком реплікації між двома центрами обробки даних.

  • SW-1 і SW-2 - вимикачі Juniper EX4200
  • RTR-1 і RTR-2 - це ялівець J4350
  • PE-1 і PE-2 - це маршрутизатори Cisco 1841, які працюють ISIS і MPLS VPN для імітації магістральної мережі WAN постачальника.

SW-1, SW-2, RTR-1 і RTR-2 - всі сусіди OSPF в області 0. І RTR-1, і RTR-2 є ASBR та вводять маршрути BGP, засвоєні в OSPF. Кожен маршрутизатор рекламує маршрути в WAN для відповідного сайту (а також попередньо відкладені маршрути для іншого сайту для надмірності).

Маршрутизація трафіку від сайту 1 до етапу на сайті 2 легко здійснити простим перерозподілом статичного маршруту на етапі на SW-2 в OSPF з більш високою метрикою. Оскільки RTR-2 рекламує цей маршрут у WAN, RTR-1 вивчить цей маршрут та перерозподілить його в OSPF з показником 0. Маршрут OSPF, вивчений на SW-1 від SW-2, матиме більш високий показник, таким чином маршрутизація буде кращою для WAN.

Зворотний трафік із сайту 2 також повинен протікати таким чином, щоб уникнути асиметричної маршрутизації. FBF застосовується у вхідному інтерфейсі (Link 4), що входить до SW-2. Цей фільтр візьме весь трафік, отриманий від Staging (10.100.190 / 24), і зробить RTR-2 чергового переходу. Ця частина FBF працює, як я тестував у лабораторії.

Оскільки бажаний маршрут RTR-2 назад до сайту 1 здійснюється через Link 1, нам потрібно застосувати FBF ще раз у вхідному інтерфейсі локальної мережі RTR-2 (звернений до SW-2).

Ось проблема ... Коли FBF застосовується до цього маршрутизатора, сумісність OSPF з SW-2 переривається.

ПИТАННЯ: Чому порушення RSP-2 та SW-2 порушує суміжність OSPF ??

Конфігурація для RTR-2 та SW-2 додається:

RTR-2 Налаштування

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 Налаштування

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

Чи можете ви включити тест FBL-тесту FBF, я гадаю, що ви не виключаєте Ip-адресу SW2 або ви
включаєте

ACL включений. Шукайте рядок "показати брандмауер конфігурації".
NetEng76

Чи можете ви включити конфігурації інтерфейсу?
користувач2697

Я додав конфігурації інтерфейсу до початкової публікації вище.
NetEng76

Чи не повинен ваш фільтр мати рядок "тоді прийняти" в кінці кожного терміну? Не вдасться інакше скинути неперевершений трафік?
SpacemanSpiff

Відповіді:


4

Отже, після вчорашньої роботи з JTAC, "я", як і в JATAC, мені справді не знадобився, оскільки я самостійно розібрався в проблемі .. зрозумів, що мій фільтр брандмауера трохи зайвий і йому не вистачає заяви "дозволити будь-яку". .

Сумісність OSPF порушується, тому що фільтр брандмауера приймав трафік "else" (термін DEFAULT) і надсилав його до маршрутизатора PATH-2, що жодним чином не допомогло, оскільки він надсилав трафік назад до SW-2, щось заява "тоді прийняти" зробила б легко

Отже, для вирішення питання ..

Нові корегувані корективи SW-2 та RTR-2:

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:

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:

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;
                    }
                }
            }
        }
    }
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.