1、路由的引入
为什么需要配置路由引入?
部署不同路由协议的机构合并;采用不同厂商的协议;同一设备同一协议但不同进程的配置。
1、不同的网络使用不同的协议,并且这些网络需要共享路由信息。
- 简单的网络可以使用RIP
- 网络类型复杂的可以选用OSPF
- 大型骨干网络一般选用ISIS
2、 网络协议的限制 - 比如,使用拨号链路连接两个ISIS网络,而在拨号链路上是不适合运行ISIS协议的
- 需要配置静态路由,然后把静态路由引入到ISIS
1.1、双点单向ISIS与OSPF引起的次优路由
左边是IS-IS,右边是OSPF。
查看交界处R3及R5的配置
[R3]dis curr conf isis
[R3]dis curr conf ospf
由于没有引入IS-IS和OSPF之间的路由是隔离的。这时通过ASBR引入各自的协议,使用IS-IS域与OSPF域互通。
#R3
isis 1
network-entity 49.0000.0000.1233.00
import-route ospf 1 //把OSPF引入 ISIS,默认只能引入到Level 2
<R3>dis ip rou pro ospf
Destination/Mask Proto Pre Cost Flags NextHop Interface
34.1.1.0/24 Direct 0 0 D 34.1.1.3 g0/0/2
34.1.1.3/32 Direct 0 0 D 127.0.0.1 g0/0/2
44.1.1.1/32 OSPF 10 1 D 34.1.1.4 g0/0/2
45.1.1.0/24 OSPF 10 2 D 34.1.1.4 g0/0/2
#R5引入IS-IS
ospf 1 router-id 5.5.5.5
import-route isis //把ISIS引入OSPF
这时从两边都引入了路由。
<R4>dis ip rou pro ospf
Destination/Mask Proto Pre Cost Flags NextHop Interface
2.2.2.2/32 O_ASE 150 1 D 24.1.1.2 g0/0/1
O_ASE 150 1 D 34.1.1.3 g0/0/2
11.1.1.1/32 O_ASE 150 1 D 34.1.1.3 g0/0/2
O_ASE 150 1 D 45.1.1.5 g0/0/0
13.1.1.0/24 O_ASE 150 1 D 34.1.1.3 g0/0/2
O_ASE 150 1 D 45.1.1.5 g0/0/0
15.1.1.0/24 O_ASE 150 1 D 34.1.1.3 g0/0/2
O_ASE 150 1 D 45.1.1.5 g0/0/0
33.1.1.1/32 O_ASE 150 1 D 34.1.1.3 g0/0/2
O_ASE 150 1 D 45.1.1.5 g0/0/0
<R4>tracert -a 44.1.1.1 11.1.1.1
1 45.1.1.5 30 ms 10 ms 10 ms
2 15.1.1.1 50 ms 13.1.1.1 40 ms 40 ms
<R1>tracert -a 11.1.1.1 44.1.1.1
1 13.1.1.3 20 ms 20 ms 20 ms
2 34.1.1.4 30 ms 45.1.1.4 20 ms 10 ms
并没有环路产生,只是出现路径不一致,来回路由不一致
。
把其他协议(或同一协议不同进程)学习到的路由表,以及运行该协议的直连引进到本协议的数据库。
不是直接引入到数据库DB,如果引入数据库到数据库就会引起环路。
<R3>dis ip rou pro os
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Destination/Mask Proto Pre Cost Flags NextHop Interface
24.1.1.0/24 OSPF 10 2 D 34.1.1.4 GigabitEthernet
0/0/2
44.1.1.1/32 OSPF 10 1 D 34.1.1.4 GigabitEthernet
0/0/2
45.1.1.0/24 OSPF 10 2 D 34.1.1.4 GigabitEthernet
0/0/2
在IS-IS中R3学习到24、44、45网段路由,同步给R1。
在OSPF中R5学习到11、33网段同步给R4。这个表中并没有44这个网段。所有没有产生路由环路。为什么呢?
优先级问题。R4–>R5优先级是10,而R1–>R5的优先级是15。所以44这个网段是R5从R4上学到而不是从R1上学到。
<R5>dis ip rout pro isis
Destination/Mask Proto Pre Cost Flags NextHop Interface
44.1.1.1/32 ISIS-L2 15 20 15.1.1.1 g0/0/2
----------------------------------------------------------------------------------------------------------------------
<R5>dis ip rout pro ospf
Destination/Mask Proto Pre Cost Flags NextHop Interface
44.1.1.1/32 OSPF 10 1 D 45.1.1.4 g0/0/0
OSPF内部优先级为10;外部优先级为150。
路由协议或路由种类 | 优先级 |
---|---|
Direct | 0 |
OSPF | 10 |
IS-IS | 15 |
Static | 60 |
RIP | 100 |
OSPF ASE | 150 |
BGP | 255 |
总结:
优先级是不同协议之间的比较;越小越高。
Cost开销同一协议之间的比较。
OSPF同一协议有三种不同的优先级,内部的、5类路由。
引入时的开销:
RIP默认为0
IS-IS默认:NARROW为64,WIDE为0
OSPF默认:1
BGP名称是MED继承IBGP
引入外部路由
R2
Ospf 1
import-route direct cost 10
由于OSPF引入外部路由后,外部路由优先级为150,再由R3、R5ASBR进行双向引入之后,原来的OSPF外部路由转换成ISIS路由,由优先级150转变为15,因此R3、R5ASBR会使用ISIS中的ospf外部路由条目。
[R2]dis ospf lsdb ase 2.2.2.2
Type : External
Ls id : 2.2.2.2
Adv rtr : 24.1.1.2
Ls age : 453
Len : 36
Options : E
seq# : 80000001
Type : External
Ls id : 2.2.2.2
Adv rtr : 45.1.1.5
Ls age : 7
Len : 36
Options : E
seq# : 80000001
上面有两个宣告者一个是24.1.1.2,另一个是45.1.1.5。
从一个优先级较大的协议引入到一个优先级较小的协议,会产生所谓的“次优”路由。
R5发送数据到R2就会产生次优路径,R5–>R1–>R3–>R4。
[R5]dis ip rout 2.2.2.2
1.2、双点单向度量值引起的环路
R5使用ISIS中的ospf外部路由,开销值造成OSPF中环路。
[R5]trac 2.2.2.2
会发现路由从R5–>R1–>R3–>R4–>R5 形成环路。
45.1.1.5的cost是1,而24.1.1.2的开销值是10,所以优选45.1.1.5,所以环路形成。
同一个协议OSPF内去往一条路由,优先开销值较小的(路由类型相同的前提下,区域内或区域外)。
修改R2的开销值:
ospf 1
import-route direct
这时到2.2.2.2,R4到R5和R4到R2都一样,都是cost=1。
这时R4到2.2.2.2形成负载均衡,两条都走。
1.2.1、解决办法
1、堵;filter-policy过滤策略(不收取不放行)。
- 过滤策略
- 路由优化
- 避免路由引入
- 避免路由回馈导致的路由环路
- 进行精确路由引入和通告控制
[R5-isis-1]filter-policy ip-prefix 100 import //ISIS里R5入方向前缀列表过滤策略
[R5]ip ip-prefix 100 deny 2.2.2.2 32 //拒绝2.2.2.2/32通过
[R5]ip ip-prefix 100 permit 0.0.0.0 0 less-equal 32 //允许小于等于32其它IP通过。
[R5]dis ip ip-prefix
Prefix-list 100
Permitted 8 命中了8次 如果是0也意味着这条前缀列表不成功
Denied 11 拒绝了11次
index: 100 deny 2.2.2.2/32
index: 100 permit 0.0.0.0/0 le 32
[R5]dis cu | i ip ip-prefix //查看ip-prefix配置
[R5]dis ip rout 2.2.2.2
上面的结果是避免了次由路由的产生。在入方向堵住这个2.2.2.2/32位的路由,可以避免环路的产生。
2、使用路由策略将次优路径的消除
路由控制三个重点:时间、优先级、度量值
路由控制的方式 | 描述 |
---|---|
控制路由的发布 | 通过路由策略对发布的路由进行过滤,只发布满足条件的路由 |
控制路由的接收 | 通过路由策略对接收的路由进行过滤,只接收满足条件的路由 |
控制路由的引入 | 通过路由策略控制从其他路由协议引入的路由条目,只有满足条件的路由才会被引入 |
解决问题的方法:哪台路由器产生了次优路由就在哪台上配置。
原来的R5访问2.2.2.2/32,是由R5–>R1–>R3–>R2–>R1。
现在我们需要R5访问2.2.2.2/32,直接由R5–>R4–>R2。
R5生了次优路由需要配置:
#
isis 1
network-entity 49.0000.0000.12345.00
preference route-policy PREF
#
route-policy PREF permit node 10
if-match ip-prefix test
apply preference 160
#
ip ip-prefix test index 10 permit 1.1.1.1 32
#
以上方案中只是演示路由过滤功能,实际工作中我们应该使用调整cost值
,或者引入时变动类型(外部使用OE 1,区域内还是使用OE2)。
R5引入的ISIS,引入域外路由时修改优先级
为150:
ospf 1
import-route isis 1
preference ase route-policy LOOP 150
OE1 域外路由,会累加METRIC值(默认20);OE2 域外路由,不累加METRIC值(默认20)。
有多个出口这时我们可以使用OE1,它能够让我们在做路由决策的时候变得更加精确。因此多出口,建议用OE1。
ON1和ON2类似OE1和OE2,由NSSA的ASBR重发布而来,NSSA区域中的路由器没有LSA5,用LSA7算出的external路由,就标记为ON1/2。
3、通过打不同tag的方式防止环路。
如果发生域外路由2.2.2/32这个节点发生故障断开后,由于在R4的路由表存在这条路由的下一跳是45.1.1.5,就会形成环路,R5–>R1–>R3–>R4–>R5。为避免这样情况的发生,分别对OSPF路由和ISIS路由打上不同的标签,然后在引入点根据标签进行针对性的阻断。
R3 IS-IS引入OSPF打入tag41。
#
isis 1
import-route ospf 1 route-policy IS_ospf
#
route-policy IS_ospf deny node 10 //先过滤,拒绝来自ISIS的路由
if-match tag 14 //匹配tag 14
#
route-policy IS_ospf permit node 20 //允许通过
apply tag 41 //引入的路由打上tag 41
#
R3 IS-IS引入OSPF打入tag14。
#
ospf 1
import-route isis 1 route-policy ospf_IS
#
route-policy ospf_IS deny node 10 //先过滤,拒绝来自OSPF的路由
if-match tag 41 //匹配tag 41
#
route-policy ospf_IS permit node 20
apply tag 14 //引入的路由打上tag 14
#
这样即使2.2.2.2环回接口断掉后,也不会出现环路。
1.3、双点双向ISIS与OSPF引发的问题
前面是双点单向,只是IS-IS路由引入到OSPF。
下面我们用到双点双向,也就是OSPF路由引入到IS-IS、IS-IS路由引入到OSPF。实际工作中是使用双点双向。
R3先做双引
ospf 1
import-route isis 1
isis 1
import-route ospf 1
R5后做双引
ospf 1
import-route isis 1
isis 1
import-route ospf 1
配置结束时,整个网络内将会出现路由环路和次优路由这两个问题。
[R3]dis curr conf isis
[R3]dis curr con ospf
查看R1的路由表
<R1>dis ip rou
Destination/Mask Proto Pre Cost Flags NextHop Interface
44.1.1.1/32 ISIS-L2 15 10 D 15.1.1.5 GigabitEthernet0/0/2
ISIS-L2 15 10 D 13.1.1.3 GigabitEthernet0/0/1
<R1>dis isis lsdb verbose | i 44.1.1.1
LSPID Seq Num Checksum Holdtime Length ATT/P/OL
-------------------------------------------------------------------------------
+IP-Extended 44.1.1.1 255.255.255.255 COST: 0
+IP-Extended 44.1.1.1 255.255.255.255 COST: 0
R3的路由表
<R3>dis ip rout
Destination/Mask Proto Pre Cost Flags NextHop Interface
2.2.2.2/32 ISIS-L2 15 20 D 13.1.1.1 GigabitEthernet0/0/1
R5的路由表
<R5>dis ip ro
Destination/Mask Proto Pre Cost Flags NextHop Interface
2.2.2.2/32 O_ASE 150 1 D 45.1.1.4 g0/0/0
现象:
双点双向后去往44.1.1.1的路由就会负载均衡(正常)。R3去往2.2.2.2产生次优路由,从R3–>R1–>R5–>R4。
1.3.1、次优路由的产生
为什么会产生2.2.2.2这条次优路由?
因为时间的关系,哪个ASBR先成功的引入?这里明显是R3首先引入了这条2.2.2.2的路由。
解决次优路径办法?
- 在R3的收取方向做过滤(同一协议下);
- 在R5输出方向作过滤其它路由协议引入的路由。
但是堵的方法,会造成路由没有备份路径,比如当R3–>R4或者R5–>R4中一条断开后,2.2.2.2这条路由就断了,没有备份路径可以传输数据。
1、堵的办法。
下面是在R3的ISIS上把优先级调整为151。这样ISIS协议内的路由的优先级都会改动。
isis
preference 151
这样R3 ISIS协议内的路由都变成次优路由,路由表将会重新选择走OSPF的路由。到R1就是会R3–>R4–>R5–>R1。
2、疏的方法:
路由策略的解决办法:
1)、改进调整方法,针对2.2.2.2路由R3的优先级调整。在进程下调用route-policy。
R3
ip ip-prefix 100 index 10 permit 2.2.2.2 32
route-policy Prefer permit node 10
if-match ip-prefix 100 //如果匹配到前缀列表100
apply preference 151 //接受修改优先级为151
#这时是修改属性不是过滤,所以不用再一条route-policy允许所有
isis 1
preference route-policy Prefer
2)、R5的调整方法
acl 2018
rule 10 permit source 2.2.2.2
route-policy prefer permit node 10
if-match acl 2018
apply preference 14 //不能小于OSPF
ospf 1
prefercence ase route-policy Prefer //外部路由优先级路由策略Prefer
通过上面的调整,2.2.2.2的路由–>R4–>R5–>R1。
1)、由于R3设置了对2.2.2.2网段ISIS协议内优先级低,所以R3选择从R4上学习2.2.2.2网段路由。
2)、R5通过OSPF协议设置了协议内优先级高,所以R5选择从R4上学习2.2.2.2网段路由。
并通过ISIS协议泛洪给R1。就形成了一条单向的路由R1–>R5–>R4。
1.3.2、环路的产生以及通过路由策略标记tag消除环路。
但当将位于路由器R1上的环回接口Loopback 0关闭,就会产生环路。R3、R5将可能使用ISIS中的OSPF外部路由,为此将会重新产生环路。
[R1]tracert 2.2.2.2
TAG的使用
通过对发布出去路由打上Tag标记,在另一端对打上Tag标记的路由进行过滤。
方法:对于路由引入之前,需要先过滤带Tag标记的路由,再对引入的路由打上Tag标记。
2Tag路由策略解决:
- R3将ospf引入到isis先过滤tag14再打上tag41,R5将isis引入到ospf先过滤tag41再打上tag14。
- R5将ospf引入到isis先过滤tag14再打上tag41,R3将isis引入到ospf先过滤tag41再打上tag14。
ospf引入到isis,过滤tag14主要防止由isis引入到ospf中的路由重新引入回ISIS中,isis引入到ospf过滤tag41亦是这样。
TAG只能用于IGP,类似于BGP的团体属性。
OSPF和RIP可以用于外部路由协议,OSPF的外部路由的TAG为1。
ISIS称之为管理TAG,可以用于外部路由,同时ISIS也可以在内部路由来应用TAG,注意ISIS要求宽度量才可以识别TAG。
默认情况下的ISIS设备使用的是narrow开销类型,其链路中传递ISIS报文时不会携带Tag标记信息。
ISIS中详细路由的详细信息
[R1]display ip routing-table pro isis verbose
ISIS配置宽度量:
[R1]isis 1
[R1-isis-1]cost-style wide
[R3]isis 1
[R3-isis-1]cost-style wide
[R5]isis 1
[R5-isis-1]cost-style wide
R3,ISIS引入OSPF路由,允许打上41标记,如果匹配到标记是14的路由拒绝。这样不会产生次优路由。
# 先拒绝带tag路由
[R3]route-policy is_os deny node 5 //is_os5号拒绝
[R3-route-policy]if-match tag 14 //如果匹配tag 14 过滤
[R3-route-policy]q
[R3]route-policy os_is deny node 5
[R3-route-policy]if-match tag 41
[R3-route-policy]q
# 再对引入的路由打上tag
[R3]route-policy is_os permit node 10 //is_os10号允许
[R3-route-policy]app tag 41 //引入的路由打上tag 41
[R3-route-policy]q
[R3]route-policy os_is permit node 10
[R3-route-policy]app tag 14
[R3-route-policy]q
# 应用在路由引入上
[R3]ospf 1
[R3-ospf-1]import isis 1 route-policy os_is
[R3-ospf-1]isis 1
[R3-isis-1]import ospf 1 route-policy is_os
[R3-isis-1]q
R5也一样,这里省略。
4Tag路由策略解决:文章来源:https://www.toymoban.com/news/detail-628940.html
- R3将ospf引入到isis先过滤tag30再打上tag10,R5将isis引入到ospf先过滤tag10再打上tag30。
- R5将ospf引入到isis先过滤tag40再打上tag20,R3将isis引入到ospf先过滤tag20再打上tag40。
# R3将ospf引入到isis先过滤tag30再打上tag10
[R3]route-policy 1tag deny node 5
[R3-route-policy]if-match tag 30
[R3-route-policy]q
[R3]route-policy 1tag permit node 10
[R3-route-policy]app tag 10
[R3-route-policy]q
# R3将isis引入到ospf先过滤tag20再打上tag40。
[R3]route-policy 4tag deny node 5
[R3-route-policy]if-match tag 20
[R3-route-policy]q
[R3]route-policy 4tag permit node 10
[R3-route-policy]app tag 40
[R3-route-policy]q
# 应用在路由引入上
[R3]ospf 1
[R3-ospf-1]import isis 1 route-policy 4tag
[R3-ospf-1]isis 1
[R3-isis-1]import ospf 1 route-policy 1tag
[R3-isis-1]q
R5也一样,这里省略。文章来源地址https://www.toymoban.com/news/detail-628940.html
到了这里,关于HCIP-5.8OSPF路由的引入及路由过滤的作用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!