ping 命令


ping命令是定位网络通不通的一个重要手段。ping是用来探测本机与网络中另一主机之间是否可达的命令,如果两台主机之间ping不通,则表明这两台主机不能建立起连接。

        ping 命令是基于 ICMP 协议来工作的,「 ICMP 」全称为 Internet 控制报文协议( Internet Control Message Protocol)。ping 命令会发送一份ICMP回显请求报文给目标主机,并等待目标主机返回ICMP回显应答。因为ICMP协议会要求目标主机在收到消息之后,必须返回ICMP应答消息给源主机,如果源主机在一定时间内收到了目标主机的应答,则表明两台主机之间网络是可达的。

开始->cmd->回车进入DOS命令界面   输入ping -? 查看ping 命令的参数,如下图

 

ping 命令几种常用返回结果

1.Request timed out(请求超时)

可能有以下几种情况

①对方主机不存在或已关机

②对方确实存在、但设置了ICMP数据包过滤

③如何判断对方是否存在:

        可以用带参数 -a的ping命令探测对方,如果能得到对方的主机名,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。        

④  错误设置IP地址        

         正常情况下,一台主机应该有一个网卡,一个IP地址,或多个网卡,多个IP地址(这些地址一定要处于不同的IP子网)。但如果一台电脑的“拨号网络适配器”(相当于一块软网卡)的TCP/IP设置中,设置了一个与网卡IP地址处于同一子网的IP地址,这样,在IP层协议看来,这台主机就有两个不同的接口处于同一网段内。当从这台主机Ping其他的机器时,会存在这样的问题:

(a). 主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。  

(b). 主机不知道用哪个地址作为数据包的源地址。      

因此,从这台主机去Ping其他机器,IP层协议会无法处理,超时后,Ping 就会给出一个“超时无应答”的错误信息提示。


⑤没有设置网关  

2.Destination host Unreachable(目标主机不可达) 

        对方与自己不在同一网段内,而自己又未设置默认的路由。这里要说明一下“destination host unreachable”和 “time out”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“time out”,如果路由表中连到达目标的路由都没有,那就会出现“destination host unreachable”。

3.Bad ip address 

表示可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是ip地址不存在

4.Source quench received

表示对方或中途的服务器繁忙无法回应

5.Unknown host

该远程主机的名字不能被域名服务器(DNS)转换成IP地址。故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。  

6.No answer

这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:        

    ① 中心主机没有工作;        

    ② 本地或中心主机网络配置不正确;        

    ③  本地或中心的路由器没有工作;        

    ④通信线路有故障;        

    ⑤中心主机存在路由选择问题等        

为了有效地找出网络故障的原因,在使用Ping命令进行测试检查时,尽量确保局域网中只配置了一个网关,同时确保本机没有启用IP安全设置策略,这样可以保证Ping命令能够正常运行并获得正确的测试结果。

通过思科模拟器进行ping命令测试

(1)首先不设置PC0的网关,进行ping测试,然后再设置上PC0的网关继续测试,结果如下;

(2)不设置PC1的IP地址进行测试;

(3)进行ACL限制

进行测试结果如下;

总结:ping是一个很重要的命令,能帮助我们分析问题,大家务必掌握。如果不记得参数作用 可以通过 ping -?来查看

           学以致用,多多实践!

 

### 如何使用 `ping` 命令进行网络连通性测试 #### ping命令简介 `ping` 是一种常用的网络诊断工具,主要用于测试两个网络节点之间的可达性和响应时间。该命令发送ICMP回显请求到指定的目标主机,并等待对方返回ICMP回显应答消息。这不仅验证了目标设备的存在,还提供了关于传输过程中遇到的问题的重要反馈。 #### 执行基本的ping操作 要在命令行界面执行简单的ping测试,在Windows系统的命令提示符下或者Linux/Unix/macOS终端里输入如下形式的指令: ```bash ping 172.31.1.2 ``` 上述例子中使用的IP地址(172.31.1.2)应当被替换成想要探测的具体IPv4地址或是域名[^2]。 #### 解读ping的结果 当运行完一条ping语句之后,屏幕上会显示出一系列由目标机器发回来的数据包详情。每一行代表一次成功的往返通讯尝试;如果某次未能成功接收到回应,则会在对应位置显示超时信息。通常情况下,输出的最后一部分会对整个过程做一个统计性的总结,包括但不限于已发送和接收的数据报数量、丢失百分比以及平均往返延时等指标[^3]。 #### 高级选项配置 对于更复杂的场景需求,可以通过附加参数来自定义行为模式。例如,调整每次发出探针的数量、设定最大TTL值来追踪路由路径或者是持续不断地向目的地发射信号直到手动终止等等。具体可用哪些开关取决于操作系统版本及其内置实现方式的不同而有所差异。 #### 利用编程接口集成ping功能 除了直接调用外部可执行文件外,某些高级应用可能希望把类似的检测机制嵌入内部逻辑当中去。像C++ Boost.Asio这样的第三方库就允许开发者创建跨平台的应用程序,这些应用程序可以在不依赖于特定shell环境的前提下完成相似的任务——即发起并处理ICMP Echo Requests[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少年与云眠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值