BGP Protocol Quickreference
BGP Protocol Quickreference
And the effect of BGP are well understood. If the BGP not controlled and filtered
properly, has the potential to allow an outside AS to affect your routing decisions.
Routing Policy and route selection are not a concern for your AS
Rich metrics (Attributes) . Including a list of the full path that route should take to
reach a destination network. This path information is used to build a graph of ASs
that is loop free and where routing policies can be applied to enforce some
restrictions on the routing behavior. The path is loop free, because a router
running BGP will not accept a routing update that already includes its AS number
in the path list.
You can configure the administrative distance of the static route, higher than
dynamic routing, so the static routing will be used as path of last resort when no
Dynamic information is available.
BGP Table
Peers = Neighbors: Any two routers that have formed a TCP connection in order to
exchange BGP routing information are called peers.
Neighbors:
BGP allows administrators to define policies, or rules , how data will flow
through the autonomous systems
BGP and associated tools cannot express all routing policies. BGP does not enable
one AS to send traffic to a neighbor AS, intending that the traffic take a different
route from that taken by traffic originating in the neighbor AS. We cannot
influence how our neighbors AS will route our traffic, but we can influence how
our traffic goes to our neighbors AS.
Can support any policy conforming to the hop by hop routing paradigm
BGP Attributes
BGP metrics are called path attributes:
Well known Mandatory Must be recognize and propagate. Must be present in the
updates
AS-PATH
Next-hop
Origin
Local Preference
Atomic aggregate
Community
Aggregator
MED
Local preference
MED
Path with lowest MED (also called metric) value are most desirable
MED is a indication to external BGP neighbors about preferred path into an AS.
This is a dynamic way to influence another AS on which way it should choose to
reach a certain route when multiple entry points into an AS exist. MED is
exchanged between ASs , unlike local preference.
By using the MED attribute, BGP is the only protocol that can affect how routes
are sent into an AS.
Origin
Community
BGP communities are one way to filter incoming or outgoing routes. In BGP
communities, routers tag routes with an indicator (the community) and allow
other routers to make decisions based on that tag. BGP communities are used for
destinations that share some common properties and therefore share common
policies; router act on the community rather than on individual routes.
Communities are not restricted to one network or one AS and have no physical
boundaries.
Weight
Weight is configured locally on the router and is not propagated to any other
routers.
BGP Synchronization
A router learning a route via IBGP will wait until the IGP has propagated the route
within the AS and then will advertise it to external peers. This rule ensures that all
routers in the AS are synchronized and will be able to route traffic that the AS
advertises to other ASs . This approach ensures consistency of routing information
(avoid black holes) within the AS.
It is safe to turn off BGP synchronization only if all routers in the AS are running
BGP (full mesh IBGP)
BGP Operation
Messages types:
Keepalive
Update
Shortest AS-Path
Lowest MED
BGP update message include both the prefix and the prefix length. Previous
version only included the prefix and the length was assumed from the address
class.
The AS-Path attribute can include a combined list of all ASs that all the
aggregated routes have passed through. This combined list should be considered
to ensure that the route is loop-free.
By default, the aggregate route will be advertised as coming from the AS that
performed the aggregation and will have the Atomic Aggregate Attribute set to
show that information might be missing. The AS numbers in the nonaggregated
routes are not listed. The routers can be configured to include the list of all ASs
contained in all paths that are being summarized.
Routes learned via IBGP are never propagated to other IBGP peers
Route Reflector
Modifies BGP split horizon rule by allowing the router configured as route
reflector to propagate routes learned by IBGP to other IBGP peers
Benefits
Easy migration
Route reflectors
Clients
Cluster
Nonclients
Originator-ID
Cluster ID
Divide AS into multiple clusters (At least one route reflector and few clients per
cluster)
Update is from EBGP peer, reflect to all non clients and clients
Prefix lists
Policy Control
Prefix List (IOS 12.0) can be used as an alternative to Access List in many BGP
route filtering commands. The advantages are:
Greater flexibility
Router begins the search at the statement at the top of the prefix list, with lowest
sequence number.
By default, the entries of a prefix list will have sequence values of 5, 10, 15 and
so on.
Show ip prefix-list detail name: Display de information of the specific prefix list
Show ip prefix-list name: Display the policy associated with specific prefix
Multihoming
Describe the situation where the AS is connected to more than one ISP. Usually is
done for two reasons:
Increase the performance, so that the better path can be used to certain
destinations.
Types of Multihoming
Default routes from all providers All ISPs pass only default routes to the AS
Customer routes and default routes from all providers All ISPs pass default
routes and selected specific routes to the AS
Full routes from all providers The ISPs pass all routes to the AS
Providers sends BGP default route, choice of provider decided by IGP metrics to
reach default route
Reach all destinations by best path, usually best AS-Path , however this can be
overriden
Network command
Config example:
router bgp 64520
redistribute static
ip route 192.168.0.0 255.255.0.0 null 0
or
Aggregate-address ip address
The prefer method is to use the aggregate-address command as long as more specific
route exist in the BGP table, then the aggregate is sent.
Redistributing dynamic IGP routes
Use no synchronization