1、静态路由
我们通过route命令和iproute命令都可以进行路由策略的配置和查询。
- 可以指明去哪个网络,走哪个网口,网口的IP是什么;
- 也可以创建不同的路由表,针对不同的请求来源,走不同的路由表配置;
- 当然,也可以按照权重给下一跳地址走配置;
- 同一个路由,也可以配多个运营商的网络,针对不同的IP,采用不同的运营商网络
- …
配置时非常灵活的,但是在复杂的网络环境下手动配置路由成本太大了,并且网络结构也是经常发生改版的。
所以,我们可以使用动态路由路由器,这种路由器会根据路由协议算法生成动态路由表,动态的随着网络运行状况调整路由表。
2、动态路由协议
网络是复杂的,为了生成动态的路由表,需要配合特定的算法,主流的动态路由主流有两种算法。
内网路由协议
基于链路状态算法实现的OSPF协议(Open Shortest Path First, 开放式最短路径优先):主要用于数据中心内部,因此也成为内网路由协议
(Interior Gateway Protocol,IGP),关键是找到最短的路径。
OSPF是一种链路状态路由协议。可以将其视为网络的分布式地图。
外网路由协议
基于距离矢量算法实现的BGP协议(Border Gateway Protocol,外网路由协议):距离矢量,就是每个路由器都保存一个路由表,路由表每行保存了下一跳的路由器,以及距离下一跳路由器的距离。也成为边界网关协议。
在BGP的世界中,每个路由域都称为自治系统或AS。BGP所做的工作通常是通过选择遍历最少自治系统的路由:最短的AS路径来帮助选择通过Internet的路径。
我们会把重点放在传输层以上,所以动态路由协议这部分我们暂时不做不深入研究。