Я створив тестову лабораторію, де я тестую перенаправлення на основі фільтрів (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