试验原理:OPSF接口工作的启动过程

? DOWN状态:没有与任何邻居交换信息.

? INIT状态:每10秒发送HELLO包(类型1)

? TWO-WAY双向状态:基本状态,当看到自己出现在邻居路由器的HELLO数据包中时,它就进入了双向状态.

? EXSTART准启动状态:两个邻居路由器用DBD数据包来协商主从关系,有最高OSPF路由器ID的路由器胜出为主(debug ip ospf events).

? EXCHANGE交换状态:路由器相互描述它们的链路状态数据库.

? LOADING加载状态:接收类型3(LSR状态请求包)-回应类型4(LSU链路状态更新包) –确认类型5(LSA链路状态确认包)

? FULL ADJACENCY全邻接状态:生成邻接数据库(邻居路由器列表),另外,还有链路状态数据库(拓扑结构数据库)和转发数据库(路由表)生成。

广播型多路访问的网络中才进行DR/BDR的选举.多是以太网络环境。

试验拓扑:

clip_image002

实际环境:

只配置fa0/0接口:

clip_image004

在R1上:

配置接口地址:

1(config)#int fa0/0

1(config-if)#ip add 192.168.1.1 255.255.255.0

1(config-if)#no shut

启动协议:

1(config)#router ospf 1

1(config-router)#net 192.168.1.0 0.0.0.255 area 0

1(config-router)#end

在R2上:

配置接口:

2(config)#int fa0/0

2(config-if)#ip add 192.168.1.2 255.255.255.0

2(config-if)#no shut

启动协议:

2(config)#router ospf 1

2(config-router)#net 192.168.1.0 0.0.0.255 area 0

在R3上:

配置接口:

3(config)#int fa0/0

3(config-if)#ip add 192.168.1.3 255.255.255.0

启动协议:

3(config)#router ospf 1

3(config-router)#net 192.168.1.0 0.0.0.255 area 0

开始测试:

直接观察邻居的状态就可以直接看到整个过程:

在R1上:

1#show ip ospf nei

Neighbor ID Pri State Dead Time Address Interface

192.168.1.2 1 INIT/DROTHER 00:00:31 192.168.1.2 FastEthernet0/0

192.168.1.3 1 INIT/DROTHER 00:00:34 192.168.1.3 FastEthernet0/0

初始化状态,10/秒,发送hello。

1#show ip ospf nei

进入双向状态:

Neighbor ID Pri State Dead Time Address Interface

192.168.1.2 1 2WAY/DROTHER 00:00:29 192.168.1.2 FastEthernet0/0

192.168.1.3 1 2WAY/DROTHER 00:00:33 192.168.1.3 FastEthernet0/0

1#show ip ospf nei

Neighbor ID Pri State Dead Time Address Interface

192.168.1.2 1 2WAY/DROTHER 00:00:30 192.168.1.2 FastEthernet0/0

192.168.1.3 1 EXSTART/DR 00:00:33 192.168.1.3 FastEthernet0/0

R3开始进行准启动状态,开始DR/BR的选举。

1#show ip ospf nei

选举完成,加载完成,全连接形成,路由表实现。

Neighbor ID Pri State Dead Time Address Interface

192.168.1.2 1 EXSTART/BDR 00:00:39 192.168.1.2 FastEthernet0/0

192.168.1.3 1 FULL/DR 00:00:39 192.168.1.3 FastEthernet0/0

其他两个路由也同理可以看到这个选举过程。

使用debug ip ospf adj:查看邻居,可以动态的观察到DR/BDR的选举现象

该试验完成。