这里只是一个快速的健全性检查。
你能ping通机器的特定端口吗,如果可以,你能提供一个例子吗?
我正在寻找类似的东西ping ip address portNum
。
在我的应用程序中,我正在 ping 服务器并等待响应。我正在使用它来确定服务器是否可用且是否响应。
这是确定可用性的可靠方法吗?我假设防火墙可能会过滤 icmp 流量......还有其他缺点吗?有没有更靠谱的方法?
我正在尝试编写一个脚本,列出 LAN 上的所有主机(大约有 20 个)并在每个主机旁边写入 ping 状态。我有 DHCP 租约文件,所以我有所有的 IP(比如 10.0.0.1、10.0.0.2 等),我需要的只是每个主机的 ping 状态。
因此,我的脚本为每个主机启动一个 ping:
ping -c 1 10.0.0.1
Run Code Online (Sandbox Code Playgroud)
不幸的是,当主机离线时,ping 需要很长时间才能超时。我查了一下man ping
,似乎有两个选项可以设置超时延迟:-w deadline
和-W timeout
。我想我对后者感兴趣。
所以我试过这个:
ping -c 1 -W 1 10.0.0.1
Run Code Online (Sandbox Code Playgroud)
但是每个离线主机等待一秒钟仍然太长。我试图将其设置为低于一秒,但它似乎根本没有考虑该参数:
ping -c 1 -W 0.1 10.0.0.1 # timeout option is ignored, apparently
Run Code Online (Sandbox Code Playgroud)
有没有办法将超时设置为较低的值?如果没有,是否有其他选择?
编辑
ping -b
例如)。编辑 #2
我接受了fping
解决方案(感谢所有其他答案)。这个命令完全符合我的要求:
fping -c1 -t500 10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4
Run Code Online (Sandbox Code Playgroud)
此命令最多需要 500 毫秒才能完成,并一次为我提供所有主机的 ping …
当我们尝试 ping 不同网段中的服务器时,我们会收到消息“传输中的 TTL 过期”。当我们运行 tracert 时,4 个 ip 地址无限重复:
14 60 ms 59 ms 60 ms xxx.xxx.xxx.2
15 83 ms 81 ms 82 ms xxx.xxx.xxx.128
16 75 ms 80 ms 81 ms xxx.xxx.xxx.249
17 81 ms 78 ms 80 ms xxx.xxx.xxx.250
18 82 ms 80 ms 77 ms xxx.xxx.xxx.2
19 102 ms 101 ms 100 ms xxx.xxx.xxx.128
20 101 ms 100 ms 98 ms xxx.xxx.xxx.249
21 97 ms 98 ms 99 ms xxx.xxx.xxx.250
...
Run Code Online (Sandbox Code Playgroud)
排除此错误的基本步骤是什么?
如何 ping 某个地址,找到后停止 ping。
我想在 bash 脚本中使用它,所以当主机启动时,脚本继续 ping,从主机可用的那一刻起,脚本继续......
mdev
ping 输出是什么意思(下面的最后一行)?
me@callisto ~ % ping -c 1 example.org
PING example.org (192.0.43.10) 56(84) bytes of data.
64 bytes from 43-10.any.icann.org (192.0.43.10): icmp_seq=1 ttl=245 time=119 ms
--- example.org ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 119.242/119.242/119.242/0.000 ms
Run Code Online (Sandbox Code Playgroud) 从我记事起,我就一直在使用ping测试网络连接时使用 IP 4.2.2.2 。这个 IP 有什么重要意义,这种做法是什么时候开始的?
我ping <hostname>
在控制台中运行命令,它现在输出数百行(icmp_seq=526 ttl=64 time=0.026 ms),icmp_seq 现在大约为 500 或更多。如何阻止它?(linux debian) 我应该关闭控制台吗?
没关系,它停在532。哈哈。
我有 2 台服务器,每台服务器位于两个不同的位置。我需要在一个上托管一个应用程序,在另一个上托管数据库服务器。
从应用程序服务器,如果我 ping 数据库服务器,平均我得到大约 30 毫秒。
我的问题是:
When I query the database from the app;
Run Code Online (Sandbox Code Playgroud)
会不会需要
30 ms + database_server_query_run_time
或者;
是否需要
30 ms + database_server_query_run_time
+ 30ms
我想明白这一点。
在 Linux 和其他系统上,有一个名为 arping 的实用程序,可用于发送 ARP 请求(“ping”)并显示答案,很像“ping”实用程序,但使用 ARP 而不是 ICMP。
有没有办法在 Windows 上做同样的事情?(我使用 Windows 7)