Articles of ping

什么处理在Linux平?

我想覆盖/更改如何处理ping icmp回应请求数据包。 含义我想运行自己的服务器来回复传入的icmp(echo请求或其他)数据包。 但为了这个工作正常,我想我需要禁用从Linux处理默认的ping icmp数据包。 但我不知道如何做到这一点(我甚至不知道什么处理ICMP请求…内核?一些用户空间的代码?)…我find的所有是关于删除与iptables的icmp回声请求。 为了帮助理解,让我解释一下我的目标:我希望能够用ping发送一些数据。 (容易),但我需要能够读取和提取数据。 我也希望能够回答一个特殊的回声回复(embedded一些数据)

即使网站在线,Ping也会返回false

我写了一个简单的bash脚本来监视我的网站。 #!/bin/bash # script to check website status (online/offline) while read site do if ping -w 60 -c1 -q "$site" &>/dev/null; then echo "$site is up" else echo "[$(date +%d-%m-%Y:%H:%M:%S)] $site is not reachable." | slackpost.sh fi done < /home/pi/scripts/www-status/sites.txt # list of sites to check 但有时我得到其他块…$site is not reachable. … 即使网站在线。 任何想法可能会导致不好的ping?

如何检查服务器是否正在运行

我想用ping来检查一下服务器是否启动。 我将如何做到以下几点: ping $URL if [$? -eq 0]; then echo "server live" else echo "server down" fi 我将如何完成上述? 另外,如何使它在第一次ping响应时返回0,或者如果前10次ping失败则返回错误? 或者,有没有更好的方法来完成我想要做的事情?

Ping间隔为什么会影响RTT值?

在ping中,“-i”是发送连续数据包之间的等待间隔(秒)。 我有2台服务器(Host1,2),并将10G网卡插入每台服务器。 我尝试从Host1 ping Host2。 $ sudo ping 10.0.0.2 -c 100 PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.191 ms … 64 bytes from 10.0.0.2: icmp_seq=100 ttl=64 time=0.141 ms — 10.0.0.2 ping statistics — 100 packets transmitted, 100 received, 0% packet loss, time 89999ms rtt min/avg/max/mdev = 0.116/0.169/0.231/0.039 ms […]

在Java的ICMP请求中应该获得哪些特权?

我想通过Java ping一个IP。 当我从命令行ping并跟踪networking包时,我看到了ICMP请求。 当我从我的应用程序ping,并跟踪networking包,我看到在端口7的TCP请求。 我已经检查了InetAddress.isReachable()的文档: 尝试到达主机尽力而为,但防火墙和服务器configuration可能会阻止导致不可达状态的请求,同时可能访问某些特定的端口。 如果可以获得特权,典型的实现将使用ICMP ECHO REQUEST,否则将尝试在目标主机的端口7(Echo)上build立TCP连接。 我可以用运行我的Java应用程序的用户运行sudo需要的命令。 我的目的应该获得哪些特权? 我应该检查什么? PS:我已经在stackoverflow.com问这个问题,因为它比Java系统问题更关系到Java问题(Java源代码需要运行)。

笔记本电脑无法ping到android设备

我试图从我的Windows 7笔记本电脑ping我的Android设备,但我不能。 我将Android设备添加到了arp表中,我input了这个命令: netsh interface ipv4 add neighbors "Connection Name" IP ADRESS MAC ADDRESS 当我input“arp -a”时,我可以看到设备(IP地址,MAC地址)。 但是,当我做一个ping我得到:超时需求超过。 我的笔记本电脑(192.168.1.106)和Android设备(192.168.1.107)。 他们都可以ping通网关地址。 感谢您的帮助。

使用nmap更快的主机发现?

我需要定期从脚本启动后台networking设备发现过程,并且需要相当快速。 目前,我这样发布NMAP: nmap -sP 192.168.1.0/24 (我刚刚制作了IP地址,你就明白了)。 无论如何,上面会对这个C类networking进行ping扫描。 问题是这个命令通常需要30-40秒才能完成。 我希望能够做得更快。 我的目标只是设备/主机发现 – 我只想知道在给定的networking上的任何机器的IP地址。 一旦某种types的扫描完成,我可以使用ARP命令获取MAC地址以及上位机。 那么在nmap或其他免费工具中有更快的方法吗? 我知道fing(哪个更快),但是我不能在没有支付巨额许可费的情况下embedded商业产品中。 所以如果在nmap或其他免费工具中有这样一个更快的方法,那就太好了。 该工具必须在Ubuntu Linux的命令行中运行。 我对GUI工具或仅在其他操作系统上运行的工具不感兴趣。

在C中使用popen调用ping

我在CentOS linux中的C代码中有以下代码。 此代码在线程中每5秒调用一次。 代码工作正常,如果我禁用pclose(fp),但我知道我应该这样做。 有人可以解释为什么当我启用它时挂在pclose(fp)? 非常感谢。 FILE* fp; int status; char path[255]; fp = popen("ping -c 3 -W 3 200.0.0.51", "r"); sleep(3); int i=0; while (i < 255) { path[i] = fgetc(fp); i++; } char* str; str = strstr(path, "100% packet loss"); if (str!=NULL) { //pclose(fp); // <— hangs here if I enable OS_Reboot(); }

替代平

我想查看一个ec2实例是否打开,但是默认情况下,Amazon ec2会阻止ping请求。 有一种方法可以通过更改实例的安全策略来做到这一点。 除此之外,什么是“看看服务器是否响应”并且是轻量级的最接近的替代scheme。 curl是一个不错的select?

为什么我不能在Linux上使用前导或尾随下划线来ping地址

在Windows上: 在浏览器中访问_.github.com工作 nslookup _.github.com作品 ping _.github.com工作 在Linux上(在两个独立的networking上testing): 在浏览器中访问_.github.com工作 host _.github.com工作 ping _.github.com 没有 python -c "import requests; requests.get('_.github.com')" 不 这里发生了什么?