我一直在使用GCE大约一年了,之前没有遇到过这个问题。 VM是CentOS,运行在http,smpt,pop3,pop3s和其他一些服务上。它也分配了一个静态IP地址。
今天早上,VM重新启动,当它重新启动时,没有任何外部连接通过。 GCE防火墙规则没有改变:
Ubuntu:~$ gcloud compute firewall-rules list
NAME NETWORK SRC_RANGES RULES SRC_TAGS TARGET_TAGS
default-allow-http default 0.0.0.0/0 tcp:80 http-server
default-allow-https default 0.0.0.0/0 tcp:443 https-server
default-allow-internal default 10.0.0.0/8 tcp:1-65535,udp:1-65535,icmp
default-ssh default 0.0.0.0/0 tcp:22
http2 default 0.0.0.0/0 tcp:80
https default 0.0.0.0/0 tcp:443
msa default 0.0.0.0/0 tcp:587
pop3 default 0.0.0.0/0 tcp:110
pop3s default 0.0.0.0/0 tcp:995
smtp default 0.0.0.0/0 tcp:25
smtps default 0.0.0.0/0 tcp:465
我关闭虚拟机,创建了一个新的临时虚拟机并将启动盘从虚拟机安装到临时虚拟机中以读取日志文件,但没有发现任何错误,看起来一切都正常启动
我在某处看到有一个问题,iptables一次创建了一些关于事故的限制性规则,我注意到iptables确实正在运行(虽然它可能一直在运行,但不确定),所以我禁用了它
本地服务似乎正在倾听:
[root@]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:465 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN
我可以通过内部网络从临时VM连接:
[repair ~]$ telnet 10.240.26.51 995
Trying 10.240.26.51...
Connected to 10.240.26.51.
Escape character is '^]'.
^]
因此,通过内部网络连接工作正常,但通过静态IP从外部连接无法正常工作。我可能错过了什么想法? 1)服务似乎正在服务器上监听,2)服务器防火墙应该(现在)关闭,虽然之前已经开启,3)GCE防火墙规则应该允许外部流量,4)但没有骰子获得连接,而不是甚至使用:gcloud compute ssh
答案 0 :(得分:0)
嗯,非常奇怪,但事实证明,我一直在使用谷歌作为我的虚拟机的静态IP的IP,根本不再工作(或路由?)。希望这可以帮助其他可能遇到此问题的人,如果您已经检查了所有内容但仍然无法从外部获得连接,请尝试检查您的静态IP是否真正有效。