首页 > 其他分享 >探究-ping指令的使用

探究-ping指令的使用

时间:2023-11-01 14:44:05浏览次数:24  
标签:网段 IP ping 192.168 探究 指令 主机 路由

简介:

  背景:一直以来在项目上经常使用ping指令来测试网络通信,最近稍微研究了一下常用的指令,记录以作备忘。--MaQaQ 2023-11-1

  ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 。Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态。

  上面这一串是百度百科的解释,用人话翻译一下就是,ping一般是用来测网络通信的。

  以下在windows操作系统下分析,win+r打开运行窗口输入cmd,打开控制台后输入ping,如下所示:

 指令:

1、最常用的ping指令:ping {IP}

  该指令默认向目标地址发送4次回显请求,发送缓冲区默认32字节。

  完整示例如下:

ping 192.168.1.3

  运行如下:

 2、连续ping:ping -t {IP}

  也可以写成 ping {ip} -t,该指令会连续ping目标主机,直到人手动中止,CTRL+Break查看当前统计信息(Break键即Pause Break,键盘上的PB,笔记本或紧凑型键盘可能没有),CTRL+C中止。

  完整示例如下:

ping -t 192.168.1.3

  运行如下:

  3、解析目标主机名:ping -a {IP}

  指定对目的地 IP 地址进行反向名称解析。如果解析成功,ping 将显示相应的主机名。

  完整示例如下:

ping -a 192.168.101.45

  运行如下:

 4、指定发送次数:ping -n {count} {IP}

  指定发送回响请求消息的次数。默认值为 4。

  完整示例如下:

ping -n 8 192.168.101.45

  运行如下:

 5、设置发送缓冲区大小,ping -l {size} {IP}

  该指令用于设置发送字节数,size范围在[0,65500],为避免造成DOS攻击,一般不建议配合-t使用(←_←)

  完整示例如下:

ping -l 65500 192.168.101.45

  运行如下:

6、记录计数跃点的路由(仅适用于 IPv4):ping -r {count}

  该指令用于记录由回响请求消息和相应的回响应答消息使用的路径,count 范围在[1,9],如果不知道具体路由数,那么可以直接写9。

  完整示例如下:

ping -r 9 192.168.1.3

  运行如下:

7、计数跃点的时间戳(仅适用于 IPv4):ping -s {count} {IP}

  该指令用于记录每个跃点的回响请求消息和相应的回响应答消息的到达时间,count 范围在[1,4]。

  完整示例如下:

ping -s 4 192.168.1.3

  运行如下:

 8、等待每次回复的超时时间(毫秒):ping -w {timeout} {IP}

  默认超时时间是4000ms,意思是直接使用ping指令,我们要等4s才知道请求超时,如果不想要等4s,则可以使用-w来修改超时时间

  完整示例如下(这里的500即0.5s):

ping -w 500 192.168.1.3

  运行如下:

 9、指定源地址:ping -S {srcIP} {targetIP}

10、批量执行ping指令:for /L %D in {范围} do ping {网段}%D

  其中:

  范围格式为(起始地址,递增数,结束地址),如(1,1,255)就是从1-255每次递增1(即该网段下所有IP全部遍历)

  网段格式为x.x.x.,x填入对应的IP地址前三个字节

  ping指令中可以搭配上面的其他功能码,如ping -n 1指定ping次数

  完整示例如下:

for /L %D in (1,1,255) do ping -n 1 192.168.101.%D

即遍历192.168.101网段下1-255,对每个IP都执行1次ping指令

