无法访问 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 存储库还没有更新我上次检查。
我今天早上启动了我的 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 存储库还没有更新我上次检查。