IP 路由:Linux 路由标志(U – Up、G – Gateway、H – Host)

举报
Tiamo_T 发表于 2022/06/16 15:52:25 2022/06/16
【摘要】 在本文中,我们将仔细研究与 IP 路由相关的其他一些方面。

在本文中,我们将仔细研究与 IP 路由相关的其他一些方面。
让我们从解释路由表条目中的标志开始讨论。

旗帜

以下是标志列表及其在路由表中的意义:

  • U :此标志表示路由已启动
  • G :这个标志表示路由是到网关的。如果此标志不存在,那么我们可以说该路由是到直接连接的目的地
  • H:这个标志表示路由是到一个主机的,这意味着目的地是一个完整的主机地址。如果此标志不存在,则可以假定路由是到网络的,而目的地是网络地址。
  • D :该标志表示该路由是由重定向创建的。
  • M :该标志表示该路由被重定向修改。

直接路由、间接路由和“G”标志

  • 直接路由是目的地直接连接到转发主机的路由,而在间接路由的情况下,目的地主机不直接连接到转发主机。
  • 在直接路由上,数据报中的目的 IP 地址和链路层地址是目的主机的地址,而在间接路由的情况下,数据报中的目的 IP 保持不变,但链路层地址更改为下一个路由器的地址这个数据报被传送到的地方。
  • 这就是“G”标志派上用场的地方。上面的“G”标志表示这是一条间接路线。对于直接路由,未设置“G”标志。

“G”标志与“H”标志

现在我们都知道“G”标志表示路线。如上所述,该路线可以是直接的或间接的。

但是“G”标志不应与“H”标志混淆。该标志表示条目中的目的地址是主机地址或网络地址。

正如本系列文章的前一部分已经讨论过的,当在路由表中搜索接收到的数据报的目标 IP 地址时,首先匹配的是完整地址。


如果完整的地址匹配失败,则匹配网络 ID 以查看路由表是否具有数据报的目标 IP 地址所属的网络的条目。

因此我们看到,如果 IP 地址完全匹配,条目将包含“H”标志,而在网络 ID 匹配的情况下,条目将不包含“H”标志。

路由表复杂度

路由表可以相当简单,也可以非常复杂。路由表的复杂性取决于主机与之通信的网络拓扑。让我们考虑一些实际案例,看看它们如何影响主机的路由表。

  • 一个非常基本的情况是完全没有连接到任何网络的独立主机。在这种情况下,主机仍然可以使用 TCP/IP 堆栈,但仅限于与自身通信。所以在这种情况下,路由表将包含一个条目,并且将是环回接口。
  • 对于连接到单个 LAN 的主机,路由表将包含几个条目。一个条目(如上所述)将是环回接口,而另一个条目将是 LAN 。
  • 现在,假设主机连接到 Internet。在这种情况下,路由器表将包含(除了环回条目之外)默认路由器的条目,主机通过该路由器连接到 Internet。
  • 如果主机通过不同的接口连接到各种网络,那么路由表将包含主机连接到的所有不同网络的单独条目。此外,还会有一个环回条目,并且可能有一个默认路由器条目。

路由表初始化

到目前为止,我们一直在讨论路由表条目、它们包含的内容、它们的复杂性等。现在让我们简要讨论一下这些条目的创建。

  • 初始化接口时,会在与该接口对应的路由表中创建直接路由条目。
  • 可以通过命令添加到不直接连接的网络和主机的路由。
  • 'route' 命令用于此目的。
  • 例如,基本路由命令如下所示:route add <destination> <gateway> <metric>
  • 如果“度量”不为零,则设置“G”标志,否则不设置。

该路由命令可以在系统启动时从初始化文件中触发。这里的问题是没有一个标准文件可以在所有包含路由命令的操作系统中使用。4.4BSD和BSD/386下是/etc/netstart,SVR4下是/etc/inet/rc.inet,Solaris 2.x下是/etc/rc2.d/S69inet,SunOS 4.1.x使用/etc /rc.local,而 AIX 3.2.2 使用 /etc/rc.net。

还有其他几种方法可以初始化路由表。就像运行路由守护程序或使用路由器发现协议一样,但我们不会在本文中详细说明。


ICMP 主机或 ICMP 网络不可达错误

这些错误发生在主机或网络(I​​P 数据报的目的地)关闭时。例如,假设主机 A 连接到主机 B,并且到主机 B 的链接断开。

然后在这种情况下,如果主机 A 接收到主机 B 的 IP 数据报,那么主机 A 将向该 IP 数据报起源的主机发送一个“主机不可达”错误。

这种情况假设主机 A 上不存在默认路由器条目。“网络不可达”错误也是如此。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。