11、其他

  • -f

  指定发送的回响请求消息带有“不要拆分”标志(所在的 IP 标题设为 1)。回响请求消息不能由目的地路径上的路由器进行拆分。该参数可用于检测并解决“路径最大传输单位 (PMTU)”的故障。

  • -i TTL 

   指定发送回响请求消息的 IP 标题中的 TTL 字段值。其默认值是是主机的默认 TTL 值。对于 Windows XP 主机,该值一般是 128。TTL 的最大值是 255。 

  • -v TOS 

   指定发送回响请求消息的 IP 标题中的“服务类型 (TOS)”字段值。默认值是 0。TOS 被指定为 0 到 255 的十进制数。

  • -jPath 

   指定回响请求消息使用带有 HostList 指定的中间目的地集的 IP 标题中的“稀疏资源路由”选项。可以由一个或多个具有松散源路由的路由器分隔连续中间的目的地。主机列表中的地址或名称的最大数为 9,主机列表是一系列由空格分开的 IP 地址(带点的十进制符号)。 

  • -k HostList 

   指定回响请求消息使用带有 HostList 指定的中间目的地集的 IP 标题中的“严格来源路由”选项。使用严格来源路由,下一个中间目的地必须是直接可达的(必须是路由器接口上的邻居)。主机列表中的地址或名称的最大数为 9,主机列表是一系列由空格分开的 IP 地址(带点的十进制符号)。

结果:

1、通信正常

  正常显示来自目标IP的回复,包括bytes(字节)、time(时间)、TTL,其中:

    bytes 值:数据包大小,也就是字节。

    time 值:响应时间,这个时间越小,说明你连接这个地址速度越快。

    TTL 值:Time To Live, 表示 DNS 记录在 DNS 服务器上存在的时间,它是 IP 协议包的一个值,告诉路由器该数据包何时需要被丢弃。

  如下所示:

 2、常见异常

  • Request timed out,请求超时,表示在指定时间内未收到目标主机的响应
  可能原因:a.对方已关机,或者网络上根本没有这个地址;        b.对方与自己不在同一网段内,通过路由也无法找到对方;        c.对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置);        d.主机错误设置IP地址,比如有两个不同的接口处于同一网段内,等等。
  • Destination host Unreachable,目标主机不可达,表示发送数据无法到达目标主机

  可能原因:a.对方与自己不在同一网段内,而自己又未设置默认的路由;

       b.网络故障

  • Unknown host,未知主机,表示无法解析目标主机的主机名或IP地址

  可能原因:a.输入错误的主机名或IP地址、DNS问题或网络连接问题

  • TTL expired in transit,传输中的TTL已过期,表示在数据包传输过程中,经过的路由器的TTL(生存时间)已经减为0,导致数据包被丢弃。

  可能原因:a.网络路由问题、网络拥堵或配置错误

  • Destination net unreachable,目标网络不可达,表示无法到达目标网络

  可能原因:a.网络配置错误、路由表问题或网络故障

  • No route to host,无法到达主机,表示无法找到到达目标主机的路由路径

  可能原因:网络配置错误、路由表问题或网络故障

  • Packet loss,数据包丢失,表示在ping命令发送的数据包中有丢失的数据包

  可能原因:网络拥堵、网络故障或目标主机负载过高

3、异常处理

ping 127.0.0.1

  127.0.0.1是本地循环地址,如果该地ping不通,则表明本机TCP/IP协议不能正常工作,反之正常

ping 本机的IP地址

  ping本机IP地址,如果ping通了表明网卡或modem工作正常,反之就是网卡出现故障了

ping 同网段计算机的IP地址

  如果目标IP与主机不是同网段,那么我们可以先ping一个跟主机同网段的IP,不能通就说明网络线路出现故障.如果网段中还包含有路由,则应先ping路由器在本网段端口的IP,不通则线路有问题,如果通了再ping路由在目标计算机所在网段的端口IP,不通则路由有故障.如果通了,最后再ping目的机IP

ping -a 目标IP地址

  如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。

ping 网址

  连接外网情况下,可以通过ping网址来判断DNS服务器是否有问题,例如:ping baidu.com,如果不通,那就是DNS服务器的问题了。

个人经验

  a.多拿一台电脑试试;b.从目标机ping回主机试试;c.关掉防火墙试试;d.直接拿网线试试

总结:

  最最常用的就两条:

  ping 192.168.1.1

  ping -t 192.168.1.1

