在之前关于路由器的介绍中,我们知道它是网络互联的核心设备,用于连接不同的网络,在网络之间转发 IP 数据报。对于路由器来说,路由表是其内部最为重要的构成组件。当路由器需要转发数据时,就会按照路由表和一定的匹配规则进行转发。对于路由表来说,一般有两种静态和动态这两种配置方式。下面将细化这一过程,分别讨论静态和动态路由使用场景,以及原理和配置。
回顾一下,对于一个路由器来说需要完成以下的工作:
识别数据包的目的地:通过匹配子网掩码,确定出数据包应该发往的网段。
确定路由信息的来源:当使用动态协议时,假如有多条路由可以到达某个网络,应该先评估将最优的那条添加到路由表中。
匹配路由:根据路由表选择最合适的路由条目。
维护和更新:拓扑的信息可能随时方法改变,需要自动的更新。
静态路由和动态路由的对比及应用场景静态路由:
是网络管理员在路由器上手动配置的路由条目
当网络拓扑改变时,需要让管理员手动的更新路由条目
路由过程必须根据管理员的配置转发
动态路由:
当拓扑改变时,可以自动的更新路由条目。
通过交换和路由更新来学习和维护远端的路由。就是动态路由器定期会同步哥各个路由器之间的路由信息,保持一致。
路由器发现新的网络是通过共享路由表来实现的。
总结一下,静态路由将路由的转发完全交给管理员,在出现拓扑更新等情况,都是由管理员进行维护。而动态路由则相反,所有的转发,学习过程完全靠路由器自己。
静态路由-应用场景:
小型的网络-比如只有几台路由器
到达目的地只有单一路径时
当测试,排错等情况想快速建立一条路由时
作为默认路由使用:比如作为外网的输入
动态路由-应用场景:
大型的网络
当达到目的地有多条路径时
静态路由在配置静态路由时,主要配置目的网段和下一跳地址,在配置前需要进行如下的分析:
静态路由的配置分析:
首先先统计网络个数
每个路由器需要配置的路由数目等于总网络数目减去本身连接的网络数目
目的网络位需要去的网络,也就是非直连的网络
下一跳为与自己直连路由器的接口地址
在为接口配置 IP 地址后,路由器就会生成两条默认路由-表示直连
Loopback 接口的作用主要是用于测试,当接收到数据时,会将数据自动返回来。
# 预配置命令 enable configure terminal line console 0 no exec-timeout logging synchronous no ip domain lookup # R3 Router Router(config)#hostname R3 # Configure 1.1.1.1/24, 12.1.1.1/24 IP Router(config)#int e 0/0 Router(config-if)# ip addr 12.1.1.1 255.255.255.0 Router(config-if)# no shutdown Router(config)#int lo 0 Router(config-if)# ip addr 1.1.1.1 255.255.255.0 Router(config-if)# no shutdown # Configure Static Route # Method1: Router(config)#ip route 2.2.2.0 255.255.255.0 12.1.1.2 Router(config)#ip route 3.3.3.0 255.255.255.0 12.1.1.2 Router(config)#ip route 23.1.1.0 255.255.255.0 12.1.1.2 # Method2:边界配置默认路由比较省时间 Router(config)#ip route 0.0.0.0 0.0.0.0 12.1.1.2 // hostname R4 Router(config)#interface ethernet 0/0 Router(config-if)#ip address 12.1.1.2 255.255.255.0 Router(config-if)#no shutdown Router(config-if)#exit Router(config)#interface loopback 0 Router(config-if)#ip address 2.2.2.2 255.255.255.0 Router(config-if)#no shutdown Router(config-if)#exit Router(config)#interface ethernet 0/1 Router(config-if)#ip address 23.1.1.1 255.255.255.0 Router(config-if)#no shutdown Router(config-if)#exit # Configure Static Route Router(config)#ip route 1.1.1.0 255.255.255.0 12.1.1.1 Router(config)#ip route 3.3.3.0 255.255.255.0 23.1.1.2 # The configuration of R5 is same as the R3想象这样一种情况,假设到达 5.5.5.5/24 的网络,在 R4 配置静态路由时,可以通过 R6 和 R7 两条路径。
这时数据包在到达该网络时,该如何选择呢?
采用的原则如下:
首先通过 mask 匹配最长掩码
如果最长掩码一样,比较 AD,可以手动配置
当 AD 一样,可以比较 Metric
最后还一样的话,通过负载均衡来实现
动态路由