【計算機網絡 | 第16篇】DNS域名工作原理

在這里插入圖片描述

文章目錄

  • 3.5 域名系統工作原理
    • 主機的標識方式:域名 vs IP 地址
    • 標識轉換機制:DNS系統
    • 因特網的域名系統:層次域名空間🐦?🔥
      • 頂級域名分類
      • 低級域名與管理
      • 域名與IP的區別
    • 因特網的域名系統:域名服務器🥝
      • 域名服務器類型🧾
    • 因特網的域名系統:域名解析過程🥝
      • 解析方式
      • 示例:訪問www.tencent.com
    • DNS的延遲與優化
    • DNS緩存
    • DNS的其他重要服務:別名管理與負載均衡
      • 別名管理
      • 負載均衡

3.5 域名系統工作原理

主機的標識方式:域名 vs IP 地址

在因特網上,每臺主機(設備)都需要被唯一標識,主要有兩種標識方式:

  1. 主機名(域名)
    例如:www.tencent.com(騰訊)、www.aliyun.com(阿里云)、mail.163.com(網易郵箱)。

    • 優點:便于人類記憶,用戶能通過名稱快速訪問服務;
    • 缺點:無法直接定位主機位置,僅能通過域名推測(如.com為商業網站,.edu為教育機構)。
  2. IP地址
    例如:121.7.106.83(騰訊服務器)、114.34.126.120(阿里云服務器)。

    • 優點:具有嚴格的層次結構,能精確描述主機在網絡中的位置,便于路由器快速定位;
    • 缺點:由4個數字組成(如121.7.106.83),不易記憶。

IP地址的層次結構:由4個字節(32位)組成,每個字節用句點分隔(范圍0-255)。例如121.7.106.83的結構類似郵政地址:

  • 第一級(121):主網絡(類似省級行政區);
  • 第二級(7):子網絡(類似城市);
  • 第三級(106):具體網絡(類似街道);
  • 第四級(83):主機(類似門牌號)。
    路由器可根據IP地址的層級逐步定位目標主機。

標識轉換機制:DNS系統

域名便于記憶,IP地址便于網絡定位,DNS(域名系統) 的作用是將兩者關聯。
域名系統(Domain Name System, DNS) 是因特網的命名系統,用于將便于人類記憶的主機名(如www.taobao.com)轉換為機器處理的IP地址。

  • 工作原理類比:訪問“騰訊官網”時,無需記住IP地址(如121.7.106.83),輸入www.tencent.com后,DNS會自動將域名解析為對應IP地址。
  • 技術特性:采用客戶/服務器模型,協議運行在UDP之上,使用53號端口。
  • 概念組成:層次域名空間、域名服務器、域名解析過程。

DNS核心功能

  • 域名解析:將www.tencent.com轉換為121.7.106.83;
  • 負載均衡:一個域名對應多個IP地址,實現流量分發(如騰訊視頻引導用戶至最近服務器);
  • 緩存加速:減少重復解析開銷,提升訪問速度。

因特網的域名系統:層次域名空間🐦?🔥

互聯網早期采用非等級的平鋪式名字空間(類似電話簿),但隨著用戶激增,出現命名沖突風險高、擴展性差、管理復雜等問題。1983年后改用層次樹狀結構(Domain Name Hierarchy),將域名劃分為多級子域。

域名的空間樹狀結構:
在這里插入圖片描述

  • 域名結構:任何主機或路由器的唯一層次結構名稱即域名(Domain Name)。域可劃分為子域,形成頂級域、二級域、三級域等。
  • 標號規則:域名由多個標號組成,用點(.)分隔(如www.baidu.com為“三級域名.二級域名.頂級域名”)。
    1. 僅允許英文字母、數字、連字符(-),英文不區分大小寫;
    2. 除連字符外不能使用其他標點;
    3. 每個標號不超過63個字符,完整域名最長255個字符;
    4. 級別最低的域名在最左,頂級域名在最右。
  • 管理機制:各級域名由上一級管理,頂級域名由ICANN管理,不規定域名層級數量和每級含義。

頂級域名分類

  1. 國家(地區)頂級域名(nTLD):采用ISO 3166標準,如“.cn”(中國)、“.us”(美國)。
  2. 通用頂級域名(gTLD)
    • 基礎類:.com(商業)、.net(網絡服務)、.org(非營利組織);
    • 行業類:.tech(科技)、.shop(電商)、.gov.cn(中國政府);
    • 品牌類:.alibaba(阿里巴巴)、.tencent(騰訊)。
  3. 基礎結構域名(arpa):用于IP地址反向解析為域名。

