一、背景
在講解hosts文件之前,我們先了解下IP地址與域名的關係。
1、IP地址與域名的關係
IP(Internet Protocol)是一種規定互聯網中數據傳輸的協議,每臺連接到互聯網中的計算機都會有一個唯一的IP地址,用於標識它在互聯網上的位置。
在網絡中,一個ip地址,代表一臺主機。
也就是說當我們訪問網站的時候,必須通過ip尋址,才能找到對應的主機。
在互聯網早期,人們訪問一個網站必須輸入該網站所在主機的IP地址,這對於記不住IP地址的人來說是非常不方便的。
爲了解決這個問題,人們開始使用域名系統(DNS)將易於記憶的域名映射到網絡中的IP地址
,使得人們可以通過輸入域名來訪問網站,而不需要記住一長串的IP地址。
因此,域名與IP地址是一一對應的關係,通過域名可以找到對應的IP地址,從而訪問相應的網站或服務器。
2、示例
當輸入www.baidu.com就可以訪問百度
那它對應的ip是多少呢?
我們可以ping下
我們看到有返回一個ip地址:
180.101.50.242
那我們是不是可以直接請求這個ip呢?
當然可以
二、hosts文件是什麼?
hosts是一個沒有擴展名的系統文件,其基本作用就是將一些常用的網址域名與其對應的 IP 地址建立一個關聯“ 數據庫 ”。
當我們在瀏覽器中輸入一個需要訪問的域名的時候:
- 首先要看
瀏覽器緩存
中有沒有對應的 IP 地址。 - 如果緩存中沒有那就會從hosts文件中尋找對應的 IP 地址,一旦找到,系統就會立即打開對應網頁
- 如果hosts文件中沒有找到,則系統會將網址提交 DNS 域名解析服務器進行 IP 地址的解析。
hosts文件的作用一句話就是:
負責將主機名稱映射到相應的IP地址
因爲hosts轉換優先於DNS解析服務器,所以我們可以通過修改hosts文件做一些很重要的事情。
三、hosts文件應用場景
1、加快域名解析
對於經常要訪問的網站,我們可以通過在Hosts中配置域名和IP的映射關係。
由於有了映射關係,當我們輸入域名後,計算機就能夠快速解析出 IP 地址,而不用請求網絡上的 DNS 服務器。
2、構建局域網映射關係
有好多單位的系統爲了安全,都在自己的局域網內使用,但由於局域網中一般很少架設DNS服務器,因此在訪問這些服務器時,就需要輸入難記的 IP 地址,這對用戶來說並不友好。
因此,我們可以給這樣主機起一個很容易記住的域名,然後在hosts文件中建立 IP 映射,這樣在以後訪問的時候,只要輸入這個服務器的域名就可以了。
3、屏蔽網站或廣告
比如我發現有個網址發現有木馬,需要去屏蔽它,該如何處理?
對於這些網站我們可以利用Hosts把該網站的域名映射到錯誤的IP或自己計算機的IP,這樣就不能訪問了。
這裏假設 www.baidu.com 是木馬網址,我不想讓我們電腦可以訪問百度該如何做,很簡單,在hosts添加如下配置
0.0.0.0 www.baidu.com
再去訪問 www.baidu.com
顯然已經無法訪問了。
注意
:剛配置完屏蔽網址,去訪問可能還是會正常訪問的,因爲瀏覽器中可能緩存了對應的IP,所以需要清除下瀏覽器緩存,或者過一會等該瀏覽器IP緩存失效後。
最後需要注意:
Hosts 文件配置的是靜態IP
,如果服務器更新了IP地址,本地Hosts 就會失效,需要及時更新 Hosts 文件纔行。
聲明: 公衆號如需轉載該篇文章,發表文章的頭部一定要 告知是轉至公衆號: 後端元宇宙。同時也可以問本人要markdown原稿和原圖片。其它情況一律禁止轉載!