概述
ping是操作系统自带的命令,经常用来刺探对端主机是否在线,通信能否畅通。它的原理是在调用ping命令时驱动TCP/IP协议栈的ICMP模块发送icmp echo request消息,待对方主机的ICMP模块收到后,会自动回复icmp echo response消息。本方收到icmp echo response即可确认对方主机在线,通信正常
那既然ping命令的本质是发送icmp echo request,然后等待对方回复icmp echo response,那我是否可以通过开源工具(比如xcp)直接发送icmp消息呢?
答案是可以的!!!
但是为什么有人用工具发送icmp消息时没响应,而用ping命令却有反馈呢?出现这种情况,往往是使用者网络通信基础知识不牢,外加不会分析导致
我们现在就来分析这两种方式是如何工作的
ping通信
我把ping通信的整个过程用下图所示:
首先,主机A在电脑cmd命令窗口调用ping命令,尝试ping主机B的ip地址:ping 192.168.1.200
系统驱动tcp/ip协议栈的icmp模块发送icmp echo reqeust消息
但是通过网卡发送的消息需要在数据链路层组装成一条完整的报文,那么就不能缺少任何一个字段
绝大部分字段都可以自动填充为默认值,只有目标主机的ip和mac是需要知道正确值的
主机B的i
最后
以上就是老迟到石头为你收集整理的用工具刺探主机通信和用系统ping命令有何区别的全部内容,希望文章能够帮你解决用工具刺探主机通信和用系统ping命令有何区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复