BGP network summary II

  1. When generate summarized route, if AS_PATH in all subnets routes are the same, the summarized route will keep the same AS_PATH,
    if subnet routes have different AS_PATH, in generated summarized route AS_PATH will be set as noll.
    In order to keep AS_PATH track in summarized route, AS_SET option can be used in the command:
    aggregate-address 160.0.0.0 255.0.0.0 summary-only as-set
  2. BGP will select the best route to advertise to the peer. it follows the best route selection policy here:
    Local preference > AS_PATH > lowest Orignal code >the lowest multi-exit discriminator > eBGP route over iBGP > IGP metric to the BGP next hop > lowest router ID.

    First of all, routes need to be the valid route before it is qualified to best route selection. A valid route means that Router has route path towards the ip of NEXT_HOP

  3. eBGP will update NEXT_HOP will advertise the route to the peer, but iBGP will keep NEXT_HOP unchange. NEXT_HOP can be modified with command
    neighbor 170.10.20.1 next-hop-self
  4. Back door, if network 160.10.0.0 is learned from both eBGP and OSPF, since eBGP has lower AD, route learned from eBGP will be selected. This is not alway prefered. In that case,we can set backdoor as below
    network 160.10.0.0 backdoor

    Network 160.10.0.0 is treated as a local entry, but is not advertised as a normal network entry.  After this, 160.10.0.0 will use the route learned from OSPF instead of eBGP.

  5. synchronization is enabled by default in order to avoid blackhole in the network.
    it pretends a learned routes from being advertised to other peers if the same route cannot be learned from IGP route.
    There are 2 ways to solve blackhole problem:
    1, synchronization and redistribute all eBGP learned route into IGP route. While synchronizaton pretends a learned routes from being advertised to other peers if the same route cannot be learned from IGP route.
    2, configure iBGP on each router of the network and all iBGP routers build a full mesh peer network.
    This will bring high performance load if the network is too big and each router need run iBGP to maintain a big routing table. This problem is addressed by two ways: Confederation and reflectors.
  6.  Default route

The default-information originate, redistribution from a different source, and network 0.0.0.0 are all similar in the resulting effect: they will inject the default route into BGP RIB and it will be advertised to all BGP neighbors. The difference is in the origin of the default route that is injected into BGP:

  • default-information originate causes the default route to be artificially generated and injected into the BGP RIB, regardlessly of whether it is present in the routing table.
  • Redistribution and network 0.0.0.0 will inject the default route into BGP only if the default route is currently present in the routing table, and additionally in the case of redistribution, if learned by a specific source protocol we are redistributing from.

The neighbor X.X.X.X default-originate is different in that the default route will be advertised only to this specific BGP neighbor and not to all existing BGP neighbors as with the previous approaches. The default route will not be present in the BGP RIB of the router that is configured with the neighbor X.X.X.X default-originate command and so it won’t be generally advertised to all BGP neighbors. At the same time, this command is similar to the default-information originate in that the default route is artificially generated and does not need to be present in the routing table.

BGP network summary

When auto summary enabled:

  •  route advitised by network command, both summarized route and subnet route will be advitised
    1, network command without net mask will be regarded as classified network, summariezed network route will be generated and send to peer,will be matched when there is a subnet route entry in the routing table.
    2, network command with net mask will be matched when there is a subnet route entry in the routing table.
  •  route advertised by redistribute, only summarized route will be advitised. no subnet route entry.

When auto summary disabled:

  • network command with net mask configured need to be used to match route entry in routing table, matching will be precisely for both prefix and network. Only the route that precisely matchs the network command will be advertised
  • redistribute route will following the same rule as network command

Use aggregate command to manually generate a summary net route:

Aggregate command can be used to manually advertise a summary net, when there is ‘summary-only’ configured, then only the summarized net route will be advertised, not any subnet route. But in order to be able to generate aggregate-address, there must be at least one subnet route available in the routing table.

  aggregate-address xx.0.0.0 255.0.0.0 summary-only

Fundentimental of BGP

Find neighbour:

1, From idle to active: router will initiate tcp connection first via port 169.
2, From active to connected: router finished 3way handshake of TCP. If no 3 way handshake finished, router will go back to step 169
3, From connected to open send: router will send hello packets in order to find neighbour
4, From open send to open confirm: received reply from peer for open send message
5, Established: received KEEP ALIVE from peer

Advertise networks:

BGP can advertise networks to peer in the ways as below:
1, Use redistribute method to redistribute routes from other routing protocal into BGP. Route will only be redistributed if it is in the routing table
2, Use network command to advertise routes into BGP. Router will first check if the route existed in the routing table, if not, network can not be advertised, also using network command to advertize route need match exactly (prefix, mask) the route in the routing table. But if auto summary enabled, network command advertised route does not have to match exactly the route prefix/mast in the routing table, if at least one subnet existed in the routing table, network command can successfully advertize the whole network into BGP peer.
3, When autosummary used, BGP will advertize only classful route for all locally originated routes. If the redistributed routes are not classful network, BGP will use the mostly matched classful network and then advertise it. The same to network command advertised routes.

Filter:

There are several ways that BGP use to filter the routes that will be advertised to the peer:
1, Filter-list with AS PATH access-list. use route map
2, prefix list filter
3, distribution list, not very scalable solution, not recommend when there is much ip range for filering
4, no export community

route map is mostly used and recommended for BGP filter

Community

Community can be used to mark the advertised/received routes, so this routes can be treated in desired way (increase preference, etc)
There are 3 common community for BGP:
no export: routes will not be advertised outside of the local AS
no advertise: route will not be advertised to any iBGP or EBGP peer
local AS: The local AS community is a well known BGP community and can be used for BGP confederations. It’s basically the same as the no export community but this one works for within the sub-AS of a confederation

Notice in configuration

1, BGP x, x should match ASN number, or sub AS number if confederation is used