OSPF 总结Word文件下载.docx
《OSPF 总结Word文件下载.docx》由会员分享,可在线阅读,更多相关《OSPF 总结Word文件下载.docx(46页珍藏版)》请在冰豆网上搜索。
如何改变开销?
如图:
配通,启OSPF100
Showiproute
修改开销的方法:
1):
接口下:
ipospfcost30
Showiproute开销变为31了。
(修改的30+1)
2)改带宽:
bandwith+接口带宽
3)解决高带宽链路的方法:
Routeospf100
Auto-costreference-bandwith20000
提示:
请确认在所有路由器上修改带宽.
二、序列号:
第个LSA都是有序列号(sequence)
序列号越高LSA越新。
我的高,发更新给你;
如果我的低,直接接收。
LSA更新的确认方式:
(什么样的LSA更新)
1.更高的序列号;
2.更高的校验各;
3.哪个时间更新远于最大时间;
4.更小的LS时间。
序列号的分类:
A,线型;
从小到大,有个范围,但有用完的时候。
B,环形;
循环。
OSPF序列号称为“棒棒糖”式的空间。
如图:
由4个字节、32位组成。
开始:
0x80000001
结束:
0xFFFFFFFF
0x代表是16进制。
每变化一次,序列号就加1.
因为LSA更新,所以每30分钟序列号就加1
线型序列号的原理:
三、Planningforospf(OSPF的设计)
每个区域内,不要超过60台router,ABR所接的区域不要超过3个。
四、显示不正常的路由:
宣告ospf的另一种方法:
Ipospf100area0
用showiproute
显示:
一条不正常的路由,原因是R2把loop0的ip地址看作是末节主机了。
如何把路由变为正确的?
Intloop0
Ipospfnetworkpoint-to-point注意在以后的配置loop口时一定要输入此命令。
五、OSPF数据包进程如何工作,即邻居的建立:
1.发现邻居并建立邻居表。
2.泛洪LSA
3.计算最大路径。
4.把最短路径放入到路由表。
六、包结构:
1.OSPF版本为:
V2
2.TYPE:
类型,指包的类型;
五个包具体为:
1.Hello包
2.DBD包(DatabaseDescription数据库描述包
3.lSR包(linkstaterequest请求包
4.LSU包(linkstateupdate更新包
5.LSACK包(linkstateAcknowledgnek确认包
3.Packetleonth包长度
4.RouterID:
如何查看RouterID:
showipospf
如何修改?
Routerospf100
Router-id2.2.2.2
注:
如果要想修改生效,则必须清除ospf进程:
clearipospfprocess
修改后,提示:
冲突了(R2的routerID为2.2.2.2,)routerID相同不能建立邻居。
AreaID:
Cheak-sum:
校验和
Authenticationtype:
验证(支持多种)明文为1,密文为2,空为0.
Authentication:
Date:
以上给出的图,就是要想抓包,做SPAN端口映射。
七、Hello包的包含哪些字段?
1)子网掩码:
子网掩码不同能建立邻居吗?
不能。
试验:
如上图:
R2和R3之间:
改R3的子网25位。
邻居down了。
2)hello时间
如Hello时间不同能不能建立邻居关系?
showipospfintf0/1
Intf0/1
Ipospfhello-interval15(改为15秒,默认是10秒)
修改完hello时间后,死亡时间随之也改变了。
用:
显示:
Hello15hodltime60秒
3)末节区域标识。
4)routepriorty1优先级(默认为1)如何修改优先级?
IPospfpriority2(0-255可选,0选项不能参与选举)。
选举DR,BDR的选举规则:
优先级越大越优先,如优相等,则RouterID越大越优先。
5)死亡时间:
如果死亡时间不相等,能建立邻居吗?
试验:
修改死亡时间:
Ipospfdead-interval60(默认为40秒)
6)Desinatedroute12.1.1.2(DR是:
)
7)backupDesinatedrouter12.1.1.1(BDR是:
)
8)Activeneighbor10.1.1.1(活跃的邻居是;
八、routerID如何查看:
Showipospf
如何修改routerIDrouterospf100
router-id2.2.2.2修改后必须清除ospf进程生效,clearipospfpress
showipospfintf0/0查看hello时间与死亡时间
九、ospf邻居建立的条件:
1.掩在以太网环境下掩码必须相等(串行链路下可以不相等);
2.Hello时间要一致,死亡时间也要相同。
3.末节区域标识;
4.必须属于相同的区域;
5.RouterID不能相同;
6.MTU的大小必须相等
---------------------------------------------------------------------------------------------------------------------------------------
第二课:
(2011-06-09)
邻居:
(通过Hello成为朋友)。
邻接:
(朋友通过信息交换,成为朋友。
)从邻居到邻接的“邻居状态集”,共七种:
一、OSPF的建立过程:
1.down:
没有检测到活跃的邻居,没有收到对方面Hello时的状态。
ARREMTP尝试状态:
只会出现在NBMA环境下,他是夹在down和init之间的状态,在还没有收到hello,尝试hello的建立。
2.Init:
初始化状态:
收到hello包后的状态。
3.2-way:
双向状态:
ownrouterIDinreceivedhello意思是:
本身的RouterID出现在对方的Hello包中(或我的routerID出现在收到Hello中了)。
这时邻居关系建立了(这之后开始选举DR和BDR)。
4.exstart:
选举主/从状态;
Mastr/slaverolesdetermined意思是选举主从的角色,即谁先说,谁后说话。
目的是:
双方通过描述本地DBD包中的LSA。
RouterID越大越优先。
5.exchang:
DBD包的交换;
DatebaseDescriptionpadcetssent。
首先发送(或收到)的是一个空的DBD包。
6.loading:
交换LSR、LSU、LSACK。
7.full:
Neighborsfuulyadjacent邻居关系已经建立。
进行最优路径的选择,进行SPF算法。
二、详细叙述OSPF的建立过程:
没有收到Hello字段时为down状态,检测不到活跃的邻居;
收到hello包后,如果包中没有我的routerID成为Init状态,如果有我的RouterID,就变为Two-way状态,邻居关系建立;
为了以后发送数据包方便,进入了exstart状态进行主从关系的选择;
选择完主从关系以后,要进行主从双方说话,也就是进行DBD包数据库描述,进入了exchange状态;
通过描述数据包,知道了我有什么以及没有什么,进行LSR、LSU、LSACK的交换,进入了loading状态;
loading交换完成以后,接着便full了,邻接关系完全建立。
接下来便是运行SPF算法,选择一个最优路径,放入路由表内。
三、通过dubeg详解OSPF的建立过程:
配通,启ospf100.
1、查看邻居状态:
R1#showipospfneighbor
NeighborIDPriStateDeadTimeAddressInterface
2.2.2.20FULL/-00:
00:
3612.1.1.2Serial1/0
R2#showipospfneighbor
12.1.1.10FULL/-00:
3912.1.1.1Serial1/0
因是在串行(点到点)链路中,所以state是不用选DR和BDR的。
2.启用debugipospfpacket和debugipospfadj:
R1#debugipospfevents
OSPFeventsdebuggingison
R1#debugipospfadj
R1(config)#ints1/0
R1(config-if)#shut断开接口
R1(config-if)#noshut连接接口
*Mar101:
51:
01.119:
%LINK-3-UPDOWN:
InterfaceSerial1/0,changedstatetoup
R1(config-if)#
01.135:
OSPF:
InterfaceSerial1/0goingUp起来了。
Sendhelloto224.0.0.5area0onSerial1/0from12.1.1.1
R1发送一个hello包给224.0.0.5
01.155:
Rcvhellofrom2.2.2.2area0fromSerial1/012.1.1.2
R1收到一个2.2.2.2来的包从s1/012.1.1.2,里面包含:
2WayCommunicationto2.2.2.2onSerial1/0,state2WAY
成为2way状态
SendDBDto2.2.2.2onSerial1/0seq0x1639opt0x52flag0x7len32
在选择主从关系时,相互发送一个空的DBD包。
这是我发的第一个包。
序列号:
0x1639
0x7:
划为二进制为:
0x111,后面的三个1,代表三个位,用来区分DBD的第几个包,即包的类型。
第一位:
是初始位,如果是1,表示是第一个,如是0,则是最后一个。
第二位,M位:
后续位。
如后续有包则为1,后续没包则为:
0。
第三位,MS位:
主从位。
主为1从为0
01.159:
Sendimmediatehellotonbr2.2.2.2,srcaddress12.1.1.2,onSerial1/0
Endofhelloprocessing
结束了Hello的过程。
01.391:
RcvDBDfrom2.2.2.2onSerial1/0seq0xBFFopt0x52flag0x7len32mtu1500stateEXSTART
序列号:
0xbff.
这是我收到的第一个包,从2.2.2.2发来包。
(对方发一个DBD包)经过一个来回发送DBD包,
邻居关系变为了exstart状态,开始DBD包的交换。
收到包也是0x7(0x111),都认为自己为主。
(主从关系是依据RouterID来选的。
)
01.395:
FirstDBDandwearenotSLAVE第一DBD包认为自己不是从。
01.399:
RcvDBDfrom2.2.2.2onSerial1/0seq0x1639opt0x52flag0x2len72mtu1500stateEXSTART
从2.2.2.2收到第二个包DBD包,序列号是:
0x16390x2(0x010)
NBRNegotiat
R1(config-if)#ionDone.WearetheMASTER我是主
SendDBDto2.2.2.2onSerial1/0seq0x163Aopt0x52flag0x3len72
发送的序列号:
0x163A
01.467:
RcvDBDfrom2.2.2.2onSerial1/0seq0x163Aopt0x52flag0x0len32mtu1500stateEXCHANGE
收到的序列号:
*Mar101:
SendDBDto2.2.2.2onSerial1/0seq0x163Bopt0x52flag0x1len32
0x163B
01.487:
RcvLSREQfrom2.2.2.2onSerial1/0length36LSAcount1
SendUPDto12.1.1.2onSerial1/0length40LSAcount1
RcvDBDfrom2.2.2.2onSerial1/0seq0x163Bopt0x52flag0x0len32mtu1500stateEXCHANGE
发送第三包。
进入了exchange状态。
-----------------------------------
收到的序列号:
Ospf是不可靠的传输,为了保证可靠传输,用了确认号。
确认号分为:
显示确认(Lsack)和隐式确认(来自DBD包的序列号的确认)。
--------------------------------------
ExchangeDonewith2.2.2.2onSerial1/0
Synchronizedwith2.2.2.2onSerial1/0,stateFULL
01.491:
%OSPF-5-ADJCHG:
Process100,Nbr2.2.2.2onSerial1/0fromLOADINGtoFULL,LoadingDone
从loadingtofull状态
01.635:
BuildrouterLSAforarea0,routerID12.1.1.1,seq0x80000010,
创建一个LSA从area0routeIDj12.1.1.1序列号是:
0x80000010
R1(config-if)#process100
02.123:
%LINEPROTO-5-UPDOWN:
LineprotocolonInterfaceSerial1/0,changedstatetoup
02.751:
02.755:
10.771:
12.051:
20.499:
21.559:
21.563:
30.243:
31.443:
39.547:
41.031:
49.199:
50.751:
四、关于MTU:
(如上图)
Mtu:
1500Byte
Mtu分为:
物理MTU;
比喻成是一个物理的容器,大小是1500Byte。
用showints1/0查看。
逻辑MTU(也叫三层MTU);
比喻成是容器内的水,可多可少。
用showipints1/0查看。
怎样修改MTU:
1)修改的是物理MTU,发现,瓶子内的水也变了。
Ints1/0
MTU1200
查看:
R1(config-if)#doshowints1/0查看物理MTU
MTU1200bytes,BW1544Kbit/sec,DLY20000usec,
reliability255/255,txload1/255,rxload1/255
R1(config-if)#doshowipints1/0查看逻辑MTU
Addressdeterminedbysetupcommand
MTUis1200bytes
2)修改的是逻辑MTU,发现瓶子没有变。
Ints1/0
IpMTU1300
R1(config-if)#doshowints1/0
Internetaddressis12.1.1.1/24
MTU1500bytes,BW1544Kbit/sec,DLY20000usec,
R1(config-if)#doshowipints1/0
MTUis1300bytes
3)两端的MTU不相等会是什么情况?
把一端的物理MTu改为1400byte,另一端不变,是1500byte.
MTU1400bytes,BW1544Kbit/sec,DLY20000usec,
先清一下ospf进程:
R1#clearipospfpro
ResetALLOSPFprocesses?
[no]:
y
R1#showipospfne
2.2.2.20EXSTART/-00:
3912.1.1.2Serial1/0
发现卡在了exstart状态了。
注:
一定