【云小课】基础服务第66课 网络知识一箩筐——让路由告诉你,网络数据走向何方

举报
云小萌 发表于 2020/12/21 17:50:21 2020/12/21
【摘要】 【网络知识一箩筐:搜集分享网络基础知识,轻松掌握华为云网络服务】在搭建网络环境时,我们经常会需要添加路由和路由表。本文将带您了解路由和路由表的概念和作用。

在我们使用华为云服务时,经常会遇到需要添加路由和路由表。那么路由和路由表到底是什么呢?路由和路由表又有什么作用呢?

本节云小课为您解惑路由和路由表,供大家学习参考~

路由:

路由是指从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。所以当我们搭建网络时,路由在实现各主机之间的数据交换过程中是不可或缺的。
路由又指路由规则,在路由中通过配置目的地址、下一跳类型、下一跳地址等信息,来决定网络流量的走向。
1. 目的地址:网络流量将要发到的目的网络地址。
2. 下一跳类型:将指向目的地址的流量转发到的下一跳的服务器类型。
3. 下一跳地址:指定流量具体转发到下一跳实例的地址。

路由可以分为静态路由和动态路由。

静态路由

静态路由可以简单的理解为由管理员定义到一个目的网络或者几个网络的路由,不会在非人为修改的情况下改变。
特殊的静态路由:默认路由(0.0.0.0/0)
如果IP数据包中的目的地址找不到存在的其它路由时,路由器会默认选择的路由,称之为默认路由。转发数据包时,当没有匹配到与目的地址相匹配的路由,同时也没有默认路由的情况下,那么此数据包将被丢弃。默认路由是未知地址数据包的一种最后求助方式,将数据包发送到默认路由设定的下一跳。
那么为什么默认路由是0.0.0.0/0呢?
因为匹配IP地址时,0代表通配符,表示可以代替任何值,所以默认路由和任何的目的地址都能匹配成功。这样就可以避免未知地址数据包的丢失。

动态路由

动态路由是与静态路由相对的一个概念,由指定的路由协议格式在网上广播和接收路由信息,通过路由之间不断交换的路由信息动态地更新和确定路由表,并随时向附近的路由器广播,这种方式称为动态路由。当网络中节点或节点间的链路发生故障,或存在其它可用路由时,动态路由可以自行选择最佳的可用路由并继续转发数据。
举个例子:
假设有两个路由器A和B,当路由器A连接的网络拓扑结构发生改变后,A路由器依据路由协议更新路由,路由器A将更新信息传播给路由器B,路由器B收到此更新信息后更新自己的路由表。如下图所示:

静态路由和动态路由各有特点,适用不同的场景,如下图所示:

路由表:

在复杂的网络中,可以想象一条路由是完全满足不了需求的,所以路由表便应运而生。路由表由一系列路由规则组成,用于控制网络数据走向。存储了本地计算机可以到达的网络目的地址范围和如何到达的路由信息。
就像一个人如果要去某个地方,要通过地图才知道该怎么走,在网络世界中的地图,就是路由表。
每一个计算机系统中都具有IP路由表,它存储了计算机可以到达的网络目的地址范围和如何到达的路由信息。路由表是TCP/IP通信的基础,计算机上的任何TCP/IP通信都受到路由表的控制。
在本地计算机上使用route print命令(Windows系统),显示本机路由表,如下图:

路由表.PNG

1. 网络目标、网络掩码:网络地址和网络掩码相与的结果用于定义本地计算机可以到达的网络目的地址范围。通常情况下,网络目标地址范围包含以下四种:
主机地址:某个特定主机的网络地址,网络掩码为255.255.255.255;
子网地址:某个特定子网的网络地址;
网络地址:某个特定网络的网络地址;
默认路由:所有未在路由表中指定的网络地址;
2. 网关(又称下一跳服务器):在发送IP数据包时,网关定义了针对特定的网络目的地址,数据包发送到的下一跳服务器。如果是本地计算机直接连接到的网络,网关通常是本地计算机对应的网络接口,但是此时接口必须和网关一致;如果是远程网络或默认路由,网关通常是本地计算机所连接到的网络上的某个服务器或路由器。
3. 接口:接口定义了针对特定的网络目的地址,本地计算机用于发送数据包的网络接口。网关必须位于和接口相同的子网(默认网关除外),否则造成在使用此路由项时需调用其他路由项,从而可能会导致路由死锁。
4. 跃点数:跃点数用于表示路由的成本,通常情况下代表到达目标地址所需要经过的跃点数量,一个跃点代表经过一个路由器。跃点数越低,代表路由成本越低;跃点数越高,代表路由成本越高。

课堂练习:

实践出真知,下面我们通过一个示例,来实践下~
下图在一个虚拟私有云中共有两个弹性云服务器ECS1和ECS2分别处于不同的网段subnet-1(192.168.1.0/24)与subnet-2(192.168.2.0/24),这两个网段是通过一个路由器来进行数据传递,那么当ECS1这台弹性云服务器发送数据到ECS2时,数据是如何传输的? 

subnet-1与subnet-2是不同的网段,所以在没有添加路由的情况下,ECS1与ECS2是不能直接传递数据的。
华为云虚拟私有云服务系统路由表中自动添加目的地址为下属子网的路由,免除您手动添加路由的步骤。
这里,免费申请华为云虚拟私有云。
ECS1发送数据到ECS2过程如下:
1. ECS1查询数据包的目的IP地址,发现与自己IP地址不在同一网段,不能直接发送数据到ECS2。
2. ECS1将数据包发送到路由器中。
3. 路由器分析路由表,匹配到有目的地址和ECS2所在网段一致的路由,按照此路由的配置将数据发送到ECS2。
了解更多华为云虚拟私有云知识,搭建您网络环境的数据走向地图请戳这里

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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