假设我连接到两个差异ISP并将它们设置为冗余连接,一个比另一个重。 我可以说,西class牙的一些人的任何路线应该使用较慢的链接,而不是主要的?
谢谢W
是的,你可以使用路线图。
思科甚至有一个具体的例子:
http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00800c95bb.shtml#weight
总之,如果西class牙的networking会有AS100:
ip as-path access-list 5 permit ^100$ route-map setweightin permit 10 match as-path 5 set weight 200 neighbor xxxx route-map setweightin in
改变重量到你想要的重量。
请注意,这只会改变路由器到西class牙AS的stream量path。 它不会改变从西class牙的AS到你的path。 这对BGP来说是不可能的(除了可以使用BGP社区的特殊情况)。
另一件事:如果你想通过主要的ISP到达你的stream量,你应该预先备份到备份ISP的ASpath。
这篇文章解释它非常好:
http://blog.ioshints.info/2008/02/bgp-essentials-as-path-prepending.html
你最好的办法是设置local-pref per-prefix来将你的stream量发送出去。 这假定您正在从两个提供者处获取完整的BGP路由表。 您可以通过为所需提供者应用入站路线图执行此操作。
! First, create a prefix-list to match the traffic you want to send out a non-default ISP ip prefix-list pfl-target-prefix permit 1.2.3.0/24 ! create a route-map to match that prefix-list and set the local-pref route-map rm-bgp-isp-in permit 10 match ip address prefix pfl-target-prefix set local-preference 150 route-map rm-bgp-isp-in permit 1000 ! apply the route-map inbound to your isp router bgp 1234 neighbor 1.2.3.4 route-map rm-bgp-isp-in in
使用local-pref超过重量的好处是重量只适用于本地路由器。 您可以告诉本地路由器始终以ISP2为前缀,但这并不意味着您的networking的其余部分也会。 Local-pref会被传播到你的所有IBGP对等体,并且他们都会更喜欢这个有问题的路由。 如果两个提供者在同一个边缘路由器上,比local-pref或weight都可以正常工作。
如果你只是采取默认路由,你需要做一些诡计来重新发起你自己的networking内的目的地路由,以便设备跟踪特定的ISP。 我能想到的最简单的方法就是制作一条静态路由,指向您希望stream量转到的ISP,然后重新分配到您的本地BGP或IGP。
ip route <target prefix> <wildcard mask> <isp next-hop> router ospf 1 redistribute static subnets
同样,如果两个提供者都在单个路由器上,而不是重新分配到IGP中,那么只要下一跳可到达,静态就会指示您的边缘路由器始终使用第二个ISP。
另一个海报提到,这不会影响远程前缀如何到达你。 您需要按照您的辅助链接进行预设,以试图影响这一点,但是仍然无法保证它实际上会按您期望的方式进行。
希望这可以帮助。
-Keller
您可以按照您使用BGP的要求进行操作,但在某些路由上提高偏好并不那么复杂。 问题在于定义你想要提出的东西。 在你的例子中,你想把“西class牙的一些人”的偏好提高到另一个环节。 你怎么确定在西class牙是什么? 这是你真正想要的吗? 一些在西class牙的路线不能从西class牙其他地方直接到达(考虑到远程地点的卫星连接,去法国的一个基站)。 要非常小心你正在做什么,并确保你做的事情,以你想要的方式影响你的performance。