登录
  • 人们都希望被别人需要 却往往事与愿违
  • 没有哪种编程语言能阻止程序员写出糟糕的代码, 不管这种语言的结构有多么好@Larry Flon

[系列]2.Packet Tracer6静态路由的分析

IT那些事 Benny小土豆 3160次浏览 1294字 0个评论
这篇文章在 2015年11月05日13:20:31 更新了哦~

先提下路由器是干嘛的。非常粗略的说,或许不是很精确,路由器收到数据包,要根据自己的路由表将数据包发给下一个设备(下一个设备可以是另外一个路由器、也可以是终端设备,终端设备就叫直接"交付"),这个下一个设备就叫下一跳,下一条会按照同样的规则转发,直到送到目的主机。

静态路由:

目的地址:指的是目标网络的网络号,比如说目标主机的IP为192.168.1.2,那么此处的目的地址即为192.168.1.0

子网掩码:暂填当前网段的默认子网掩码

下一跳:对于当前路由器来说,需要送到的下一个路由器的IP的地址

[系列]2.Packet Tracer6静态路由的分析

以这个图为例,最左侧的路由器4连接了两个设备,左侧为主机PC0,手动分配了IP地址192.168.1.2

右侧和另外一个路由器连接,分配自己端口的IP为192.168.2.1,对方路由器的IP为192.168.2.2

对于路由器4来说,数据包如果要发给右侧的主机(192.168.7.2),那么目的地址必须指明为192.168.7.0,子网掩码为默认的255.255.255.0,下一跳为将要送往的下一个设备的IP,在这里也就是192.168.2.2

[系列]2.Packet Tracer6静态路由的分析

对于这个路由器来说,它只需要设置一个静态路由,因为回程的数据包直接可以有路由器交付。但是对于他右侧的路由器,却需要有两条哦不三条静态路由。

因为Router4是和主机直接相连的路由器,所以它只需要设置一条静态路由即可。同理,右侧的和主机直接相连的Router0也只需要一条静态路由。

可是只有一条怎么够呢!看看三条静态路由的!、

要知道ping的ICMP是双程的。先分析下Router5的去程。

ICMP报文需要从PC0(192.168.1.2)送到PC1(192.168.7.2),

那么去程的目的地址即为192.168.7.0,子网掩码为255.255.255.0

[系列]2.Packet Tracer6静态路由的分析

分析下这个图,左侧路由的"出口"有两个,router6或者router7,就是说报文有两条路径可以走。第一条右侧直行,第二条从上面"绕道"。

对于右侧,下一跳应该为与之相连的路由器IP,即192.168.3.2;

对于上面,同理,下一跳应该为192.168.8.2

去程分析完了,回程分析下。

[系列]2.Packet Tracer6静态路由的分析

回程杜宇Router05来说,ICMP报文要到达192.168.1.2,所以目的地址为192.168.1.0

而R5该怎么送呢?下一跳应该是与之相连的Router4,也就是192.168.2.1

而Router4知道该怎么送报文,就连在了自己身上当然知道该怎么送啦。

所以综上所述,Router5的静态路由为三条:

[系列]2.Packet Tracer6静态路由的分析

其他路由器的静态路由表以此类推。

其实像这样的设计是不科学、不合理的。

R5有两条送去程报文的路,可是R5并不知道该怎么送。它选择的路径只是从路由表里看,先拿出来的复合规则的路由表,就按照这个路由表走。

假如切断了R5和R6之间的连接,两个主机之间还可以连同,但是会发生超时。毕竟你设置了静态路由,路由器哪怕知道和自己连接的路由器挂了也得跟着规则来送报文。(静态路由的优先级要高于动态路由,就好比要先看hosts再去找ISPDNS一样)

所以接下来要玩下动态路由。动态路由可以避免上面的这个傻乎乎的问题。


文章版权归原作者所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明原作者和本文原始地址:
https://www.bennythink.com/static-router.html
喜欢 (0)
分享:-)
Benny小土豆
关于作者:
If you have any further questions, feel free to contact me in English or Chinese.
发表我的评论(代码和日志请使用Pastebin或Gist)
取消评论

                     

去你妹的实名制!

  • 昵称 (必填)
  • 邮箱 (必填,不要邮件提醒可以随便写)
  • 网址 (选填)