องค์กรที่ดีขึ้น Multihoming


33

ฉันต้องการรับความคิดเห็นเกี่ยวกับวิธีการที่ฉันสามารถปรับปรุง BGP dual-provider, dual-router design ผู้ให้บริการแต่ละรายจัดหาซับเน็ตสาธารณะ / 24 ฉันจะอ้างถึงเราเตอร์, วงจร, เครือข่ายย่อย, กลุ่ม HSRP และผู้ให้บริการเป็น A และ B ตามลำดับ แบนด์วิดท์ในแต่ละวงจรเพียงพอสำหรับการโหลดทั้งหมด

การออกแบบในปัจจุบัน

การออกแบบในปัจจุบันพยายามที่จะบรรลุความสมมาตรต่อผู้ให้บริการ ในสถานะคงที่ตรรกะการกำหนดเส้นทางที่ตั้งใจคือการรับส่งข้อมูลไปยัง / จากเครือข่ายย่อย A จะส่งผ่านเฉพาะวงจร A และการรับส่งข้อมูลไปยัง / จากเครือข่ายย่อย B จะส่งผ่านเฉพาะวงจร B วงจรจะกลับกันและกัน

ผู้ให้บริการโฆษณาเส้นทางเริ่มต้นเท่านั้น การกำหนดเส้นทางขาออกมีการผสมผสานระหว่าง PBR และ HSRP เราเตอร์ไม่มีการเราต์ระหว่างกัน: ไม่มี iBGP, ไม่มี OSPF, ไม่มีการจัดเส้นทางสแตติก มีกลุ่ม HSRP สองกลุ่มที่ติดตามเส้นทางเริ่มต้นแทน เราเตอร์ A เป็นอุปกรณ์หลักสำหรับกลุ่ม HSRP A และเราเตอร์ B เป็นอุปกรณ์หลักสำหรับกลุ่ม HSRP B อุปกรณ์ปลายทางมีเส้นทางเริ่มต้นที่ชี้ไปที่กลุ่ม HSRP A และ PBR ซึ่งนำทราฟฟิกที่มาจากเครือข่ายย่อย B ถึงกลุ่ม HSRP B. การกำหนดเส้นทางขาเข้า ชุมชน. Subnet A ได้รับการต่อเติมและสื่อสารบนวงจร B และเครือข่ายย่อย B นั้นได้รับการเติมและสื่อสารบนวงจร A

ฉันเห็นห้องมากมายสำหรับการปรับปรุงในการออกแบบนี้ การขาดความตระหนักในโทโพโลยีของอินเทอร์เน็ตรวมกับความสัมพันธ์ของวงจรกำจัดการเลือกเส้นทางที่ดีที่สุดอย่างสมบูรณ์ มีความกังวลเกี่ยวกับการกำหนดระดับของผู้ให้บริการและการออกแบบได้รับการหาเหตุผลเข้าข้างตนเองเพื่อให้ 'ประสิทธิภาพที่ยอมรับได้' และง่ายต่อการแก้ไขปัญหา อันที่จริงการออกแบบนั้นไม่สามารถทำให้เรียบง่ายขึ้นได้ ฉันได้แสดงให้เห็นว่าการส่งผ่าน AS พิเศษนั้นเพิ่ม 6 ฮอปส์และ 63 มิลลิเซคอน (+ 421%) ให้กับ RTT ฉันไม่ต้องการที่จะยอมรับการยอมรับ

การออกแบบที่ดีขึ้น

การออกแบบที่ดีกว่าทำให้เราเตอร์มีการรับรู้ทอพอโลยีทางอินเทอร์เน็ตมากที่สุด อัลกอริธึมของพา ธ ที่ดีที่สุดจะถูกทิ้งไว้เพื่อกำหนดตรรกะการเราต์ขาเข้าและขาออก วงจรจะสำรองซึ่งกันและกันในสถานะล้มเหลว

ผู้ให้บริการโฆษณามุมมองแบบเต็ม เราเตอร์ใช้ iBGP และ OSPF HSRP ถูกกำจัด การกำหนดเส้นทางขาออกจะเป็นเส้นทางที่ดีที่สุดที่อิงตามจุดหมายปลายทางอย่างแท้จริงและการกำหนดเส้นทางขาเข้าจะถูกทิ้งไว้ที่อัลกอริทึมของเส้นทางที่ดีที่สุดและผู้ให้บริการการขนส่งเปลี่ยนใจ

