DNS 系列(一):為什么更新了 DNS 記錄不生效?

我們在上網(wǎng)時(shí)如果想要訪問到另一臺機(jī)器上的內(nèi)容,通常只需要直接輸入一串地址眷篇,例如:www.upyun.com,就能夠準(zhǔn)確訪問到自己想要訪問的網(wǎng)站荔泳。但是實(shí)際上這只是方便我們記憶的字符形式網(wǎng)絡(luò)標(biāo)識蕉饼,真正讓我們的機(jī)器和另一臺機(jī)器進(jìn)行溝通的是 IP 地址。只不過 IP 地址無論是輸入還是記憶都非常麻煩玛歌,因此才誕生了域名系統(tǒng)昧港。那么域名是怎么連接到那個(gè)服務(wù)器的 IP 呢?這就和我們今天要說的域名系統(tǒng) DNS 有關(guān)了支子。

DNS 是什么创肥?

因?yàn)橛幸饬x的名字可以表示主機(jī)的賬號、工作性質(zhì)、所屬的地域和組織等瓤的,從而便于記憶和使用休弃。所以用戶會更傾向于用名字來標(biāo)識主機(jī),DNS 就是為這種需要而開發(fā)的圈膏。DNS 代表域名系統(tǒng)(Domain Name System)塔猾。該系統(tǒng)會將域名(example.com)翻譯成實(shí)際的 IP 地址。

DNS 的邏輯結(jié)構(gòu)是一個(gè)分層的域名樹稽坤,由 Internet 網(wǎng)絡(luò)信息中心(InterNIC)管理著域名樹的根丈甸,稱為“根域”,根域用句號“.”表示尿褪,不過這個(gè)通常是省略的睦擂。需要注意的是全世界一共只有 13 臺 IPv4 根域名服務(wù)器。

根域下面是頂級域(TLD)杖玲,分為國家頂級域(ccTLD)和通用頂級域(gTLD)顿仇。國家頂級域使用國家和地區(qū)縮寫代碼,例如“cn”代表中國摆马。通用頂級域就是我們常見的 com/net/org 等臼闻。

頂級域下面是二級域,這是正式注冊給組織和個(gè)人的唯一名稱囤采,例如 www.upyun.com 中的 upyun 就是又拍云注冊的域名述呐。在二級域之下,組織機(jī)構(gòu)還可以劃分子域蕉毯,用于各分支部門使用乓搬。但是標(biāo)準(zhǔn)規(guī)定,一個(gè)域名的長度通常不超過 63 個(gè)字符代虾,最多不能超過 255 個(gè)字符进肯。

當(dāng)然了,DNS 不僅僅能指向 IP 地址褐着,同時(shí)還支持其他形式的記錄坷澡。常見的 DNS 記錄形式有:

  • A 記錄:域的 IPv4 地址的記錄。

  • AAAA 記錄:域的 IPv6 地址的記錄含蓉。

  • CNAME 記錄:別名,將一個(gè)域或子域轉(zhuǎn)發(fā)到另一個(gè)域项郊,不提供 IP 地址馅扣。

  • MX 記錄:將郵件定向到電子郵件服務(wù)器。

  • TXT 記錄:可使管理員在記錄中存儲文本注釋着降。

  • NS 記錄:存儲 DNS 條目的名稱服務(wù)器差油。

一個(gè)有特色的域名,可以讓用戶將公司品牌“深深印在腦海里”。盡管域名可能是永恒不變的蓄喇,但記錄指向的地址及使用的 DNS 服務(wù)器卻會因?yàn)樾枨蠼?jīng)常變動发侵。有時(shí)我們也會遇到修改了 DNS 記錄后,實(shí)際訪問到的地址卻沒有更新的情況妆偏,這就涉及到了 DNS 傳播刃鳄。

什么是 DNS 傳播?

一般我們對網(wǎng)站的域名解析記錄或 DNS 服務(wù)提供商進(jìn)行更改后钱骂,全球所有的服務(wù)器都需要一段時(shí)間才能采用新的記錄值叔锐,這段時(shí)間可能是幾小時(shí),也可能是幾天见秽,這個(gè)過渡階段就是 DNS 傳播愉烙。

DNS 傳播因 DNS 服務(wù)器的負(fù)載情況而異。服務(wù)器越舊所需要更新時(shí)間就越長解取,因此在過渡期間步责,會出現(xiàn)其他提供商已經(jīng)使用了新的地址,但一些舊服務(wù)器的服務(wù)商可能還未更新的禀苦。這是因?yàn)槌掷m(xù)查詢新的地址會導(dǎo)致負(fù)載過高勺择,所以 DNS 服務(wù)器不會將更新信息臨時(shí)存儲在緩存中,只有當(dāng)所有服務(wù)器都更新了此緩存伦忠,才會在所有地方同步上新新地址省核。

