首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >路由选择:专用性与度量

路由选择:专用性与度量
EN

Server Fault用户
提问于 2014-12-01 08:31:49
回答 2查看 47.9K关注 0票数 23

我了解到,当Linux执行路由选择时,它会选择最具体的到达目的地的路径。但是路线的度量又如何呢?它是否比路线的特异性有更高的优先级?

还请参考Linux使用的路由选择算法的详细信息。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2014-12-01 08:40:38

路由度量是以相同的专一性在路由之间设置偏好。在一般情况下(如Cisco、Windows等),这是正确的。因此,该模型的工作原理如下:

  1. 找到最特定的路由(也就是最长的前缀匹配*)
  2. 如果有多条具有相同特异性的路由,那么选择行政距离最低的路由(这可以区分直接连接的路由、静态路由和各种路由协议)。
  3. 在该路由协议和特定路由(如果路由专用性和管理距离相同)中,选择度量最低的路由。

请注意,在这样的基于策略的路由上还有其他事情可以让您根据源IP地址执行路由之类的操作。但是,我认为主要的三件事情是路线特异性、行政距离、然后是公制。

*它被称为最长前缀匹配,因为二进制子网(例如/24)看起来像11111111.11111111.11111111.00000000。因此,路由器只需扫描二进制1的前缀,并在碰到零时停止,然后与前缀匹配。

票数 31
EN

Server Fault用户

发布于 2014-12-20 14:59:07

Linux为灵活的路由选择提供了许多工具。

单路由表

在最简单的情况下,只有一个内核路由表,没有带有SRC属性的路由。此表包含一些路由,这些路由由DHCP守护进程或路由守护进程手动放置(ip route add)。在这种情况下,内核选择:

  • 最具体的路线;
  • 如果存在多个相同特定的路由,则使用最小内核度量的路由。

注意,内核度量(由ip route show显示)由路由守护进程选择,不一定与任何特定路由协议的度量相关。例如,Quagga对它在内核中安装的所有路由使用相同的度量,而不依赖于协议的度量。

源专用路由

Linux还支持具有SRC属性的路由,该属性只匹配具有给定源地址的数据包。SRC只适用于IPv6,直到最近(如果内存正常的话,3.11)都是错误的;除非您知道自己在做什么,否则我不建议使用它。

多路由表

如果您需要比上面所提供的更多的灵活性,您将需要使用多个路由表,并编写规则来为每个数据包选择一个特定的路由表。一种常见的技术是在源地址上进行调度,以模拟特定于源的路由。另一种技术是在自己的路由表中运行每个路由守护进程,并模拟Cisco的“管理距离”。所有这些在LARTC第四章中都有详细的描述。

票数 10
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/648276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档