视频: 我们定制了一款产品NRS,集软路由、NAS、小型服务器于一身。 2024
在看到路由表中似乎具有所有必要的路由之后,现在可能认为可以从另一个AS ping一个AS中的路由器。但是,情况并非如此。了解为什么ping仍然不起作用需要对BGP路由交换的一点解释。
示例拓扑显示下一跳寻址。当BGP通过BGP消息共享路由时,它包含下一跳信息,以便路由器在转发到该特定目的地时知道要发送通信的位置。驻留在AS 65502内的对等体通过网关路由器5发送其路由。
<! - 1 - >当这条路由通过EBGP传递给路由器3时,包含绑定到该EBGP链路的下一跳信息。具体来说,路由器5(10.0.26. 2)上的接口地址被标记为下一跳。问题是,当路由器2想要将流量发送到AS 65002内的对等体时,路由器2必须知道路由10. 0。26 2/24是在哪里。但是它是如何得到这些信息的呢?该地址不在本地AS 65027!而且你真的不想复制每个AS中的所有内部地址 - 这就是为什么BGP首先被发明的原因。
<!确保路由器具有到下一跳地址的路由的一种简单方法是将下一跳地址设置为路由器已经知道如何到达的地址。地址10. 0 26. 26可能不在AS 65027中,但是路由器3的环回地址是。
在您的AS中,路由器都通过OSPF知道对方的回环地址。 OSPF通知IBGP如何到达回环接口,使IBGP能够建立自己的BGP会话。因此,如果路由器3可以将下一跳地址设置为其自己的地址之一(例如回送),覆盖以前的地址,则AS中的所有路由器都将能够发送流量。<!要覆盖以前的下一跳地址并使用路由器自己的环回作为下一跳地址,请使用路由策略设置下一跳自我:
[edit policy-options]政策声明ibgp-export {term export-statics {from protocol static;然后接受;} term next-hop self {then {next-hop self;}}}
添加第二个词来完成这个任务。路线在第一学期进行评估,如果是静态路线则接受。那些被接受的BGP路由将下一跳的值设置为本地路由器的环回地址。当这些路由被网络中的其他节点所了解时,这些节点将把流量发送到网关路由器环回地址,因为他们知道如何到达环回地址。路由器3上的“self”选项基本上是这样的:“在AS 65027内部通告此路由时,使用我的环回地址作为下一跳。然后,当AS 65027中的路由器有AS 65002的数据包时,将它们发送给我。我有AS 65005下一跳为10. 0 26. 26,所以一切都很好。 “
解决下一跳自身问题的另一种方法是确保您有到AS和相邻AS之间的对等子网的路由。如果您运行IGP,则子网将通过该IGP自动通告给所有内部路由器。
如果您在该链路上运行OSPF或其他IGP
(意思是您不想在那里建立邻接和泛洪路由),您的路由器将学习到10. 0。 / 24子网。在许多组织中,下一跳自我或IGP被动是BGP下一跳的首选方法。