扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
linux下ping 命令的用法。
创新互联公司是专业的昌江黎族网站建设公司,昌江黎族接单;提供成都网站建设、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行昌江黎族网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
在linux操作系统中,ping命令是常用的网络命令,它通常用来测试与目标主机的连通性。
经常会说“ping一下某机器,看是不是开着”、不能打开网页时会说“你先ping网关地址192.168.1.1试试”。
它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是
否可访问(但这不是绝对的)。有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样就不能通过ping确定该主机是否还处于
开启状态。
linux下的ping和windows下的ping稍有区别,linux下ping不会自动终止,需要按ctrl+c终止或者用参数-c指定要求完成的回应次数。
下面就开始学习下这个常用的linux命令吧。
1.命令格式:
ping [参数] [主机名或IP地址]
2.命令功能:
ping命令用于:确定网络和各外部主机的状态;跟踪和隔离硬件和软件问题;测试、评估和管理网络。如果主机正在运行并连在网上,它就对回送信号进行响应。每个回送
信号请求包含一个网际协议(IP)和 ICMP 头,后面紧跟一个 tim 结构,以及来填写这个信息包的足够的字节。缺省情况是连续发送回送信号请求直到接收到中断信号
(Ctrl-C)。
ping 命令每秒发送一个数据报并且为每个接收到的响应打印一行输出。ping 命令计算信号往返时间和(信息)包丢失情况的统计信息,并且在完成之后显示一个简要总结。
ping 命令在程序超时或当接收到 SIGINT 信号时结束。Host 参数或者是一个有效的主机名或者是因特网地址。
3.命令参数:
-d 使用Socket的SO_DEBUG功能。
-f 极限检测。大量且快速地送网络封包给一台机器,看它的回应。
-n 只输出数值。
-q 不显示任何传送封包的信息,只显示最后的结果。
-r 忽略普通的Routing Table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。
-R 记录路由过程。
-v 详细显示指令的执行过程。
p-c 数目:在发送指定数目的包后停止。
-i 秒数:设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。
-I 网络界面:使用指定的网络界面送出数据包。
-l 前置载入:设置在送出要求信息之前,先行发出的数据包。
-p 范本样式:设置填满数据包的范本样式。
-s 字节数:指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。
-t 存活数值:设置存活数值TTL的大小。
4.使用实例:
实例1:ping的通的情况
复制代码代码示例:
命令:
ping 192.168.120.205
输出:
[root@localhost ~]# ping 192.168.120.205
PING 192.168.120.205 (192.168.120.205) 56(84) bytes of data.
64 bytes from 192.168.120.205: icmp_seq=1 ttl=64 time=0.720 ms
64 bytes from 192.168.120.205: icmp_seq=2 ttl=64 time=0.181 ms
64 bytes from 192.168.120.205: icmp_seq=3 ttl=64 time=0.191 ms
64 bytes from 192.168.120.205: icmp_seq=4 ttl=64 time=0.188 ms
64 bytes from 192.168.120.205: icmp_seq=5 ttl=64 time=0.189 ms
--- 192.168.120.205 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 0.181/0.293/0.720/0.214 ms
[root@localhost ~]#
更多Linux知识可以参考《Linux就该这么学》
在Linux中,PING是测试一个网络的连通信的,基本命令格式为
ping
[-dfnqrRv][-c完成次数][-i间隔秒数][-I网络界面][-l前置载入][-p范本样式][-s数据包大小][-t存活数值][主机名称或IP地址]
根据此,这个命令代表测试网络连通信,并测试2次
Linux下ping命令可以设置每次ping的时间间隔,
具体选项参数如下:
1、-b n:测试与网关IP的连通性
2、-c n:执行指定次数n的ping命令
3、-i n:设定间隔几秒发送一个网络封包给一个地址,预设值是一秒一次
4、-s 字节数:执行发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。
想批量ping,建议编写与一个bash脚本(网上搜索一下基本语法),然后执行这个脚本就可以实现了。
希望我的回答有帮助到你。
很多朋友都想知道linux上的ping命令是什么?下面就一起来看看吧!
linux上的ping命令是什么
Linux系统的ping命令是经常被用到的网络命令,常常用来测试与目标主机的连通性,一些服务器为了防止被ping探测到,所以通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样也就不能通过ping确定该主机是否还处于开启状态。
Linux的语言
linux开发用的是C语言和汇编语言。C语言是Linux的“母语”,这也是linux这个开源环境和本身机制所导致的。Linux的内核部分基本都是用C语言来编写的,还有部分是用汇编语言写的。
Ping命令通过发送Internet控制消息协议(ICMP)回响请求消息来验证与另一台TCP/IP计算机的IP级连接,很重要的一条命令.
ping命令一般用于检测网络通与不通,也叫时延,其值越大,速度越慢PING(PacketInternetGrope),因特网包探索器,用于测试网络连接量的程序。
ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。它是用来检查网络是否通畅或者网络连接速度的命令。
原理:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。
二、ping的工作流程
1、在同一网段内
ping
主机A---------------------主机B
ICMP请求包
在本机(主机A)查找ARP缓存表查找主机B的IP与其对应的MAC,
没有找到主机B的IP与其MAC的映射关系,则发送一个arp请求广播,
主机B接收到arp请求包后,回复一个arp应答包(里面包含本机MAC),
主机A----------------------主机B
ICMP应答包
2、不在同一网段
在主机A上运行“ping主机C(不在同一网段)”后,开始跟上面一样,到了怎样得到MAC地址时,IP协议通过计算发现C机与自己不在同一网段内,就直接将交由路由处理,也就是将路由的MAC取过来,至于怎样得到路由的MAC,跟上面一样,先在ARP缓存表找,找不到就广播包。路由得到这个数据帧后,再跟主机C进行联系,如果找不到,就向主机A返回一个超时的信息。
三、ping命令的使用
ping命令的一般格式为:
ping[-dfnqrRv][-c发送次数][-i间隔秒数][-I(大写i)网络界面][-l(小写L)前置载入][-p范本样式][-s数据包大小][-t存活数值][主机名或IP地址]
参数说明:
【-ccount】指定要被发送(或接收)的回送信号请求的数目,由Count变量指出。
【-wtimeout】这个选项仅和-c选项一起才能起作用。它使ping命令以最长的超时时间去等待应答(发送最后一个信息包后)。默认超时时间为4000ms(4s)
【-d】使用Socket的SO_DEBUG功能。
【-D】这个选项引起ICMPECHO_REPLY信息包向标准输出的十六进制转储。
【-f】指定flood-ping选项。-f标志“倾倒”或输出信息包,在它们回来时或每秒100次,选择较快一个。每一次发送ECHO_REQUEST,都打印一个句号,而每接收到一个ECHO_REPLY信号,就打印一个退格。这就提供了一种对多少信息包被丢弃的信息的快速显示。仅仅root用户可以使用这个选项。
注:这在网络上将非常困难,必须小心使用。Floodping命令仅仅root用户可以使用。-f标志与-iWait标志不兼容.
【-n】只输出数值。
-r】忽略路由表,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。
【-R】记录路由过程。-R标志包括ECHO_REQUEST信息包中的RECORD_ROUTE选项,并且显示返回信息包上的路由缓冲。
【-v】详细显示指令的执行过程。
【-iwait】在每个信息包发送之间等待被Wait变量指定的时间(秒数)。缺省值是在每个信息包发送之间等待1秒。这个选项与-f标志不兼容。
【-Ia.b.c.d】指定被a.b.c.d标明的接口将被用于向外的IPv4多点广播。-I标志是大写的i。
【-lPreload】在进入正常行为模式(每秒1个)前尽快发送Preload变量指定数量的信息包。-l标志是小写的L。
【-L】对多点广播ping命令禁用本地回送。
【-pPattern】指定用多达16个“填充”字节去填充你发送的信息包。这有利于诊断网络上依赖数据的问题。例如“-pff”全部用1填充信息包。
【-q】不显示任何传送封包的信息,只显示最后的结果。
【-spacketsize】指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。
【-Shostname/IPaddr】将IP地址用作发出的ping信息包中的源地址。在具有不止一个IP地址的主机上,可以使用-S标志来强制源地址为除了软件包在其上发送的接口的IP地址外的任何地址。如果IP地址不是以下机器接口地址之一,则返回错误并且不进行任何发送。
【-ttll】设置存活数值TTL的大小。
【-ointerface】指出interface将被用于向外的IPv6多点广播。接口以“en0”,“tr0”等的形式指定。
使用举例:
(1)指定要被发送(或接收)的回送信号请求的数目:
#ping-c5172.17.0.254(请求5次)
(2)信息包被丢弃的信息的快速显示:
#ping-f172.17.0.254
(3)在每个信息包发送之间等待被Wait变量指定的时间(秒数):
#ping-i2172.17.0.254(间隔2s)
四、ping测试
1、ping本机IP
#ping172.17.0.11/127.0.0.1
(测试:#ifdowneth0之后再ping试试)
如果ping不通的话则表明网卡安装或配置有问题。将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。
Ubuntu下配置文件位置:
[IP]:/etc/network/interfaces
[DNS]:/etc/resolv.conf
2、ping网关IP
#ping172.17.0.254
能正常ping通,则表明局域网中的网关路由器正在正常运行。反之,则说明网关有问题。
3、ping远程IP
#ping
这一命令可以检测本机能否正常访问Internet。
五、怎样使用Ping这命令来测试网络连通呢?
连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。首先我们讲一下使用Ping命令的步骤。
使用Ping检查连通性有六个步骤:
1.使用ifconfig观察本地网络设置是否正确;
2.Ping127.0.0.1,127.0.0.1回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;
3.Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;
4.Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)
5.Ping本地DNS地址,这样做是为了检查DNS是否能够将IP正确解析。
6.Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流