首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Linux下的`ping`没有超时?

问为什么Linux下的`ping`没有超时?
EN

Stack Overflow用户
提问于 2013-12-04 03:03:50
回答 2查看 23K关注 0票数 12

我刚刚发现,Linux平台(Ubuntu13.10)上的ping不会像所描述的那样超时。我试过了

代码语言:javascript
复制
ping -w 2 unreachable.com

和

代码语言:javascript
复制
ping -W 2 unreachable.com

但在这两种情况下,都没有在2秒后超时。如何在一定超时的情况下使用ping?这有可能吗?我希望该命令在2秒后停止,无论连接状态如何。

EN

回答 2

Stack Overflow用户

发布于 2013-12-04 03:15:06

ping -c 5 -W 2将发出5个ping,每个ping最多等待2秒(最多10秒)。

ping -w 5将发出ping,但将在5秒后停止。

您必须小心名称解析:如果使用名称而不是IP地址,则名称的解析不会计入这些超时和等待(pinging和时间测量仅在名称解析完成后才开始)。如果您使用DNS,您可以在/etc/resolv.conf中设置DNS超时-请参阅其手册页。

票数 12
EN

Stack Overflow用户

发布于 2013-12-04 03:15:39

你是不是误解了旗帜?如果我理解正确的话:

-W标志将指定等待回复的时间长度。根据手册页设置-W 2:

等待响应的时间,以秒为单位。该选项仅影响超时,而不影响任何响应,否则ping将等待两个RTT

因此,像这样运行它并等待2秒钟实际上并不能让你知道它是否已经放弃了等待响应。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20359487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档