Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
BGP in a Nutshell (bodunhu.com)
117 points by edddie on July 8, 2021 | hide | past | favorite | 13 comments


Better to start with:

Multihoming with and without BGP http://freedman.net/bw/may97.html

and then http://freedman.net/bw/jun97.html

and then

Ethel The Aardvark Goes BGP Routing http://freedman.net/bw/jul97.html

It may be 24 years old, but that doesn't mean the concepts have changed much. After you read those, you could read about AS Path Prepending (you need to know why people do it so that you can decide not to do it):

https://blog.apnic.net/2019/10/25/as-prepending-in-bgp/

and why you should register your routes at

https://www.radb.net/

and why you should both sign your announcements and validate inbound:

https://blog.cloudflare.com/rpki-details/


UOregon's Network Startup Resource Center (NSRC) has a good series of video tutorials on BGP / routing:

> The Network Startup Resource Center (NSRC) is a non-profit group that helps develop Internet infrastructure and network engineering expertise throughout the Asia-Pacific region, Africa, Latin America/Caribbean, and the Middle East. NSRC collaborates with network operator groups, universities, and government agencies to provide engineering assistance, training, and equipment to improve Internet access and services.

* https://learn.nsrc.org/bgp

* https://www.youtube.com/playlist?list=PLjVwd8FlHBAQk5U2Scrjp...


Unfortunately, this article seems quite incorrect. It makes it look like iBGP and eBGP are different protocols while they are the same with a slightly different set of rules. Notably, prefixes exchanged by iBGP definitely have an AS path (which can be empty, but usually it is not as most of the routes come from outside the AS). This is not the only error. The definition for iBGP/eBGP is incorrect too: iBGP let's two routers in the same AS exchange routes, while eBGP does the same for two routers in different AS.


Totally agree that the iBGP vs eBGP thing is very confusing, even in some vendor documentation there are some assumptions on what an internal vs external session should do instead of leaving it up to the user to decide how to operate. I get that this is probably for simplicity but it would be nice to give the user the full flexibility of the protocol.


If you're thinking of the restriction that prevents the forwarding of routes in one iBGP connection and out another, I think that's a requirement of the standard rather than something vendors have imposed. Because iBGP hops don't prepend anything to the AS path, there would be no mechanism to prevent routing loops if multi-hop iBGP route forwarding were enabled. (I'm just a CCNP sprog, not an expert.)


Well that was not what I expected. (Especially the “there’s really nothing difficult” part.)

If you really want to understand BGP, read https://www.amazon.com/Internet-Routing-Architectures-2nd-Ha...

or, if you’re looking for something online: http://www.tcpipguide.com/free/t_TCPIPBorderGatewayProtocolB...


The pseudo formal notation says “look but don’t touch” when an actual example of the advertisement or message would clarify things. Additionally, providing context on BGP with respect to other routing protocols would be useful


As someone who has worked with bgp off and on for over 20 years, I suggest looking elsewhere for information on BGP.


"BGP is GPS for internet".

It certainly is not?

"internal BGP (iBGP) : informs each non-gateway router"

It does not? There are no non-gateway routers in classic BGP (without reflectors)?

"it updates the AS-path by appending itself to the path list"

the commonly used term is "prepending"?

"For iBGP, there is a TCP connection between each two routers in the same AS, given the only one of them is a gateway."

What is that even supposed to mean?

Why all the pseudo-math notation?

"That is it. There’s really nothing difficult about BGP in general."

This statement is tableflip inducingly inaccurate.

There is nothing simple in BGP.


As a network engineer this was just a weird read.


> There are no non-gateway routers in classic BGP

There are. Unless you have flat network topology, you can use IBGP to feed external routes to internal (non-gateway) routers.


Forget about the article for a moment.

Guys with the real skills program BGP.

I’ll never forget back in the day when we had terrible problems with setting up routing to multiple providers and with a single call to some guy a thousand miles away he SSH’ed into our router and spent the most amazing next 30 minutes setting everything to right.

25 years later, I consider any expert with BGP - like a magical wizard.


BGP is called the swiss army knife of networking for a reason. I have used it for so many aspects of different solutions, from things to distributed load balancing without actual load balancers to ddos mitigation to building redundant networks. bgp is complex but for good reason, it can be used to solve issue no other routing protocol is able to.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: