成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

不再懼怕DNS面試題:大牛用1張大圖,9個步驟輕松應對

原創
網絡 網絡管理 開發工具
又到了招聘季了,前兩天遇到一個面試的小伙伴,他說面試官和他聊得很投機,無意中談到了DNS請求的過程。他一時語塞隨便應付了兩句,雖然對方沒有追問的意思,但最后面試結果也并不理想。

[[319621]]

【51CTO.com原創稿件】 又到了招聘季了,前兩天遇到一個面試的小伙伴,他說面試官和他聊得很投機,無意中談到了DNS請求的過程。他一時語塞隨便應付了兩句,雖然對方沒有追問的意思,但最后面試結果也并不理想。本著邊面試邊學習的態度,我們來看看DNS請求的過程中涉及到的定義和原理。

DNS的含義和結構

眾所周知,在互聯網中是用IP來標識一臺服務器的。IP地址雖然能夠代表一臺設備,但是由于記憶起來比較困難,所以將其替換成一個能夠理解和識別的名字,這個名字我們稱作為域名。例如:www.toutiao.com 就是一個域名,在域名后面會定義一個IP地址用來指向網站服務器。那么問題來了,誰來做這個從域名到IP地址的對應呢?答案是通過DNS來實現。

DNS 是域名系統(Domain Name System,縮寫:DNS)是互聯網的一項服務。它將域名和IP地址相互映射的一個分布式數據庫,在數據庫中保存域名與IP的對照關系,從而使人更方便地訪問互聯網。

DNS解析是分布式存儲的,從結構上來說最頂層是,根域名服務器(ROOT DNS Server),存儲260個頂級域名服務器的IP地址。對于Ipv4來說全球有13個根域名服務器,它儲存了每個域(如.com .net .cn)的解析和域名服務器的地址信息。簡單的說,根域名服務器就是存放頂級域名服務器地址的。

在根域名服務器下一級就是,頂級域名服務器。例如.com的域名服務器,存儲的是一些一級域名的權威DNS服務器地址(如toutiao.com的DNS)。

頂級域名又稱一級域名,頂級域名可以分為三類,即gTLD、ccTLD和New gTLD:

  • gTLD:國際頂級域名(generic top-level domains,gTLD),例如:.com/.net/.org等都屬于gTLD;
  • ccTLD:國家和地區頂級域名(country code top-level domains,簡稱ccTLD),例如:中國是.cn域名,日本是.jp域名;
  • New gTLD:新頂級域名(New gTLD),例如:.xyz/.top/.red/.help等新頂級域名。

頂級域名服務器就是根據上面三類保存域名IP對應數據的。

在頂級域名服務器下面一級就是,本地域名服務器(Local DNS)一般是運營商的DNS,主要作用就是代理用戶進行域名分析的。

如圖1 所示,DNS域名服務器分為三級,從上到下分別是根域名服務器(Root DNS Server)、頂級域名服務器(gTLD、ccTLD、New gTLD)、本地域名服務器(Local DNS Server)。

不再懼怕DNS面試題:大牛用1張大圖,9個步驟輕松應對

DNS解析原理

說完DNS的結構,再來談談其運行原理。通過用戶訪問網頁的過程,來描述DNS解析以及獲取URL到IP映射的整個過程。其中過程比較復雜,會存在信息的來回傳遞。畫圖的過程中我們會簡化信息來回傳遞的線段,重點放在信息傳遞的路徑,通過9步來詮釋DNS解析過程。

不再懼怕DNS面試題:大牛用1張大圖,9個步驟輕松應對

圖2 用戶請求以及DNS解析的全過程

①用戶請求通過瀏覽器輸入要訪問網站的地址,例如:www.toutiao.com。瀏覽器會在自己的緩存中查找URL對應IP地址。如果之前訪問過,保存了這個URL對應IP地址的緩存,那么就直接訪問IP地址。如果沒有緩存,進入到第2步。

②通過計算機本地的Host文件配置,可以設置URL和IP地址的映射關系。比如windows下是通過C:\windwos\system32\driver\etc\hosts文件來設置的,linux中則是/etc/named.confg文件。這里查找本地的Host文件,看是有IP地址的緩存。如果在文件中依舊沒有找到映射關系,進入第3步。

③請求Local DNS Server,通過本地運營商獲取URL和IP的映射關系。如果在校園網,DNS服務器就在學校,如果是小區網絡,DNS服務器是運營商提供的。總之這個服務器在物理位置上離發起請求的計算機比較近。Local DNS Server緩存了大量的DNS解析結果。由于它的性能較好,物理上的距離又比較近,它通常會在很短的時間內返回指定域名的解析結果。80%的DNS解析需求在這一步就滿足了。如果在這一步還是沒有完成DNS解析,進入第4步

④通過Root DNS Server進行解析,ROOT DNS Server會根據請求的URL 返回給Local DNS Server頂級域名服務器的地址。例如:查詢的是”.com”的域名,就查詢 gTL對應的域名服務器的地址。

⑤返回頂級域名服務器的地址以后,訪問對應的頂級域名服務器(gTLD、ccTLD、New gTLD),并且返回Name Server服務器地址。這個Name Server就是網站注冊的域名服務器,上面包含了網站URL和IP的對應信息。例如你在某個域名服務提供商申請的域名,這個域名就由他們的服務器來解析。這個Name Server是由域名提供商維護的。

