RouterOS v7的OSPF配置,通过下面是一个简单的实例:
两台路由器R1和R2建立OSPF关系,R2重分布192.168.20.0/24和192.168.22.0/24两个网段
R1路由器创建ether1接口IP地址,互联IP地址,规范操作通常使用/30位子网。
[admin@R1] >/ip address
[admin@R1] /ip address>add address=192.168.88.1/30 interface=ether1
进入RIP路径,配置instance实例接口
[admin@ R1] /ip/route>/routing rip instance
[admin@ R1] /routing/rip/instance >add disabled=no name=rip-instance-1
进入interface模板,添加ether1接口,并使用rip-instance-1
[admin@ R1] /routing/rip/instance >/routing rip interface-template
[admin@ R1] /routing/rip/interface-template >add disabled=no instance=rip-instance-1 interfaces=ether1
R2路由器配置
添加R2路由器的ether1和ether2的IP地址
[admin@R2] > ip address
[admin@R2] /ip/address> add address=192.168.88.2/30 interface=ether1
[admin@R2] /ip/address> add address=172.16.10.1/24 interface=ether2
配置静态路由
[admin@R2] /ip/address>/ip route
[admin@R2] /ip/route> add dst-address=192.168.20.0/24 gateway=172.16.10.2
[admin@R2] /ip/route> add dst-address=192.168.22.0/24 gateway=172.16.10.3
R1路由器配置OSPF
首先配置instance实例
[admin@R1]/routing/ospf/instance> add name=ospf-instance-1
配置ospf area的区域0
[admin@R1]/routing/ospf/instance> /routing ospf area
[admin@R1] /routing/ospf/are > add instance=ospf-instance-1 name=ospf-area-0
创建ospf模板,配置方式有两种,一种基于接口,一种基于network,同时设置也可以,下面采用network方式配置ospf模板:
[admin@R1] /routing/ospf/are >/routing ospf interface-template
[admin@R1] /routing/ospf/interface-template > add area=ospf-area-0 networks=192.168.88.0/30
配置R2路由器OSPF
首先配置instance实例
[admin@R2]/routing/ospf/instance> add name=ospf-instance-1 redistribute=static
配置ospf area的区域0
[admin@R2]/routing/ospf/instance> /routing ospf area
[admin@R2] /routing/ospf/are > add instance=ospf-instance-1 name=ospf-area-0
创建ospf模板,选择接口:
[admin@R2] /routing/ospf/are >/routing ospf interface-template
[admin@R2] /routing/ospf/interface-template > add area=ospf-area-0 networks=192.168.88.0/30
在R1的neighbor查看ospf状态:
[admin@R1] >/routing ospf neighbor
[admin@R1] /routing/ospf/neighbor> print
Flags: V – virtual; D – dynamic
0 D instance=ospf-instance-1 area=ospf-area-0 address=192.168.88.2 priority=1
router-id=192.168.88.1 dr=192.168.88.1 bdr=192.168.88.2 state=”Full”
state-changes=5 adjacency=29m3s timeout=39s
[admin@R1] /routing/ospf/neighbor>
可以看到state为full,代表完全邻接状态,OSPF关系建立完成。
这里补充下ospf的8种状态分布是:Down状态、Attempt状态、Init状态、Twoway状态、Exstart状态、Exchange状态、Loading状态和Full状态。在RouterOS中一般只会显示Init、Twoway、Exstart和Full:
- Init: 表明收到了Hello包,但是2-Way双向通信还未建立;
- Twoway: 双向会话通信建立,RID出现在对方的邻居列表中。(若为广播网络:例如:以太网。在这个时候应该选举DR,BDR。)
- ExStart: 信息交换初始状态
- Full: 完全邻接状态,邻接间的链路状态数据库同步完成
查看R1路由情况,从路由表可以看到两条DAo标记的路由192.168.20.0/24和192.168.22.0/24,表明已经收到R2路由器发布的路由。
[admin@R1] /ip/route> print
Flags: D – DYNAMIC; A – ACTIVE; c, s, d, y – COPY
Columns: DST-ADDRESS, GATEWAY, DISTANCE
# DST-ADDRESS GATEWAY DISTANCE
DAc 192.168.88.0/30 ether1 0
DAc 172.16.10.0/24 ether2 0
DAo 192.168.20.0/24 192.168.88.2%ether1 110
DAo 192.168.22.0/24 192.168.88.2%ether1 110
补充下OSPF模板使用interface创建配置方式如下(使用接口有点类似juniper的方式):
[admin@R1] /routing/ospf/interface-template > add area=ospf-area-0 interfaces=ether1
[admin@R2] /routing/ospf/interface-template > add area=ospf-area-0 interfaces=ether1
R2路由器也做相同的配置,当然networks和interface两个参数在RouterOS也可以同时设置。