OSPF的由来:
~RIP缺陷:
1、跳数限制在0-15超过15跳则不可达,最大到16(无穷大)、 2、次优路径(没有综合考虑线路带宽和跳数来选路、只认定跳数最短来选路) 3、周期更新、(收敛速度慢30秒后才进行收敛、
ospf是什么:
动态路由协议、(按算法分):
1、 链路状态路由协议,ospf(ospf 靠自己有整个网络的链路状态数据库、类似地图)(spf算法:1最短路径、2无环)(lsa:link state advertisement :链路状态信息、类似马路信息、路径信息和网段信息) 2、 距离矢量路由协议 (rip 听信邻居)
应用分类
1、内部网关路由协议:rip、ospf、eigrp、isis 2、外部网关路由协议:bgp
工作原理
1、 通过发送HELLO报文建立邻居关系 2、建立连接(full)关系、LSDB(链路状态数据库)同步 3、以自己为根、以自己为起点通过SPF算法算出最佳路径(最短并没有环路)
OSPF数据报文
1、hello:发现、维护邻居(10s、30s)选举DR、BDR。 2、DBD:LSA数据库摘要(类似书的目录)、选举主从大的主小的从。确定序列号,确保数据可靠性(i:初始报文;m:后续还有没有报文;ms:主)。第一个LSA摘要是从设备发出。 3、LSR:link state request 请求需要的信息 4、LSU: ls update packet 发送lsa详细信息(详细的链路状态信息、路径信息、网段信息、花销信息等) 5、lsack:对收到的LSU确认
ospf邻居状态
- 我认为我的邻居此时此刻是什么状态
1、donw:刚启动ospf的时候,还没有收到对方的hello报文 2、init:收到的hello包,但不包含自己的包。 3、attempt:nbma、现网已经看不到了,不需要研究。 4、2-way:收到hello报文,包含自己,完成DR\BDR的选举。 5、exstar:DBD(不带lsa摘要、头部信息)选举主从、确定序列号。 6、exchange:进行DBD(带lsa摘要、头部信息)报文的交互,可能有LSA更新的交互。 7、loading:继续加载LSA 8、full:lsa交互完成,邻接状态。
ospf网络接口类型:
1、以太网接口、broadcast广播(bma:broadcast muli-access ) 10s 2、帧中继、默认nbma(non-broadcast muli-access) 30s 3、ppp接口、默认p2p 10s 4、手动强制改、P2MP 30s
DR\BDR选举过程
1、接口优先级:非0、优先级最大的DR、次之BDR 2、优先级一样,比较RID。RID最大DR、次之BDR 3、DR和BDR、DR和BDR建立FULL,DRother建立full主从关系 4、DRother之间2-way、不需要选举主从 5、什么环境下需要选举DR\BDR 多路访问环境,当数据报文发出有多个接收者、广播网络 6、为什么选DR\BDR 选DR:减少了FULL数量\减少了LSA交互、节省资源 选BDR:DR的备份、 7、DR\和BDR是稳定的, 8、224.0.0.5 DRother 9、224.0.0.6 DR\BDR 注:DR\BDR选举是选举接口,不是选举设备。每个网段需要选一个DR\BDR。广播环境才选举。广域网环境不选举。
ospf怎么用:
router ID 选举规则(RID)
1、华为:手动-loopback最大-物理接口最大或者第二大(根据具体型号) 2、思科:手动-loopback最大-物理口最大 3、COST值:参考带宽接口 100m
OSPF配置
华为 ospf X router-id X.X.X.X ------建立ospf进程及Rid area X -----建立area区域 network X.X.X.X X.X.X.X -----宣告接口地址反掩码 intfice X ospf cost x --------修正路由数据选路 ospf dr-priority X -------修改优先级(DR\BDR选举值的一个参数) ospf network-type -------链路类型修改 disp ospf interface ------查看当前开启了OSPF的接口 display ospf peer brief -------查看邻居FULL状态 disp ip routing-table protocol ospf -----查看ospf的路由 思科 router ospf X net X.X.X.X X.X.X are X intfice X ip ospf cost ip ospf network X ip ospf pri X show ip ospf net show ip ospf int br show ip router ospf
OSPF宣告方式
network -------在ospf里的并不是宣告一个网段,而是宣告某些接口开启OSPF。 0.0.0.0 0.0.0.0 =0.0.0.0 255.255.255.255 ------危险宣告、把所有接口都宣告 12.1.1.0 0.0.0.0 --------精确宣告 12.1.1.0 0.0.0.255 ------网段宣告 正掩码:255.255.255.0 ------(碰到1不动 碰到0变化) 反掩码(通配符):0.0.0.255 ------(碰到0不动 碰到1变化))
调试命令
display ospf interface -----------查看启用ospf的接口 华为 show ip ospf interface bref ----------查看启用ospf的接口思科 reset ospf process ----------重启ospf进程 disp ospf 1 brief ---------查看ospf进程RID display ospf peer brief --------查看ospf邻居关系 display ip routing-table protocol ospf -------查看ospf路由表display ospf interface ---------检查通告情况,命令 display ospf lsdb --------查一下OSPF链路状态数据库 display ospf error ---------查看ospf错误的原因 reset ospf counters ---------清空ospf错误计数 show ip ospf interface ---------查看当前开启OSPF的接口
实际拓扑
1:通过OSPF实现全网通,其中ospf进程号为1,Area为0,手工指定RID为对应设备的Loopback0口。
R1:
# sysname r1 # interface Serial4/0/0 link-protocol ppp ppp pap local-user hcip password cipher hcip666 ip address 12.1.1.1 255.255.255.0 ospf cost 300 ospf dr-priority 3 # interface GigabitEthernet0/0/1 ip address 123.1.1.1 255.255.255.0 ospf cost 150 # interface LoopBack0 ip address 1.1.1.1 255.255.255.255 # ospf 1 router-id 11.11.11.11 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 12.1.1.0 0.0.0.255 network 123.1.1.0 0.0.0.255
R2:
# sysname r2 # aaa local-user hcip password cipher hcip666 ------- ppp认证的账号密码 local-user hcip service-type ppp ---------账号使用的业务 # interface Serial4/0/0 link-protocol ppp ppp authentication-mode pap ------开启PPP认证服务 ip address 12.1.1.2 255.255.255.0 ospf cost 300 ------配置ospf路由优先值 # interface GigabitEthernet0/0/1 ip address 24.1.1.2 255.255.255.0 ospf dr-priority 15 --------配置DR\BDR选举值 # interface GigabitEthernet0/0/2 ip address 123.1.1.2 255.255.255.0 ospf cost 150 ------配置ospf路由优先值 ospf dr-priority 255 --------配置DR\BDR选举值 # interface LoopBack0 ip address 2.2.2.2 255.255.255.255 # ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 12.1.1.0 0.0.0.255 network 24.1.1.0 0.0.0.255 network 123.1.1.0 0.0.0.255
R3:
sysname r3 # interface GigabitEthernet0/0/0 ip address 123.1.1.3 255.255.255.0 ospf dr-priority 4 # interface LoopBack0 ip address 3.3.3.3 255.255.255.255 # ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 3.3.3.3 0.0.0.0 network 123.1.1.0 0.0.0.255
R4: sysname r4 # interface GigabitEthernet0/0/0 ip address 24.1.1.4 255.255.255.0 # interface LoopBack0 ip address 4.4.4.4 255.255.255.255 # ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 4.4.4.4 0.0.0.0 network 24.1.1.0 0.0.0.255 network 123.1.1.0 0.0.0.255
抓包
hello packet -------- 报文发送自身ROUTER ID,自报家门 DB Description --------报文是发送的数据库摘要信息类似书的目录 LS Request --------链路状态请求、请求链路的详细路由信息 LS Update --------链路状态更新,对请求的回应 LS Acknowledge ----------链路状态确认