OSPF 外部路由选路规则及RFC2382与RFC1583分析

1      OSPF选路规则

经过同一个OSPF进程内的LSA计算的相同路由条目:ide

1.     区域内路由优于区域间路由oop

2. 区域间路由优于外部路由学习

3. 对于外部路由,类型1老是优于类型2测试

4. 对于外部路由,且开销类型相同时:this

(1)   同为外部类型2,重分布时携带开销小的最优spa

(2)   定义两种开销值:3d

l  x=内部设备到转发地址(FA)的开销;FA0时,X为到ASBR的开销orm

l  y=外部路由重分发进来时LSA携带的开销值router

RFC1583RFC2328是针对外部路由由不一样选优方式。blog

此时须要分选择标准:

* RFC1583标准:

A.      TYPE-1路由比对:

X+Y值最小路由

B.       TYPE-2路由比对:

X值最小路由

以后就没有成型的规范了。基本实现应该是负载

* RFC2328标准:

直接比对X路由类型(RFC232816.4.1

(1)   非骨干区域的区域内路由始终优先。

(2)   骨干区域中的区域内路径和区域间路径,优先级相同

(3)   若是没法比对出结果,则等同RFC1583继续比对

(4)   若是多条都是最小开销,选择学习到的这些LSA的区域里,选择最大area-ID里面的LSA使用

以后没有任何成型规范。因此,若是ID(associated area-ID)相同,基本实现应该是负载

2      测试的拓扑图与说明

设备互连IP段,如AR1AR2互连为10.10.AB.AAR110.10.12.1/24AR210.10.12.2/24ospfrouter IDA.A.A.A,如AR1router ID1.1.1.1

引入的路由为loop0地址,IP地址都为100.100.100.100/32

                                   image.png          

3      兼容RFC1583(默认兼容)下的选路

3.1          引入type 1的外部路由

R2,R4R5都引入type 1并都设置cost 10

[R2-ospf-1]dis this

[V200R003C00]

#

ospf 1 router-id 2.2.2.2

 import-route direct cost 10 type 1

 area 0.0.0.0

  network 10.10.12.2 0.0.0.0

  network 10.10.23.2 0.0.0.0

#

[R4-ospf-1]dis this

#

ospf 1 router-id 4.4.4.4

 import-route direct cost 10 type 1

 area 0.0.0.1

  network 10.10.34.4 0.0.0.0

#

<R5>dis cu configuration ospf

#

ospf 1 router-id 5.5.5.5

 import-route direct type 1 cost 10

 area 0.0.0.2

  network 10.10.35.5 0.0.0.0

#

3.1.1     X相同,Y相同

R3到外部路由的:X=1,Y=10

R3查看100.100.100.100路由,三条等价路由负载,开销都为11X=1,Y=10

image.png

3.1.2     X不一样,Y相同

修改(增长)R3Area 1Area 2接口的开销后(意味着X的开销增大),即R3R2引入的路由:X=1,Y=10R3R4R5引入的路由为X=100Y=10,那么路由就优先开销小(X+YAR2引入的路由(X=1,Y=10,其他两条X=100,Y=10

[R3-GigabitEthernet2/0/0]ospf cost 100

[R3-GigabitEthernet0/0/1]ospf cost 100

R3查看100.100.100.100路由,优选X+Y小的负载。

image.png

3.1.3     X相同,Y不一样

恢复R3Area 1Area 2接口的开销后(意味着X相等),R4引入路由的开销设为20,即R4引入的路由Y=20,而R2R5引入的路由Y=10

[R3-GigabitEthernet2/0/0]undo ospf cost

[R3-GigabitEthernet0/0/1]undo ospf cost

[R4-ospf-1]import-route direct type 1 cost 20

R3查看100.100.100.100路由,优选X+Y小的负载。

image.png

3.1.4     X不一样,Y不一样,X+Y相同

恢复R4引入的路由开销为10,修改(增长)R3Area 1Area 2接口的开销后(意味着X的开销增大),即R3R2引入的路由:X=1,Y=109R3R4R5引入的路由为X=100Y=10,那么路由就X+Y)相等时负载

[R3-GigabitEthernet2/0/0]ospf cost 100

[R3-GigabitEthernet0/0/1]ospf cost 100

[R2-ospf-1]import-route direct type 1 cost 109

R3查看100.100.100.100路由,三条(X+Y相等)等价路由负载

image.png

3.2          引入type 2的外部路由

R2R4R5同时引入type 2并都设置cost 20

[R2-ospf-1]import-route direct type 2 cost 20

[R4-ospf-1]import-route direct type 2 cost 20

[R5-ospf-1]import-route direct type 2 cost 20

3.2.1     X相同,Y相同

R3到外部路由的X=1,Y=20

R3查看100.100.100.100路由,三条等价路由负载,开销为Y

image.png

3.2.2     X不一样,Y相同

修改(增长)R3Area 1接口的开销后(意味着X的开销增大)

[R3-GigabitEthernet2/0/0]ospf cost 100       

查看路由,R4X=100R2R5X=1,先比对Y,再比对XY相等,X小的优先,X相等进行负载。

image.png

3.2.3     X相同,Y不一样

恢复R3Area 1接口的开销后(意味着X相等),R4引入路由的开销设为20,即R5引入的路由Y=30,而R2R5引入的路由Y=10

[R3-GigabitEthernet2/0/0]undo ospf cost

[R5-ospf-1] import-route direct type 2 cost 30

R3查看100.100.100.100路由,优选Y小的负载。

image.png

3.3          引入type 2的外部路由分析

比较YY都为20,当Y相等时,对比XX也都为1,所以负载分担,且路由的开销为20Y)。

当增长R3Area 1Area 2区域接口的开销后,依旧按照Y开销小的优先,选择AR2引入的路由(走骨干区域)。

4      RFC2328(不兼容RFC1583)下的选路

4.1          引入type 1 的外部路由

R2R4R5配置引入type 1路由并设置cost 10

[R2-ospf-1]import-route direct type 1 cost 10

[R4-ospf-1]import-route direct type 1 cost 10

[R5-ospf-1]import-route direct type 1 cost 10

R3配置取消RFC1583兼容

[R3-ospf-1]undo rfc1583 compatible

4.1.1     X相同,Y相同

R3到外部路由的:X=1,Y=10

查看R3100.100.100.100路由,两条等价路由,一条骨干区域引入的路由选优失败。优选X为非骨干区域,再根据X+Y负载。

image.png

4.1.2     X不一样,Y相同

修改(增长)R3Area 1Area 2接口的开销后(意味着X的开销增大),路由选路没有变化,只是增长了开销,证实优选X为非骨干区域,再根据X+Y负载。

[R3-GigabitEthernet2/0/0]ospf cost 100

[R3-GigabitEthernet0/0/1]ospf cost 100

image.png

4.1.3     X相同,Y不一样

恢复R3Area 1Area 2接口的开销后(意味着X相等),R5(非骨干区域)引入路由的开销设为20,即R5引入的路由Y=20,而R2R4引入的路由Y=10

[R3-GigabitEthernet2/0/0]undo ospf cost

[R3-GigabitEthernet0/0/1]undo ospf cost

[R5-ospf-1]import-route direct type 1 cost 20

R3查看100.100.100.100路由,优选X为非骨干区域,再根据X+Y优选。选择了X为非骨干区域且X+Y最小的R4

image.png

4.1.4     X不一样,Y不一样,X+Y相同

恢复R4引入路由的开销为10,修改(增长)R3Area 1Area 0接口的开销后(意味着X的开销增大),即R3R5引入的路由:X=1,Y=109R3R4R5引入的路由为X=100Y=10,那么路由就X+Y)相等时负载