标签:网段,IP,ping,192.168,探究,指令,主机,路由
From: https://www.cnblogs.com/magicMaQaQ/p/17802293.html

相关文章

  • 一个比 ping 更强大、更牛逼的命令行工具!
    遇到网络故障的时候,你一般会最先使用哪条命令进行排障?除了Ping,还有Traceroute、Show、Telnet又或是Clear、Debug等等。今天安排的,是Traceroute命令详解,还有经典排障案例哈。Traceroute原理和功能traceroute是一个常用的Linux网络诊断命令,用于追踪数据包从源主机到目标主机的路径。......
  • 农村高中生源转型期提升学生二次函数建模能力的课堂探究
         良好的教学情境是促使学生开展主动思考和深度学习活动的重要保障。数学知识都源于现实生活,所以在培养高中生建模思想与意识期间,除了注意结合数学教材中的相关内容之外,也要注意紧密联系学生的实际生活。因为建模思想的应用都建立在对生活中实际问题的抽象化表达上,所......
  • #pragma message 预处理指令
    #pragmamessage是一个预处理指令,用于在编译过程中向程序员发出消息或警告。这个指令通常用于在编译时向开发者提供一些有用的信息。使用场景:编译时提示版本信息、时间信息、等等#pragmamessage("Yourmessagehere")//编译时就可以输出"Yourmessagehere" 示例代码:#......
  • 无涯教程-Docker - 启动指令
    在本章中,我们将介绍配置Docker的不同选项。servicedockerstop该命令用于停止Dockerdaemon进程。sudodockerstop,当我们运行上面的命令时,它将产生以下输出-servicedockerstart该命令用于启动Docker守护进程。servicedockerstart,当我们运行上面的命令时,它将产生......
  • Java 通过collectors.groupingBy根据某个字段统计
    要使用Collectors.groupingBy根据某个字段统计,你可以通过提供一个函数来指定分组的条件。假设你有一个包含Person对象的列表,每个对象都有age字段表示年龄,你想要根据年龄分组,并统计每个年龄组的人数。以下是一个使用Collectors.groupingBy的示例代码:importjava.util.Arrays;imp......
  • Java 使用`Collectors.groupingBy`计算百分比
    要使用Collectors.groupingBy计算百分比,你需要先对数据进行分组,然后计算每个组内元素的百分比。假设你有一个包含整数的列表,你想要按照它们的奇偶性进行分组,并计算每个组内元素的百分比。以下是一个使用Collectors.groupingBy和自定义收集器的示例代码:importjava.util.Arrays;......
  • 教育管理工具类 APP 在智慧校园中的应用探究?
    智慧校园是指利用信息化技术,将学校的管理、教育教学等方面进行整合和优化,实现校园运行的智能化和高效化。在智慧校园建设中,教育管理工具类APP发挥着重要的作用。本文将详细探究教育管理工具类APP在智慧校园中的应用,并从以下几个方面进行介绍:一、招生与报名管理教育管理工具类A......
  • docker指令详解
    Docker指令详解1.生命周期管理run创建并运行容器,格式dockerrun[OPTIONS]image[COMMAND][ARG...],参数说明dockerrun[options]image[command][arg...]-d,--detach#后台运行-it,--interacticetty#交互终端形式运行-p,--publishlist#指定端口-v,--vo......
  • git 常用指令 续四
    1.创建标签,查看标签//首先,切换到需要打标签的分支上gitbranchgitcheckout<branch_name>//然后创建标签gittag<name>gittagv1.0//查看所有标签gittag默认标签是打在最新提交的commit上的有时候,如果忘了打标签,可以找到历史提交的commitid,然后打上就可以了git......
  • git 常用指令 续三
    1.从远程库clone时,默认情况下,只能看到本地的main分支,若需要创建远程origin的dev分支到本地gitcheckout-bdevorigin/dev//创建本地dev分支和远程dev分支关联gitaddenv.txt//添加修改gitcommit-m"addenv"//提交修改gitpushorigindev//推送到远程origin的de......