cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
528
Views
7
Helpful
3
Replies

bgp table

Kashish_Patel
Level 2
Level 2

I am trying to understand BGP and here are my confusions:

I read that if bgp has to advertise a network using network command, an exact matching route must exist in the routing table.

And I also read that if BGP has to advertise a prefix using aggregate-address, then a more specific prefix must exist in the bgp table.

My confusion is: For the network statement, we are checking routing table but for aggregate-address, we need to check bgp table..Why is it so? What is the logic behind checking routing table for one and bgp table for the other? In my opinion, routing table should be checked always ( even for aggregate-address)..Could somebody help me understand this?

1 Accepted Solution

Accepted Solutions

Peter Paluch
Cisco Employee
Cisco Employee

Hi Kashish,

For the network statement, we are checking routing table but for  aggregate-address, we need to check bgp table..Why is it so? What is the  logic behind checking routing table for one and bgp table for the  other?

Because with the network command, you want to inject a new network into the BGP table, while with aggregate-address, you want to summarize or aggregate existing networks in the BGP table, and with aggregation, you are creating an artificial network that actually does not existing in the routing table at all. If it was present in the routing table, you would not need to aggregate at all, right?

The goal of the network command is to insert new networks into the BGP table that would otherwise not be advertised from your router. The goal of the aggregate-address, on the other hand, is to send a compacted information about already known networks to your neighbors without limiting reachability of these networks. This compacted, aggregated prefix, is a new, artificial prefix that you are going to create. It would be useless to check for it in the routing table.

I am not sure if this helps so please feel welcome to ask further!

Best regards,

Peter

View solution in original post

3 Replies 3

Peter Paluch
Cisco Employee
Cisco Employee

Hi Kashish,

For the network statement, we are checking routing table but for  aggregate-address, we need to check bgp table..Why is it so? What is the  logic behind checking routing table for one and bgp table for the  other?

Because with the network command, you want to inject a new network into the BGP table, while with aggregate-address, you want to summarize or aggregate existing networks in the BGP table, and with aggregation, you are creating an artificial network that actually does not existing in the routing table at all. If it was present in the routing table, you would not need to aggregate at all, right?

The goal of the network command is to insert new networks into the BGP table that would otherwise not be advertised from your router. The goal of the aggregate-address, on the other hand, is to send a compacted information about already known networks to your neighbors without limiting reachability of these networks. This compacted, aggregated prefix, is a new, artificial prefix that you are going to create. It would be useless to check for it in the routing table.

I am not sure if this helps so please feel welcome to ask further!

Best regards,

Peter

The aggregate-address command in BGP is used for route summarization. Therefore, it would not make sense to check the routing table for that, as you are going to summarize networks that YOU have in your routing process no in the others as you really do not know what the others have. BGP is not different to other routing protocols like OSPF, RIP, EIGRP or IS-IS.

If there is a more specific prefix in the BGP table, the aggregate will be created which will be a route pointing to null 0 with AD 200. The behavior of the discard route is the same in OSPF, IS-IS and EIGRP.

Best Regards,

Jose.

Thanks. This answers my question!

Review Cisco Networking for a $25 gift card