网络基础知识讲座十八:了解iBGP路由协议
http://tech.ddvip.com 2007年01月19日 社区交流 收藏本文
本文详细介绍网络基础知识讲座十八:了解iBGP路由协议
内部BGP协议(iBGP)的主要作用是向你的内部路由器提供更多信息。上期关于BGP的讲座中我们关注的是stub配置,即单独一台路由器为一个自治系统(AS)内的所有BGP会话服务。这次我们将深入研究BGP的实际应用:iBGP和怎样实现多宿主(multi-homing)网络。
如果你准备又增加一台BGP路由器,并把它与另一个对等互联伙伴相连,那么你的网络并不会得到多少改善,除非你自动系统的内部网关协议(IGP)知道面对这种情况该做些什么。这时有几种做法,而其中之一是严重错误的。你不能简单的把所有的Internet路由信息都发送给给自治系统内运行内部网关协议的路由器并指望得到最好的结果。实际上这样做是很可笑的,因为通常OSPF的运算过程会让你的路由器死机。同样,你必须让一台边界路由器收到的路由信息也让另一台边界路由器收到,但是除非两台边界路由器都采用BGP协议,否则信息就会丢失。
解决办法是在你的AS内所有的边界路由器之间建立一个内部BGP对等互联。传统上明智的做法是,你的网络要包含一个运行iBGP的核心网络(或者叫骨干网),并且在内网采用的IGP协议(OSPF或其它)路由中指定一条缺省路由。只要内部网关协议将数据包传送给主干网络,那里的路由器就能选择最佳的出口策略。
主干网络可能十分复杂,并且BGP中提供的AS-Path属性也不足以保证不会导致路由环回。这表示iBGP不会广播任何它从对等互联伙伴那里获得的路由信息,这似乎令iBGP无用武之地?并不尽然:这一限制意味着每台iBGP路由器都必须与其它所有iBGP路由器建立对等互联关系。这也被称为一个全网状(full mesh)结构,但实现起来同样困难重重。
当网络变得足够庞大时,每增添一台BGP/iBGP会话路由器都意味着你必须为之与其它每一台路由器都建立一个连接。为解决这些问题,我们的装备库为你提供了几样很便利的工具:路由反射器(route reflector)和联盟(confederation)。
责编:豆豆技术应用