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 ได้อย่างปลอดภัย