⑥Name Server會把指定域名的A記錄或者CNAME返回給Local DNS Server,并且設置一個TTL。

  • A (Address) 記錄是用來指定主機名(或域名)對應的IP地址記錄。用戶可以將該域名下的網站服務器指向到自己的web server上。同時也可以設置您域名的二級域名。
  • CNAME:別名記錄。這種記錄允許您將多個名字映射到另外一個域名。通常用于同時提供WWW和MAIL服務的計算機。例如,有一臺計算機名為“host.mydomain.com”(A記錄)。它同時提供WWW和MAIL服務,為了便于用戶訪問服務。服務商從方便維護的角度,一般也建議用戶使用CNAME記錄綁定域名的。如果主機使用了雙線IP,顯然使用CNAME也要方便一些。
  • TTL(Time To Live):也就是設置這個DNS解析在Local DNS Server上面的過期時間。超過了這個過期時間,URL和IP的映射就會被刪除,需要獲取還要請求Name Server。

⑦如果此時獲取的是A記錄,那么就可以直接訪問網站的IP了。但是通常來說大型的網站都會返回CNAME,然后將其傳給GTM Server。

GTM(Global Traffic Manager的簡寫)即全局流量管理,基于網宿智能DNS、分布式監控體系,實現實時故障切換及全球負載均衡,保障應用服務的持續高可用性。傳給GTM的目的就是希望通過GTM的負載均衡機制,幫助用戶找到最適合自己的服務器IP。

也就是離自己最近,性能最好,服務器狀態最健康的。而且大多數的網站會做CDN緩存,此時就更需要使用GTM幫你找到網絡節點中適合你的CDN緩存服務器。

⑧找到CDN緩存服務器以后,可以直接從服務器上面獲取一些靜態資源,例如:HTML、CSS、JS和圖片。但是一些動態資源,例如商品信息,訂單信息,需要通過第9步。

⑨對于沒有緩存的動態資源需要從應用服務器獲取,在應用服務器與互聯網之間通常有一層負載均衡器負責反向代理。有它路由到應用服務器上。

總結

DNS服務器是用來做URL與IP地址解析的,幫助用戶找到要訪問服務器的IP。從DNS服務器的結構來說大致分為三層:根域名服務器,頂級域名服務器,本地域名服務器。

申請域名的供應商會提供Name Server作為DNS解析。從用戶訪問一個網站出發,經過瀏覽器,本地Host文件、Local DNS Server、Root DNS Server、頂級域名服務器(gTLD、ccTLD、New gTLD)、Name Server、GTM、CDN、Application Server。共經歷了九個步驟。

作者:崔皓

簡介:十六年開發和架構經驗,曾擔任過惠普武漢交付中心技術專家,需求分析師,項目經理,后在創業公司擔任技術/產品經理。善于學習,樂于分享。目前專注于技術架構與研發管理。

【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

 

責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2025-02-26 07:58:41

2020-09-21 09:36:05

機器學習人工智能計算機

2022-01-24 20:40:55

JavastreamLambda

2015-08-14 14:31:57

Java初始化面試題

2019-09-10 10:48:10

RedisJava面試題

2020-06-04 14:40:40

面試題Vue前端

2023-11-13 07:37:36

JS面試題線程

2010-08-30 20:51:15

名企面試題

2011-03-24 13:27:37

SQL

2021-05-08 14:20:27

Redis面試數據庫

2017-08-29 14:12:16

Java面試題

2014-12-02 10:02:30

2015-08-27 09:27:34

JavaScript面試題

2011-04-19 09:33:15

面試題

2019-03-23 20:00:04

面試react.js前端

2009-06-06 18:34:05

java面試題

2009-06-06 18:36:02

java面試題

2014-09-19 11:17:48

面試題

2015-09-02 09:32:56

java線程面試

2021-11-29 07:47:56

RocketMQ分布式消息
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 男人的天堂亚洲 | 精品国产乱码一区二区三区 | 精品一区免费 | 亚洲va欧美va天堂v国产综合 | 东京av男人的天堂 | 手机在线观看 | 三级视频网站 | 91日韩 | 成人免费网站 | 99精品国自产在线 | 国产高清精品一区二区三区 | 91新视频 | 亚洲精选久久 | 五月天激情电影 | 亚洲精品粉嫩美女一区 | 免费视频一区二区 | 九九视频在线观看 | 成人免费观看视频 | 美日韩免费视频 | 免费国产视频在线观看 | 欧美 日韩 中文 | 日韩午夜电影 | 欧美精品在线一区二区三区 | 日本天天操 | 亚洲精品成人在线 | 久久99蜜桃综合影院免费观看 | 精品国产乱码一区二区三区a | 国产精品1区2区 | 日本福利在线观看 | av黄色在线 | 日本特黄a级高清免费大片 成年人黄色小视频 | 在线国产小视频 | 亚洲一级毛片 | 免费视频一区二区 | 黄色一级视频免费 | 成人在线播放网站 | 亚洲国产成人在线 | 九色视频网站 | 一级做受毛片免费大片 | 国产一级免费在线观看 | 久久久久久国产免费视网址 |