替代ping

时间:2013-04-11 21:57:03

标签: linux unix amazon-ec2 ping network-tools

我想查看ec2实例是否已打开,但默认情况下,Amazon ec2会阻止ping请求。有一种方法可以通过更改实例的安全策略来实现。除此之外,什么是“看看服务器是否响应”并且重量轻的最接近的选择。

curl是一个不错的选择吗?

3 个答案:

答案 0 :(得分:7)

我认为curl正是你想要的。像所有表现良好的unix程序一样,如果出现任何问题,它会返回错误代码:

[cnicutar@ariel ~]$ curl www.no-such-website.com
[cnicutar@ariel ~]$ echo $?
6

此外,您可能希望使用--connect-timeout来确保它不会永远等待。

答案 1 :(得分:4)

如果服务器已关闭且Web服务器守护程序已关闭,则CURL将无法快速检查。另一种方法是使用hping3等工具发送TCP ACK。如果您获得RST,则服务器为UP。

hping3 -c 1 -V -p 80 -s 5050 -A example.fqdn

您可以做的是先尝试CURL测试,然后尝试第二种方法确认服务器已关闭,而不仅仅是Web服务器守护程序。

这种方法的问题在于,像这样的杂散TCP数据包可以被中间代理过滤。

答案 2 :(得分:1)

如果你可以ssh它,那么它就是了。用nc检查这个的简单方法是: nc -zv 111.222.333.444 22 (将111.222.333.444替换为您实例的IP地址)