ฉันสร้างห้องปฏิบัติการทดสอบที่ฉันกำลังทดสอบการส่งต่อตามตัวกรอง (FBF) หรือที่รู้จักในการกำหนดเส้นทางตามนโยบาย คำถามจะตามมาด้านล่าง แต่ก่อนอื่นรายละเอียด:
ด้านล่างเป็นแผนภาพโทโพโลยี:
วัตถุประสงค์:การรับส่งข้อมูลใด ๆ ที่กำหนดไปยัง Staging จากไซต์ 1 ควรกำหนดเส้นทางผ่านลิงก์ 2 เข้าสู่ WAN และไม่ผ่านลิงก์ 1 เนื่องจากลิงก์ 1 จะอิ่มตัวด้วยปริมาณการจำลองข้อมูลระหว่างศูนย์ข้อมูลสองแห่ง
- SW-1 & SW-2 เป็นสวิตช์ Juniper EX4200
- RTR-1 & RTR-2 เป็นของ Juniper J4350
- PE-1 & PE-2 เป็นเราเตอร์ของซิสโก้ 1841 ที่ใช้ ISIS และ MPLS VPN เพื่อจำลองผู้ให้บริการ WAN กระดูกสันหลัง
SW-1, SW-2, RTR-1 และ RTR-2 เป็นเพื่อนบ้านของ OSPF ทั้งหมดในพื้นที่ 0 ทั้ง RTR-1 และ RTR-2 เป็น ASBR และฉีดเส้นทาง BGP ที่เรียนรู้ไปสู่ OSPF เราเตอร์แต่ละตัวมีการโฆษณาเส้นทางไปยัง WAN สำหรับเว็บไซต์นั้น ๆ (รวมถึงเส้นทางที่ถูกจัดเตรียมไว้ล่วงหน้าสำหรับเว็บไซต์อื่นเพื่อความซ้ำซ้อน)
การกำหนดเส้นทางการรับส่งข้อมูลจากไซต์ 1 ไปยัง Staging ที่ไซต์ 2 ทำได้ง่าย ๆ เพียงแค่แจกจ่ายเส้นทางสแตติกไปยัง Staging บน SW-2 ลงใน OSPF ใหม่ด้วยการวัดที่สูงขึ้น เนื่องจากเส้นทางนั้นได้รับการโฆษณาโดย RTR-2 ลงใน WAN RTR-1 จะเรียนรู้ว่าเส้นทางนั้นและแจกจ่ายต่อไปยัง OSPF ด้วยตัวชี้วัดที่ 0 เส้นทาง OSPF ที่เรียนรู้บน SW-1 จาก SW-2 จะมีตัวชี้วัดที่สูงกว่า การกำหนดเส้นทางจะเป็นที่ต้องการเหนือ WAN
ส่งคืนการรับส่งข้อมูลจากไซต์ 2 ยังต้องไหลด้วยวิธีนี้เพื่อให้เราหลีกเลี่ยงการกำหนดเส้นทางแบบไม่สมมาตร FBF ถูกนำไปใช้บนอินเทอร์เฟซขาเข้า (ลิงก์ 4) เข้าสู่ SW-2 ตัวกรองนี้จะรับการจราจรทั้งหมดที่มาจาก Staging (10.100.190 / 24) และสร้าง RTR-2 ถัดไป ส่วนหนึ่งของ FBF นี้ทำงานได้ตามที่ฉันได้ทดสอบในห้องแล็บ
เนื่องจากเส้นทางที่ต้องการของ RTR-2 กลับสู่ไซต์ 1 คือผ่านลิงก์ 1 เราจึงต้องใช้ FBF อีกครั้งที่อินเทอร์เฟซ LAN ขาเข้าของ RTR-2 (หันหน้าไปทาง SW-2)
นี่คือปัญหา ... เมื่อ FBF ถูกนำไปใช้กับเราเตอร์นั้น OSPF adjacency ที่มีตัวแบ่ง SW-2
คำถาม:เพราะเหตุใด OSPF ถึงการแตกกันระหว่าง RTR-2 และ SW-2
มีการแนบการกำหนดค่าสำหรับ RTR-2 และ SW-2:
RTR-2 Configs
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 Configs
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