OSPF –链路状态路由协议(初级)【华为】

root
233
文章
0
评论
2020年11月24日11:13:24 评论 8197字阅读27分19秒

OSPF --链路状态路由协议

OSPF,开放最短的路径优先,是一种链路状态路由协议,无路由循环

开放意味着非私有的

OSPF IGP(协议号):

  • 89

优先级:10【华为】

110 【cisco】

OSPF采用SPF算法计算达到目的地的最短路径:

  • 什么叫链路(link) = 路由器接口
  • 什么叫状态(state) = 描述接口以及其与邻居路由器之间的关系

OSPF Metric

每个路由器都把自己当做根,并且给予累积成本(cost值)来计算到达目的地的最短路径

cost=参考带宽(10^8)/接口带宽(b/s)

参考带宽默认100M

华为:

  • G口和F口,cost为1
  • Serial接口,cost为64

cost计算方式:

  • 从源地址到目的地址经过的所有路由器的出接口的cost总和

 

修改参考带宽值:

更改建议,修改到网络环境内的,最大带宽值,更改一台全网改

[R2]ospf                             
[R2-ospf-1]auto-cost refernce-bandwidth 1000

ospf的报文发送地址

224.0.0.5    DR与BDR之间交互报文使用的地址

224.0.0.6    Drother发送更新的报文就是224.0.0.6地址,Drother也只会接受224.0.0.5的地址

DR和BDR,收224.0.0.5/6的所有报文

 

都是组播地址,为什么使用组播地址,不使用广播地址

只有运行了ospf的路由设备收到请求后才会处理

 

度量值的累加:

  • 度量值cost 在路由的入接口方向进行累加

 

ospf的进程号1,2,3之间没有影响,只要跑的OSPF就可以互相通讯

ospf更改cost值

直接在接口下进行修改,一般不改

