应用数据迁移网络异常案例分析

作者:连珣

问题描述及现象

某客户计划通过P2V工具迁移500台左右镜像至阿里云华北1(青岛),在应用数据迁移传输过程中是把用户的系统盘、数据盘的数据通过公网传输到阿里云中转ECS实例上。

某客户6.12-6.13号批量迁移100台基本正常,从2018.6.13号晚10点左右开始连接阿里云中转ECS实例就出现中断,现象为在客户端telnet中转ECS实例8703端口提示Connection closed by foreign host. 但检查中转ECS实例的http 服务8080正常,而且其它地方测试中转ECS实例8073端口、8080端口服务均正常。

6.20-6.21恢复正常后,继续批量迁移了130台左右,但6.25号开始又问题重现。

问题处理过程

6.15号

12点左右开始,客户再次重现问题。
在客户侧telnet 10次都失败了,在阿里云ECS侧(47.104.79.200,i-m5ecitgdpobfwwrzb6bm)抓包如上rsync_server.cap。同时在其它地方telnet 正常。

应用数据迁移网络异常案例分析

和客户修改传输端口为8702测试了一下,telnet 10次全部成功,换回8703就不行了。这个跟网络运营商一贯的封端口的手法很类似,应该是端口被记录并限制了。

6.25号

客户临时改端口方案也行不通了,修改了2次端口都是传了一部分之后就被强制断开了,报一样的传输错误。但是在其他地方telnet中转ECS测试传输正常。

6.26号

20:30分-22:00分 迁云专家服务团队进入排障
1)从历史抓包信息来看,初步判断是安全策略或网络质量导致请求超时。

应用数据迁移网络异常案例分析

注:关于TCP的几个FLAGS字段标识,我这里简单介绍一下,有兴趣深入了解的可以自行百度查相关材料,大概含义是:

SYN表示建立连接,

FIN表示关闭连接,

ACK表示响应,

PSH表示有 DATA数据传输,

RST表示连接重置。

2)同时,从客户反馈的网络架构环境来看,客户网络环境部署了一些DDOS、FW等的安全防护的设备。

3)重新启动迁移任务进行测试,此时段网络传输正常。

22:10分-23:00问题重现
1)从客户反馈的出口监控流量上看已经达到了带宽上限200M。

应用数据迁移网络异常案例分析

2)客户侧通过检查FW上的log日志暂未发现异常信息。

应用数据迁移网络异常案例分析

3)由于时间关系,总结并计划第二天排查的思路:

(1)请XXX客户数据中心部门画一下当前的网络拓扑图,明天和阿里云专家一起开会介绍。

(2)请XXX客户数据中心部门和运营商确认:如果超过了目前购买的200M带宽,运营商会如何处理?协调让运营商取消限制进行一次测试。

(3)后续迁移,启用迁移工具限流,设置总流量不超过100M。

(4)请XXX客户数据中心部门,将迁移时的3个随机IP(NAT出去的外部地址)修改为1个,然后进行测试。

6.27号

10:10 了解客户环境
按昨晚计划的排查思路,客户介绍网络环境,从中了解到客户IDC部署了流量清洗AntiDDoS设备、链路负载均衡F5、H3C M9006防火墙设备等。大致的网络环境如下所示:

应用数据迁移网络异常案例分析

10:20 查看日志
查看AntiDDoS、M9006日志、策略等,均未发现异常信息。

应用数据迁移网络异常案例分析

应用数据迁移网络异常案例分析

应用数据迁移网络异常案例分析

应用数据迁移网络异常案例分析

10:30 切换线路
将原来的移动线路切换至联通线路,将SNAT设置为一个公网IP X.X.X.62,同时将带宽限流为20M进行迁移测试,此时P2V迁移工具传系统盘、数据盘均正常。

11:00 问题重现
源服务器测试:

应用数据迁移网络异常案例分析

其它公网环境:

应用数据迁移网络异常案例分析

12:00-15:00 问题范围定位
1)在客户网络环境互联网区最外层跟运营商对接互联的华为C6850设备上设置联通问题IP(X.X.X.62),也即是原来SNAT设置的公网IP。测试此时联通线路是否正常的.排除定位是联通线路问题还是企业内部网络问题,把范围定位.

应用数据迁移网络异常案例分析

2)在C6850 测试8703端口不通,但可以访问外部网络,跟源迁移服务器情况一致,基本可以判断此异常问题跟客户网络环境无关。

应用数据迁移网络异常案例分析

15:30 更换SNAT公网地址
更换SNAT公网地址测试8703端口通过,即将联通外网IP X.X.X.62更改为X.X.X.60).基本上可以确定客户的X.X.X.62 8703端口被上游运营商、云厂商封堵或拦截。

7、总结并计划明天下一步的排查思路:

1)阿里云网络排查,联系“网络运营服务台”协助定位。

2)阿里云安全策略排查,联系阿里云安全同事。

3)切换电信线路进行复盘迁移测试(移动、联通线路均已测试且都能重现同样的问题出来,但为了让客户更加积极配合我们进行排查问题,故继续又选电信线路进行测试,尽管理论上三家运营商同时封端口的概率很低)。

6.28号 问题解决

1)09:30 咨询阿里云-安全部李XX,从描述的现象看很像是安全攻击。

2)10:30 联系阿里云-安全部陈XX,陈XX通过安全运营平台查看到拦截信息。

应用数据迁移网络异常案例分析

3)12:30阿里云-安全部陈XX把客户的公网IP添加为白名单后问题解决。

影响范围

数据迁移中断,影响项目正常进行。

问题结论

安全策略:本次数据迁移网络异常主要是命中了阿里云的“防恶意攻击的安全策略”。

触发场景:在短时间内的大批量临时的ECS消耗(创建到释放)场景可能会触发。

上一篇:K8S从懵圈到熟练 – 集群服务的三个要点和一种实现


下一篇:k8s ingress获取真实IP地址配置