RIP 适用于中小网络, 比较简单. 没有系统内外, 系统分区, 边界等概念, 用到不是分类的路由.
OSPF 适用于较大规模网络. 它把自治系统分成若干个区域, 通过系列内外路由的不同处理, 区域内和区域间路由的不同处理方法, 减少网络数据量大传输.
先配置左侧部分, 左侧部分可以看做是 OSPF 的单区域配置
其中, 右击路由器, 单机 Console 调出控制台. 页面如下:
R1# 表示最高权限级别, 最低权限 1(显示为 "Router>", 即为普通用户模式), 最高 15(显示为 "Router#", 即为管理员特权模式)
现在开始配置 R1 路由器 (IP 地址和子网掩码如左图所示) [环回口相当于主机]
- configure terminal // 进入全局配置模式
- /*
- * 配置主机路由
- **/
- interface loopback 0 // 设置环回口
- ip address 1.1.1.1 255.255.255.255
- exit
- /*
- * 回退一级, 设置路由器地址
- **/
- int f0/0 //int 为 interface 的缩写
- ip add 12.1.1.1 255.255.255.0 // add 为 address 的缩写
- no shutdown // 激活接口
- /*
- * 返回根一级
- **/
- end
之后同样的方法配置 R2 路由器
- /*
- * 其中对应部分均为简写形式
- */
- conf t
- int lo0
- ip add 2.2.2.2 255.255.255.255
- exi
- int f0/0
- ip add 12.1.1.2 255.255.255.0
- no sh
此时已经配置好 R1 与 R2 两个路由器, 需要测试他们之间的通断.
- // 在 R1 的 console
- ping 12.1.1.2
- // 结果如下
此时, 已经搭建完 R1 与 R2 之间的路由, 现在可以查看他们的路由表.
以 R1 的路由表为例:
- // 查看当前路由器路由表
- sh ip ro //show ip route 的简写
其中 Connected 代表直连
配置 OSPF
接下来开始配置 OSPF
- conf t
- /*
- * 启用 OSPF 进程
- * 任意两台之间的 OSPF 值可以不一样, 但是通常情况下保持一致
- * OSPF 值范围 0 ~ 65535
- */
- router ospf 100
- /*
- * 定义 router-id, 可以随机设定, 但通常和环回口相同
- */
- router-id 1.1.1.1
- /*
- * OSPF 的区域
- */
- network 1.1.1.1 0.0.0.0 area 0
- network 12.1.1.1 0.0.0.0 area 0
- exit
- write // 保存, 简写为 w
- /*
- * 保存完之后尝试 ping
- */
- // 在 R1 的 console 中
- ping 2.2.2.2
此时代表两台设备的 OSPF 搭建完成.
搭建三台设备的 OSPF
三台设备需要两两建立关系, 需要 3*2*1/2=3 个相互关系, 导致耦合度升高, 因此引入 DR 设备.
现在设置设备的优先级:
假设将 R2 设为 DR ,DR 分级为 0-255, 255 为最高, 因此设置 R2 的 DR 优先级为 255
- /*
- * 设置 R2 的优先级为 255
- */
- conf t
- int f0/0
- ip os pri 255
- end
- /*
- * 需要清除已有的 OSPF 进程
- */
- clear ip ospf process
- // 在 Reset ALL OSPF Process 选择 yes
如上图所示.
之后加入第三台设备, ip 如下图所示
- /*
- * R2 console
- */
- conf t
- router os 100
- net 2.2.2.2 0.0.0.0 area 1
- exit
- int f1/0
- ip add 23.1.1.2 255.255.255.0
- no sh
- wr
- /*
- * R3 console
- */
- conf t
- int lo0
- ip add 3.3.3.3 255.255.255.255
- int f1/0
- ip add 23.1.1.3 255.255.255.0
- no sh
- end
- wr
- ping 23.1.1.2 // 每配置完一个都要测试是否能够 ping 通
ping 通之后, 说明主机的路由已经建立, 接着继续宣告 router-id, 将二三两台设备宣告入 area 的 ospf 中
- /*
- * R3 console
- */
- conf t
- router os 100
- router-id 3.3.3.3
- net 3.3.3.3 0.0.0.0 a 1
- net 23.1.1.3 0.0.0.0 a 1
- /*
- * R2 console
- */
- conf t
- router os 100
- net 23.1.1.2 0.0.0.0 a 1
- /*
- * 之后测试是否已经建立关系 (在 R2 console)
- */
- do ping 23.1.1.3
效果如图:
此时, 在 R3 中测试一下当前网络, 在 R3 中检查路由, 结果如下:
此时我们试着在 R3 中测试是否能够 ping 通 R1 主机 ----------------------- 你猜呢?
(猜对没奖, 手动滑稽)
那么外部路由如何进入 OSPF 网呢?
对于外部路由, 例如主干网要注入 1000 个外部路由给 OSPF 内的设备 D, 但是不幸的是 D 的运算能力不足以支持再有 1000 条路由. 但是 OSPF 网内的路由 D 是可以共享的, 因此上图中红线直接注入不行, 因此从蓝线先注入给 OSPF 网的其他设备, 再有 OSPF 网内共享, 使得 D 获得这 1000 条路由. D 被称之为末节设备 (stub)
- /*
- * 这里将 R1 作为输入口 R3 作为 stub
- */
- /*
- * 在 R1 console
- */
- conf t
- int lo1
- ip add 172.16.1.1 255.255.255.0
- exi
- router eigrp 100
- no auto-summary
- network 172.16.1.1 0.0.0.0
- exi
- router os 100
- redistribute eigrp 100 subnets
- /*
- * 在 R3 查看一下路由表
- */
- sh ip ro
之后将 area 设置为 stub 末节区域
- /*
- * 在 R2 console
- */
- conf t
- router os 100
- area 1 stub
- end
- /*
- * 此时 R2 在 area1 中的部分已经设置为 stub, 接着需要设着 R3 area1 也为 stub 区域
- * 如果不设置会导致 R2 和 R3 之间的连接宕掉
- */
- /*
- * 配置 R3 过程同 R2
- */
可以测试一下 R2 的路由 sh ip rou, 结果如下:
来源: https://www.cnblogs.com/Rebel3/p/12359634.html