SOO (Site Of Orgin) – BGP Extended Community Attribute is used to prevent the routing loop in a particular multi-homed MPLS L3 VPN network scenario. When CE routers are configure for receive the routes from same AS.
For Example: In below topology, Two CE routers are connecting with a single ISP. CE1 is connecting with PE1 using eBGP and CE2 is connecting with PE2 using eBGP. CE1 and CE2 both are having EIGRP neighborship. PE1 and PE2 both are having VPNv4 iBGP neghborship as well as OSPF and MPLS is running at ISP end.
CE1 is having one network configured as 18.104.22.168/32 and CE1 is advertising it to PE1. CE1 is also performing redistribution from EIGRP to BGP.
On another end, CE2 is performing redistribution from BGP to EIGRP.
Here, Big problem is both CE(CE1 & CE2) both having configured for receive the routes from same BGP AS.
Suppose, now network 22.214.171.124/32 went down on CE1. But it was advertised to PE1 from CE1. PE1 has advertised it to PE2. PE2 is advertising this network to CE2. CE2 is storing this network in its table. Because it has been configured to receive the routes from same network. Now CE2 is redistributing this network into EIGRP and CE1 is learning it through EIGRP.
So now CE1 will continue to advertise this network (126.96.36.199/32) to P1, just after change the next-hop IP address.
Now a routing loop has been created. all routers (CE1-PE1-PE2-CE2 – CE1-PE1-PE2-CE2) are advertising the network to each other. But network is down in reality.
This problem can be resolve by using many things :
- By removing network from redistribution
- Stop receiving routes from same BGP AS at CE2
- By stop advertising network to PE1 from CE1
- SOO (Site Of Orgin) – BGP Extended Community Attribute
and many more.
But best solution is site of origin (SoO). We can request to our ISP to configure the SoO. Below is the example of SoO:
Example ( SOO (Site Of Orgin) – BGP Extended Community Attribute ):
Site Of Origin (SoO) configuration Example:
PE1# conf t PE1(config)# router bgp 1 PE1(config-router)# neigbhor 192.0.2.2 send community both PE1(config-router)# neigbhor 192.0.2.2 soo 65535:1 PE2# conf t PE2(config)# router bgp 1 PE2(config-router)# neigbhor 192.0.2.6 send community both PE2(config-router)# neigbhor 192.0.2.6 soo 65535:1
In above configuration, We are marking the routes with a community tag (65535:1). Which receiving from CE1 and CE2.
After configuring the SoO, PE2 will not advertise the routes to a BGP neighbor. which routes are receiving from the same community and tagged.
Thanks For Reading ………………….
We will recommend you to read below posts: