记一次机房断电办公室网络瘫痪的恢复经过

今早同事告诉我办公室所有Wifi的SSID都消失了,然后有线网络也访问不了,整个公司网络完全瘫痪,简直是吓尿了。好在最后查明原因并成功将网络恢复,这里记录一下整个过程,并整理一下改进方案。

发现故障

故障表现为办公室Wifi的SSID全部消失,有线网络也无法使用,整个网络瘫痪。

初步定位

虽然心里很慌,但是处理事情还是要有条不紊,先从时间维度空间维度来对问题进行初步定位。

时间上,昨天下班还好好的,今天突然这样,那么一定是在昨天晚上发生了什么,要么是人为的操作,要么是突然的设备故障之类。经过询问,昨晚没有任何操作发生。

空间上,因为整个网络都瘫痪了,所以如果是设备损坏,那么一定是诸如核心交换机或者是出口防火墙之类的元器件。

详细排查

想要排查问题,必须要接入内网,然后按照本机=>汇聚交换机=>核心交换机=>防火墙=>运营商网关的顺序一个个节点ping过去,看看到底在哪一步出了问题。

假如人在现场,可以通过下面两种方式接入内网来排查

如果是笔记本,通过Wifi接入内网最方便。可以首先通过重启Wifi的AP连接到的交换机来恢复SSID。因为AP基本都是POE(Power Over Ethernet)的,重启了交换机,所有的AP也会跟着重启。

如果电脑有以太口,弄根网线插到连了汇聚交换机的网口接入内网也是可以。注意,有可能有的工位的网口做了网络隔离本身就不能访问外网,连上了并不能用于排查问题。

假如是和我一样居家办公,不能在现场操作,那么必须要保证有一条可用的v*n线路来接入内网。

出问题的是新加坡分支,因为我司各个分支之间的内网是通过v*n互通的,所以我连接到上海的v*n理论上是可以访问到新加坡的内网的。

结果任何一个新加坡的内网IP都ping不到!

内网互通只需要新加坡那边的防火墙配置的出口IP可达就可以,这说明从上海到新加坡防火墙的通路挂了,ping一下出口IP,果然不可达。

想要弄明白这个问题,有下面两个概念必须要先弄懂。

运营商的猫和出口IP

不知道大家有没有给公司办理过宽带业务,像我们公司就办理的是8个公网IP的套餐,意味着运营商会分配8个连续的公网IP给我们*使用。

但是通常运营商给我们的信息中还有一些IP,例如以我司办理的宽带为例

记一次机房断电办公室网络瘫痪的恢复经过

这里敏感信息不便透露,我做了标识。其中LAN IP部分是购买的公网地址,掩码长度29,一共有8个。

但是很奇怪的是还有两个WAN IP,一个是运营商的,一个是客户的,后来经过一次事故我才终于弄明白这俩是干啥用的了。

如下图所示,运营商会派人过来配置一个猫,并且测试猫可以访问到外网,在这里运营商的人会将IP4配置为上述运营商的WAN地址。想要和IP4进行通信,需要在本地配置一个和IP4在同一个网段的地址,也就是上面运营商给到的客户WAN地址。

记一次机房断电办公室网络瘫痪的恢复经过

我这里因为有多个外网IP,所以加了一个三层的交换机,如果只是单个外网IP,这里的交换机应该是可以省略的。我这里采用华为的设备,交换机配置如下,在二层交换机上配置了两个VLAN,其中一个VLAN的虚拟网卡配置的就是客户WAN地址,也就是上面的IP3

这里的物理电口都配置为access即可,因为只有一个vlan通过

记一次机房断电办公室网络瘫痪的恢复经过

另一个VLAN的虚拟网卡对应的是购买的其中一个公网IP,用作所有公网IP出去的网关,这里是以249结尾的IP,也就图中的IP2

最后在内网出去的防火墙上的untrust区域配置一个或多个公网IP即可,也就是上图中的IP1。需要注意的是,最后在外面看来整个办公室的出口IP其实是这个IP1,至于原因我也不是很清楚。