低級域名與管理

  • 我國二級域名:采用“類別+行政區劃”雙軌制。
    • 類別域名:ac(科研)、com(企業)、edu(教育)、gov(政府)等7個;
    • 行政區域名:34個,如bj(北京)、sh(上海)。
  • 申請機制
    • 國家頂級域名(如.cn)由CNNIC管理,通過阿里云等注冊商申請;
    • 國際頂級域名(如.com)由ICANN授權注冊商(如GoDaddy)管理。

域名與IP的區別

  • 域名:邏輯標識,與物理位置無關(如aliyun.com服務器可分布多地);
  • IP地址:物理定位,32位(IPv4)或128位(IPv6),便于路由器查找;
  • 對應關系:非一一對應,一個IP可托管多個域名(虛擬主機),一個域名可對應多個IP(負載均衡)。

因特網的域名系統:域名服務器🥝

域名與IP的對應關系存儲在域名服務器中,信息分布在各地以保證性能、安全和可靠性。一個服務器的管轄范圍稱為(≤域),每個區設權限域名服務器,保存該區主機的域名-IP映射,且能查詢其他服務器。

域名服務器類型🧾

在這里插入圖片描述

  1. 根域名服務器:最高層次,知道所有頂級域名服務器的域名和IP。全球共13個不同IP的根服務器(實際為服務器群集),不直接解析域名,僅告知下一步查詢的頂級服務器IP。
  2. 頂級域名服務器:管理旗下二級域名,返回最終結果或下一級權限服務器IP(如.cn服務器管理.edu.cn、.net.cn)。
  3. 權限域名服務器:管理特定區,保存該區域名-IP映射及下級服務器地址(如阿里云服務器管理aliyun.com區)。
  4. 本地域名服務器:非等級結構,接收主機的DNS請求并轉發至其他服務器,返回結果。由ISP、大學等提供(如電信114.114.114.114),IP通過DHCP自動分配,具有緩存功能。

因特網的域名系統:域名解析過程🥝

域名解析是將域名轉換為IP地址的過程。客戶端通過DNS客戶端構造請求報文,以UDP發送至本地域名服務器。

解析方式

1.遞歸查詢:本地域名服務器替主機完成全部查詢過程,用戶無需關心中間步驟。

在這里插入圖片描述

  1. 迭代查詢:服務器僅返回下一步查詢的服務器地址,由客戶端或上一級服務器繼續查詢,減少單個服務器負載。

在這里插入圖片描述

實際模式:用戶到本地DNS為遞歸查詢,本地DNS到其他服務器為迭代查詢

示例:訪問www.tencent.com

  1. 用戶輸入域名,瀏覽器調用本地DNS客戶端;
  2. 本地DNS查詢流程:
    • 無緩存時,向根服務器查詢;
    • 根服務器返回.com頂級服務器IP;
    • 頂級服務器返回tencent.com的權威服務器IP;
    • 權威服務器返回www.tencent.com的IP(如121.7.106.83);
  3. 瀏覽器通過IP向騰訊服務器的80/443端口發起TCP連接,加載網頁。

DNS的延遲與優化

DNS查詢會產生時延,可通過以下機制優化:

  • 本地緩存:操作系統或路由器緩存解析記錄(TTL時間內有效);
  • 運營商DNS優化:如騰訊云、阿里云提供公共DNS(114.114.114.114);
  • CDN技術:解析至離用戶最近的服務器,縮短物理距離。

DNS廣泛應用于SMTP(電子郵件)、游戲服務器等場景。

DNS緩存

在這里插入圖片描述

DNS緩存是指服務器暫時存儲解析結果,供后續相同查詢直接使用(類似圖書館借閱記錄)。緩存內容包括域名-IP映射、TLD服務器地址等,每條記錄有生存時間(TTL),超時后自動清除以保證正確性。

  • 局限性
    1. 數據過期風險:域名IP變化但緩存未更新可能導致解析錯誤,需合理設置TTL或手動刷新;
    2. 安全性挑戰:可能被DNS劫持,需結合DNSSEC驗證數據合法性。

DNS的其他重要服務:別名管理與負載均衡

別名管理

