有时候,我们必须要用到广播模式,使用广播模式(BMA)可以避免静态列出所有的邻接路由器。接口被设定为广播模式后,它就像连接的是LAN一样。这时它们将选举DRBDR。下面,我们一起来做这个实验,大字有可以将这个实验根据自已的喜好灵活变动和扩展。解决问题的思路是有很多条的!
 
 
实验拓扑(NBMA实验的拓扑图)

 

实验步骤:
先配置好帧中继交换机,NA里就学过,这里我们再温习一回!
Router>en
Router#conf t
Router(config)#ho FR-SW   //给设备起名
FR-SW(config)#no ip domain lookup   //关闭域名查找
FR-SW(config)#lin con 0    //进入con
FR-SW(config-line)#logg s  //设定输出信息同步,防止干扰我们
FR-SW(config-line)#exec-t 0 0   //设为永不超时(工作中勿用)
FR-SW(config-line)#exit
FR-SW(config)#frame-relay switching //将路由器设定为帧中继交换机
FR-SW(config)#int s0/0
FR-SW(config-if)#no sh
FR-SW(config-if)#clock rate 64000  //设定串口时钟
FR-SW(config-if)#encapsulation frame-relay   //在接口上封装帧中继
注意:此命令后面可加ietf参数,如果不加,默认帧类型是CiscoIETF是通用标准。
FR-SW(config-if)#int s0/1
FR-SW(config-if)#no sh
FR-SW(config-if)#clock rate 128000   //设定串口时钟
FR-SW(config-if)#encapsulation frame-relay   //在接口上封装帧中继
FR-SW(config-if)#exit
FR-SW(config)#interface s0/2
FR-SW(config-if)#no sh
FR-SW(config-if)#clock rate 128000  //设定串口时钟
FR-SW(config-if)#encapsulation frame-relay   //在接口上封装帧中继
FR-SW(config-if)#int s0/0   
FR-SW(config-if)#frame-relay intf-type dce //设定接口是帧中继的DCE
FR-SW(config-if)#frame-relay lmi-type cisco //设定LMI的类型,默认是Cisco。通用标准为ansi
FR-SW(config-if)#int s0/1
FR-SW(config-if)#frame-relay intf-type dce //设定接口是帧中继的DCE
FR-SW(config-if)#frame-relay lmi-type cisco //设定LMI的类型,默认是Cisco。通用标准为ansi
FR-SW(config-if)#int s0/2
FR-SW(config-if)#frame-relay intf-type dce //设定接口是帧中继的DCE
FR-SW(config-if)#frame-relay lmi-type cisco //设定LMI的类型,默认是Cisco。通用标准为ansi
FR-SW(config-if)#exit
FR-SW(config)#interface s0/0
FR-SW(config-if)#frame-relay route 102 interface s0/2 201 //配置帧中继交换表,也就是告诉路由器如果从此接口收到DLCI=102的帧,就从s0/2发送出去,并将DLCI改为201.
FR-SW(config-if)#frame-relay route 103 interface s0/1 301
//配置帧中继交换表,也就是告诉路由器如果从此接口收到DLCI=103的帧,就从s0/1发送出去,并将DLCI改为301.
FR-SW(config-if)#int s0/2
FR-SW(config-if)#frame-relay route 201 interface s0/0 102
//配置帧中继交换表,也就是告诉路由器如果从此接口收到DLCI=201的帧,就从s0/0发送出去,并将DLCI改为102.
FR-SW(config-if)#int s0/1
FR-SW(config-if)#frame-relay route 301 interface s0/0 103
//配置帧中继交换表,也就是告诉路由器如果从此接口收到DLCI=301的帧,就从s0/1发送出去,并将DLCI改为103.
FR-SW(config-if)#exit
FR-SW(config)#^Z
查看一下帧中继交换机是否正常:
FR-SW#show frame-relay route
OK!映射关系都正常!
配置路由器R1:
Router>en
Router#conf t
Router(config)#no ip domain lookup //关闭域名查找
Router(config)#lin con 0
Router(config-line)#logg s//设定输出信息同步
Router(config-line)#exec-t 0 0//设定永不超时(实际工作中不建议)
Router(config-line)#exit
Router(config)#hostname R1    //给设备起名
R1(config)#interface loopback 0  ---创建本地环回接口
R1(config-if)#ip add 1.1.1.1 255.255.255.255 ---指定IP地址及掩码
R1(config-if)#ip ospf network point-to-point ---定义接口模式为点到点
R1(config-if)#int s0/0  //进入串口s0/0
R1(config-if)#ip add 192.168.1.1 255.255.255.0
R1(config-if)#encapsulation frame-relay   ---封装帧中继协议
R1(config-if)#frame-relay map ip 192.168.1.2 102 broadcast
//帧中继静态映射
R1(config-if)#frame-relay map ip 192.168.1.3 103 broadcast
//帧中继静态映射
R1(config-if)#frame-relay map ip 192.168.1.1 102  //设置可以ping通自已
R1(config-if)#no frame-relay inverse-arp  //关闭动态ARP解析
R1(config-if)#ip ospf network broadcast    //设定模式为BMA
R1(config-if)#no sh    //打开接口
R1(config-if)#exit
R1(config)#router ospf 100  //启用OSPF进程,AS号为100
R1(config-router)#router-id 1.1.1.1   //手工指定Router ID
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0  //指定参与OSPF进程的接口地址
R1(config-router)#network 192.168.1.1 0.0.0.0 area 0 //指定参与OSPF进程的接口地址
R1(config-router)#exit
配置路由器R2:
Router>en
Router#conf t
Router(config)#no ip domain lookup  //关闭域名查找
Router(config)#hostname R2//给设备起名
R2(config)#lin con 0
R2(config-line)#logg s     //设定输出信息同步
R2(config-line)#exec-t 0 0    //设定永不超时(实际工作不建议)
R2(config-line)#exit
R2(config)#interface loopback 0   //创建本地环回接口
R2(config-if)#ip add 2.2.2.2 255.255.255.255
R2(config-if)#ip ospf network point-to-point  //定义接口模式为点到点
R2(config-if)#int s0/0
R2(config-if)#ip add 192.168.1.2 255.255.255.0
R2(config-if)#encapsulation frame-relay   //封装帧中继协议
R2(config-if)#ip ospf priority 0 //设定SpokeOSPF接口优先级为0
R2(config-if)#frame-relay map ip 192.168.1.1 201 broadcast
//帧中继静态映射
R2(config-if)#frame-relay map ip 192.168.1.3 201 broadcast
//帧中继静态映射
R2(config-if)#frame-relay map ip 192.168.1.2 201  //设定可以ping通自已
R2(config-if)#no frame-relay inverse-arp   //关闭动态ARP解析
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 100   //启用OSPF进程,AS号为100
R2(config-router)#router-id 2.2.2.2   //手工指定Router ID
R2(config-router)#network 2.2.2.2 0.0.0.0 area 0 
//指定参与OSPF进程的接口地址
R2(config-router)#network 192.168.1.2 0.0.0.0 area 0
//指定参与OSPF进程的接口地址
R2(config-router)#exit
配置路由器R3:
Router>en
Router#conf t
Router(config)#no ip domain lookup  //关闭域名查找
Router(config)#hostname R3  //给设备起名
R3(config)#lin con 0
R3(config-line)#logg s  //设定输出信息同步
R3(config-line)#exec-t 0 0  //设定永不超时(实际工作中不建议)
R3(config-line)#exit
R3(config)#interface loopback 0   //创建本地环回接口
R3(config-if)#ip add 3.3.3.3 255.255.255.255
R3(config-if)#ip ospf network point-to-point  //设定接口模式为点到点
R3(config-if)#int s0/0
R3(config-if)#ip add 192.168.1.3 255.255.255.0
R3(config-if)#encapsulation frame-relay   //在接口上封装帧中继协议
R3(config-if)#ip ospf priority 0  //手工指定接口优先级
R3(config-if)#frame-relay map ip 192.168.1.1 301 broadcast
//帧中继静态映射
R3(config-if)#frame-relay map ip 192.168.1.2 301 broadcast
//帧中继静态映射
R3(config-if)#frame-relay map ip 192.168.1.3 301  //设定可以ping通自已
R3(config-if)#no frame-relay inverse-arp   //关闭动态ARP解析
R3(config-if)#no sh  //开启端口
R3(config-if)#exit
R3(config)#router ospf 100  //启用OSPF进程,AS号为100
R3(config-router)#router-id 3.3.3.3   //手工指定Router ID
R3(config-router)#network 3.3.3.3 0.0.0.0 area 0
//指定参与OSPF进程的接口地址
R3(config-router)#network 192.168.1.3 0.0.0.0 area 0
//指定参与OSPF进程的接口地址
R3(config-router)#exit
注意:
1.     Hub-and-Spoke结构中,BMA也要控制DR选举。确保处于“HUB”端的路由器为DR,方法和NBMA实验一样。
2.     BMA模式下,邻居关系自动通过Hello包建立及维护。
实验调试:
R1#show ip ospf interface
可以看到:
网络类型已变为Broadcast(BMA)
BMA模式下,Hello周期变为10秒。
R4#show ip router ospf
BMA的实验总体和NBMA相差不大,只是更改了几处命令而已,比如在R1上取消手工指定邻居,在每路由器接口上指定OSPF模式为broadcast(广播模式)。实验到这就完成了!