Forgive me for taking a few days off from blogging about my training course.
As you’ll guess I’ve done the 2 week course. It was very good, The Knowledge Academy provided a fantastic trainer in Darron Smith.
So onto my Day 5, its the big one in Route!! BGP!!!
Heres what we will cover;
- BGP
- BGP designs
- BGP quick facts
- BGP Connection Redundancy
- BGP Topologies
- BGP Packets
- BGP Process
- BGP Tables
- BGP Path Selection
So lets dive in!!!!
First off, lets remind ourselves about the routing protocols available to us.
BGP
So BGP is an internet routing protocol, and the most scalable of all the protocols.
It is the slowest protocol of them all, providing dynamic updates of route failures.
Internal – Intra-domain
External – Inter-Autonous System Routing
Single Home Design
BGP can be used between a customer and an ISP in a Single Home Design. Using such design adds an over head on the Memory and Process of the customer and ISP routers. Such a design can still survive with default static routes on both the customer and ISP routes.
Dual Home Design
Can use BGP but this method can be achieved using static default routing.
Mutli-Home Network
This offers the full redundancy needed to ensure connections between the customers site are always available, from here you can go further into route load balancing for different types of traffic.
BGP Quick Facts
BGP updates can be;
- Full updates – Entire internet routing table
- Partial updates – Deals with BGP filtered routes
- Default BGP Route – Only a default BGP route represents all the other BGP routes
2 Flavours of BGP;
- Internal BGP (iBGP) – The same AS – Transit AS
- External BGP (eBGP) – Different AS
BGP deals with the Autonomous concept;
- This is defined using a numerical ID
- Old ASN – 16 Bit (1 – 65535)
- New ASN – 32 Bit (1 – 4294967295)
An ASN can be defined as Private or Public
*** Public ASN = Defines an AS publically, I.E Routes advertised in such a ASN are publically available.
Pubic ASN = 1 – 65535
*** Private ASN = All allocated locally by ISP to Customer to enable BGP but not advertised out publically.
Private ASN = 64512 – 65535
Connection Redundancy
BGP Topologies
BGP is a Path Vector Protocol and deals with hop count, see the below graphic for an example of traffic path selection.
BGP runs over TCP 179
The below diagram displays eBGP and iBGP connections
A transit area can allow another routing protocol to run within side it for route distribution “Locally” however these routes would not be exposed into BGP.
From the below diagram, R1 + R5 can be BGP neighbors via other routers that run different routing protocols, this can cause an issue if EIGRP/OSPF routers don’t know where a route is, but BGP routers do.
BGP Packets
- Open
- Update (Sent out every – 5 seconds iBGP, 30 seconds eBGP)
- Keepalive (Sent every 60 seconds)
- Notification (gives out the bad news, i.e bad configuration)
BGP Process
- Idle
- Connect
- Active (if resets goes to idle)
- Open Sent
- Open Confirmed (back to Active)
- Established (back to idle)
BGP Tables
- BGP neighbor table
- BGP table (Topology)
- BGP routing table
BGP Lab Topology
configuration commands;
router bgp [ASN] neighbor {remote ip] remote-as [remote ASN] network [IP address] mask [subnet]
So on Router 4;
neighbor 5.5.5.5 remote-as 354 neighbor 5.5.5.5 update-source loopback1 neighbor 5.5.5.5 next-hop-self
This anchors BGP to the Lo1 interface, if you did it to the Serial Interface and the link died, then opposing BGP Router will lose the neighbor relationship.
The “next-hop-self” command tells routers of a route via itself, rather than updating routers next hop. In case of router 5, it would be told by Router 4 to get to 192.169.32.0/29 network use Router 4 as the hop, and not the IP of Router 3.
BGP Path Selection
1. Weight (Cisco only) = Prefer route with highest weight. All BGP external routes have a weight of 0. However weight as an attribute when used to manipulate route selection, higher is better.
E.g
R5 <- 192.169.32.0 via R1, 1.1.1.1 0
* > 192.169.32.0 via R4, 4.4.4.4 100
* = Valid Neighbor
> = Best Route
2. Prefer route with accessible next hop
Route should have
*192.168.32.0/29
*192.168.32.0/29
This shows two best routes = Tie
Tie -> Use next hop
3. Prefer route with highest local prefference value. This is a value that can manipulate remote route within the same AS. These values are internal only and not passed onto the remote AS.
4. Prefer route that locally originated;
R5 > 192.169.32.0 via R1, 1.1.1.1
* > 192.169.32.0 via 0.0.0.0 (Represents Local)
5. Prefer route with shortest path (AS)
A = Path Vector (Show IP bgp)
6. Prefer Route with lowest originate code
Show ip bgp —–> Values under Path heading
7. Prefer path with lowest MED value (MED = Multi Exit Descriptor). It’s an attribute used to set a prefered return path (Incomming path selection)
8. Prefer external path (eBGP) over internal path (iBGP)
9. Prefer route with closest igp (EIGRP/OSPF) metric
10. Select oldest route
11. Prefer route with lowest neighbor BGP router ID
12. Prefer the router with the lowest neighbor IP address
And thats it for tonight!