主機可設置多個別名便于記憶,規范主機名為唯一正式名稱(如mail-server-01.shanghai.tencent.com),別名為用戶熟悉的名稱(如mail.tencent.com),通過DNS映射到規范名稱。
郵件服務器通過MX記錄實現別名化,定義域名的郵件服務器地址(如163.com的MX記錄指向多個服務器)。

負載均衡

大型網站通過DNS輪詢技術分配流量:服務器按順序返回同一域名的多個IP,用戶設備選擇第一個IP連接,通過輪換IP順序實現負載均衡(如video.qq.com返回多個服務器IP)。

DNS核心規范由RFC 1034和RFC 1035定義,復雜性體現在分層結構、緩存機制和安全擴展(如DNSSEC)。


如果我的內容對你有幫助,請 點贊 評論 收藏 。創作不易,大家的支持就是我堅持下去的動力!
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/98226.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/98226.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/98226.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

YASKAWA安川機器人鋁材焊接節氣之道

在鋁材焊接領域,保護氣體的合理使用對焊接質量與成本控制至關重要。安川焊接機器人憑借高精度與穩定性成為行業常用設備,而WGFACS節氣裝置的應用,則為其在鋁材焊接過程中實現高效節氣提供了創新路徑。掌握二者結合的節氣之道,對提…

GooseDB,一款實現服務器客戶端模式的DuckDB

在網上看到韓國公司開發的一款GooseDB, 官方網站對它的介紹是DuckDB? 的功能擴展分支,具有服務器/客戶端、多會話和并發寫入支持,使用 PostgreSQL 有線協議(DuckDB?是 DuckDB 基金會的商標) 使用也很簡單&#xff…

lesson62:JavaScript對象進化:ES2025新特性深度解析與實戰指南

目錄 一、迭代器輔助方法:對象數據處理的優雅革命 1.1 核心方法與語法 1.2 對象屬性處理實戰 1.3 性能與兼容性考量 二、JSON模塊原生支持:對象加載的范式轉變 2.1 靜態與動態導入語法 2.2 與傳統方案的對比優勢 2.3 典型應用場景 三、Set集合增…

設計模式學習筆記(一)

設計模式學習筆記(一) 一般說設計模式都是指面向對象的設計模式,因為面向對象語言可以借助封裝、繼承、多態等特性更好的達到復用性、可拓展性、可維護性。 面向對象一般指以類、對象為組織代碼的基本單元,并將封裝、繼承、多態、…

【CSS】一個自適應大小的父元素,如何讓子元素的寬高比一直是2:1

父元素是自適應大小的容器(比如 width:100%),我們希望子元素 始終保持 2:1 寬高比(比如寬 200px → 高 100px,寬 300px → 高 150px)。 有幾種常見解法:? 方法一:CSS aspect-ratio&…

如何搭建redis集群(docker方式非哨兵)

1、redis的配置文件這里要注意,主從的ip不需要我們去設置,只需要設置主從的密碼就可以,然后就是protect-mode,我設置的是no,一定注意不能設置主從。客戶端要訪問,一定要加# 每個節點的 redis.conf 中 clust…

如何學習VBA_3.3.9:利用“搭積木”思想,快速有效地完成你的代碼

我給VBA的定義:VBA是個人小型自動化處理的有效工具。利用好了,可以大大提高自己的勞動效率,而且可以提高數據處理的準確度。我推出的VBA系列教程共九套和一部VBA漢英手冊,現在已經全部完成,希望大家利用、學習。如果您…

JSP程序設計之輸入/輸出對象 — response對象

response對象1.概述2.實例:response對象方法運用(1)實例一:頁面自動刷新(2)實例二:實現頁面重定向,具體的代碼(3)綜合實例:實現登錄并記錄用戶名1…

Redis 事件驅動框架(ae.c_ae.h)深度解析

Redis 事件驅動框架(ae.c/ae.h)深度解析 之前咱們用 “超市收銀員” 的例子,簡單看懂了 ae 模塊是 Redis 的 “多任務神器”。現在咱們再往深走一層,不用復雜代碼,只拆它的 “核心運作邏輯”—— 搞懂它怎么做到 “一個…

[能源化工] 面向鋰電池RUL預測的開源項目全景速覽

鋰離子電池是新能源汽車、儲能系統及便攜式電子設備的核心能源部件,其剩余使用壽命(Remaining Useful Life,RUL)的準確預測直接關系到設備運行安全、維護成本優化和能源效率提升。RUL預測算法能夠提前量化電池剩余可用時間&#x…

