在静态路由or动态路由,一个例子说明白!中,文档君准备启程从北京一路旅行到三亚,并用“跟团游”和“自由行”的举例带大家搞懂了“静态路由”和“动态路由”。
书接上文,文档君考虑再三,选择了“自由行”的旅行方式,那么要选择哪种动态路由协议生成的路线呢?
是选择动态路由协议1推荐的“观光游览”?
还是动态路由协议2推荐的“徒步登山”?
是品味文化?还是一路探索美食?
道路“千万”条,该选哪一条?
我们就不得不提到“动态路由协议的选路方式”和“路由优先级”了~
PART.01动态路由协议是如何选路的?
一台路由器上可以同时运行多个动态路由协议,不同的动态路由协议都有自己的标准来衡量路由的好坏,并且每个动态路由协议都把自己认为是最好的路由送到路由器中。
这样到达一个同样的目的地址,可能有多条分别由不同动态路由协议选出来的不同路由。
举个例子来说,“动态路由协议”生成的路由,就好比“旅行软件”中智能生成的“推荐路线”,每条“推荐路线”在体力、费用、美食等维度进行度量。
不同的动态路由协议也是如此,根据路径长度、可靠性、延迟、带宽、负载等性能参数进行度量。
但是由于不同协议的度量方法略有不同,就好比不同旅行路线的推荐算法略有不同,那么度量值含义也有差异,因此只有参考性,却不具有准确的可比性。
无论如何,路由器都必须选择其中一个路由协议计算出来的“最佳路线”作为转发路径并加入到路由表中。
这时候,就需要“路由优先级”啦~
PART.02什么是路由优先级?
旅行选路时,文档君可以根据自己的旅行喜好,为推荐的众多路线标记上“路由优先级”,然后选择“路由优先级”最高的推荐路线,就可以PICK最心仪的路线出发啦!
实际应用中,路由优先级也被称为“路由管理距离”,用来区分动态路由协议的优先级,取值为0~255的整数。
我们给不同的路由协议(包括静态路由)赋予不同的路由优先级,且规定数值小代表路由优先级高。
当到达同一个目的地址有多条路由时,可以根据路由优先级数值的大小,选择其中一个优先级数值最小的作为最优路由,同时将这条路由写进路由表中。
那么常见路由协议的优先级是啥样的呢?
参见下表:
路由种类 | 路由优先级 |
直连路由(Direct) | 0 |
静态路由(Static) | 1 |
OSPF | 110 |
RIP | 120 |
IBGP | 200 |
Special(内部处理使用) | 255 |
Tips
直连路由:直连路由只能获取路由器直接相连的路由信息,不直接相连的就无能为力了。
非直连路由:通过路由协议从别的路由器学到的路由称为非直连路由,分为静态路由和动态路由。
除直连路由外,各种路由协议的优先级数值都可由管理员手动进行调整。
默认路由优先级的赋值原则如下:
- 直连路由具有最高优先级。
- 人工设置的路由条目优先级高于动态选择到的路由条目。
度量值算法复杂的路由协议优先级高于度量值算法简单的路由协议。