ping命令执行过程详解
目录
- ping命令执行过程详解
- 同一网段
- 不同网段
- 对ping后返回信息的分析
ping命令执行过程详解
机器A ping 机器B
同一网段
ping通知系统建立一个固定格式的ICMP请求数据包
ICMP协议打包这个数据包和机器B的IP地址转交给IP协议层(一组后台运行的进程,与ICMP类似)
IP层协议将以机器B的IP地址为目的地址,本机IP地址为源地址,加上一些其他的控制信息,构建一个IP数据包
- 获取机器B的MAC地址
IP层协议通过机器B的IP地址和自己的子网掩码,发现它跟自己属同一网络,就直接在本网络查找这台机器的MAC
若两台机器之前有过通信,在机器A的ARP缓存表应该有B机IP与其MAC的映射关系
- 若没有,则发送ARP请求广播,得到机器B的MAC地址,一并交给数据链路层
数据链路层构建一个数据帧,目的地址是IP层传过来的MAC地址,源地址是本机的MAC地址,再附加一些控制信息,依据以太网的介质访问规则,将他们传送出去
机器B收到这个数据帧后,先检查目的地址,和本机MAC地址对比
符合,接收。接收后检查该数据帧,将IP数据包从帧中提取出来,交给本机的IP协议层协议。IP层检查后,将有用的信息提取交给ICMP协议,后者处理后,马上构建一个ICMP应答包,发送给主机A,其过程和主机A发送ICMP请求包到主机B类似(这时候主机B已经知道了主机A的MAC地址,不需再发ARP请求)
不符合,丢弃
不同网段
ping通知系统建立一个固定格式的ICMP请求数据包
ICMP协议打包这个数据包和机器B的IP地址转交给IP协议层(一组后台运行的进程,与ICMP类似)
IP层协议将以机器B的IP地址为目的地址,本机IP地址为源地址,加上一些其他的控制信息,构建一个IP数据包
获取主机B的MAC地址
- IP协议通过计算发现主机B与自己不在同一网段内,就直接交给路由处理,就是将路由的MAC取过来,至于怎么得到路由的MAC地址,和之前一样,先在ARP缓存表中寻找,找不到可以利用广播。路由得到这个数据帧之后,再跟主机B联系,若找不到,就向主机A返回一个超时信息。
对ping后返回信息的分析
Request timed out
对方已关机,或者网络上没有这个地址
对方与自己不在同一网段内,通过路由也无法到达
对方存在,不过设置了ICMP数据包过滤(比如防火墙设置)
错误设置IP地址
正常情况下,一台主机一张网卡,一个IP地址或多个网卡,多个IP地址。但如果一台电脑的“拨号网络适配器”(相当于一块软网卡)的TCO/IP设置中,设置了一个与网卡IP地址处于同一子网的IP地址,这样,在IP层协议看来,这台主机就有两个不同的接口处于同一网段内。当从这台主机ping其他机器时,会存在这样的问题:
** 主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。
** 主机不知道用哪个地址作为数据包的源地址。因此,从这台主机去ping其他机器,IP层协议会无法处理,超时后,ping就会给出一个“超时无应答”的错误信息提示。但从其他主机ping这台主机时,请求包从特定网卡来,ICMP只须简单的将目的、源地址互换,并更改一些标志即可,ICMP应答包能顺利发出,其他主机就能成功ping通这台主机了。Destination host Unreachable
自己未设定默认路由,对方跟自己不在同已网段
网线有问题
备注:
Request timed out 与 Destination host Unreachable 的区别
所经过的路由器的路由表具有到达目标的路由,而目标因为原因不可到达,这时出现前者。如果路由表中连到达目标的路由都没有,就会出现后者。Bad ip address
- 没有连接到DNS服务器,无法解析IP,也可能是IP不存在
Source quench received
- 对方或中途服务器繁忙而无法应答
Unkonw host
- 远程主机的名字不能被域名服务器转换成IP地址,故障原因可能是DNS服务器有故障,或者名字不正确,或者网络管理员的系统与远程主机之间的通信线路故障。
No answer
- 无响应。说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的人呢和信息。故障原因可能是:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
Ping 127.0.0.1
- 如果ping不通,则表明本地址TCP/IP协议不能正常工作
no rout to host
- 网卡工作不正常
transmit failed。error code
- 10043网卡驱动不正常
unknown host name
- DNS配置不正确
转载于:https://www.cnblogs.com/cherishry/p/5717387.html
ping命令执行过程详解相关推荐
- Linux is执行程序命令,linux命令执行过程详解
1.执行命令 输入命令后回车 提请shell程序找到键入命令所对应的可执行程序或者代码,并且由其分期后,提交给内核分配资源将其运行起来. 在shell中可执行的命令有俩类: 内部命令:由shell自带 ...
- Hadoop学习之Mapreduce执行过程详解
一.MapReduce执行过程 MapReduce运行时,首先通过Map读取HDFS中的数据,然后经过拆分,将每个文件中的每行数据分拆成键值对,最后输出作为Reduce的输入,大体执行流程如下图所示: ...
- 数据库除关系运算符执行过程详解
数据库除关系运算符案例详解 声明与简介 数据库里的Div(除)运算符是借鉴了数学基本元素除的理念,即整体除以个体,得到组(满足个体的特征的集合). 所以如果"被除数"的集合R有4个 ...
- ping命令基本使用详解
ping命令原理 ping命令是用来探测本机与网络中另一主机之间是否可通的命令,如果两台主机之间ping不通,则表明这两台主机不能建立起连接. ping命令位于7层协议的网络层. ping 命令是基于 ...
- 文件包含与命令执行漏洞详解
代码注入 远程文件包含漏洞 文件包含 了解什么是本地文件包含漏洞 了解本地文件包含漏洞所要用到的函数 掌握本地文件包含漏洞的利用方式 了解 PHP 语言中的封装协议 掌握本地文件包含漏洞的修复方法 什 ...
- mysql查询解析过程_MySQL查询执行过程详解
查询是用户通过设置某些查询条件,从表或其他查询中选取全部或者部分数据,以表的形式显示数据供用户浏览.查询是一个独立的.功能强大的.具有计算功能和条件检索功能的数据库对象.MySQL数据库中,MySQL ...
- 一个sql的执行过程详解
作者:猿来是八阿哥 链接:https://www.jianshu.com/p/e2926d6a808f 一个sql的执行过程 一. 组成部分 PDO_MYSQL is a driver that im ...
- sql server修改字段编码格式_原理:一条 sql 的执行过程详解
思维导航: 写操作执行过程 组件介绍 1.undo log 与 MVCC 2.redo log 与 Buffer Pool 3.bin log(Server 层) 1.连接器 2.缓存(Cache) ...
- ajax是宏任务还是微任务,(滴滴面试)事件循环Event Loop及微任务和宏任务的执行过程详解...
之前一直在面试,对于一些大厂面试题真的还是很注重原理和基础的, 还有就是数据结构和算法这种,校招的话,这些是很重要的, 前天和滴滴的人面试,问的真心觉得不难,而且也都是现在面试前端很常见的问题, 对于 ...
- 计算机网络ping用法,Ping命令及用法详解
Ping命令的原理与作用 Ping命令可以测试计算机名和计算机的IP地址,验证与远程计算机的连接,通过向计算机发送ICMP( Internet Control and Message Protocal ...
最新文章
- Android XML pull 解析器
- 【C++ 语言】面向对象 ( 函数重载 | 运算符重载 | 运算符重载两种定义方式 | 拷贝构造方法 | RVO 优化 | NRVO 优化 )
- 学会对mysql的增删改查_Go实现对MySQL的增删改查
- linux系统调用函数(C语言):open,close函数和文件描述符
- android+button+不可点击置灰,android:tint 给imagebutton着色 按钮灰色
- springboot项目中关于时间类型转换的格式问题
- 基于vue框架项目开发过程中遇到的问题总结(三)
- java基于jxl.jar包生成Excel文件到指定目录和服务器下载两种模式的使用方法
- java解析pom.xml_从pom.xml java获取变量
- IE7 下载EXCEL注意地方
- python公众号文章爬虫_微信公众号文章爬虫
- [超详细] 在Edge/Chrome浏览器上为B站开启HEVC硬解和AV1硬解(支持4K120Hz、8K、HDR真彩,杜比视界、杜比全景声)
- 互联网大数据与物联网大数据的区别 你有必要了解下
- 如何解决电脑时间同步出错?
- jQuery封装的获取Url中的Get参数
- 计算机桌面搜狗输入图标不见了怎么办,电脑上搜狗输入法状态栏突然不见了怎么办 如何找到电脑中所失去的输入法...
- java读取欧姆龙plc,寄存器读取命令响应超时 欧姆龙plc寄存器读取命
- 迪文屏幕ttl转232选择
- 3个办法解决:微信删除的聊天记录怎么恢复?
- 查看cbr vbr_如何在口径中查看CBR和CBZ漫画书