除了服務(wù)器負(fù)載,還有一些因素也會影響 DNS 傳播昆码。

影響 DNS 傳播的因素

DNS 區(qū)域和 TTL 值

DNS 被分成許多不同的區(qū)域气忠,是 DNS 命名空間的一部分,由特定組織或管理員加以管理赋咽。區(qū)域文件是存儲在 DNS 服務(wù)器中的純文本文件旧噪,它包含區(qū)域的實(shí)際表示,和區(qū)域內(nèi)每個(gè)域的所有記錄脓匿。

我們可以為域名區(qū)域文件中的每個(gè) DNS 設(shè)置 TTL淘钟。TTL 代表“生存時(shí)間”,是服務(wù)器緩存 DNS 信息的時(shí)間段陪毡。它可以定義設(shè)置臨時(shí)緩存米母、存儲多久以及何時(shí)進(jìn)行更新。TTL 值對于 DNS 傳播是很關(guān)鍵的毡琉,如果 TTL 值為 24 小時(shí)铁瞒,則更改后需要 1 天才能生效。當(dāng)然桅滋,為了更新可以更快生效慧耍,我們可以調(diào)整 TTL 值身辨。但是,此調(diào)整必須在更新之前進(jìn)行芍碧,因?yàn)檎{(diào)整 TTL 也屬于 DNS 傳播煌珊,也需要一段時(shí)間才能生效。另外注意切勿將 DNS TTL 設(shè)置為 0泌豆,因?yàn)闃?biāo)準(zhǔn)中沒有定義數(shù)字 0定庵,它可能會導(dǎo)致 DNS 信息被忽略或拒絕。

如果使用云解析修改域名的解析記錄践美,最終生效時(shí)間取決于各地運(yùn)營商的 DNS 服務(wù)器緩存刷新時(shí)間洗贰,一般情況下等同于設(shè)置解析時(shí)的 TTL 時(shí)間。例如解析設(shè)置中 TTL 值為 10 分鐘陨倡,修改解析后將在 10 分鐘內(nèi)實(shí)現(xiàn)全球生效敛滋。

如果是修改 DNS 服務(wù)器,那么生效時(shí)間取決于本地 DNS 緩存的域名 DNS 服務(wù)器名稱的 TTL 時(shí)間兴革,例如“.com”頂級域是 48 小時(shí)绎晃,“.cn”是 24 小時(shí)。因?yàn)椴煌敿売?DNS 服務(wù)器的 TTL 時(shí)間是不同的杂曲,所以理論上修改域名 DNS 服務(wù)器全球解析生效時(shí)間最長需要 48 小時(shí)庶艾。

ISP(Internet 服務(wù)提供商)

另一個(gè)影響 DNS 傳播持續(xù)時(shí)間的因素是使用的 Internet 服務(wù)提供商(ISP)。ISP 會將 DNS 數(shù)據(jù)緩存在本地擎勘,每次請求是在緩存檢索數(shù)據(jù)而非 DNS 服務(wù)器咱揍。這種做法的好處是響應(yīng)更快,同時(shí)也減少了數(shù)據(jù)流量的產(chǎn)生棚饵。但是煤裙,這可能會對 DNS 傳播產(chǎn)生影響。此外噪漾,一些 ISP 會直接忽略 TTL 設(shè)置硼砰,并且固定每兩到三天才更新一次緩存記錄。

服務(wù)器的位置

服務(wù)器的位置也會對 DNS 傳播產(chǎn)生影響欣硼。記錄的更改短時(shí)間內(nèi)可以在就近的 DNS 服務(wù)器生效题翰,但到世界另一端的服務(wù)器通常需要更久。因?yàn)椴煌姆?wù)器需要一個(gè)接一個(gè)地通知對方記錄有更改诈胜。而且就像第二條里提到的豹障,由于一些服務(wù)器可能僅在特定的時(shí)間間隔內(nèi)更新,這就導(dǎo)致全部更新會需要很長時(shí)間耘斩。

DNS 傳播的時(shí)間

