記一次驚心動魄的 DNS 緩存引發的慘案

更新:2017-10-25    編輯:靖柔    來源:用戶投稿    人氣:加載中...    字號:|

光陰 2015 年的某個周六早晨 5 點,公司官方的 QQ 群有用戶反饋官網打不開了,但有的用戶反饋可以打開,客服爬起來自己用電腦試了一下沒有問題,就給客戶反饋說,可能是自己網絡的問題,請過會在試試。

但是到了早上點 8 點,越來越多的用戶反饋官網無法打開,并且有部分用戶開始反饋 App 也打不開了,客服打電話叫起了還在夢鄉中的我。

分析定位

被客服叫起來之后,我一臉懵逼,不知道什么情況。然后給客服回復,知道了,立刻排查,待會有消息及時溝通。

用涼水洗了一把臉清醒了一下,立刻根據經驗回憶這兩天生產投產的情況:上線了 XX 模塊,不影響;修復了 XXBug,應該也不影響;剛給服務器配置了 https,看起來好像有點關系,但是 App 暫時沒有投產 https,不會出現問題,排除之。

打開電腦核查了最近的投產記載應該都不至于發生這么嚴重的問題,隨之猜忌是不是網絡方面有問題,立刻打電話叫起來運維經理以及相關人等一起排查。

一邊讓網絡和運維排除問題,一邊再次核查了 Web 服務器、數據庫服務器、業務日志、數據庫日志,以及其它的一些監控數據,各項皆正常。

試著在本機 ping 了一下域名確鑿不通,更加猜忌是網絡問題,嘗試著直接應用外網造訪,可以打開沒有問題,可以基本確認服務沒有問題,但運維部反饋網絡設備什么都正常,肯定是你們投產代碼出問題了,各方硬著頭皮持續在排查。

9 點,群里開始有大規模的用戶反饋官網和 App 都打不開了,更有部分用戶煽動,XXX 公司跑路了(2015 年很多 P2P 公司跑路,導致用戶都成了驚弓之鳥,稍微有問題便恐懼公司跑路,個個都鍛煉成了監控高手,天天看,實時刷,早晨起來尿尿也都順便看一下 App 上的今日收益),客服 400 熱線基本被打爆了。

一邊持續排查問題,一邊上報此問題給總監、公司各高管,給客服建議,給用戶解釋,IDC 機房網絡抖動,技巧正在緊急解決,資金和數據都沒有任何影響,稍安勿躁。

10 點,開發和運維反復的反省后,開始猜忌 DNS 解析有問題,但具體是什么問題還不清楚。

于是 CTO 抉擇:

  • 大家都打車往公司走,來公司集體解決。

  • 在各 QQ 群、微信群給用戶群發解釋 xxx 問題,安撫客戶。

  • 在車上的時候重新梳理了一下用戶的全部造訪流程,如下圖:

    記一次驚心動魄的 DNS 緩存引發的慘案

    到公司后,根據這個思路大家在一起驗證了一下,通過外網 IP 和內網 IP 造訪公司所有服務都正常,但是通過域名造訪不行,另外監控服務器、防火墻、網絡設備日志都正常,因此確定是 DNS 解析出現問題。

    攻堅問題

    既然確鑿是 DNS 解析問題,那么問題又來了?為什么 DNS 解析會出現問題?如何去解決這個問題?

    一邊給萬網提工單,我們也自己測試一下電信、移動、聯通在不同的網絡運營商下面的造訪情況,發現只有在聯通網絡的環境下 DNS 解析不了。

    根據客服得到的反饋也驗證了這個情況,電信和移動用戶反饋很少,聯通用戶反饋最多。

    于是我們又開始給聯通打電話,剛開始聯通不受理我們的這個請求,于是又開始以用戶的身份打電話給聯通公司讓立刻解決不能上網的問題。

    于是就開始了萬網和聯通的扯皮大戰,萬網說從他們那邊查看 DNS 解析都正常,一切指標都正常。我們又給聯通打電話,聯通說我們已經知道了,待會由專業的人給我們回復。

    過了一會聯通的網絡工程師回復說,像這種情況一般都是域名解析的問題。早上 10:30 到公司開始短短的 6 個小時內,我們幾個輪流給聯通公司合計共打了近 50、60 通電話,給萬網提了 N 個工單,接了 N 個電話。

    期間指示也開始動用各種關系,聯通內部的朋友、網絡運維界的大拿幫忙來定位解決,我們也嘗試了很多的辦法。

    比如,應用 ipconfig/flushdns 命令清除本機的 DNS 緩存、在萬網的官網把 DNS 解析重新更新一遍、刪除再重新添加等等,也不是完全沒有收獲。

    我們一直想找一個可以測試各個地方、運營商網絡的辦法,終于在各方推選和搜索的情況下找了 17ce 和  360 奇云測 兩個網站,感到非常實用。

    在以后的網絡定位中,成了我必備應用的工具,可以非常方便的監控各個運營商、各個地區網站的造訪通不通、造訪的速度快不快等問題,截圖如下:

    記一次驚心動魄的 DNS 緩存引發的慘案

    我們也發現,公司的其它域名也都造訪正常,就是官網的這個域名和相關的子域名不通。

    期間很多人都問了一個問題就是你們的域名有沒有忘了繳費,,剛開始大家也問了運維這邊說是沒有這個問題,直到中午 12:30 的時候在我們再三的追問下才說 8 點多的時候登錄上萬網的時候顯示這個域名是欠費狀態,但是他已經立刻把費用補了上去了。

    哎呀!差點把我們氣逝世,問了不是域名到期有提示的嗎?才知道因為上一個運維經理走后,他們沒有及時的更新萬網的電話和郵箱,導致提示郵件和短信也沒有收到。

    通過和萬網、聯通公司、指示的相關朋友溝通以及我們的測試觀察,初步明白了這個事情的原因:域名忘懷繳費導致萬網的 DNS 解析被停止,用戶本機或者 DNS 服務器有緩存,所以部分用戶可以造訪,部分用戶不能造訪。

    繳費過后,萬網的 DNS 已經進行了更新和推送,但是 DNS 解析有很多的層級需要一級一級的往下面發送更新,有的層級并沒有更新到,導致部分沒有更新到的 DNS 服務商下面的用戶不能造訪官網。

    和萬網進行了溝通,問最延遲的情況所有的 DNS 更新到最新的光陰,回答是 48 小時內肯定都會好的,但是我們等不起呀。

    隨著光陰的推移越來越多的用戶發現問題,QQ 群、微信群已經沸騰,董事長也開始關注此問題,有的客戶直接在群里面說,你們的技巧太不給力了(像這種還是委婉的,有的直接打電話罵人)…

    評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)

    站點導航

    您可能在找這些
    四川快乐12电视软件 欧冠积分榜最新积分表 安徽25选5开奖公告 单机大众麻将下载 高手网彩票资料大金 极速赛车pk全天计划 网上挣钱团队 体彩金7乐中奖规则 怎么看股票趋势图 南京麻将花砸2是什么意思啊 西甲球队缩写与简称对比