之前的文章中我提到过静态路由:
数据通信——网络层(路由器以及数据转发流程)_路由器如何转发数据_咕噜跳的博客-CSDN博客这里只做一些简单描述。
路由器关注的是网络之间的通信。路由器以自身为中心,考虑的是如何将数据发送到目的端,至于哪个源端将数据以什么方式送到路由器上,路由器不会关心。
路由器中含有路由表,路由表由多条路由条目组成。路由条目内包含着一些信息:
目的网络:(报文的去向);
掩码:(与目的网络标识的同一个网段);
出接口:(报文离开该路由器的接口);
下一跳:(报文到达下一个路由器以完成转发达到目的网络)。
这些路由条目决定了路由器怎样指导报文转发消息。报文通过路由器可以确认转发IP报文的路径。路由器是转发报文到目的网段的重要网络设备。
下面我们就用实验来体会一下它们的使用。
建立如下拓扑,并配置好PC的IP地址和网关:
注:PC机别忘了指定对应接口的网关
随后,我们为路由器配置接口的IP地址,这里我们以AR1为例:
R2如上同理配置。
接下来,我们还要配置PC1到AR2和PC2到AR1的路由,这两个路由是跨网络通信的,也就是不在同一个网段内通信,因此我们在配置时要指明去往哪个网段、子网掩码为多少、下一跳是谁以及出接口在哪?
配置静态路由时,你要先告诉路由器,我这个数据要去往哪里,因此我们要先要配置网段和掩码;其次我们还要配置出接口,告诉路由器如果想要去往这个网段,我们该从路由器的哪个接口出来;最后,我们要配置下一跳,告诉路由器,这个出接口指向的下一个路由器的接口地址是谁,谁将代替我们继续发送数据。
一般的,我们可以不配置出接口,而直接配置下一跳,因为相连路由器之间肯定是属于同一网段的,因此路由器就会在路由表中进行模糊匹配,然后前往这个网段地址。不过不建议这样,因为有可能你的路由器有多个下一跳,因此养成习惯,有下一跳也要指定出接口。
AR1:
AR2:
此时,我们就可以通信了:
Request timeout是因为首次指定静态路由后路由器还没有去往对端的路由信息,Ping时路由器需要时间对路径进行分析,再次Ping的时候因为路由器中的FIB表和快速转发表记录了去往对端网段的路由信息,因此可以快速查到去往对端网段的出接口和下一跳并进行转发了。