Gcloud实例无法ping另一个实例

时间:2016-04-28 14:47:35

标签: networking google-cloud-platform

我有2个实例在Compute引擎上运行,虽然文档说我能ping并在这些VM之间建立通信我不能。我已尝试使用VM名称和ipv4地址进行ping操作。我还尝试为两个虚拟机配置新的工作组,没有。

以下是链接:https://cloud.google.com/compute/docs/vm-ip-addresses

  

如果您正在同一网络中的实例之间进行通信,那么您   可以使用实例名称将数据包发送到实例   网络自动将名称解析为内部IP地址   实例。

我的虚拟机配置:

两者都在同一个网络中 instances Ipconfig from web01 Ipconfig from sql01

我甚至关闭了防火墙

firewall off

但根本没有联系。

web not pinging sql

任何人都通过了相同的?有人知道发生了什么事吗? 我该如何解决这个问题?

6 个答案:

答案 0 :(得分:2)

这种情况经常发生在我们身上 - 突然我们的2个实例无法通过API甚至ping来达到对方。即使我们没有改变任何防火墙规则或任何东西。我想这是一些GCloud故障。

我们没有尝试过任何工作,除了重新启动实例,然后一切都有效。所以,如果有人有同样的东西,似乎没有任何帮助,我建议,作为最后的手段,重启实例。

答案 1 :(得分:1)

Google Compute Engine中的每个网络都有自己的防火墙配置,默认情况下会阻止到VM的传入流量。请参阅firewall文档,了解默认网络的配置方式以及如何将类似规则应用于自定义网络。

答案 2 :(得分:1)

如果您没有更改网络和/或防火墙规则并使用默认网络和防火墙规则,则只需编辑主机文件(在所有虚拟机上打开主机,为每个虚拟机复制主机行并添加其他所有虚拟机)然后尝试ping。我在三个实例和它的工作之间尝试过相同的。

答案 3 :(得分:1)

确保防火墙规则包含GCE子网。在你的情况下,这意味着10.10.0.0/24允许icmp。

我不确定为什么防火墙规则适用于网络子网,但显然他们确实如此。

答案 4 :(得分:0)

这是由防火墙规则引起的。您需要在实例编辑页面的网络标记部分添加allow-icmp网络标记> enter image description here

您可以在VPC Network>Firewall rules部分中创建新的网络代码以打开新的端口/协议:

enter image description here

编辑1: 请注意,上面屏幕截图中使用的0.0.0.0/0子网打开了整个互联网的端口,我只是将其用于演示目的,以避免共享我的IP。我强烈建议不要将该子网用于生产环境中的防火墙规则。互联网是一个黑暗而可怕的地方。

答案 5 :(得分:0)

确保在VM上重新启动网络以使其正常运行。 这对我很有帮助。