Single/Dual Homed and Multi-homed Designs

Hello Tom

Remember that routing that occurs in each direction is an independent operation. This means that if you want a particular route to be taken by your traffic, you must adjust the routing parameters for each direction. Keep in mind that you have complete control for the BGP routing of all outgoing traffic, but, although you can influence it, you do not have ultimate control over incoming traffic. This control belongs to the ISPs. To cause traffic to 72.12.0.0/16 to go through ISP#2, you simply need to use one of the BGP attributes to do this. The easiest way is to use the weight attribute. For more info about this attribute, take a look at the following lesson:

For incoming traffic, take a look at the following post that will answer your question.

The answer here is similar. To direct all the rest of your outbound traffic out of the ISP you want, you can simply use the weight attribute once again.

Since you are already receiving default routes from both ISPs, if one of the ISPs goes down, traffic should automatically use the other ISP. However, the issue here is that BGP may take a while to converge (on the order of dozens of seconds, to several minutes). In order to speed up convergence, there are several features that can be used including BGP Next Hop Address Tracking, and Additional Paths. The first monitors next hop address changes in the routing table to speed up convergence, while the second allows the advertising of multiple paths for the same prefix. Note the second is not suitable for your topology, since it only works with iBGP.

It’s best to talk to your ISPs beforehand. If you attempt to influence their routing, they may see this as a “hostile” or at the very least a “rude” action on your part, and may be annoyed with you. If you approach them and let them know what you want to achieve, they should be willing to help you out.

I hope this has been helpful!

Laz