而我上面说的ping不到的出口IP也正是这个IP1。

因为防火墙属于重要组件,做了双机热备,一般是不会有问题的,所以只能是中间的环节出了问题,然后发现IP4和IP3居然都ping不到,看来是运营商的链路出了一些问题。

解决问题

发现了症结所在,就马上打电话给运营商,因为是VIP客户,运营商处理的也很快。并且运营商反馈了一个细节,因为昨晚大楼有断电问题,导致了他们的线路需要重启。

很有可能办公网络也是因为大楼的断电导致的,并不是什么设备故障,这也一定程度上让我安了心,毕竟硬件故障想要恢复就不是一时半会了。

果然运营商处理完他们的链路以后可以成功ping到IP1,并且还可以ping到内网的核心交换机和防火墙等网络设备。这时候我远程重启了一下Wifi的AP对应的交换机,发现SSID又出来了,只是还不能上网。

断电恢复

出于断电考虑,华为的网络设备和服务器都是默认配置供电自启动的,相信别的厂商也一样,所以现在再来处理问题就很简单了,只需要将断电后没有自启动的设备重新手动启动一下就好了,对于我这边主要是一台ESXI设备和里面的虚拟机。

ESXI

ESXI是直接装在服务器上的,服务器启动后可能需要去console**一下ESXI,如果是华为服务器,如下图所示

记一次机房断电办公室网络瘫痪的恢复经过

对于华为服务器安装ESXI感兴趣的朋友可以查看我写的专题

《华为2288hv5服务器安装ESXI 6.7(一):远程访问服务器管理口》

《华为2288hv5服务器安装ESXI 6.7(二):配置RAID》

《华为2288hv5服务器安装ESXI 6.7(三):安装ESXI》

而自动上电的配置在这里,可以看到默认是保持上电

记一次机房断电办公室网络瘫痪的恢复经过

虚拟机

ESXI恢复后如果没有设置虚拟机自启动(默认没有),则需要手动去启动虚拟机。当然,也可以在如下位置设置虚拟机的自动启动,下面则是虚拟机的启动顺序,可以根据自己需求去配置

记一次机房断电办公室网络瘫痪的恢复经过

因为DNS,DHCP还有v*n等服务都是虚拟机,等这些服务器起来后网络就恢复了。

值得一提的是zabbix监控也是其中一台虚拟机,所以导致没有触发警报就挂了,这也是后续要改进的一点。

总结

最后总结下以后碰到类似断电事故的解决思路。

  • 网络设备和服务器硬件都是会自动上电的,所以理论上供电恢复后Wifi和有线网络应该是可以连接的,只不过只能访问内网
  • 针对华为服务器,iBMC可以直接访问,如果ping不到ESXI,需要手动去console**下
  • 如果虚拟机也ping不到,则需要手动去启动下
  • 断电之后运营商的链路也可能需要手动重置,建议提前检查通知运营商

后续改进

然后这次也总结了不少经验和教训。

  • v*n最好是硬件的,可以断电后自动恢复。如果是类似ocserv或者ss,服务器因为不会自动重启会导致断电后v*n无法连接,不能远程解决问题
  • 各个分支要有独立的v*n接入,并且内网互通,可以在单个分支网络问题下远程协助
  • UPS非常重要,选择办公大楼的时候一定要和大楼管理确认UPS,断电事故尽量一次也不要有
  • 网络设备和服务器硬件都会自动启动,所以基本问题不大,除此之外在iBMC中设置服务器供电自动启动,并在ESXI总设置虚拟机自动启动,并且配置启动顺序
  • zabbix服务器要单独配置,避免单点问题挂掉发不出警告。例如单独在香港的某个IDC设置zabbix服务器
  • 像核心交换机和防火墙等重要设备做好双机热备,通过这次事故发现出口交换机也得做一下热备
  • 这次因为远程办公,导致处理问题捉襟见肘,所以现场最好要有懂网络和硬件的运维人员相互配合

最后祝看到文章的各位永远不要遇到类似的事故!服务器永不宕机!

我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注我,如果有问题欢迎在底下的评论区交流,谢谢。