OSPF入门案例教程用最简单的拓扑、场景来说明OSPF的整个过程:配置路由器的命令、发现OSPF邻居、交换LSA、请求LSA、发送LSA、完成Full Adjacency、用LSA计算路由路径、更新路由表, 使得Ping可以成功。案例有两个版本。本文是图解版本,是从仿真截图并加标注,介绍主要步骤。
-
背景:路由器是互联网的核心,使得计算机间可以互相传递信息。路由器的工作就是转发数据包,(有如电话交换机转发对话),收到数据包时,用它的目的IP地址来查看路由表,如果找到相应的网络地址,就把数据包从通往这个网络地址的下一跳接口转发,如果没找到,就把数据包丢弃。所以路由表是个关键。但路由表是怎么设置的呢?在简单的拓扑上,网络管理员可以手工编辑路由表,拓扑一但复杂,有几十个路由器的话,手工编辑路由表既困难又容易错,所以得用路由协议来自动生成路由表。
-
OSPF原理: OSPF是个路由协议,让路由器将其链路信息 (link state) 互相传送,在所有的路由器都有同样的链接信息时,它们对拓扑有个共同的认识,可以分别计算通往各个目的地址的最短路径,记录到路由表。这时,路由器就可以正确的把数据包在计算机间转发了。 要进一步了解OSPF的机制, 请见参考资料。
-
预备知识:IP address, 路由器。
-
OSPF 仿真: 这个图解教程是根据OSPF入门仿真创作。仿真用动画显示OSPF从初始化到同步(Full Adjacency)的过程,读者可以互动的检查数据包内容,观察数据包 - LSDB表 – 路由表之间的因果关系。
OSPF入门仿真:这个拓扑是从OSPF仿真截图而来,仿真以动画显示OSPF从头到尾的最基本过程,用户可以观察数据包-状态-LSDB之间的因果关系、控制播放、检查数据包内容。
拓扑、配置、初始化
1.
拓扑:两台路由器R1, R2经serial 接口相连,主机H1连接到R1,H2连接到R2。
2.
配置:在R1上启动 OSPF, 把R1接口的network address 输入到 OSPF。例,
network 192.168.1.0/24 area 0.
3.
初始化:启动OSPF后,R1生成了Router LSA (Link State Advertisement), 并被添加到LSDB (Link State DataBase)。LSA描叙链路状态。
此时,R1, R2只知道自己的LSA, 接下去OSPF开始运作,使得R1, R2的LSDB同步。这样R1, R2对拓扑有一致的认识,可以分别计算最短路径,更新路由表。
4.
R1, R2 发送Hello,发现邻居。 |