ตอนนี้ฉันพิมพ์มันออกมามันดูเรียบง่ายขึ้น อย่างน้อยที่สุดคำอธิบายก็ใช้น้อยลง มีความกังวลเกี่ยวกับความไม่สมดุล แต่ฉันได้เห็นความไม่สมดุลในการออกแบบในปัจจุบัน ฉันคิดว่าพวกเขามีแนวโน้มที่จะได้รับความไม่สมดุลอย่างเท่าเทียมกันและไม่ต้องกังวลกับฉัน เราไม่เคยเห็นปัญหาเป็นผล ในไม่ช้ามันก็ถูกผลักไสให้ไปยังดินแดนแห่งไอเอฟเอส“ เกิดอะไรขึ้นถ้า 'เราต้องแก้ไขปัญหาบางอย่าง?”

ฉันจะออกจากฐานที่นี่หรือว่าฉันโดนเล็บบนหัว? คนอื่น ๆ แก้ไขปัญหานี้ได้อย่างไร? Google จะทำอย่างไร


รายละเอียดที่ดีเยี่ยมและคำอธิบาย ยินดีต้อนรับ!
Pandom

ตามเนื้อผ้าคำถาม "ฉันต้องการได้รับความคิดเห็นบางอย่างเกี่ยวกับการออกแบบของฉัน" ไม่ใช่คำถาม SE ที่ยอดเยี่ยมจริงๆ ... แต่นี่สามารถพูดคุยกันได้ใน meta
Aaron

คำตอบ:


16

ใช่คุณตีตะปูบนหัว

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

ส่วนตัวฉันเกลียด PBR มันเป็นหนึ่งในเทคโนโลยีเหล่านั้นที่เมื่อฉันตัดสินใจว่ามันเป็นทางออกที่ดีที่สุดสำหรับปัญหาฉันหยุดและใช้เวลาสักครู่เพื่อดูว่าฉันเข้าใจธรรมชาติที่แท้จริงของปัญหาหรือไม่แม้กระทั่งย้อนกลับไปหาปัญหาทางธุรกิจที่จะแก้ไข คือ. เมื่อฉันทำเช่นนั้นฉันมักจะพบว่ามีวิธีการแก้ปัญหาโดยไม่ต้องใช้เทคโนโลยีเช่นนั้น

การมีเส้นทางอินเทอร์เน็ตเต็มรูปแบบในเราเตอร์ของคุณจะทำให้คุณคุ้นเคย แต่เมื่อคุณชินกับมันแล้วมันเป็นเรื่องง่ายมากที่จะเข้าใจและแก้ไขปัญหา แน่นอนว่ามี "ชิ้นส่วนเคลื่อนไหว" ของโปรโตคอลที่แตกต่างกันจำนวนน้อยที่ต้องกังวล

คุณไม่ต้องการให้มีเส้นทางอินเทอร์เน็ตเต็มรูปแบบในฐานข้อมูล OSPF ของคุณดังนั้นคุณจึงต้องการโฆษณาค่าเริ่มต้นผ่าน OSPF ในเครือข่ายของคุณ (หรืออาจเป็นค่าเริ่มต้นคงที่ ... โดยส่วนตัวแล้วฉันต้องการค่าเริ่มต้นใน OSPF) สิ่งนี้จะย้ายทราฟฟิกไปยังเราเตอร์อินเทอร์เน็ตที่พูดของ BGP ซึ่งสามารถทำการตัดสินใจอย่างละเอียดมากขึ้นว่ามีเส้นทางอินเทอร์เน็ตเต็มรูปแบบ

ซึ่งจะทำให้คุณใกล้กับ "เส้นทางที่ดีที่สุดตามจุดหมายปลายทาง" ยังมีอีกหลายกรณีที่การจราจรจะทำในสิ่งที่คุณไม่คาดหวังดังนั้นคุณจะต้องคุ้นเคยกับกระบวนการเลือกเส้นทาง BGP


