让我们考虑自治系统 AS100 中的主机 A。假设它想与另一个 AS 中的主机 B 通信,例如 AS200。在 AS100 中有几个路由器。在一个 AS 内,使用的路由协议是内部网关协议,例如 OSPF 或 RIP。
AS100需要知道通过其他AS-es到AS200的路径,所以AS100中的边缘路由器是BGP路由器,BGP是用于自治系统之间路由的外部网关协议。
如果 AS100 连接到两个 AS(它有两个 eBGP 路由器),AS100 中的主机 A 如何知道要与哪个 BGP 路由器通信,以便与 AS200 中的主机 B 通信?主机 A 告诉它的路由器它想与主机 B 通信。现在,该路由器需要知道到主机 B 的路径。但主机 B 在 AS100 之外。
eBGP 路由器是否将其路由表发送到一个 AS 中的所有路由器(BGP 和 IGP)?我的意思是,AS 内部的“普通”路由器必须知道很多,他们必须选择合适的边界路由器,以便主机 A 可以与主机 B 通话。
如果所有路由器都知道同样的事情,那为什么还有人需要 iBGP?通常 BGP 路由表很大,所以这可能是一个错误的陈述,但我不确定如果它的邻居路由器不知道边界路由器拥有的所有路由,主机 A 怎么知道正确的路径。