[R3-GigabitEthernet2/0/0]ospf cost 100

[R3-GigabitEthernet0/0/0]ospf cost 100

[R5-ospf-1]import-route direct type 1 cost 109

R3查看100.100.100.100路由,优选X为非骨干区域,再根据X+Y负载。

image.png

4.1.5     引入type 1的外部路由分析ASBR位置

R3查看LSDB,引入type1的外部路由的FA都为0.0.0.0,即X等于去往ASBR的开销,都为1Y都为10。比较X+YX+Y都等于11,所以负载分担,且开销为11(1+10)。可是AR2ASBR)在骨干区域,比较X,非骨干区域路由的优先,所以ASBRR4R5的负载分担,这里试验结果是OSPF并无对比区域ID

[R1-ospf-1]undo rfc1583 compatible

对比配置AR1,依旧能够再骨干区域和非骨干区域之间负载。所以证实与ASBR在哪无关,而是该路由器去ASBR的路由通过的哪一个区域AR1100.100.100.100的两条路由无论是R2引入仍是R4R5引入,去往ASBR的路由都是通过Area 0.

image.png

当增长R3Area 1Area 2区域接口的开销后,依旧是非骨干优先原则,选择非骨干区域的路由负载,开销为X+Y

4.2          引入type 2的外部路由

