当前位置: 首页 > news >正文

取证分析:在通信过程中不关心目标的子网掩码

取证分析:在通信过程中不关心目标的子网掩码


有几组让网络学习者感到很疑惑的IP地址组,现在就针对两组典型的地址做分析:

第一组:    IP:192.168.1.1     与      192.168.2.1

               255.0.0.0               255.255.0.0

如果把这两组地址直接填写到利用二层交换机或集线器相连的两台主机上,这两个地址不经过路由能ping通吗?正确的回答是:能ping通!

如果将192.168.1.1/8位作为信源主机(发起通信的源主机),192.168.2.1/16作为信宿主机(接收通信的目标主机),在IP地址求“与”时,这两个IP在去和回的路径上都是处于一个子网中,所以能通信。在这里提出知识点的误区:在确定两个IP地址是否在同一个子网的方式有误。如第一组所示的地址。如果我们在判断两个IP是否在一个子网时利用下图2.26方式是正确的,那么大家在分析192.168.1.1/8与192.168.2.1/16就应该需要路由才能通信,具体如图2.27所示。但实验结果会告诉读者,192.168.1.1/8 与192.168.2.1/16根本就是在一个子网,因为它们不需要路由也能通信!读者可把这两个地址放在两台计算机上试一试就可证明。

wKioL1LLyCTClsHSAABb9HBxFbI597.jpg

wKiom1LLyDHCX3WgAABWEo_kMXc719.jpg


正确的理解IP求“与”来确定是否在一个子网中的技巧:

IPV4的通信,源主机根本不需要关心目标主机的子网掩码,而求“与”的正确过程应该是:将目标主机的IP与源主机的子网掩码求“与”,再将源主机的IP与源主机的子网掩码求“与”,得出两个主机是否在同一个子网,如图2.28所示。

wKioL1LLyNPSkKPfAAClrTWHhdE872.jpg


所以ICMP的请求报文能够准确地从192.168.1.1/8发到192.168.2.1/16。

接下来看一下:192.168.2.1/16返回给192.168.1.1/8的ICMP应答报文,在这个过程中我们可以将192.168.2.1理解成应答回送报文的源主机,而192.168.1.1是应答回送报文的目标主机,所以仍然以IPV4通信不要求关心目标子网的原则,如上图2.28所示,从192.168.2.1返回给192.168.2.1 的ICMP通信仍在同一子网。

将这组IP地址分析到这个程度上就可以很明确的得出一个结论:192.168.1.1/8在没有三层路由设备的情况下,直接与192.168.2.1/24相连,是能ping通的,因为ICMP的请求与应答消息都是在一个子网中,它们没理由需要三层路由设备。


第二组地址:192.168.1.1       192.168.2.1

            255.255.255.0      255.255.0.0

如果把这两组地址直接填写到利用二层交换机或集线器相连的两台主机上,这两个地址不经过路由能ping通吗?

答:不能ping通。当192.168.1.1/24主机ping192.168.2.1/16时,在192.168.1.1/24的主机上会报告“Destination hostunreachable.”,当从192.168.2.1/16主机ping192.168.1.1/24的主机时会报告“Request timed out”,ping不通。为什么还会出现报告不同的错误的提示?原因很简单,当192.168.1.1/24主动发起对192.168.2.1/16的ping时,根据第一组地址分析得出一个结论:当192.168.2.1作为目标时,不关心它的子网掩码,所以通过“与”方式,192.168.1.1/24与192.168.2.1/16不在同一子网,这时ICMP的请求消息都到不了目标主机,所以就直接报告:“Destination hostunreachable”目标主机不可达。但相反,从192.168.2.1/16主动ping 192.168.1.1/24主机时,目标就是192.168.1.1/24所以可以不关心目标IP地址的子网掩码,此时,192.168.2.1主机的ICMP的请求消息能够到达192.168.1.1/24的主机,因为ICMP发送ICMP请求消息时它们在同一个子网中的。换言之,192.168.2.1的ICMP请求消息可以正确的发到192.168.1.1。但是大家千万不要忘记通信是一个双向的过程,特别是ICMP的请求消息能发到目标主机,这并不表示ping就会成功,必须要192.168.1.1对192.168.2.1的应答消息能被准确的送到192.168.2.1时,一个完整的ping过程才完成。问题也就在这里,因为当192.168.1.1作为源地址去响应192.168.2.1的ICMP请求时,192.168.2.1就是目标地址,使用第一组地址中“与”计算的方式,我们可以明确看到,192.168.1.1无法将ICMP的应答消息传递到192.168.2.1,因为它们不在同一个子网中。大家再联动起来分析:当192.168.2.1主动ping192.168.1.1时,它的请求消息能被传递到192.168.1.1,然后它就等待192.168.1.1为它做ICMP应答,但是应答消息永远不会被传递到192.168.2.1,所以192.168.2.1的等待就超时了,报告:“Request timed out”。



相关文章:

  • 系统维护和tcp连接
  • winform 如何控制输入法
  • DoS***_详解(转载)
  • 自定义序列化技术2:变长数组的实现
  • 2,8,10,16进制转换
  • Hadoop:Hadoop的常见启动错误(有新问题会持续更新)
  • loj 1030概率dp
  • IoT:利尔达的半壁江山
  • 64位 windows10,安装配置MYSQL8.0.13
  • webservice—验证磨刀不误砍柴工的真理
  • linux ubuntu 网卡配置---固定IP
  • PHP-数据库永久连接
  • Effective_STL 学习笔记(七) 当使用 new 得指针容器时,记得在销毁容器前 delete 那些指针...
  • Cmake ,Out of Source Build
  • ASP.NET MVC中Section、Partial View 和 Child Action(转载)
  • hexo+github搭建个人博客
  • 【5+】跨webview多页面 触发事件(二)
  • Bootstrap JS插件Alert源码分析
  • chrome扩展demo1-小时钟
  • go语言学习初探(一)
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • js对象的深浅拷贝
  • Koa2 之文件上传下载
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • SpingCloudBus整合RabbitMQ
  • Vue官网教程学习过程中值得记录的一些事情
  • 订阅Forge Viewer所有的事件
  • 复习Javascript专题(四):js中的深浅拷贝
  • 蓝海存储开关机注意事项总结
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 在Unity中实现一个简单的消息管理器
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #大学#套接字
  • #前后端分离# 头条发布系统
  • (1)(1.13) SiK无线电高级配置(五)
  • (13):Silverlight 2 数据与通信之WebRequest
  • (14)Hive调优——合并小文件
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .Net Remoting常用部署结构
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET正则基础之——正则委托
  • [ C++ ] 继承
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [ HTML + CSS + Javascript ] 复盘尝试制作 2048 小游戏时遇到的问题
  • [14]内置对象
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件