BGP和OSPF有什么区别?

我想build立一个dynamic路由networking,我想知道,BGP和OSPF有什么区别? 两者是否需要共同使用?

基于你的问题,我猜你是networking新手,只需要一个高层次的答案。

简单地说:

  1. 在您的networking边缘使用BGP(边界网关协议)将您的networking连接到Internet
  2. OSPF(开放最短path优先)在您的networking内部使用

在networking边缘,您可以使用路由器将BGP映射到OSPF,反之亦然。

路由不是一个简单的话题 – 你应该计划花大量的时间来学习和devise你的解决scheme。 还有其他协议可用,如RIP,IS-IS和IGRP可能更适合您的要求。

OSPF是IGP(内部网关协议),而BGP是目前唯一真正的EGP(外部网关协议)。

如果您正在进行内部路由,即在站点,公司或校园内进行路由,则您将需要使用OSPF。 通常情况下,BGP需要在站点边缘,在这里您可以通过公网路由。 在中小型networking中,build立BGP通常比通往外部的静态路由更好。 如果你有一个复杂的多宿主站点,不pipe大小,你可能会考虑BGP。

您真的不想使用IGRP – 这是思科专有EIGRP(也是专有)的旧版本。 EIGRP性能可靠,相当直观,可与OSPF相媲美,但只能在思科设备上运行。

我不会推荐大多数项目的IS-IS。 IS-IS是一种像OSPF这样的链路状态协议,但是很less使用,通常只有在ISP的时候(尽pipe有些人称之为广泛的,但利基的路由协议)。 如果在您的平台上可用,您当然可以使用它,但您会发现难以解决的疑难解答资源。

尽pipe你在Linux(以及大多数现代化的平台)上使用RIP ,但对于一个小型站点来说,RIP是足够的,你实际上正在使用RIPv2 。 它比其他人提到的build立起来容易,但由于其局限性,它不再用于小型networking部署之外。 如果你想获得知识,这是一个很好的起点。

OSPF是独立于供应商的IGP标准(即不是Cisco专有的),并且可以很容易地根据您的需要复杂化。

我假设你正在谈论IPv4而不是IPv6。 您在这方面的要求(如在其他方面)将直接影响您使用的路由协议。 OSPFv3是OSPF的IPv6版本; 现在最常见的是OSPFv2,但是只有IPv4。

* nix-wise,如果硬件可以处理吞吐量,则bsd系统也是运行生产级bsd或ospf部署的不错select。

你意识到要使用IBGP,你必须在边缘路由器之间创build对等关系,为了使这些边缘路由器能够build立对等关系,他们还必须运行IGP,如OSPF,RIP或ISIS。 没有一个合适的IGP,没有人自己运行IBGP。 IBGP通常只运行在边缘路由器和AS中的所有路由reflection器上,而不是在所有路由器上,而OSPF等运行在所有路由器上。

我从来没有见过一个只运行IBGP的networking。 事实上,这是不可能的,因为BGP依靠现有的底层路由表来找出如何路由到下一个IBGP对等体。 真正使用的唯一时间是如果一个自治系统通过多条链路连接到其他AS。 例如,AS 100中的一个路由器与一个ISP对等,另一个路由器(也在AS 100中)与备用或第二ISP对等。 在这种情况下,在这两台路由器之间使用IBGP。 在此场景之外,不应使用IBGP。

为了loggingIBGP交换比OSPF更多的信息意味着有更多的开销。 另外,由于它位于协议栈上的IGP之上,所以它通常不能快速收敛。

IGP是路由协议(即OSPF,ISIS,EIGRP,RIP)。
BGP是为多宿主场景扩展的拓扑协议。 IBGP中的“I”并不意味着它是IGP。

https://supportforums.cisco.com/thread/2032739

基于你的问题上的标签 – 你有兴趣让你的Ubuntu服务器充当路由器? 如果是这样的话,Ubuntu似乎在nemesis-ospf项目中有一个OSPF协议的端口。 对于BGP Vyatta发行版( 如何 )将是最好的select,也可以做OSPF(两者都不是必要的顺便说一句)以及DNS,DHCP和其他服务。

更一般地说, OSPF将是一个更简单的路由协议,用于快速设置,configuration和理解。 BGP涉及更多,对于一个简单的小型networking来说可能是过度的。 OSPF被认为是链路状态协议,而BGP是path向量。 上面的链接将更加详细,但我的build议是研究OSPF。

但是,我会build议使用一个专用的盒子来做你的路由,而不是在一个做其他服务的盒子上运行它,除非这只是为了教育/学习/实验目的。

  1. ospf是内部网关,而bgp是外部网关。

  2. 在ospf快速收敛,在bgp慢。

  3. devise – 分层networking可能在ospf中,完全分布在bgp中。

  4. algorithm – ospf使用Dijkstraalgorithm,bgp使用最佳pathalgorithm。

  5. 协议 – ospf有IP协议,bgp有TCP协议。

  6. 端口 – ospf有端口89,bgp有端口179。

  7. type – ospf中的链接状态,bgp中的path向量。

  8. 需要设备资源 – ospf中的内存和CPU密集型,取决于路由表的大小,但比ospf更好。

我想说,如果你是dynamic路由协议的新手,那么你应该研究BGP,它毕竟是在Internet上用于路由共享/发现的协议。 OSPF对于某些设置非常有用,但即使在内部BGP也是一个很好的select,OSPF对我的口味来说有太多的“魔力”。