R2R4R5同时引入type 2并都设置cost 20

[R2-ospf-1]import-route direct type 2 cost 20

[R4-ospf-1]import-route direct type 2 cost 20

[R5-ospf-1]import-route direct type 2 cost 20

R3配置取消RFC1583兼容

[R3-ospf-1]undo rfc1583 compatible

4.2.1     X相同,Y相同

查看R3100.100.100.100路由两条等价路由一条骨干区域引入的路由选优失败,非骨干优先原则

image.png

4.2.2     X不一样,Y相同

修改(增长)R3Area 1接口的开销后(意味着X的开销增大)

[R3-GigabitEthernet2/0/0]ospf cost 100       

查看路由,R4X=100R2R5X=1

1.       非骨干优先原则,先选择X为非骨干路由R4R5

2.       比对Y,再比对XY相等,X小的优先,所以选择R5

image.png

4.2.3     X相同,Y不一样

恢复R3Area 1接口的开销后(意味着X相等),R4引入路由的开销设为20,即R5引入的路由Y=30,而R2R5引入的路由Y=10

[R3-GigabitEthernet2/0/0]undo ospf cost

[R5-ospf-1] import-route direct type 2 cost 30

R3查看100.100.100.100路由,优选Y小的负载。

1.       非骨干优先原则,先选择X为非骨干路由R4R5

2.       比对YY小优先,所以选择R4

 image.png 

5      RFC1583RFC2328混用造成环路

设备互连IP段,如AR1AR2互连为10.10.AB.AAR110.10.12.1/24AR210.10.12.2/24ospfrouter IDA.A.A.A,如AR1router ID1.1.1.1

引入的路由为loop0地址,IP地址都为100.100.100.100/32

image.png

1.       R2配置取消RFC1583兼容;

[R2-ospf-1]undo rfc1583 compatible

2.       R3默认开启RFC1583兼容,G0/0/1OSPF开销配置为100

[R3-GigabitEthernet0/0/1]ospf cost 100

3.       R1R4都引入直连路由,type 2cost20.

[R1-ospf-1]import-route direct type 2 cost 20

[R4-ospf-1]import-route direct type 2 cost 20

查看R2100.100.100.100路由,cost 20,下一跳R3

image.png

查看R3100.100.100.100路由,cost 20,下一跳R2

image.png

R2R3之间造成环路。

image.png

5.1          环路分析

R2取消了RFC 1583兼容,所以优选非骨干区域的去往ASBR/FA的路由,而R3兼容RFC1583,根据外部路由开销选择路由,由于R3去往R4的开销变大,所以选择R2,造成环路,实际上,不管是引入的type 1type 2,只要是R2选择取消RFC1583兼容,R3选择RFC兼容,而R2选择了非骨干区域去往ASBR/FAR3选择开销小的。所以容易造成环路。

6      RFC2328RFC1583总结

1.       对于外部路由,type 1优于type 2

2.       若是只是type 1选优,

a)      RFC 1583优选X+Y最小的X+Y相等则负载,只比较X+Y,不单独比较X大小或者Y大小

b)      RFC 2328先比较X的区域,非骨干优先,其次再比较X+Y

3.       若是只是type 2选优,

a)      RFC1583优选Y最小,若是Y相等,则比对X,优先X最小,X也相等则负载

b)      RFC2328先比较X的区域,非骨干优先,再根据RFC1583比对

测试中未发现根据Area ID进行选择

X的区域比较只当前路由器去往转发地址(FA)的路由(若是FA=0,则是去往ASBR的路由)是否通过骨干区域,而无关ASBR是否在骨干区域。

相关文章
相关标签/搜索