一:

1.ping的基本信息

PING (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP(Internet Control Messages Protocol)即因特网信报控制协议;回声请求消息给目的地并报告是否收到所希望的ICMPecho (ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。
ping指的是端对端连通,通常用来作为可用性的检查, 但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用作服务器或者进行网络测试,可以放心的选中它,保护你的电脑。

2.ping的工作过程

我们以下面一个网络为例:有A、B、C、D四台机子,一台路由RA,子网掩码均为255.255.255.0,默认网关为192.168.1.1

2. 1、在同一网段内

在主机A上运行“Ping 192.168.1.5”后,都发生了些什么呢? 首先,Ping命令会构建一个固定格式的ICMP请求数据包,然后由ICMP协议将这个数据包连同地址“192.168.1.5”一起交给IP层协议(和ICMP一样,实际上是一组后台运行的进程),IP层协议将以地址“192.168.1.5”作为目的地址,本机IP地址作为源地址,加上一些其他的控制信息,构建一个IP数据包,并想办法得到192.168.1.5的MAC地址(物理地址,这是数据链路层协议构建数据链路层的传输单元——帧所必需的),以便交给数据链路层构建一个数据帧。关键就在这里,IP层协议通过机器B的IP地址和自己的子网掩码,发现它跟自己属同一网络,就直接在本网络内查找这台机器的MAC,如果以前两机有过通信,在A机的ARP缓存表应该有B机IP与其MAC的映射关系,如果没有,就发一个ARP请求广播,得到B机的MAC,一并交给数据链路层。后者构建一个数据帧,目的地址是IP层传过来的物理地址,源地址则是本机的物理地址,还要附加上一些控制信息,依据以太网的介质访问规则,将它们传送出去。
主机B收到这个数据帧后,先检查它的目的地址,并和本机的物理地址对比,如符合,则接收;否则丢弃。接收后检查该数据帧,将IP数据包从帧中提取出来,交给本机的IP层协议。同样,IP层检查后,将有用的信息提取后交给ICMP协议,后者处理后,马上构建一个ICMP应答包,发送给主机A,其过程和主机A发送ICMP请求包到主机B一模一样。

2. 2、不在同一网段内

在主机A上运行“Ping 192.168.2.4”后,开始跟上面一样,到了怎样得到MAC地址时,IP协议通过计算发现D机与自己不在同一网段内,就直接将交由路由处理,也就是将路由的MAC取过来,至于怎样得到路由的MAC,跟上面一样,先在ARP缓存表找,找不到就广播。路由得到这个数据帧后,再跟主机D进行联系,如果找不到,就向主机A返回一个超时的信息。

3.ping的命令参数及详解

输入ping /? ,列出ping的相关参数

用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
[-4] [-6] target_name

选项:

-t            Ping 指定的主机,直到停止。若要查看统计信息并继续操作,请键入 Ctrl+Break;若要停止,请键入 Ctrl+C。
-a             将地址解析为主机名。
-n count       要发送的回显请求数。(发送 count 指定的 ECHO 数据包数。默认值为 4。)
-l size        发送缓冲区大小。(发送包含由 size 指定的数据量的 ECHO 数据包。默认为 32 字节;有效范围从 0 到 65500。)
-f             在数据包中设置“不分段”标记(仅适用于 IPv4)。(在数据包中发送"不要分段"标志。数据包就不会被路由上的网关分段。)
-i TTL         生存时间。(将"生存时间"字段设置为 ttl 指定的值)
-v TOS         服务类型(仅适用于 IPv4。该设置已被弃用,对 IP 标头中的服务类型字段没有任何影响)。
-r count       记录计数跃点的路由(仅适用于 IPv4)。(在"记录路由"字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机)
-s count       计数跃点的时间戳(仅适用于 IPv4)。(指定 count 指定的跃点数的时间戳)
-j host-list   与主机列表一起使用的松散源路由(仅适用于 IPv4)。(利用 host-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为 9)
-k host-list    与主机列表一起使用的严格源路由(仅适用于 IPv4)。(指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为 9)
-w timeout     等待每次回复的超时时间(毫秒)。(指定超时间隔,单位为毫秒)
-R             同样使用路由标头测试反向路由(仅适用于 IPv6)。根据 RFC 5095,已弃用此路由标头。如果使用此标头,某些系统可能丢弃回显请求。
-S srcaddr     要使用的源地址。
-c compartment 路由隔离舱标识符。
-p             Ping Hyper-V 网络虚拟化提供程序地址。
-4             强制使用 IPv4。
-6             强制使用 IPv6。

destination-list :指定要 ping 的远程计算机。

列举如下:
-t Ping 指定的主机,直到停止。
若要查看统计信息并继续操作,请键入 Ctrl+Break;
若要停止,请键入 Ctrl+C。

-a 将地址解析为主机名。

-n count 要发送的回显请求数。

-l size 发送缓冲区大小。

Ping(网络诊断工具)的工作原理及命令参数详解和使用相关推荐

  1. Linux 程序异常诊断工具(pstack与strace命令使用详解、死锁)

    strace跟踪程序使用的底层系统调用,可输出系统调用被执行的时间点以及各个调用耗时:pstack工具对指定PID的进程输出函数调用栈. 一.strace 1.1 基本概念 strace是一个可用于诊 ...

  2. 光纤收发器的原理及应用_光纤收发器的工作原理以及使用方法详解!

    原标题:光纤收发器的工作原理以及使用方法详解! 关于光纤收发器的工作原理以及使用方法这块,在这里飞畅科技的小编做了专门的整理,首先,我们来了解下什么是光纤收发器,光纤收发器是一种将短距离的双绞线电信号 ...

  3. Nginx 反向代理工作原理简介与配置详解

    Nginx 反向代理工作原理简介与配置详解 测试环境 CentOS 6.8-x86_64 nginx-1.10.0 下载地址:http://nginx.org/en/download.html 安装 ...

  4. 【京准小课堂】NTP网络校时服务器(时间同步系统)参数详解

    [京准小课堂]NTP网络校时服务器(时间同步系统)参数详解 [京准小课堂]NTP网络校时服务器(时间同步系统)参数详解 1.系统概述 在信息时代的今天,准确统一的时钟系统已广泛的应用在车站.医院.学校 ...

  5. Windows 运行chkdsk磁盘修复工具命令参数详解

    Windows 运行chkdsk磁盘修复工具命令参数详解 chkdsk是Windows系统自带的磁盘修复工具,通常在电脑非正常关机之后再开机,系统就会自动调用chkdsk工具进行磁盘扫描和修复.同时, ...

  6. Java多线程之线程池7大参数、底层工作原理、拒绝策略详解

    Java多线程之线程池7大参数详解 目录 企业面试题 线程池7大参数源码 线程池7大参数详解 底层工作原理详解 线程池的4种拒绝策略理论简介 面试的坑:线程池实际中使用哪一个? 1. 企业面试题 蚂蚁 ...

  7. 网络诊断工具之—路由追踪tracert命令

    路由追踪-tracert   Tracert通过递增"生存时间   (TTL)"字段的值将"Internet   控制消息协议   (ICMP)   回响请求" ...

  8. TLS/SSL 工作原理及握手过程详解

    目录 前言 TLS/SSL 基础概念 密钥协商过程中存在的问题及解决办法 TLS/SSL 握手过程 前言 本文是对 HTTPS 安全基础.TLS/SSL 工作原理及握手过程的总结.第一部分介绍为 HT ...

  9. java struct工作原理_Struts2的工作原理(图解)详解

    Struts2的工作原理 上图来源于Struts2官方站点,是Struts 2 的整体结构. 一个请求在Struts2框架中的处理大概分为以下几个步骤(可查看源码:https://github.com ...

最新文章

  1. Using Apache2 with JBoss AS7 on Ubuntu
  2. HTML的标签描述17
  3. 小学计算机课计划,小学信息技术教学工作计划
  4. python【数据结构与算法】动态规划详解从背包到最长公共子序列(看不懂你来打我)
  5. 通过 python-xmp-toolkit 读取图片xmlp信息
  6. ContextLoaderListener作用详解
  7. 你离顶尖网络工程师有多远?
  8. tomcat最大连接数_SpringBoot内嵌Tomcat自定义配置用法
  9. android excel在线制作教程,Excel手机表格制作软件
  10. 自学python书籍怎么选-python自学Day07(自学书籍python编程从入门到实践)
  11. 程序员怎么从中国直接去美国工作?
  12. 爬取电影《无双》影评数据,分析,可视化
  13. mysql中根据出生年月日计算年龄。
  14. AutoHotKey写一个改键的小脚本
  15. 树莓派:双色LED灯实验
  16. 3.3.1-取词干和词形还原
  17. unity3D游戏开发实战(四)——使用道具与密码锁
  18. php开发c盘多大,win10占用c盘多大空间
  19. 如何对大硬盘进行低格
  20. 12V输出4.2V1A电池充电芯片

热门文章

  1. 强大jQuery ui.ariaSorTable实现排序、分页的表格
  2. 关于JDK 1.8 ne和eq的用法
  3. 彩6一直显示连接服务器,彩虹6号一直服务器连接错误 | 手游网游页游攻略大全...
  4. KD7742耐压接地泄漏绝缘四合一并行测试仪
  5. macOS升级到10.15.1开机后CPU温度稳定保持在95度发烫(macs测试)
  6. mt19937 随机数
  7. 高级灰质感、轻奢风的空间,融入了灰色和轻奢风
  8. MySQL 上亿大表如何优化?
  9. 51单片机蓝牙小车(精要版)
  10. oppor11可以按Android吗,OPPO R11能插内存卡吗_OPPO R11支持内存卡吗-太平洋IT百科