[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf cost 10

 

 

OSPF的报文类型

  • hello【组播】都是224.0.0.5的地址
    • 建立和维护OSPF邻居关系
    • 邻居状态维护超时时间:
      • 40S,超过40s就认为路由消失了

      周期发送:

      • 10s/次

    • 携带参数
      • router-ID
      • 邻居RID
      • 认证
      • 通讯方式

 

  • DBD【单播】

刚开始的时候所有设备都会发送DD报文

DBD主设备报文

DBD从设备数据报文

    • 链路状态数据库描述信息(描述LSDB中LSA头部信息,就是简单的描述LSA信息
    • 选举主从关系(router IP大的一方为master,确定数据库描述包的序列号(2)交换LSA数据包头部信息
    • I:表示Init初始,若第一个DBD包,则将置为1,否则置为0
    • M: More若后面还有DBD包,则置为1,否则置为0
    • M/S:master/Slave,是mster置为1,Slave置为0
  • LSR【单播】
    • 链路状态请求,向OSPF邻居请求链路状态信息
  • LSU【单播/组播】
    • 链路状态更新(包含一条或多条LSA,真正包含LSA的详细信息
  • LSAck【单播】
    • 对LSU中的LSA进行确认

 

 

OSPF区域

0 区域【area 0】

  • 骨干区域

非骨干区域可以通过骨干区域传递路由

非0区域

  • 非骨干区域【area 0以外的区域】

不通过骨干区域无法传递路由

区分骨干非骨干主要原因是减少LSA泛洪,打包数据一次性进行传递

加载中间的路由器叫ABR边界路由器

OSPF状态集

1.DOWN状态谁都不认识谁

  • 设备和设备之间没有发送任何报文
  • 没有宣告
  • 接口DOWN

2.INIT稍微有点认识

  • 设备和设备之间交互hello包【你发给我,我发给你】
  • 初始状态

3.2-WAY认识

发hello包,每10s发送一次hello包,是为了维护邻居关系

在2-way状态建立的邻居关系,也就是Drother与Drother,不交互数据

  • 选举DR【班长】
  • 选举BDR【副班长】
  • 其他设备都叫Drother【成员】

每一个广播域内ospf都是独立运行的,都会选一个DR和BDR,这个选举是针对接口的,每一个接口都有可能成为DR,BDR,Drother

DR和BDR之间传递路由

Drother和DR,BDR之间传递路由

Drother和Drother之间不传递路由,之间保持2-way状态,关系不会向下发展

DR的好处:

  • 减少广播域内ospf路由的交互的次数
  • 减少带宽占用率

DR的选举规则:

实际现网中:

  • 谁先跑起来ospf,在40s结束发送hello包,就选为DR了,然后接着按下面的进行选
  • 如果保证某台设备为DR,其他设备优先级设置为0,就可以

理想状态:

  • 1.接口的优先级【取值0~255,越大越优先,0代表不参与选举,255最高选举权,不代表一定是DR】
  • 如果接口优先级相同,选择Router-id越大越优先

 

4.EX-START

  • 互相发送第一个DBD包,用来选举主从设备
  • 为什么要有链路状态数据库,还要选举主从设备?
    • 链路状态数据库主要时为了存储LSA信息,保证OSPF路由信息传递的可靠性,选举主从设备是为了确定,以谁发送的序列号为主,根据主的序列号去判断一些条件
  • 有多少FULL状态就会有多少个主从设备

DBD包谁先发送

router-id大的先发送,与DR和BDR无关

router-id大的成为主设备(master),router-id小的成为从设备(slaver)

选完主从进入第五个状态

5.EX-change

  • 持续交互DBD报文,数据库交互DBD完成进入下一个状态,第一个LSA摘要的DBD报文是由从设备发送的,携带LSA的摘要信息

6.loading

  • 交互LSR/LSU/LSack包

Ex-start-----loading 完成数据共享

7.Full

完成LSA链路信息的交互

  • 交互hello包
  • 周期时间,30分钟/次 LSU 更新链路状态信息
  • 1小时没有收到LSU,路由就会消失

是不是一定要等待1个小时呢?

Full有一个触发更新

  • 接口 up/down的切换立即出发LSU

及时通知网络中的路由器设备网络的变化

  • FULL状态完成邻接状态,就是交互数据

也就是DR,BDR与Drother的关系 

DR与BDR之间也是邻接关系

 

简单的OSPF配置演示

进行配置ospf,都使用骨干区域

[R1]ospf 
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 192.168.10.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]dis this
[V200R003C00]
#
 area 0.0.0.0 
  network 192.168.10.0 0.0.0.255 
#
return
[R2]ospf 
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 192.168.40.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]dis this
[V200R003C00]
#
 area 0.0.0.0 
  network 192.168.10.0 0.0.0.255 
  network 192.168.40.0 0.0.0.255 
#
return
[R3]ospf 
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 192.168.40.0 0.0.0.255

进行测试是否能通讯

[R1]ping 192.168.40.2
  PING 192.168.40.2: 56  data bytes, press CTRL_C to break
    Reply from 192.168.40.2: bytes=56 Sequence=1 ttl=254 time=20 ms
    Reply from 192.168.40.2: bytes=56 Sequence=2 ttl=254 time=30 ms
    Reply from 192.168.40.2: bytes=56 Sequence=3 ttl=254 time=30 ms
    Reply from 192.168.40.2: bytes=56 Sequence=4 ttl=254 time=30 ms

查看route ID

[R1]dis ospf peer bri

         OSPF Process 1 with Router ID 192.168.10.1
                  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             192.168.10.2     Full        
 ----------------------------------------------------------------------------
[R2]dis ospf peer bri

         OSPF Process 1 with Router ID 192.168.10.2
                  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             192.168.10.1     Full        
 0.0.0.0          GigabitEthernet0/0/1             192.168.40.2     Full        
 ----------------------------------------------------------------------------
[R3]dis ospf peer bri

         OSPF Process 1 with Router ID 192.168.40.2
                  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/1             192.168.10.2     Full        
 ----------------------------------------------------------------------------

 

使用Loopback口进行管理router-id

ospf精确宣告

宣告拥有地址192.168.1.254的地址

[R3]ospf 
[R3-ospf-1]area 0 
[R3-ospf-1-area-0.0.0.0]network 192.168.1.254 0.0.0.0

 

Router-id 选举规则

router-id不能重复,重复会导致邻居无法建立,路由无法传送

修改router-id,一定要重启ospf

<>reset ospf process

1.手动指定

[R2]int loop
[R2]int LoopBack 0
[R2-LoopBack0]ip add 1.1.1.1 32
[R2-LoopBack0]dis this
[V200R003C00]
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 
#
return
[R2]dis ospf peer bri

         OSPF Process 1 with Router ID 1.1.1.1
                  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             192.168.10.1     Full        
 0.0.0.0          GigabitEthernet0/0/1             192.168.40.2     Full        
 ----------------------------------------------------------------------------
//修改Route-id
[R2]ospf 1 router-id 192.168.40.1
<R2>reset ospf process 
Warning: The OSPF process will be reset. Continue? [Y/N]:y
[R2]dis ospf peer brief 

         OSPF Process 1 with Router ID 192.168.40.1
                  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             192.168.10.1     Full        
 0.0.0.0          GigabitEthernet0/0/1             192.168.40.2     Full        
 ----------------------------------------------------------------------------

2.选举环回口IP地址最大的

3.选举物理口IP地址最大的

华为路由器型号还不太一样

  • NE系列
    • roter-id router是NE的ID号,缺省情况下,NE会再当前接口的IP地址中自动选取一个作为Rourter ID。人为配置Router ID时,必须保证自治系统中任意两台Router ID都不相同。通常做法时将Router ID配置为与该设备某个接口的IP地址一致
  • AR1200系列
    • roter-id router是NE的ID号,缺省情况下,NE会再当前接口的IP地址中自动选取一个作为Rourter ID。人为配置Router ID时,必须保证自治系统中任意两台Router ID都不相同。通常做法时将Router ID配置为与该设备某个接口的IP地址一致

 

OSPF运行过程:

1.建立邻居

2.数据库共享信息(LSDB,链路状态数据库信息的交互)

3.路由表选择最优路径加表(SPF算法得到路由)

 

查看ospf信息

[R1]dis ospf peer

         OSPF Process 1 with Router ID 1.1.1.1
                 Neighbors 

 Area 0.0.0.0 interface 192.168.10.1(GigabitEthernet0/0/0)'s neighbors
 Router ID: 2.2.2.2          Address: 192.168.10.2    
   State: Full  Mode:Nbr is  Master  Priority: 1
   DR: 192.168.10.1  BDR: 192.168.10.2  MTU: 0    
   Dead timer due in 35  sec 
   Retrans timer interval: 5 
   Neighbor is up for 00:04:55     
   Authentication Sequence: [ 0 ]

 

 

查看ospf数据库链路信息

[R1]dis ospf lsdb     

         OSPF Process 1 with Router ID 1.1.1.1
                 Link State Database 

                         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            312  48    80000007       1
 Router    1.1.1.1         1.1.1.1            366  36    80000005       1
 Router    3.3.3.3         3.3.3.3            314  36    80000003       1
 Network   192.168.10.1    1.1.1.1            366  32    80000002       0
 Network   192.168.40.1    2.2.2.2            312  32    80000002       0

 

查看ospf接口信息

 [R2]dis ospf int

         OSPF Process 1 with Router ID 2.2.2.2
                 Interfaces 

 Area: 0.0.0.0          (MPLS TE not enabled)
 IP Address      Type         State    Cost    Pri   DR              BDR 
 192.168.10.2    Broadcast    BDR      1       1     192.168.10.1    192.168.10.2
 192.168.40.1    Broadcast    DR       1       1     192.168.40.1    192.168.40.2
 2.2.2.2         P2P          P-2-P    0       1     0.0.0.0         0.0.0.0

 

以太网口,G类型的接口网络类型为Broadcast【广播】,就是背靠背直连两台路由器也会选举DR,BDR,这时候把网络类型改为P-2-P【点到点】就不会选举了

OSPF网络类型

  • 广播Broadcast
  • 点到点P-2-P
    • 虚拟逻辑接口Loopback
    • 串口【鸡肋,淘汰】

 

修改OSPF网络类型为P-2-P【这种情况只适用2台】

BMA网络类型,一对多需要改

串口不需要改,网络类型默认点到点

两个直连设备,两端网络类型都要修改P-2-P类型要一样,如果你不改,可以建立邻居,但是无法学习路由,就是网络不通呗,这种改好是可以和一对多的网络类型为BMA一起正常工作的

[R2]dis ospf int

         OSPF Process 1 with Router ID 2.2.2.2
                 Interfaces 

 Area: 0.0.0.0          (MPLS TE not enabled)
 IP Address      Type         State    Cost    Pri   DR              BDR 
 192.168.10.2    Broadcast    DR       1       1     192.168.10.2    192.168.10.1
 192.168.40.1    Broadcast    DR       1       1     192.168.40.1    192.168.40.2
 2.2.2.2         P2P          P-2-P    0       1     0.0.0.0         0.0.0.0
[R3]dis ospf int 

         OSPF Process 1 with Router ID 3.3.3.3
                 Interfaces 

 Area: 0.0.0.0          (MPLS TE not enabled)
 IP Address      Type         State    Cost    Pri   DR              BDR 
 192.168.40.2    Broadcast    BDR      1       1     192.168.40.1    192.168.40.2
 3.3.3.3         P2P          P-2-P    0       1     0.0.0.0         0.0.0.0
[R2]int g0/0/1 
[R2-GigabitEthernet0/0/1]ospf network-type p2p

[R3]int g0/0/1 
[R3-GigabitEthernet0/0/1]ospf network-type p2p
[R2]dis ospf int

         OSPF Process 1 with Router ID 2.2.2.2
                 Interfaces 

 Area: 0.0.0.0          (MPLS TE not enabled)
 IP Address      Type         State    Cost    Pri   DR              BDR 
 192.168.10.2    P2P          P-2-P    1       1     0.0.0.0         0.0.0.0
 192.168.40.1    P2P          P-2-P    1       1     0.0.0.0         0.0.0.0
 2.2.2.2         P2P          P-2-P    0       1     0.0.0.0         0.0.0.0
[R3]dis ospf int 

         OSPF Process 1 with Router ID 3.3.3.3
                 Interfaces 

 Area: 0.0.0.0          (MPLS TE not enabled)
 IP Address      Type         State    Cost    Pri   DR              BDR 
 192.168.40.2    P2P          P-2-P    1       1     0.0.0.0         0.0.0.0
 3.3.3.3         P2P          P-2-P    0       1     0.0.0.0         0.0.0.0

 

如果ospf路由收敛效率低下,如何优化?

OSPF可以讲背靠背连接的路由器【就是直连设备的接口都要修改为P-2-P】接口设置为P2P网络,P2P网络类型中OSPF不需要选举DR/BDR,加快了网络收敛速度

默认路由

默认路由下方方式一:

[R2]ip router 0.0.0.0 0.0.0.0 null0
[R2]ospf 1 
[R2-ospf-1]default-information orignate

只要本地路由器检测到路由表里有一个非ospf的默认路由,OSPF就会发给其他设备

默认路由下发方式二:

总是下发默认路由,即使公网的路径断掉,无条件发送路由信息

ospf 1
default-information orignate always

被动接口

在实际环运行ospf的环境中,肯定有些接口是要接入PC机器,交换机的,像这种接口就不需要发送hello包了

在与PC机直连的路由器上操作,接口不接受ospf的hello包,交互报文,但是会暴露网段

ospf
silent-interface g0/0/0

 

 

 

 

继续阅读
weinxin
我的微信
这是我的微信扫一扫
  • 文本由 发表于 2020年11月24日11:13:24
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
OSPF综合练习 Route

OSPF综合练习

OSPF综合练习   IP地址规划 R5/R6/R7之间的网段为:172.16.146.X R5/R6/R2之间的网段为:172.16.100.X 所有路由器都有一个Loopbacck 0接...
IS-IS链路状态路由协议 Route

IS-IS链路状态路由协议

IS-IS链路状态路由协议   IS-IS的由来 IS-IS是国际标准组织ISO为OSI中的无连接网络协议CLNP设计的一种动态路由协议。 现网使用TCP/IP协议,为了提供对IP路由的支持...
路由引入 Route

路由引入

路由引入 什么情况下需要路由引入 不同的路由协议需要互相学习到对方的路由信息 外部路由协议的优先级全都按照OSPF外部路由优先级150计算   情况有很多种 单点单向重分发 单点双向重分发 ...
OSPF其它特性 Route

OSPF其它特性

OSPF其它特性 只要有5类 LSA或7类 LSA产生就会产生LSA 静默接口/被动接口 启用找接口,PC机不会收到hello包了,不收到LSA报文了 ospf silent-interface g0...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: