OSPF 路由协议概述 开放式最短路径优先协议 open shortest path first OSPF 是基于开放标准的链路状态路由协议。OSPF 是内部网关路由协议 IGP 用于在单一自治系统内决策路由。外部网关路由协议EGP 用于在多个自治系统之间执行路由OSPF的区域1. OSPF是一种链路状态路由协议不会产生路由环路。2. OSPF将自治系统分割成多个小的区域,只在内部学习完整的链路状态信息。Router ID为唯一标识OSPF域中路由器。
设置Route-ID的优先顺序:
1)手工指定Route-ID x.x.x.x(可任意,但不能重复)
2)最大的Loopback IP
3)最大的接口IP(保证接口是激活状态)higher active physical interface ip
1. 首先路由器选取它所有Loopback接口上数值最高的IP地址如果路由器没有配置Loopback接口的IP地址那么路由就在所有物理端口中选取一个数值最高的IP地址作为路由器的Router ID使用Loopback接口的好处1. Loopback接口比任何其他的物理端口都稳定。只有路由器失效时它才失效2.网络管理员可以配置很还识别和便于记忆的Router IDOSPF工作过程1. 邻接列表2. 链路状态数据库3. 路由表OSPF建立邻居的过程:
1 down state 还没有加电状态
2 Init state 加电后发送HELLO包,将对方放入邻居表
3 two-way state 邻居关系建立,选择DR BDR。
4 exstart state 用于交换DBD的数据包,选择主从关系(为了后续dbd同步),检测MTU。从交换第一个DBD包开始表示邻接状态正式建立。第一个DBD包不包含LSA头部的,从第二个开始就包含。
5 exchange state 交换更新包
6 loading state 用于请求没有收到的LSA,
7 full state 邻接关系已经形成。
·OSPF路由器与它直连的邻居建立邻居关系。
·OSPF路由器只会与建立了邻接关系的路由器互传LSA。
·路由器只和建立了邻接关系的邻居才可以到达FULL状态。
·路由更新只在形成FULL状态的路由器间传递。
·P2P链路可以到达FULL状态。
·MA网络,所有路由器只和DR/BDR到达FULL状态。
邻接关系需要满足的条件1. Area-id 两个路由器必须在共同的网段上他们的端口必须属于该网段上的同一个区,且属于同一个子网。2. 验证(authentication OSPF)同一个区域路由器必须交换相同的验证码3. Hello Interval 和Dead Interval OSPF协议需要两个邻居路由的这些时间间隔相同。4. Stub 区域标记 OSPF的网络接口类型1. 点到点网络 PPP HDLC2. 广播多址网络 以太网3. 非广播多址网络 帧中继4. 点到多点网络 多个点到点链路的集合DR/BDR的选举:
1)比较优先级,越大越优(默认为1,如设为0表示不参与选举)
2)比较Route-ID,越大越优。
·DRother发送LSA给DR/BDR用224.0.0.6
·DR发送LSA给DRother用224.0.0.5
·非MA网络(没有DR/BDR),路由器都用224.0.0.5
<DR/BDR>特点
1)不抢占,DR正常时,即使有新的Pri比DR高的路由器也不能抢占成为DR。
2)DR正常时,BDR只接收所有信息,转发LSA和同步LSDB的任务由DR完成,当DR故障时,BDR自动成为DR,完成原DR的工作,并选举新的BDR。
3)DR是个接口概念。每个网段都会选举DR。
4) 不同网段分别选DR/BDR
·OSPF的5种报文:
1)Hello:发现并建立邻接关系。还有选举DR和BDR!!!
2)DBD:包含路由的摘要信息。
3)LSR:向另一台路由器请求特定路由的完整信息。
4)LSU:用于LSA的泛洪和回应LSR该条路由的完整信息。在OSPF中,只有LSU需要显示确认
5)LSAck:对LSU做确认。
确认(ACK):
1隐式 如Update对Request的隐式确认
2显式 LSA只对LSU显式确认
DBD包中有一个三位的标志字段(主从关系控制标志):Initial(初始位)、More(后继位)、Master/Slave(主从位)
分别是0x7,0x2,0x3 具有最高route-id的路由器为主路由器,建邻居时第一个DBD是空的,目的为了选主从关系。选主从的目的是为了同步DBD,一开始两台路由器都发送一个空的DBD,序列号随机生成,选出主路由器后从路由器先发送一个DBD,序列号为主路由器的序列号,(这样就隐式确认)
使用OSPF的原因
1. 网络的规模
2. 网络的拓扑结构
3. 其他特殊需求
4. 路由器自身的要求
OSPF的特点
1. 可适应大规模网络
2. 路由变化收敛速度快
3. 无路由环
4. 支持可变长掩码 VLSM
5. 支持区域划分
OSPF单区域的配置Router(config)# in lo 0Router (config-if)# ip add IP_ADDRouter (config)#router ospf 进程号Router (config-router)#network 网络号 反向掩码 area 区域号修改cost 值Router(config-if)#ip ospf cost 值配置OSPF 计时器Router (config-if)#ip ospf hello-interal 时间Router (config-if)#ip ospf dead-interal 时间查看邻居列表Rourter# sh ip ospf neighbor查看链路状态数据库Router#sh ip ospf database查看路由表Router#sh ip route查看OSPF Route# sh ip ospf 查看OSPF接口数据结构Router#sh ip ospf interface 接口