Operational BGP Communities


Prefix redistribution controlling
Route server peers จะสามารถจัดการนโยบายการกำหนดเส้นทางขาออกผ่านกลไก mechanism โดยใช้ BGP communities
ขณะนี้เรามีตัวเลือกดังต่อไปนี้:
BGP Community BGP Extended Community BGP Large Community Description
0:peer-as RT:0:peer-as 63529:0:peer-as Do not announce a prefix to a certain peer
63529:peer-as RT:63529:peer-as 63529:1:peer-as Announce a prefix to a certain peer
0:63529 RT:0:63529 63529:0:0 Do not announce a prefix to any peer
63529:63529 RT:63529:63529 63529:1:0 Announce a prefix to all peers
65003:peer-as RT:65003:peer-as 63529:103:peer-as Prepend 3 time to peer-as
65002:peer-as RT:65002:peer-as 63529:102:peer-as Prepend 2 time to peer-as
65001:peer-as RT:65001:peer-as 63529:101:peer-as Prepend 1 time to peer-as
สำหรับปลายทางที่ใช้ ASN แบบ 32 บิต โปรดพิจารณาใช้ BGP Extended Communities หรือ BGP Large Communities

ด้วย BGP Large Communities Attribute [RFC8092] ผู้ให้บริการเครือข่ายสามารถต่อยอดจากแนวทางปฏิบัติที่เป็นที่ยอมรับใน [RFC1997]

การใช้ BGP Large Communities มีอธิบายไว้ใน [RFC8195]
ตัวอย่าง

{63529:63529} or no community
This route will be advertised to anyone (Default)
{63529:63529 0:63529} or {0:63529}
This route will not be advertised to anyone

{0:65001}
This route will be advertised to everyone except AS 65001
{0:65001 0:65002}
This route will be advertised to everyone except AS 65001 and AS 65002
{0:65003 63529:65003}
This route will be advertised to everyone except AS 65003

{0:63529 63529:65001}
This route will be advertised toward AS 65001 only
{0:63529 63529:65001 63529:65002}
This route will be advertised toward AS 65001 and AS 65002 only
{0:63529 63529:65001 63529:65002 63529:65003 0:65002}
This route will be advertised toward AS 65001 and AS 65003 only
Config guide
ip classless
ip bgp-community new-format
!
router bgp (your AS)
.
.
.
address-family ipv4
  neighbor 203.159.68.68 activate
  neighbor 203.159.68.69 activate
  neighbor BKNIX-RS-v4 send-community
  neighbor BKNIX-RS-v4 next-hop-self
  neighbor BKNIX-RS-v4 route-map BKNIX-out out
  neighbor BKNIX-RS-v4 route-map BKNIX-in in
!
route-map BKNIX-in permit 10				#Accept all prefixes from RS
!
route-map BKNIX-out permit 10				#Do not announce this prefixes to everyone
   match ip address prefix-list filter-out
   set community 0:63529 additive
!
route-map BKNIX-out permit 20
   match community .....				#Announce all route matched these community to everyone
   set community 63529:63529

route-map BKNIX-out permit 30
   match community .....				#Deny route matched these community to ASN131071 (32 bits ASN)
   set extcommunity rt 0:131071

!
ip prefix-list filter-out seq 10 permit x.x.x.x/y
!

Graceful BGP Session Shutdown
BKNIX Route servers ยอมรับ well-known BGP Community,
RFC 8326 (Graceful BGP Session Shutdown) ซึ่งระบุว่าเซิร์ฟเวอร์เส้นทางของเราต้องคำนวณใหม่และแจกจ่ายเส้นทางสำรองใหม่ (หากมี) สำหรับการประกาศ Prefix ของคุณ
*ขอแนะนำให้ RS clients ทั้งหมดควรใช้ GRACEFUL_SHUTDOWN ที่ขาเข้าไปยัง RS BGP sessions ของคุณ NLNOG มีตัวอย่างที่ดี ที่นี่.

ตัวอย่าง : การดำเนินงานในช่วงเวลาบำรุงรักษา
  • สมาชิกประกาศ prefixes ทั้งหมดด้วย BGP Community GRACEFUL_SHUTDOWN (65535:0) ไปยัง route servers
  • Route servers จะกำหนด BGP local_preference ของ prefixes เหล่านั้นเป็น 0
  • Route servers จะคำนวณเส้นทางสำรองของ prefixesเหล่านี้ใหม่
    • หาก prefixes มีเส้นทางอื่นจะถูกประกาศให้กับผู้ใช้
    • หาก prefixes ไม่มีเส้นทางอื่น จะยังคงถูกประกาศด้วย BGP Community GRACEFUL_SHUTDOWN.
  • ผู้ใช้รายอื่นจะได้เรียนรู้เส้นทางสำรองและส่งต่อทราฟฟิกผ่านเส้นทางใหม่ และสมาชิกสามารถ shutdown BGP session ได้อย่างปลอดภัย


ขับเคลื่อนโดย
สนับสนุนโดย