无法访问 GCE 实例 - 连接:网络无法访问

GCE Instances inaccessible - connect: Network is unreachable

我今天早上启动了我的 GCE 实例,但 4/6 完全无法访问。都在同一个 us-east1-d 区域。 SSH 连接也无法正常工作,因此我使用串行控制台连接到有问题的实例之一。

当我尝试 ping 任何地址时,我得到以下信息: 连接:网络无法访问

当前 ifconfig

eth0      Link encap:Ethernet  HWaddr 42:01:0A:8E:00:0A  
          inet addr:10.142.0.10  Bcast:10.142.0.10  Mask:255.255.255.255
          inet6 addr: fe80::4001:aff:fe8e:a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1460  Metric:1
          RX packets:3955 errors:0 dropped:0 overruns:0 frame:0
          TX packets:650 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2231216 (2.1 MiB)  TX bytes:63705 (62.2 KiB)

eth0:cp1  Link encap:Ethernet  HWaddr 42:01:0A:8E:00:0A  
          inet addr:10.240.0.73  Bcast:10.240.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1460  Metric:1

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:253775 errors:0 dropped:0 overruns:0 frame:0
          TX packets:253775 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:40106687 (38.2 MiB)  TX bytes:40106687 (38.2 MiB)

OS是Centos 6.10 请指教,真的不知道是什么问题!

更新

我能够使用串行控制台调查配置的网络路由,不知何故缺少这条路由:

GATEWAY0=10.142.0.1
NETMASK0=0.0.0.0
ADDRESS0=0.0.0.0

将其添加到 /etc/sysconfig/network-scripts/route-eth0 实例重新获得网络访问权限。仍在努力寻找 who/what/when/where/why 这件事发生了。

从 CentOS 6.9 到 6.10(大约 7 月 4 日)进行夜间 yum 更新后,我遇到了完全相同的问题。听起来像是在更新后缺少默认网关路由的 dhcp 包中引入了一个错误。

实际上,我通过创建一个 route-eth0 文件得出了与您相同的结论,但后来我偶然发现了 Google 的问题跟踪器,他们在其中确定了一个略有不同的解决方案,直到发布了永久性错误修复(https://issuetracker.google.com/issues/111154121)。他们的解决方法是向您的 VM 添加一个简单的启动脚本(通过控制台),该脚本在实例启动时定义默认网关:

#!/bin/bash
route add default gw [default_gateway_ip] eth0

在你的例子中,默认网关 ip 是 10.142.0.1,所以完整的启动脚本应该是:

#!/bin/bash
route add default gw 10.142.0.1 eth0

这个修复程序已经可靠地为我工作了大约一个星期。我不确定在发布错误修复后如何创建 route-eth0 文件,因此我将我的更改恢复为该解决方案。听起来 RHEL 已经提出了一个错误修复 (https://access.redhat.com/errata/RHBA-2018:2163),但 CentOS 存储库还没有更新我上次检查。