PEFT QLora Deepspeed Zero Stage 3 Offload Trainning

使用 accelerate deepspeed zero stage 3 offload 進行 sft trainning 的自動設備映射: GPU 訓練計算 CPU 存儲 run_peft_qlora_deepspeed_stage3.sh #!/bin/bashexport MAX_JOBS4 export OMP_NUM_THREADS4 export disable_exllamaTrue export CUDA_VISIBLE_DEVICES0,1 expor…

JAVA上門家政維修服務系統源碼微信小程序+微信公眾號+APP+H5

一、功能介紹用戶端:精準分類、支持家政、維修、萬能服務、一口價、報價、線上、各類家政服務、優惠專區、師傅入駐、商家入駐、我的需求、補費明細、我的投訴;師傅端:接單池、消息通知、接單管理、今日訂單、師傅入駐、我的錢包、實名認證&a…

GCKontrol對嵌入式設備FPGA設計流程的高效優化

1 前言FPGA(Field-Programmable Gate Array,現場可編程邏輯門陣列)是一種可編程的半導體器件,因其硬件可重構性、硬件并行計算能力、低延遲和實時性的優勢,廣泛應用于數字電路設計、原型驗證和系統加速等領域。但開發…

DBAPI免費版對比apiSQL免費版

DBAPI簡介 零代碼開發api服務,只需編寫sql,就可以生成http api服務。支持api動態創建,兼容多種數據庫。 適用于BI報表、數據可視化大屏的后端接口快速開發。 旨在為企業數據服務的發布提供完整解決方案 一、DBAPI免費版本支持1個數據源連接支…

CTFHub SSRF通關筆記8:數字IP Bypass 原理詳解與滲透實戰

目錄 一、SSRF 二、數字IP原理 1、IP多進制 (1)十進制整數格式 (Dword / 長整數格式) (2)八進制格式 (Octal IP) (3)十六進制格式 (Hex IP) 2、SSRF繞過 三、滲透實戰 1、打開靶場 2、嘗試127.0.…

C++中雙引號和單引號的區別(全面分析)

我在刷算法題的時候經常遇到,用了 出現警告或者使用" "直接報錯,尤其是在字符串部分(py玩家后遺癥/(ㄒoㄒ)/~~)在詳細了解后總結一下加強記憶。 總的來說在 C 中,雙引號 "" 和單引號 是完全不同…

Ubuntu20.04仿真 |iris四旋翼添加云臺相機詳述

申明: 1、本人使用的是Ubuntu20.04ros1gazeboxtdronepx4的仿真組合 2、為了使傳感器模型和飛機模型解耦合,實現不同平臺對傳感器可直接調用,本系列博文涉及的所有傳感器均不直接添加在相應平臺的sdf當中,而是通過編寫xxx_joint.…

《人工智能AI之機器學習基石》系列 第 16 篇:關聯規則與數據挖掘——“啤酒與尿布”傳奇背后的增長秘密

《人工智能AI之機器學習基石》? 專欄核心理念: 用通俗語言講清楚機器學習的核心原理,強調“洞察+ 技術理解 + 應用連接”,構建一個完整的、富有啟發性的知識體系。 引言:藏在購物車里的“讀心術” 朋友們,歡迎回到我們的AI基石之旅。 在過去的兩次探索中,我們深入…

Spring Boot 的自動配置原理

Spring Boot 的自動配置是其 "約定大于配置" 理念的核心實現,它能自動配置 Spring 應用所需的各種組件,大幅減少手動配置。下面從核心注解、加載流程、條件過濾等方面詳細講解其原理,并結合關鍵源碼說明。一、自動配置的入口&#…

谷歌云平臺(Google Cloud Platform, GCP)介紹(全球領先的云計算服務平臺,為企業和開發者提供包括計算、存儲、數據分析、人工智能、機器學習、網絡和安全等在內的全面云服務)

文章目錄**1. GCP的核心優勢****1.1 全球領先的基礎設施****1.2 強大的數據分析和人工智能能力****1.3 卓越的安全性和合規性****1.4 靈活的定價模式****2. GCP的主要服務****2.1 計算服務****2.2 存儲和數據庫****2.3 網絡服務****2.4 人工智能與大數據****2.5 安全與管理工具…