DNS與ARP的關系與原理解析,web前端開發項目經驗

A技術成就夢想 2021-09-18 11:43:19 阅读数:510

dns arp 原理 理解 解析

通過上面這張圖可以清楚地看到,頂級域名有一個國家頂級域名,比如中國的是以.cn結尾,英國就以.uk結尾。下面我們可以看到一些教育網站都會以.edu結尾的,大學官網都會以這些結尾。

[](

)04 什麼是ARP



ARP是地址解析協議,上面我們知道,通過DNS域名系統可以找到對應主機的IP地址,但是有了IP地址還不够,因為在底層的數據鏈路層在進行實際通信的時候會找每一個IP地址對應的MAC地址。而從IP地址到MAC地址的時候就要依靠ARP協議。

[](

)工作機制

我們可以以主機A向主機B發送數據為例子,看一下中間的過程是怎麼工作的。

DNS與ARP的關系與原理解析,web前端開發項目經驗_Web

主機A為了獲取主機B的MAC地址,會先在當前的數據鏈路上廣播發送一個ARP請求包,裏面包含目標IP地址。因為在同一個鏈路上面的主機都會接收到這個請求包,然後每一個主機就會根據IP地址與自己的IP地址相比較,如果與自己的匹配就會接收這個請求包,然後發送響應包,裏面就包含自己的MAC地址。

初此之外,ARP請求包裏面也含有主機A的MAC地址。當獲取了B的MAC地址後也會緩存一下,防止下一次的請求又要發送請求包,節省流量。這樣的MAC地址與IP地址相對應的錶就是ARP錶,MAC地址緩存也是有一定的時間的,超過時間之後就會吧內容清除,然後重新請求。

[](

)IP地址與MAC地址的關系

其實有一段時間我也一直不太明白為什麼有了IP後還要MAC來通信呢?這不是多此一舉嗎?

首先我們要明白一個很重要的區別,IP地址是會變的,一旦你關機重啟之後IP就可能會不一樣了,但是MAC地址就不一樣,永遠都是一樣的不會改變。相當於我們的身份證號碼一樣,但是你搬家之後的住址就可能會改變了。

網絡通信很大一部分都是不在同一個網絡上的,所以數據會經過很多路由器才可以找到你的主機。比如我們網購東西寫的地址就是IP地址,快遞的分發機制我們都知道,通過省/市/區一層層分發下來,最終就會找到你的比特置。但是除了這個比特置還不行,你要知道你的名字是啥才會准確分到你的手上,這就是MAC地址的作用。

DNS與ARP的關系與原理解析,web前端開發項目經驗_程序員_02

[](

)RARP

這個其實就是與ARP相反,作用是把MAC地址對應的IP地址找出來。那麼這種協議有什麼用呢?我們知道DHCP的作用就是動態分配一個IP地址給當前的主機,通過電腦我們可以自己設置,如果不設置就是由DHCP來給你分配一個IP地址。比如我們打印機聯網的時候就會用到這個協議,當我們插上電源的時候,就會發送一條“我的MAC地址是xxx,我對應的IP地址是啥?”的請求信息。

那麼對應的RARP服務器就會在上面注册你的MAC地址然後分配一個IP地址給你。

DNS與ARP的關系與原理解析,web前端開發項目經驗_前端_03

[](

)05 小結



通過上面的解析,我們知道了DNS域名解析系統與IP地址的關系,通過IP地址我們可以利用ARP地址解析協議找到MAC地址。通過IP地址與MAC地址的配合我們就會准確地與目標主機進行通信。這裏我們知道ARP就是一個廣播的功能,廣播的話我們就會用到UDP協議(TCP不支持廣播)了,其實各種協議之間也是有一定的聯系的。

我們也知道域名之間的層級結構,由頂級域名統一分配,有一定的管理結構,而且域名我們也一般不能隨便申請,比如個人就不能申請教育類或者政府類的域名。

DNS與ARP的關系與原理解析,web前端開發項目經驗_程序員_04

專業技能

一般來說,面試官會根據你的簡曆內容去提問,但是技術基礎還有需要自己去准備分類,形成自己的知識體系的。簡單列一下我自己遇到的一些題

最近得空把之前遇到的面試題做了一個整理,包括我本人自己去面試遇到的,還有其他人員去面試遇到的,還有網上刷到的,我都統一的整理了一下,希望對大家有用。

其中包含HTML、CSS、JavaScript、服務端與網絡、Vue、瀏覽器等等

由於文章篇幅有限,僅展示部分內容

DNS與ARP的關系與原理解析,web前端開發項目經驗_前端_05

版权声明:本文为[A技術成就夢想]所创,转载请带上原文链接,感谢。 https://gsmany.com/2021/09/20210918114319376g.html