对公司网站DNS解析异常的排查与处理

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介:
  • 这周可谓是屋漏连夜雨,先是nfs挂载出现问题,紧接着住处的厕所堵了,然后又是今天的域名解析异常导致服务访问返回404。
    我们的域名是解析到两个IP,分别是电信跟网通。
    异常情景:
    用户打开页面登录后图片上传跟显示出现异常,http返回404.
    排查问题:
    1、先让用户将异常的url发送过来,自己登录查看。发现情况如下:
    对公司网站DNS解析异常的排查与处理
    通过google的开发者工具再次刷新发现所有的异常的图片都返回404,看了url是域名:8080/路径,复制
    对公司网站DNS解析异常的排查与处理
    复制url在新窗口打开发现404,之后将域名替换为ip,图片显示正常。换了第二个ip,图片显示正常
    2、在本地ping域名发现如下:
    对公司网站DNS解析异常的排查与处理
    域名解析不稳定
    由上面的分析,问题基本就是在域名解析上。

问题分析:
在这件事发生前联通的IP曾断了10-20分钟,当时业务有部分异常,自己就先登录DNS将联通的解析给暂停了,之后业务正常,在下午2点左右再度异常。
期间曾询问机房人员网络异常的事,给的答复是网络波动。这...这结果也只能认了。

DNS的设置里面有TTL缓存生存时间,当到达设定的TTL时长后DNS会再次从此处获得最新的域名解析值,由于我们设置的是3600s,一小时。在停了联通的线路解析后1小时后才会重新生效,因此会有域名解析出现异常。
登录我们的DNS

对公司网站DNS解析异常的排查与处理

我们自己因为IP变动小,基本TTL都设置为1小时,这样会使得解析快点,但它的弊端就是当IP异常时它恢复时间会很长一般是1小时,最短可设1分钟,但1分钟又太短使得解析会很慢。
经过这次的事故,考虑了下设置为600,即10分钟比较合适。目前业务量并不大,网络波动出现后一个IP有影响也只是分钟级别,目前公司还可以接受。

总结:
1、这主要是自己对IP的连通性没有监控到位,使得IP异常自己未及时发现;
2、域名解析的IP最好不是直接对应的业务IP,而是在前端加一层负载均衡这样后端一个IP异常,也不影响解析结果。不过加了一层负载均衡后会增加预算,而且引入负载均衡后它的单点故障也需要考虑,这又增加了费用。但若企业愿意花钱买稳定,这还是值得的。

这次主要原因在于自己监控及报警未做到位,以致故障发生这么久才知道。









本文转自 紫色的茶碗 51CTO博客,原文链接:http://blog.51cto.com/chawan/2048741,如需转载请自行联系原作者
目录
相关文章
|
29天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
2月前
|
监控 网络协议 应用服务中间件
深入解析:如何确定网站使用的端口号
【10月更文挑战第21天】 在网络通信中,端口号是识别特定服务的关键。一个IP地址可以有多个端口,每个端口可能运行着不同的服务。当我们在浏览器地址栏输入一个网址时,实际上是通过特定的端口与服务器进行通信。本文将探讨如何确定一个网站使用的端口号,以及端口号在网络通信中的作用。
60 4
|
2月前
|
监控 网络协议 安全
DNS服务器故障不容小觑,从应急视角谈DNS架构
DNS服务器故障不容小觑,从应急视角谈DNS架构
58 4
|
2月前
|
域名解析 网络协议
非阿里云注册域名如何在云解析DNS设置解析?
非阿里云注册域名如何在云解析DNS设置解析?
|
2月前
|
数据采集 XML 前端开发
Jsoup在Java中:解析京东网站数据
Jsoup在Java中:解析京东网站数据
|
2月前
|
域名解析 弹性计算
内网域?名解析记录是否会覆盖公网域名解析记录?
内网域?名解析记录是否会覆盖公网域名解析记录?
|
2月前
|
域名解析 缓存 网络协议
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
|
2月前
|
网络安全 Docker 容器
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
28 0
|
16天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
45 2

相关产品

  • 云解析DNS
  • 推荐镜像

    更多