我有一个在AWS中运行的EC2实例。当我试图从我的本地盒子ping它是不可用的。

我如何能使实例pingable?


当前回答

1.Go to EC2 Dashboard and click "Running Instances" on "Security Groups"
2.select the group of your instance which you need to add security.  
3.click on the "Inbound" tab
4.Click "Edit" Button (It will open an popup window)
5.click "Add Rule"
6.Select the "Custom ICMP rule - IPv4" as Type
7.Enter the "0.0.0.0/0" as Source or your public IP

7.点击“保存”

其他回答

用所有ICMP创建一个新的安全组对我很有用。

我也有同样的问题,从linux服务器连接到EC2,你有两个确保的事情,“所有ICMP”是从EC2添加如上所示,这是不会工作的,你必须更新Ansible到最新版本2.4,它不与我以前的版本2.2工作。

如果你想通过SDK以编程方式启用ping(从任何地方),神奇的公式是:

cidrIp:     "0.0.0.0/0"
ipProtocol: "icmp"
toPort:     -1
fromPort:   8

例如,在Scala(使用AWS Java SDK v2)中,以下工作用于为authorizeSecurityGroupIngress端点定义IpPermission。

  val PingPermission = {
    val range = IpRange.builder().cidrIp( "0.0.0.0/0" ).build()
    IpPermission.builder().ipProtocol( "icmp" ).ipRanges( range ).toPort( -1 ).fromPort( 8 ).build()
  }

(我只在EC2-Classic上尝试过。我不知道在VPC下可能需要什么出口规则)

如果你将规则设置为“自定义ICMP”规则和“回声回复”,它将像冠军一样工作。echo request是错误的响应ping的规则。

我尝试了以上步骤中的多种解决方案,但对我有效的是

更改互联网连接到我的移动热点

再试一次。我家的网络设置不允许我连接到RDP。我在哪里可以SSH到linux服务器