OSF协议详解.docx

上传人:b****2 文档编号:2833212 上传时间:2023-05-04 格式:DOCX 页数:27 大小:534.48KB
下载 相关 举报
OSF协议详解.docx_第1页
第1页 / 共27页
OSF协议详解.docx_第2页
第2页 / 共27页
OSF协议详解.docx_第3页
第3页 / 共27页
OSF协议详解.docx_第4页
第4页 / 共27页
OSF协议详解.docx_第5页
第5页 / 共27页
OSF协议详解.docx_第6页
第6页 / 共27页
OSF协议详解.docx_第7页
第7页 / 共27页
OSF协议详解.docx_第8页
第8页 / 共27页
OSF协议详解.docx_第9页
第9页 / 共27页
OSF协议详解.docx_第10页
第10页 / 共27页
OSF协议详解.docx_第11页
第11页 / 共27页
OSF协议详解.docx_第12页
第12页 / 共27页
OSF协议详解.docx_第13页
第13页 / 共27页
OSF协议详解.docx_第14页
第14页 / 共27页
OSF协议详解.docx_第15页
第15页 / 共27页
OSF协议详解.docx_第16页
第16页 / 共27页
OSF协议详解.docx_第17页
第17页 / 共27页
OSF协议详解.docx_第18页
第18页 / 共27页
OSF协议详解.docx_第19页
第19页 / 共27页
OSF协议详解.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

OSF协议详解.docx

《OSF协议详解.docx》由会员分享,可在线阅读,更多相关《OSF协议详解.docx(27页珍藏版)》请在冰点文库上搜索。

OSF协议详解.docx

OSF协议详解

OSPF协议总结(完整版)

OSPF的五个包:

1.Hello:

9项内容,4个必要

2.DBD:

数据库描述数据包(主要描述始发路由器数据库中的一些或者全部LSA信息),主要包括接口的MTU,主从位MS,数据库描述序列号等);

3.LSR:

链路状态请求数据包(查看收到的LSA是否在自己的数据库,或是更新的LSA,如果是将向邻居发送请求);

4.LSU:

链路状态更新数据包(用于LSA的泛洪扩散和发送LSA去响应链路状态请求数据包);

5.LSACK:

链路状态确认数据包(用来进行LSA可靠的泛洪扩散,即对可靠包的确认)。

Hello包作用:

1.发现邻居;

2.建立邻居关系;

3.维持邻居关系;

4.选举DR,BDR

5.确保双向通信。

Hello包所包含的内容:

路由器id

Hello&Dead间隔*

区域id*

邻居

DR

BDR

优先级

验证*

末节区域*

注:

1.“*”部分全部匹配才能建立邻居关系。

2.邻居关系为FULL状态;而邻接关系是处于TWO-WAY状态。

Hello时间间隔:

在点对点网络与广播网络中为10秒;

在NBMA网络与点对多点网络中为30秒。

注:

保持时间为hello时间4倍

虚电路传送的LSA为DNA,时间抑制,永不老化.

OSPF的组播地址:

DR将使用组播地址224.0.0.5泛洪扩散更新的数据包到DRothers

DRothers使用组播地址224.0.0.6发送更新数据包

组播的MAC地址分别为:

0100.5E00.0005,0100.5E00.0006

OSPF的包头格式:

|版本   |类型|长度 |路由器ID|区域ID |验证和|验证类型 |验证|数据 |

|1byte|  1  |2|4|4|2|2|8|variance|

OSPF支持的验证类型:

OSPF支持明文和md5认证,用Sniffer抓包看到明文验证的代码是“1”,md5验证的代码是“2”。

OSPF支持的网络类型:

1.广播

2.非广播

3.点对点(若MTU不匹配将停留在EX-START状态)

4.点对多点

5.虚电路(虚电路的网络类型是点对点)

虚链路必须配置在ABR上,

虚链路的配置使用的命令是areatransit-area-idvirtual-linkrouter-id

虚链路的Metric等同于所经过的全部链路开销之和