那實(shí)際的 DNS 傳播需要多長時(shí)間沼填?本地服務(wù)器通常會在幾分鐘或幾小時(shí)內(nèi)更新。但是括授,要讓全球所有服務(wù)器都知曉這些更改,并使其生效可能需要相當(dāng)長的時(shí)間,通常 1 至 2 天內(nèi)才生效都是可能的荚虚。而且根據(jù)服務(wù)提供商的設(shè)置薛夜,還可能出現(xiàn) 72 小時(shí)之后才全部更新的情況。因此版述,當(dāng)需要更改或切換記錄時(shí)梯澜,提前安排 DNS 傳播非常重要。

在某些情況下渴析,DNS 傳播會對網(wǎng)站的訪問產(chǎn)生影響晚伙,這是沒辦法完全避免的,不過可以通過一些方法最小化持續(xù)時(shí)間俭茧。比如在更改 DNS 服務(wù)器之前咆疗,我們可以修改解析記錄中的 TTL 值,將其設(shè)置得小一點(diǎn)母债。等TTL值更新后午磁,再修改 DNS 服務(wù)器。不過就算未傳播完毡们,也不影響域名解析記錄的修改迅皇。即便 DNS 服務(wù)器仍然是舊的,但是解析記錄會實(shí)時(shí)更新衙熔,網(wǎng)站內(nèi)容也會是最新的登颓。

當(dāng)然了,若解析記錄修改之后红氯,過了 TTL 時(shí)間發(fā)現(xiàn)還是訪問到舊的記錄框咙,可以嘗試清除一下本地 DNS 緩存〔绷ィ或本地修改為公共 DNS (114.114.114.114/8.8.8.8)后再試一下扁耐。

DNS 傳播檢查

如果沒有工具來確定網(wǎng)站的 DNS 傳播是否已完成〔澹可以通過幾種對本地的 DNS 進(jìn)行 DNS 傳播檢查的方法來確認(rèn)婉称。例如,Windows构蹬、macOS 和 Linux 默認(rèn)安裝了 nslookup王暗,它可以顯示當(dāng)前 DNS 服務(wù)器的解析狀態(tài)。Dig 工具也是一個(gè)不錯的選擇庄敛。

除了本地查詢俗壹,其他外部 DNS 檢查需要通過選擇隨機(jī)服務(wù)器并在那里查詢 DNS 信息來測試。由于服務(wù)器分布在世界各地藻烤,因此不能 100% 確定 DNS 傳播已在所有地方完成绷雏,但至少可以確認(rèn)大致的傳播情況头滔。例如,使用 Myssl 的 DNS 檢測工具(https://myssl.com/dns_check.html#dns_check)涎显,可以快速查出不同地區(qū)不同網(wǎng)絡(luò)下域名解析的速度坤检,及域名 DNS 信息。

讀到這里期吓,大家是不是對 DNS 修改后不生效的問題有了答案呢早歇?進(jìn)行 DNS 服務(wù)器或與域名系統(tǒng)相關(guān)的更改時(shí),還是要優(yōu)先考慮到 DNS 傳播讨勤。盡管可以通過 TTL 縮短傳播時(shí)間箭跳,但由于一些不穩(wěn)定因素,仍然需要一些時(shí)間才能使全球的每臺服務(wù)器都更改為最新狀態(tài)潭千。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末谱姓,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子脊岳,更是在濱河造成了極大的恐慌逝段,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件割捅,死亡現(xiàn)場離奇詭異奶躯,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)亿驾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進(jìn)店門嘹黔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人莫瞬,你說我怎么就攤上這事儡蔓。” “怎么了疼邀?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵喂江,是天一觀的道長。 經(jīng)常有香客問我旁振,道長获询,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任拐袜,我火速辦了婚禮吉嚣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蹬铺。我一直安慰自己尝哆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布甜攀。 她就那樣靜靜地躺著秋泄,像睡著了一般琐馆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上印衔,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天啡捶,我揣著相機(jī)與錄音姥敛,去河邊找鬼奸焙。 笑死,一個(gè)胖子當(dāng)著我的面吹牛彤敛,可吹牛的內(nèi)容都是我干的与帆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼墨榄,長吁一口氣:“原來是場噩夢啊……” “哼玄糟!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起袄秩,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤阵翎,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后之剧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體郭卫,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年背稼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贰军。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,505評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蟹肘,死狀恐怖词疼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情帘腹,我是刑警寧澤贰盗,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站阳欲,受9級特大地震影響舵盈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜胸完,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一书释、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赊窥,春花似錦爆惧、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芍耘。三九已至,卻和暖如春熄阻,著一層夾襖步出監(jiān)牢的瞬間斋竞,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工秃殉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留坝初,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓钾军,卻偏偏與公主長得像鳄袍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子吏恭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容