什麼是DNS(網域名稱系統)

把 www.example.com 這類網域名稱與通訊所用的IP位址對應起來、由全世界的伺服器分散管理的機制。

日文名稱: DNS

「DNS(網域名稱系統)」出現在2領域的9道練習題中(電腦網路基礎, 雲端與容器基礎等)。

這個名詞所屬的領域: 電腦網路基礎

名稱解析的流程

終端向網路服務供應商或公司內部的完整服務解析器(快取DNS伺服器)查詢。若快取中沒有答案,解析器會依序詢問根伺服器、.com 等頂級網域的伺服器、該網域的權威DNS伺服器,取得答案後回傳給終端。各伺服器只告知「下一步請問這台伺服器」,因此沒有任何一台伺服器需要擁有全部的資料。

快取與TTL

解析器會在記錄所附的有效期間(TTL)內快取得到的答案,對相同的查詢立即回答。這能減少查詢次數與等待時間,但變更DNS設定後,在舊答案的快取到期前仍可能使用先前的值。這就是搬遷伺服器之前要先縮短TTL的原因。

主要的記錄與通訊方式

記錄有表示IPv4位址的A、表示IPv6位址的AAAA、表示別名的CNAME、表示郵件遞送目的地的MX、表示該網域權威DNS伺服器的NS等。查詢主要使用UDP的53號連接埠,回應較大時等情況也會使用TCP。為了防範竊看與偽造的回應,也會使用DNSSEC簽章,以及DNS over HTTPS(DoH)等加密方式。

練習DNS(網域名稱系統)的題目

以HTTPS(在TCP之上的TLS 1.3)重新連線到RTT(往返時間)為100 ms的Web伺服器,從送出第一個請求到開始收到回應,所需時間最接近下列何者?假設DNS名稱解析已完成,並忽略伺服器的處理時間與資料的傳輸時間。

  1. A約100 ms
  2. B約300 ms
  3. C約200 ms
查看答案與解析

正確答案:B. 約300 ms

首先,TCP的三向交握需要1個往返(用戶端可以把TLS的第一則訊息與最後的ACK一起送出)。接著TLS 1.3的交握需要1個往返,之後HTTP的請求與回應再需要1個往返,合計3個往返,即 3 × 100 = 300 ms。TLS 1.2的金鑰交換需要2個往返,因此共4個往返,為400 ms。這段等待時間取決於RTT的次數,而RTT由距離決定,因此即使增加線路頻寬也不會縮短。HTTP/3使用的QUIC把傳輸層與加密的交握合併為1個往返,重新連線時還提供在第一次往返就傳送資料的方法(0-RTT)。

DNS(網域名稱系統)的主要功能,下列何者正確?

  1. A根據IP位址,查出同一網路上設備的MAC位址
  2. B把 www.example.com 這類網域名稱轉換為通訊所用的IP位址(名稱解析)
  3. C把通訊加密,並確認所連線的網站是否為真
查看答案與解析

正確答案:B. 把 www.example.com 這類網域名稱轉換為通訊所用的IP位址(名稱解析)

把人容易記住的網域名稱與通訊所用的IP位址對應起來的機制,就是DNS(網域名稱系統)。在瀏覽器開啟URL時,終端會先向DNS查詢伺服器的IP位址,再連線到該位址。DNS的資料並非集中在一台伺服器上,而是依網域名稱的階層劃分,由全世界的伺服器分散管理。查詢主要使用UDP的53號連接埠,回應較大時等情況也會使用TCP。

常見問題

DNS使用幾號連接埠?

標準為53號連接埠。一般的查詢主要使用UDP,回應較大或伺服器之間傳送區域資料時等情況也會使用TCP。

為什麼變更了DNS設定卻沒有立即生效?

因為解析器與終端會在記錄的TTL期間內快取先前的答案。在快取到期並重新查詢之前,仍可能使用舊的位址。

解析中的「DNS(網域名稱系統)」

出現「DNS(網域名稱系統)」的題目(9題)

  1. 以HTTPS(在TCP之上的TLS 1.3)重新連線到RTT(往返時間)為100 ms的Web伺服器,從送出第一個請求到開始收到回應,所需時間最接近下列何者?假設DNS名稱解析已完成,並忽略伺服器的處理時間與資料的傳輸時間。
  2. DNS(網域名稱系統)的主要功能,下列何者正確?
  3. 快取中沒有任何資料的完整服務解析器(快取DNS伺服器),查詢 www.example.com 的IP位址時,詢問的順序下列何者正確?
  4. 在TCP/IP的四層模型中,TCP與UDP屬於哪一層?
  5. 下列關於ARP功能的敘述,何者正確?
  6. 下列關於UDP特徵的敘述,何者正確?
  7. 下列協定與其伺服器標準使用之連接埠號碼的組合,何者正確?
  8. 以DHCP讓終端取得IP位址時,訊息的順序下列何者正確?
  9. 在 Kubernetes 中,Pod 每次重新建立時IP位址都會改變。讓其他應用程式能以不變的名稱與位址,連線到以標籤選出的多個 Pod 並分散負載的資源,是下列何者?

相關名詞

HTTP(超文字傳輸協定) 連接埠號碼 DHCP TLS 三向交握 OSI參考模型 ARP MAC位址 SSH 子網路遮罩

前往名詞解釋列表