จะใช้งาน BGP ซ้ำซ้อนผ่าน Quagga บน / 30 netblock ได้อย่างไร


9

BGP upstream ใหม่ของฉันได้จัดสรร netblock IPv4 / 30 เป็นบล็อกกาวสำหรับเชื่อมต่อเราเตอร์ของเรา อย่างไรก็ตามฉันต้องการเรียกใช้เราเตอร์สองตัวและมีการเฟลโอเวอร์ระหว่างพวกเขา หาก netblock มีขนาดใหญ่กว่า (/ 29) ฉันสามารถเรียกใช้เซสชัน BGP จากเราเตอร์ทั้งสองของฉันได้อย่างง่ายดายโดยมีหรือไม่มี VRRP (พวกเขาสามารถเรียกใช้ VRRP ได้เช่นกัน)

มีการกำหนดค่าความล้มเหลว VRRP / keepalived ที่เหมาะสมที่ฉันสามารถนำไปใช้ได้โดยไม่ให้พวกมันขยายบล็อกกาวหรือไม่

เราเตอร์ของฉันทั้งคู่กำลังใช้งาน Linux (หนึ่ง Ubuntu หนึ่ง Gentoo) ด้วย Quagga; การกำหนดค่าพื้นฐานทำงานได้ดี

คำตอบ:


8

คุณมีโซลูชัน Linux หลายตัวสำหรับการสำรองซ้ำซ้อนครั้งแรกจาก LAN ของคุณไปยังเราเตอร์สองตัว (Quagga เองไม่รองรับ VRRP แต่คุณสามารถใช้ Quagga ร่วมกับสิ่งเหล่านี้ได้โดยไม่มีปัญหา)

  • keepalived (ตามที่คุณพูดถึงแล้ว)
  • uCARP - พอร์ต Linux ของ CARP ของ OpenBSD (Common Address Redundancy Protocol)
  • vrrpd - ภูต VRRP ที่จัดทำเอกสารอย่างกระจัดกระจายและยังไม่ทดลองส่วนใหญ่ แต่ตัวเลือกยังคง

โปรดทราบว่าสิ่งเหล่านี้ไม่มีอะไรเกี่ยวข้องกับความซ้ำซ้อนของ BGP ซึ่งฉันเชื่อว่าเป็นปัญหาจริงที่คุณพยายามแก้ไข อย่างไรก็ตามควรมีความเป็นไปได้ที่จะเรียกใช้ VRRP ในฝั่งผู้ให้บริการของโฮสต์ Quagga ทั้งสองของคุณและกำหนดค่า VRRP IP เสมือนเป็น "ฝั่งของคุณ" ของ ISP ที่ได้รับมอบหมาย / 30 ของคุณและใช้เพื่อตรวจสอบกับ ISP ของคุณ เวลา failover น่าจะใกล้เคียงกัน (ถ้าไม่ใช่แค่ผมเร็วกว่า) วิธีแก้ปัญหาด้วย Linux-HA ด้านล่าง จากที่กล่าวมาฉันเชื่อว่าโซลูชั่น Linux-HA จะสะอาดและเรียบง่ายขึ้น แต่สิ่งนี้อาจขึ้นอยู่กับโทโพโลยี

สำหรับตัวเลือกของคุณที่มี BGP จะมีร่าง IETF สำหรับ "multisesssion BGP"ที่แนะนำรหัสความสามารถ BGP ใหม่ซึ่งมีจุดมุ่งหมายเพื่อสนับสนุนเซสชัน BGP จำนวนมากที่มีเพียร์เดียวกันกับที่อยู่เดียวกัน แต่ร่างนี้ถือว่าทั้งสองเซสชันนั้น อยู่ในอุปกรณ์เดียวกันอย่างไรก็ตามร่างเป็นของใหม่และการสนับสนุนสำหรับสิ่งนี้ไม่น่าจะอยู่ในการแก้ไขปัจจุบันของ Quagga

อีกทางเลือกหนึ่งคือการใช้Linux-HAเพื่อตั้งค่าคลัสเตอร์ heartbeat ระหว่างสองกล่องของคุณและกำหนดค่าเพื่อให้ถ้าเราเตอร์หลักล้มเหลว Heartbeat จะรับรู้สิ่งนี้และเปิด Quagga / BGPd / etc ในเราเตอร์สแตนด์บาย เมื่อมันเกิดขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.