ขอบคุณเจฟ ฉันเห็นด้วยกับการจัดการของคุณใน PBR ฉันได้เห็นมันนำมาใช้ในรูปแบบที่น่ากลัว ฉันได้ฉีก PBR ออกจากเครือข่ายมากกว่าที่ฉันจำได้ ฉันเคยจัดการสภาพแวดล้อมที่ทำเป็นชั้น ๆ ที่ PBR ถูกปรับใช้เป็นกลไกการจัดเส้นทางเสมือนพร้อมแผนที่เส้นทางที่ไม่ซ้ำกันต่อ SVI (100's) PBR ยังมีใบอนุญาต / ไม่มีชุดคำสั่งที่ทำให้เกิดการสลับกระบวนการ ในสำเนาถาวรมันเป็นเหมือน 60 หน้าของการตั้งค่า ไม่จำเป็นต้องพูดว่าฉันเอาลูกบอลทำลายมันไป แทนที่ด้วย VRF
Dennis Olvany

6

เพื่อเสนอแนวทางที่แตกต่างให้กับคนอื่น ๆ ที่ได้รับไปแล้วซึ่งอาจจะใช่หรืออาจจะไม่ดีกว่าความคิดที่มีอยู่ แต่โดยพื้นฐานแล้วต้องผ่านความคิดพิเศษบางอย่าง

ฉันจะบอกว่าสองขั้นตอนง่าย ๆ ที่คุณสามารถทำได้เพื่อปรับปรุงสถานการณ์ปัจจุบันของคุณมีดังนี้

ขั้นตอนที่ 1 ;

รับตาราง BGP เต็มรูปแบบจากผู้ให้บริการทั้งสอง - ตอนนี้คุณจะมีการกำหนดเส้นทางขาออกที่เหมาะสมมากขึ้นเพราะคุณจะกำหนดเส้นทางผ่านผู้ให้บริการขนส่งด้วยเส้นทาง AS ที่เล็กที่สุดไปยังปลายทางของคุณ อย่างที่คุณพูดคุณสามารถลบ HSRP และโฆษณาเส้นทางเริ่มต้นอย่างง่ายใน OSPF และรัน iBGP ระหว่างเราเตอร์สองขอบของคุณ

ขั้นตอนที่ 2 ;

ตั้งค่า AS prepends และคอมมิวนิตี้อื่น ๆ บนเราเตอร์ทั้งสองของคุณเพื่อควบคุมทราฟฟิกขาออกอย่างละเอียดตามที่คุณต้องการ ดังนั้น ISP B อาจมีเส้นทางที่ดีกว่าไปยัง subnet บางแห่ง แต่คุณอาจซื้อการขนส่งเพิ่มเติมจาก ISP A และค่อนข้างเมื่อผ่านพวกเขาและอื่น ๆ


สมมติว่าสอง / 24 ที่คุณกล่าวถึงมีพื้นที่ที่อยู่อิสระของ PI ดังนั้นคุณจึงประกาศผ่านผู้ให้บริการทั้งสองรายหรือผู้ให้บริการทั้งสองรายตกลงที่จะประกาศพื้นที่ที่อยู่ IP เดียวกันให้กับคุณคุณสามารถประกาศคำนำหน้าทั้งสอง โดยไม่ต้องมีการเตรียมความพร้อมหรือชุมชนและรับการกำหนดเส้นทางขาเข้าที่ดีขึ้นเช่นกัน (แน่นอนเว้นแต่คุณมี CDR บางตัวที่คุณต้องเพิ่มหรือคล้ายกันซึ่งในกรณีนี้คุณสามารถปรับได้ตามต้องการ)


ขอบคุณ javano ฉันคิดว่าเรายอมรับว่านโยบายการกำหนดเส้นทางขาเข้าและขาออกเป็นอันตราย ฉันอยากทำอะไรกับ PBR การเตรียมการและชุมชน!
Dennis Olvany

3

เริ่มง่ายๆจากนั้นเพิ่มความซับซ้อนเมื่อจำเป็นเท่านั้น ฉันจะถามว่ามีความจำเป็นต้องเรียกใช้ OSPF บนเราเตอร์ขอบอินเทอร์เน็ตของคุณหรือไม่ Boot PBR ไปที่ขอบและใช้เฉพาะในเครือข่ายภายในของคุณ

  1. ใช้เส้นทางอินเทอร์เน็ตเต็มรูปแบบหากเราเตอร์ของคุณมีหน่วยความจำ แต่ทำการกรอง! โยนทุกอย่าง gt a / 24
  2. ใช้เส้นทางเริ่มต้นจาก A และ B
  3. ต้องเรียกใช้ iBGP เพื่อให้เราเตอร์ของคุณตัดสินใจได้ดีที่สุดโดยพิจารณาจากส่วนนำหน้าทั้งหมดที่ได้รับจาก A และ B
  4. หากคุณวางแผนที่จะใช้ทั้ง A และ B's / 24s กับผู้ให้บริการทั้งสองคุณจะสามารถมีอิทธิพลกับปริมาณการใช้งานขาเข้าโดยการเพิ่ม A / 24 บนเครือข่ายของ B และในทางกลับกัน ทั้งสอง / 24s จะต้องโฆษณา! ตรวจสอบกับ ISP ของคุณสำหรับชุมชนของพวกเขาในการตั้งค่าการเตรียมการสำหรับคุณ
  5. ใช้กลุ่ม HSRP สองกลุ่มที่แตกต่างกันสำหรับทราฟฟิกขาออกของคุณจากไฟร์วอลล์ คุณสามารถตั้งค่า ECLB เพื่อแบ่งปันให้กับเราเตอร์สองตัวของคุณได้ ค่าใช้จ่ายเท่ากับ Load Balancing

ทั้งหมดนี้สามารถลดความซับซ้อนได้หากคุณใช้เพียงโฆษณาเดียว / 24 โฆษณาทั้ง A และ B

ต่อมาให้มองหาความซับซ้อนที่มากขึ้นเพื่อวิศวกรรมการป้องกันและการจราจรที่ดีขึ้น:

  1. ทำความคุ้นเคยกับชุมชนของ A และ B เนื่องจากคุณอาจต้องการใช้ peer-maps เพื่อกำหนด localpref เพื่อกำหนดเส้นทางที่ใช้ A กับ B
  2. ตั้งค่าเส้นทางเริ่มต้นแบบคงที่แบบลอยตัวบนเราเตอร์ทั้งสองเป็นการสำรองฉุกเฉินกับทุกสิ่งในกรณีที่ BGP ของคุณระเบิด

    ip route 0.0.0.0 0.0.0.0 a.b.c.d 254
    
  3. ดูวิธีการโฆษณาที่ซับซ้อนมากขึ้นเพื่อควบคุมนโยบายขาเข้าของคุณเช่นครึ่งหนึ่งของพื้นที่ IP ของคุณที่จะผ่าน A และอีกครึ่งหนึ่งผ่าน B สำหรับหนึ่ง / 24 คุณสามารถโฆษณา / 24 ถึงทั้ง A และ B แต่แยกออกเป็น two / 25's และโฆษณาที่ต่ำกว่า / 25 ถึง A และ Upper / 25 ถึง B

  4. ใช้การกำหนดค่าแบบซอฟต์ใหม่เพื่อให้คุณสามารถปรับแต่งนโยบายของคุณและทำการรีเซ็ตแบบนุ่มนวลในเซสชัน BGP ดังนั้นคุณจะไม่ทำให้คำนำหน้าของคุณลดลงอีกด้านหนึ่งหากคุณรีเซ็ตเซสชัน (หรือล้าง) อย่างสมบูรณ์ การเปลี่ยนแปลงนโยบายต้องมีการรีเซ็ต


1

ดังนั้นสิ่งที่ฉันเข้าใจจากการเขียนคือคุณไม่จำเป็นต้องตัดสินใจตามเส้นทาง AS เพื่อไปยังเครือข่ายย่อยภายนอกและจุดประสงค์เดียวของการกลับบ้านคู่กับ ISP สองแห่งคือการซื้อความซ้ำซ้อนเพื่อเข้าถึงอินเทอร์เน็ต หากเป็นเช่นนั้นคุณไม่จำเป็นต้องเรียกใช้ BGP คุณสามารถยอมรับเส้นทางเริ่มต้นเดียวกับที่คุณได้รับจากทั้งผู้ให้บริการของคุณ ตอนนี้สำหรับด้านโลคัลของเครือข่ายให้เรียกใช้พื้นที่ ospf เดียวบนเราเตอร์ที่เชื่อมต่อกับ ISP บนอินเทอร์เฟซที่หันเข้าหา LAN ของคุณ (ไม่รวมส่วนต่อประสาน ISP ภายใต้กระบวนการ) และขึ้นอยู่กับความเรียบง่ายของการออกแบบ คุณสามารถเพิ่มเราเตอร์ในพื้นที่ต่าง ๆ และสรุปเครือข่ายย่อยที่ขอบเขตเครือข่าย แต่สำหรับสองเครือข่ายฉันคิดว่าขนาดของฐานข้อมูล OSPF หรือจำนวนของน้ำท่วม LSA ไม่ได้เป็นปัญหาใหญ่

ในเราเตอร์ OSPF แต่ละตัวที่เชื่อมต่อกับ ISP ให้แจกจ่ายเส้นทางเริ่มต้นที่เรียนรู้ไปสู่ ​​OSPF ใหม่โดยใช้คำสั่ง "ค่าเริ่มต้นข้อมูลกำเนิด"

ข้อดีสองประการ:

  1. ด้วยการออกแบบนี้เมื่อคุณขยายเครือข่ายคุณสามารถเปิดใช้งาน BGP กับผู้ให้บริการและเพียงยอมรับเส้นทางเริ่มต้นโดยไม่ต้องแตะอุปกรณ์ดาวน์สตรีม จนกว่าคุณจะยืนยันว่าคุณได้รับเส้นทางเริ่มต้นจาก BGP คุณก็เป็นคนดี

  2. เมื่อใดก็ตามที่คุณต้องการกำหนดเส้นทางการรับส่งข้อมูลของ ISP เพื่อการบำรุงรักษาเพียงลบ "ข้อมูลเริ่มต้นที่เป็นต้นกำเนิด" ออกจากกระบวนการ OSPF บนเราเตอร์นั้นและดำเนินการบำรุงรักษาต่อไป ไม่ต้องการอะไรอีก

และฉันเห็นด้วยกับคำตอบก่อนหน้านี้ในการกำหนดเส้นทางแบบสมมาตรนั้นได้รับการจัดอันดับมากเกินไปฉันค่อนข้างจะปรับขนาดได้และง่ายต่อการบำรุงรักษา


หากฉันเข้าใจแผนของ @ user161 เป้าหมายคือการเลือกเส้นทางขาออกที่ชาญฉลาดยิ่งขึ้น คุณจะประสบความสำเร็จได้อย่างไรในโซลูชันที่ใช้ OSPF ของคุณ
พอลเกียร์

ขอบคุณ Vinny การล้มเหลวของทราฟฟิกของปริมาณการใช้เกินจำนวนนั้นไม่มีปัญหา แต่ฉันไม่ต้องการ BGP เพื่อให้ระบบเข้าแทนที่ หากนี่เป็นเพียงผู้ใช้ที่ได้รับ PAT เพื่ออินเทอร์เน็ตอาจเป็นไปได้ แต่นี่เป็นสภาพแวดล้อมของเว็บโฮสติ้ง
Dennis Olvany

@ user161: แน่นอนถ้าเราต้องการ failover ขาเข้าสำหรับซับเน็ตเริ่มต้นของคุณคุณต้องรัน BGP ตรวจสอบกับ ISP ของคุณเพื่อดูว่าพวกเขาสนับสนุนความสามารถ ORF สำหรับการส่งสัญญาณแบบ BGP หรือไม่หากคุณสามารถโฆษณาเครือข่ายย่อยที่มาจากท้องถิ่นผ่านทาง BGP ด้วยตัวกรองขาเข้าบนเราเตอร์เส้นขอบเพียงเพื่อยอมรับเส้นทางเริ่มต้น ถ้า ISP ไม่สนับสนุน ORF ก็ไม่มีทางเลือกอื่นที่ดีไปกว่าการซื้อเราเตอร์ที่มีน้ำผลไม้มากขึ้น ..
Vinny

1

หากตาราง BGP เต็มนั้นมากเกินไปสำหรับคุณฉันคิดว่าคุณสามารถพิจารณาได้รับเพียงส่วนหนึ่ง บางทีผู้ให้บริการ A และ B แต่ละรายจะโฆษณาเส้นทางเริ่มต้นและเส้นทาง AS ของท้องถิ่น คุณจะต้องเรียกใช้ iBGP ภายใน ด้วยวิธีนี้คุณจะมีเส้นทางที่สั้นที่สุดสำหรับทุกสิ่งที่เชื่อมต่อโดยตรงกับผู้ให้บริการและจะใช้เส้นทาง AS แบบดาวน์สตรีม


ขอบคุณเคลลี่ การออกแบบที่ดีกว่าจะเรียกใช้ iBGP การรีเฟรชฮาร์ดแวร์กำลังกระตุ้นให้ตรวจสอบสถาปัตยกรรมดังนั้นฉันจึงไม่กังวลเกี่ยวกับเราเตอร์ที่จะสามารถจัดการกับมันได้ ทีมขายกล่าวว่าการเปลี่ยนจาก IOS เป็น JUNOS เป็นจุดเชื่อมต่อ ฉันไม่แน่ใจว่าฉันเห็นด้วยจนถึงตอนนี้
Dennis Olvany

ฉันไม่รู้ว่าฉันจะบอกว่ามันเป็นกุญแจไข ... มันน่ากลัวที่จะเรียนรู้ไม่เพียง แต่ไวยากรณ์ใหม่ แต่แนวคิดใหม่ของไวยากรณ์ สิ่งที่ฉันจะพูดก็คือฉันเชื่อว่ามันคุ้มค่า JunOS จะทำให้คุณหัวข่วนอยู่ครู่หนึ่ง แต่ในบางจุดมันจะคลิกและมันจะเริ่มมีเหตุผล คุณจะต้องมองหาสิ่งต่าง ๆ แน่นอน (การรู้ไวยากรณ์ของภาษานั้นไม่เหมือนกับการรู้คำศัพท์) แต่โดยมากแล้วมันจะสมเหตุสมผล
Jeff McAdams
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.