OSPF是基于链路状态的IGP,它适合中小型网络的配置和大型网络的配置。
OSPF
灵活性
在网络拓扑有变化的时候,OSPF协议的路由器会自动的发送hello报文发现邻居,一旦网络拓扑出现变化或者某条链路出现问题,能够快速的重新计算最优路径,并更新路由表。
而静态路由在出现网络拓扑的变化,列如增加或者删除一台设备,那么相关联的所有设备都需要修改静态路由,这样很不灵活,也不科学。
实现负载分担
到达相同目的地,相同的优先级的多个OSPF路由称为等价路由,实现负载分担。
特点
单个区域
OSPF协议当只有一个区域的时候,区域ID可以随便选择,
多区域
当有多个区域的时候就必须有一个骨干区域也就是ID=0的区域,非骨干区域的ID不可以为0.
非骨干区域必须有一台设备连接到骨干区域,可以是物理连接也可以是虚连接。
同一区域
同一个OSPF链路的两端接口必须要在同一个区域内,否则无法通信。
不同区域
同一台设备的不同接口可以在不同区域内,一个接口只可以在一个区域内。
分类
设备下的所有接口都在非骨干区域内叫做IR(内部路由器)
至少有一个接口在骨干区域内叫做BR(骨干路由器)
同时连接多个非骨干区域和骨干区域的叫做ABR(区域边界路由器)
同时连接其他协议的路由域OSPF设备叫做ASBR(自治系统边界路由器)
注意
ABR一定是BR但是BR不一定是ABR,ASBR同理。
ABR可以是ASBR
在ASBR中连接其他协议是指,连接没有OSPF协议的路由,连接其他协议的路由,或者是连接其他的OSPF协议,如果是连接其他的OSPF协议那么就需要通过进程号来进行区分。
任何OSPF的路由只要连接引入了外部路由,都可以变成ASBR。
内部路线
区域内路
用来收集区域内的LSA(链路状态通告),及采用SPF算法确保同一区域内部应为协议的问题产生回路。
区域间路
是指不同区域的路由之间需要通过区域间路进行信息的交互,所有非骨干区域之间的信息交互都需要通过骨干区域进行传输
开始实验
第一步配置环境
我们需要3台路由器,2台交换机,4个PC主机。
第二步配置交换机1
在这里我们创建了3个vlan 10 20 100,其中10和20分别对应主机1和2,100对应的是和AR1的端口
system-view
sysname LSW1
vlan batch 10 20 100
interface ethernet0/0/1
port link-type access
port default vlan 100
interface ethernet0/0/2
port link-type access
port default vlan 10
interface ethernet0/0/3
port link-type access
port default vlan 20
interface vlan 10
ip address 192.168.10.1 24
interface vlan 20
ip address 192.168.20.1 24
interface vlan 100
ip address 192.168.0.2 24
quit
ospf 1 router-id 1.1.1.1
area 1
network 192.168.0.0 0.0.255.255
第三步配置路由器AR1
这里我们需要注意,LSW1的0/0/1端口和AR路由器的GE0/0/0端口要在同一个子网下。
system-view
sysname AR1
interface gigabitethernet0/0/0
ip address 192.168.0.1 24
interface gigabitethernet0/0/1
ip address 10.1.2.1 30
interface serial4/0/0
ip address 10.1.3.1 30
ospf 1 router-id 2.2.2.2
area 1
network 192.168.0.0 0.0.0.255
area 0
network 10.1.0.0 0.0.255.255
注意
当我们配置完成这两步骤的时候,我们可以看到AR1的日志上面有了邻居关系,这里邻居关系对方的ip在上面也显示了,只不过是倒着来的。
第四步配置路由器AR2
system-view
sysname AR2
interface gigabitethernet0/0/0
ip address 10.1.2.2 30
interface gigabitethernet0/0/1
ip address 10.1.4.2 30
ospf 1 router-id 4.4.4.4
area 0
network 10.1.0.0 0.0.255.255
第五步配置路由器AR3
system-view
sysname AR3
interface gigabitethernet0/0/0
ip address 192.168.1.1 24
interface gigabitethernet0/0/1
ip address 10.1.4.1 30
interface serial4/0/0
ip address 10.1.3.2 30
quit
ospf 1 router-id 3.3.3.3
area 2
network 192.168.1.0 0.0.0.255
area 0
network 10.1.0.0 0.0.255.255
第六步配置LSW2
system-view
sysname LSW2
vlan batch 30 40 200
interface ethernet0/0/1
port link-type access
port default vlan 200
interface ethernet0/0/2
port link-type access
port default vlan 30
interface ethernet0/0/3
port link-type access
port default vlan 40
interface vlan 200
ip address 192.168.1.2 24
interface vlan 30
ip address 192.168.30.1 24
interface vlan 40
ip address 192.168.40.1 24
quit
ospf 1 router-id 5.5.5.5
area 2
network 192.168.1.0 0.0.255.255
第七步配置PC主机
同理配置号PC2,3,4
PC2的ip192.168.20.10,网关192.168.20.1
PC3的IP192.168.30.10,网关192.168.30.1
PC4的IP192.168.40.10,网关192.168.40.1
测试
我们看到通过PC1去pingPC2和PC3都是可以ping通的,说明我们的配置已经成功。
分析
查看邻接关系
我们可以通过这个命令查看是否和所有的邻居都产生了邻接关系。
display ospf peer brief
查看OSPF的路由表
我们可以通过这个命令查看到路由器通过OSPF学习到的路由,里面可能包含邻接路由的LSA
display ospf routing