DR/BDR选举:

1.优先级(0~255;0代表不参加选举;默认为1);

2.比较Router-id。

次者为BDR。

在Point-to-Point,Point-to-Multipoint(广播与非广播)这三种网络类型不选取DR与BDR;Broadcast,NBMA选取DR与BDR。

先启动OSPF进程的路由器会等待一段时间,这个时间内你没有启动其它路由的OSPF进程的话,第一台路由就认为自己是DR,之后再加进来的也不能在选举了,这个等待时间叫做WaitTimer计时器,CISCO规定的WaitTimer是40秒。

这个时间内你启动的路由是参与选举的,所以真实工作环境中,40秒你大概只启动了两台,DR会再前两台启动的路由中产生,工作一段时间以后,活的最久的路由最有可能成为DR

OSPFoverFRAME-RELAY的配置:

(1)NBMA:

在HUB上指定邻居;SPOKE上设置优先级为0。

(2)P-TO-P:

接口下配置命令ipospfnetworkpoint-to-point。

(3)P-TO-MULTP:

接口下配置命令ipospfnetworkpoint-to-multipoint。

按需电路配置:

接口下配置命令ipospfdemand-cricuit。

孤立区域问题解决:

1.虚电路(虚电路穿过的区域一定是标准区域,标准区域一定是全路由的)

2.隧道

3.多进程重分发

注:

如果中间间隔区域为stub区域,则只能用隧道解决.

OSPF分区域的原因:

1.LSA数据过大,造成带宽负载过大。

2.计算全网拓扑,对cup要求过高。

3.数据库过大,对内存要求过高。

OSPF的区域类型:

骨干:

LSA:

12345

标准:

LSA:

12345

stub:

LSA123

nssa:

LSA12377(default)

AREA1NSSADEFAULTINFORMATION-ORIGINATE

(ABR上产生默认路由LSA7)

total-stub:

12一条默认3

total-nssa:

127一条默认3

LSA的类型:

类型1:

路由器链路信息

内容包括:

路由器链路Router-id;接口地址;接口网络;接口花费

可使用showospfdatabaserouter命令查看。

类型2:

网络链路信息

由DR通告,如果是点对点的网络类型,没有LSA2

类型3、4:

汇总链路(都是ABR通告)

3号通告ospf区域间信息

4号通告asbr的router-id信息(通告nssa区域的abr)

类型5:

通告外部路由

类型7:

nssa区域外部路由

类型11:

用于打标签

类型代码

类型名称

描述

1

路由器LSA

每台路由器都会产生,在区域内泛洪

2

网络LSA

DR产生,在区域内泛洪

3

网络汇总LSA

ABR始发,在整个OSPF域中泛洪

4

ASBR汇总LSA

ABR始发,在整个OSPF域中泛洪

5

AS外部LSA

ASBR始发,在整个OSPF域中泛洪

6

组成员LSA

标识OSPF组播中的组成员,不做讨论

7

NSSA外部LSA

ASBR始发,

8

外部属性LSA

没有实现

9

OpaqueLSA(本地链路范围)

用于MPLS流量工程,不做讨论

10

OpaqueLSA(本地区域范围)

11

OpaqueLSA(AS范围)

 

OSPF邻居建立过程:

A-------------------------B

down

initB收到A发来hello进入init状态

twowayhello4个“*”匹配,选举DRBDR;A在hello中发现自己的Router-id;

exstart交换DBD;确立主从关系(多路访问Router-id高为主,低为从;串行接口下接口地址大的为主)

exchange交换数据DBD(主的先发)

loading交换完整数据包LSRLSU

full

注:

每个LSA由序列号确认为最新的更新。

当路由器收到LSA之后的处理过程:

(1)如果数据库有这样的,再查看序列号,如果序列号相同,忽略这条LSA;如果序列号偏大,将其转到数据库,并进行SPF,更新路由表;如果序列号偏小,将一个包含自己的LSA新信息发送给发送方。

(2)如果数据可没有这样的,将其加到数据库表,并发一个ACK返回,并运行SPF,更新路由表。

OSPF的Metric值:

Cost=10的8次方/带宽,简便记做100Mb/带宽值。

Metric值是由cost值逐跳累加的。

环回口的路由,掩码为/32,既我们所说的“主机路由”。

在实际应用中,环回口以32位的居多,用作ospf的管理接口。

但是如果你想让环回口模拟一个网段,我们可以通过以下配置来消除。

R1(config)#intloopback0

R1(config-if)#ipospfnetworkpoint-to-point

环回口只能配置成point-to-point这种类型,不可以配置成其它的类型。

 

其他:

1.当一个路由器既是ABR又是ASBR时为了不让巨量外部路由分发进nssa区域使用命令:

area1nssano-redistributiondefault-informationoriginate

2.配置命令showipospfdatabaserouter用来查询拓扑

3.一个路由器在理论上支持65535个OSPF进程,在实际环境中一个路由器可支持的OSPF

进程数量与其可用物理接口数量相等。

(这个我对老师说的有疑问,如果我启用了很多环回口,每个环回口一个区域不可以吗?

 

OSPF汇总

在OSPF骨干区域当中,一个区域的所有地址都会被通告进来。

但是如果某个子网忽好忽坏不稳定,那么在它每次改变状态的时候,都会引起LSA在整个网络中泛洪。

为了解决这个问题,我们可以对网络地址进行汇总。

Cisco路由器的汇总有两种类型:

区域汇总和外部路由汇总。

区域汇总就是区域之间的地址汇总,一般配置在ABR上;外部路由汇总就是一组外部路由通过重发布进入OSPF中,将这些外部路由进行汇总。

一般配置在ASBR上。

区域汇总:

areaarea-idrangeip-addressmask

外部路由汇总:

summary-addressip-addressmask

 

我设计的两个试验,把几个知识点串起来

试验一

用一个试验总结一下ospfover桢中继的时候,OSPF几种网络类型的差别。

封装好FR,DEBUG看到的几种情况

情况一:

两边只起了OSPF进程,其它全部默认

这种情况下邻居需要手动配置!

R2(config)#routerospf10

R2(config-router)#neighbor12.1.1.3

选举了DR,BDR

hello的间隔是30s

OSPF的数据包是单播传送的。

情况二:

两边的网络类型改为Broadcast(命令接口下ipospfnetworkbroadcast)

这种网络类型下是不需要手动配置邻居关系

有DR与BDR的选举。

Hello时间间隔为10s。

使用224.0.0.5这个组播地址传送数据包。

情况三:

网络类型改为Point-to-Point(命令接口下ipospfnetpoint-to-point)

不需要手动指定邻居

没有DR/BDR的选举

Hello时间间隔为10s

使用224.0.0.5这个组播地址传送数据。

情况四:

Point-to-Multipoint(命令接口下ipospfnetworkpoint-to-multipoint)

不需要手动指定邻居

没有DR和BDR的选举

Hello时间间隔为30s

以224.0.0.5这个组播地址发送数据

情况五:

非广播的Point-to-Multipoint

(命令接口下ipospfnetworkpoint-to-multipointnon-broadcast)

邻居需要手动指定,但是邻居只要在一边指定即可。

没有DR和BDR的选取

Hello时间间隔为30s

使用单播传送OSPF数据

列出一张表,方便看

网络类型

邻居自动发现

有无DR选举

Hello间隔

传输方式

默认

30s

单播

Broadcast

10s

组播

Point-to-Point

10s

组播

Point-to-Multipoint

30s

组播

Point-to-Multipoint(非广播)

否,单边指即可

30s

单播

试验二

OSPF的认证总结:

OSPF的认证有2种类型(不验证也算的话是3种),使用DEBUG可以看到type0表示无认证,type1表示明文认证,type2表示MD5认证。

明文认证发送密码进行认证,而MD5认证发送的是报文摘要。

OSPF的认证可以在链路上进行,也可以在整个区域内进行认证。

另外虚链路同样也可以进行认证。

同样也是分情况来讨论。

情况一:

R1和R2明文验证

R1(config)#ints1/0

R1(config-if)#ipospfauthentication(启用认证)

R1(config-if)#ipospfauthentication-keycisco(配置密码)

不配置R2的话

通过debug工具我们可以看到如下信息:

*Aug1522:

51:

54.275:

OSPF:

Rcvpktfrom10.1.1.2,Serial1/0:

MismatchAuthenticationtype.Inputpacketspecifiedtype0,weusetype1

这里的type0是指对方没有启用认证,type1是明文认证。

在R2上配置认证,使得邻居关系恢复。

R2(config)#ints1/0

R2(config-if)#ipospfauthentication

R2(config-if)#ipospfauthentication-keycisco

*Aug1522:

54:

55.815:

%OSPF-5-ADJCHG:

Process10,Nbr1.1.1.1onSerial1/0fromLOADINGtoFULL,LoadingDone

情况二:

在R2和R3的串行链路上进行MD5认证的:

R2(config)#ints1/1

R2(config-if)#ipospfauthenticationmessage-digest(定义认证类型为MD5)

R2(config-if)#ipospfmessage-digest-key1md5cisco(定义key和密码)

R3(config)#ints1/0

R3(config-if)#ipospfauthenticationmessage-digest

R3(config-if)#ipospfmessage-digest-key1md5cisco

情况三:

增加R2和R3上串行链路的MD5认证的密码:

在R2原有的配置上加上下面这条命令:

R2(config-if)#ipospfmessage-digest-key2md5openlab

R2#shoipospfneighbor

NeighborIDPriStateDeadTimeAddressInterface

3.3.3.30FULL/--11.1.1.2OSPF_VL0

1.1.1.11FULL/BDR00:

00:

3421.1.1.1FastEthernet0/0

1.1.1.10FULL/-00:

00:

3710.1.1.1Serial1/0

3.3.3.30FULL/-00:

00:

3111.1.1.2Serial1/1

邻居关系没有丢失。

增加新的密码钥匙,然后在将原来的密码删除,候邻居关系不受影响。

 

情况四:

在Area0上进行区域认证(以前没做过吧)

R1(config)#routerospf10

R1(config-router)#area0authentication

还没有写下一步,就是刚启用,还没设置密码,邻居就down掉了

同样,R2上启用一下,邻居就恢复

或者都设置相同的密码也可以。

情况五:

Area0上进行区域认证以后。

R2#clearipospfpro清进程,A2区域的学不到邻居了。

R3是通过虚链路连接到骨干区域的。

因为virtual-link属于Area0,因此在R2配置完成Area0区域认证后,R3也需要相应的配置。

R3(config)#routerospf10

R3(config-router)#area0authentication

这样就可以了

情况六:

单纯的虚链路的认证(这个以前也没做过吧)

明文认证,MD5认证。

配置命令如下:

明文:

R2(config-router)#area1virtual-link3.3.3.3authentication-keycisco

R3(config-router)#area1virtual-link2.2.2.2authentication-keycisco

 

MD5:

R2(config-router)#area1virtual-link3.3.3.3authenticationmessage-digest

R2(config-router)#area1virtual-link3.3.3.3message-digest-key1md5cisco

R3(config-router)#area1virtual-link2.2.2.2authenticationmessage-digest

R3(config-router)#area1virtual-link2.2.2.2message-digest-key1md5cisco

另外通过实验知道虚链路在建立起来后是DNALSA(不老化LSA),所以如果没有重启OSPF进程的话,即使一端配置了认证,虚链路也是不会断开的。

 

后面是sniffer抓得包

 

Hello包

 

Lsu包

 

 

LSACK包

 

上面是一般情况,下面是明文验证的几个包

Hello

 

DBD

 

LSR

 

LSU

 

LSACK

 

下面是MD5加密认证得包

 

Hello

 

DBD

 

LSR

 

LSU

 

LSACK

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2