拓扑图node
实验要求:网络
实验步骤:
分别在五台路由器上配置好IGP,并在R5上引入直连的5.5.5.0的路由,cost类型为2,metric值为5。 在R2 和 R3上进行重分布。app
1、 解决环路问题:经过路由标记来完成。
如今查看2.2.2.0的路由表。R4上显示下一跳为R3,R3显示下一跳为R1,R1指向R2,R2指向R4,这样就产生了环路。为何会产生环路:
站在R4的立场,首先它从R5学习到了ASE的路由,类型为E2,Cost为5,外部路由的优先级是150. 这条路由通过R2和R3会传递到ISIS区域,再从ISIS传递回到OSPF区域,从ISIS传递回来的路由,优先级150,类型为E2,Cost为1。因此它会优选从ISIS传递过来的5.5.5.0的路由。
怎么解决这个问题呢?有两个思路:ide
============================================================================ R2和R3上的TAG配置: ospf 110 router-id 2.2.2.2 import-route isis 1 route-policy isistoospf //在引入ISIS路由到OSPF中时调用Policy
route-policy isistoospf deny node 10
if-match tag 10 //将打上了TAG10的路由拒绝,不能重分布到OSPF中学习
route-policy isistoospf permit node 20
apply tag 15 //重分布到OSPF中的路由,打上TAG15code
=============================================================================
isis 1
is-level level-2
cost-style wide // 使用Wide类型的度量值,才能识别TAG
network-entity 49.0123.0000.0000.2222.00
import-route ospf 110 route-policy ospftoisis router
route-policy ospftoisis deny node 10 // 将OSPF重分布到ISIS时,拒绝TAG为15的路由
if-match tag 15blog
route-policy ospftoisis permit node 20
apply tag 10 //OSPF重分布到ISIS时,将路由打上TAG10进程
=============================================================================ip
在R2和R3上作了TAG之后,如今就没有环路了。 R3到5.5.5.0指向R1, R1指向R2,R2指向R4,R4指向R5. 如今没有环路了。 <R3>display ip routing-table 5.5.5.0 Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Table : Public Summary Count : 1 Destination/Mask Proto Pre Cost Flags NextHop Interface 5.5.5.0/24 ISIS-L2 15 20 D 13.1.1.1 GigabitEthernet0/0/1 <R1>display ip routing-table 5.5.5.0 Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Table : Public Summary Count : 1 Destination/Mask Proto Pre Cost Flags NextHop Interface 5.5.5.0/24 ISIS-L2 15 10 D 12.1.1.2 GigabitEthernet0/0/0 <R2>display ip routing-table 5.5.5.0 Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Table : Public Summary Count : 1 Destination/Mask Proto Pre Cost Flags NextHop Interface 5.5.5.0/24 O_ASE 150 5 D 24.1.1.4 GigabitEthernet0/0/1 <R4>display ip routing-table 5.5.5.0 Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Table : Public Summary Count : 1 Destination/Mask Proto Pre Cost Flags NextHop Interface 5.5.5.0/24 O_ASE 150 5 D 45.1.1.5 GigabitEthernet0/0/2 2、 这个时候,再来看看是否存在次优路由。仍是5.5.5.0的路由。上面实验中,在R3上去往5.5.5.0的路由,下一跳指向R1,按照正常状况下来看,5.5.5.0的路由是R4传递过来的,下一跳要指向R4才是最优的。为何R3上的5.5.5.0的路由指向了R1,一样仍是由于从R1的ISIS协议传递过来的协议优先值要低。 下一跳 管理距离 Cost 优选 下一跳 管理距离 Cost 优选 R1 15 20 √ R4 150 5 那咱们怎么来解决次优路径的问题呢,其实也有两种办法: 1. 能够使用fileter-policy在入方向过滤路由,在R2和R3的协议进程下,使用fileter过滤从ISIS学习到的2.2.2.0的路由。 2. 能够针对这条路由修改其协议优先级的值大于从OSPF协议学习到的优先级的值。那么路由器会优选从协议优先级小的路由协议学习到的路由。须要在R2和R3上都完成操做。
=============================================================================
ip ip-prefix 55 index 10 permit 5.5.5.0 24 #
route-policy pref permit node 10
if-match ip-prefix 55
apply preference 188
isis 1
preference route-policy pref
改完了协议优先级的值之后,就解决了次优路径的问题。到此为止,问题获得解决。总结一下: 1. 多点双向重分布,可能产生环路问题,环路能够经过对路由打标记来实现路由过滤,这种方法能够解决环路问题。 2. 对于由于协议优先级而带来的次优路径问题,能够手动针对特定的路由修改优先级。 3. 对于由于Cost而致使的问题,也能够修改Cost。 4. 路由器选路,若是有多条路径,不一样路由协议之间经过比较协议优先级,协议优先级值小的协议优先;对于从同种路由协议学习到的路由,比较Cost值,值小的优先 5. 对于ISIS路由协议,若是需识别TAG,它的cost样式须要为wide。