電腦系統(tǒng)Hosts文件原理和應(yīng)用分享

Hosts是一個沒有擴(kuò)展名的系統(tǒng)文件,可以用記事本等工具打開,其作用就是將一些常用的網(wǎng)址域名與其對應(yīng)的IP地址建立一個關(guān)聯(lián)“數(shù)據(jù)庫”,當(dāng)用戶在瀏覽器中輸入一個需要登錄的網(wǎng)址時,系統(tǒng)會首先自動從Hosts文件中尋找對應(yīng)的IP地址,一旦找到,系統(tǒng)會立即打開對應(yīng)網(wǎng)頁,如果沒有找到,則系統(tǒng)會再將網(wǎng)址提交DNS域名解析服務(wù)器進(jìn)行IP地址的解析。Hosts 的請求級別比 DNS 高。
修改hosts文件
接下來關(guān)鍵問題就是如何修改hosts文件,hosts文件存放目錄:
- Window目錄 C:\Windows\System32\drivers\etc\hosts
- Linux及其他類Unix操作系統(tǒng):/etc
- Android目錄/system/etc/
常用的各平臺 hosts 文件位置
hosts文件在不同操作系統(tǒng)中的位置如下表所示:
Windows:%SystemRoot%\System32\drivers\etc\hosts
Android:/etc/hosts(指向/system/etc/hosts的符號鏈接)
iOS:/etc/hosts(指向/private/etc/hosts的符號鏈接)
Mac OS X 10.0–10.1.5:通過NetInfo或niload設(shè)置
Mac OS X 10.2和更新版本:/etc/hosts(指向/private/etc/hosts的符號鏈接)
Unix、類Unix系統(tǒng)(例如Linux等):/etc/hosts
Windows Mobile、Windows Phone:注冊表項HKEY_LOCAL_MACHINE\Comm\Tcpip\Hosts
Symbian OS 6.1–9.0:C:\system\data\hosts
Symbian OS 9.1+:C:\private\10000882\hosts
上面是比較常見的系統(tǒng)了,如果你用其他的系統(tǒng),我相信你能查到它的位置…
編輯修改以上目錄下的hosts文件。目前實(shí)現(xiàn)方式有許多形式,最直接的就是使用文件管理器將獲取的hosts文件覆蓋系統(tǒng)的hosts文件。
Hosts文件格式
127.0.0.1 ?localhost 127.0.0.1 ?www.baidu.com 192.168.1.1 test.com
域名解析流程
域名解析流程
Hosts具體作用
1、虛擬域名
很多時候,網(wǎng)站建設(shè)者需要把”軟環(huán)境“搭建好,再進(jìn)行上傳調(diào)試。但類似于郵件服務(wù),則需要使用域名來輔助調(diào)試,這時就可以將本地 IP 地址與一個”虛擬域名“做地址指向,就可以達(dá)到要求的效果,且無需花費(fèi)。
如:
127.0.0.1 www.jb51.com 之后在瀏覽器地址欄中輸入對應(yīng)的網(wǎng)站域名即可。
2、加快域名解析
對于要經(jīng)常訪問的網(wǎng)站,我們可以通過在Hosts中配置域名和IP的映射關(guān)系,提高域名解析速度,當(dāng)我們輸入域名計算機(jī)就能很快解析出IP,而不用請求網(wǎng)絡(luò)上的DNS服務(wù)器。
3、屏蔽網(wǎng)站(域名重定向)
有很多網(wǎng)站不經(jīng)過用戶同意就將各種各樣的插件安裝到你的計算機(jī)中,其中有些說不定就是木馬或病毒。對于這些網(wǎng)站我們可以利用Hosts把該網(wǎng)站的域名映射到錯誤的IP或本地計算機(jī)的IP,這樣就不用訪問了。在WINDOWS系統(tǒng)中,約定 127.0.0.1 為本地計算機(jī)的IP地址, 0.0.0.0是錯誤的IP地址。
如果,我們在Hosts中,寫入以下內(nèi)容:
127.0.0.1 # 要屏蔽的網(wǎng)站 A
0.0.0.0 # 要屏蔽的網(wǎng)站 B
如:
127.0.0.1 ?www.hao123.com 127.0.0.1 ?www.baidu.com
這樣,計算機(jī)解析域名A和 B時,就解析到本機(jī)IP或錯誤的IP,達(dá)到了屏蔽網(wǎng)站A 和B的目的。
4、方便局域網(wǎng)用戶
在很多單位的局域網(wǎng)中,會有服務(wù)器提供給用戶使用。但由于局域網(wǎng)中一般很少架設(shè)DNS服務(wù)器,訪問這些服務(wù)器時,要輸入難記的IP地址。這對不少人來說相當(dāng)麻煩??梢苑謩e給這些服務(wù)器取個容易記住的名字,然后在Hosts中建立IP映射,這樣以后訪問的時候,只要輸入這個服務(wù)器的名字就行了。
5、順利連接系統(tǒng)
對于Lotus的服務(wù)器和一些數(shù)據(jù)庫服務(wù)器,在訪問時如果直接輸入IP地址那是不能訪問的,只能輸入服務(wù)器名才能訪問。那么我們配置好Hosts文件,這樣輸入服務(wù)器名就能順利連接了。
5、強(qiáng)制域名解析指定IP
比如一些網(wǎng)站有很多的服務(wù)器ip,有些ip可能被和諧了,那么我們可以在hosts文件里添加我們想要的ip跟域名。
如:
# Periscope Start 13.124.246.138 pscp.tv 13.124.203.13 www.pscp.tv 52.39.74.21 channels.pscp.tv 54.200.114.148 proxsee.pscp.tv 54.192.73.58 assets.pscp.tv 54.192.73.58 prod-profile.pscp.tv 54.192.73.58 prod-thumbnail.pscp.tv 151.101.2.164 prod-video-ap-northeast-1.pscp.tv 151.101.2.164 prod-video-ap-southeast-1.pscp.tv 151.101.66.164 prod-video-ap-southeast-2.pscp.tv 151.101.66.164 prod-video-eu-central-1.pscp.tv 151.101.130.164 prod-video-us-east-1.pscp.tv 151.101.194.164 prod-video-sa-east-1.pscp.tv 151.101.194.164 prod-video-us-west-2.pscp.tv 151.101.78.164 prod-video-us-west-1.pscp.tv 151.101.78.164 prod-video-eu-west-1.pscp.tv 18.194.108.2 prod-chatman-ancillary-eu-central-1.pscp.tv 34.233.63.45 prod-chatman-ancillary-us-east-1.pscp.tv 35.160.28.174 prod-chatman-ancillary-us-west-2.pscp.tv # Periscope End
修改 hosts 后不生效怎么解決?
無論是手工修改 hosts 還是使用軟件來修改,很多人都會遇到修改 hosts 后不生效的情況。其實(shí),這一般是由于 DNS 緩存的原因?qū)е碌摹?/p>
因?yàn)橄到y(tǒng)為了加快用戶打開網(wǎng)站的速度,在首次訪問網(wǎng)站成功之后,會把 DNS 解析的結(jié)果暫時性地保存在本地緩存 (稱為 DNS 緩存) 里一小段時間,如果瀏覽器在“這段時間里”再次打開同一個網(wǎng)址,則會自動從 DNS 緩存里取出結(jié)果,而不會請求遠(yuǎn)程的 DNS 服務(wù)器,也不會查詢 hosts 文件,從而節(jié)省時間提高打開速度。因此用戶會遇到有時修改了 hosts 文件但并不生效的情況,一般這時候我們想辦法清空 (刷新) 一下系統(tǒng)的 DNS 緩存即可。
怎樣清空 DNS 緩存?
- 在 Windows 下命令行執(zhí)行:ipconfig /flushdns
- 在 macOS 下執(zhí)行命令:sudo killall -HUP mDNSResponder
- 如果你使用 Chrome 瀏覽器,那么可以訪問:chrome://net-internals/#dns,然后點(diǎn)擊「Clear host cache」按鈕來清空瀏覽器里的 DNS 緩存。
如果這樣還不生效,那么只能再試試重啟電腦了,一般都OK了。要這樣還是不行,可能就是你的 hosts 寫錯了。
相關(guān)文章
電腦系統(tǒng)Hosts文件原理和應(yīng)用分享
Hosts是一個沒有擴(kuò)展名的系統(tǒng)文件,當(dāng)用戶在瀏覽器中輸入一個需要登錄的網(wǎng)址時,系統(tǒng)會首先自動從Hosts文件中尋找對應(yīng)的IP地址,一旦找到,系統(tǒng)會立即打開對應(yīng)網(wǎng)頁,如果沒2025-05-22無法啟動此程序因?yàn)橛嬎銠C(jī)丟失api-ms-win-core-path-l1-1-0.dll修復(fù)方
本文主要介紹了無法啟動此程序,因?yàn)橛嬎銠C(jī)丟失api-ms-win-core-path-l1-1-0.dll的解決方案,希望能對使用Python的同學(xué)們有所幫助2025-05-22電腦提示W(wǎng)inmm.dll缺失怎么辦? Winmm.dll文件丟失的多種修復(fù)技巧
有時電腦會出現(xiàn)無法啟動程序,因?yàn)橛嬎銠C(jī)中丟失winmm.dll的情況,其實(shí),winmm.dll丟失是一個比較常見的問題,通常與系統(tǒng)文件損壞、誤刪或病毒感染有關(guān),下面就來分享幾個實(shí)2025-05-22電腦msvcp140_1.dll丟失怎么辦? msvcp140_1.dll文件丟失多種修復(fù)技巧
在日常使用計算機(jī)的過程中,經(jīng)常會遇到一些程序無法正常運(yùn)行的問題,其中最常見的就是“msvcp140_1.dll丟失”,這是一個典型的DLL文件丟失問題,下面我們就來看看詳細(xì)解決2025-05-22電腦msvcr110.dll缺失怎么修復(fù)? 7種方法徹底搞定msvcr110.dll丟失問題
在啟動某些應(yīng)用程序或游戲時,你可能會遇到“msvcr110.dll丟失”的錯誤提示,導(dǎo)致程序無法正常運(yùn)行,下面我們就來看看多種dll修復(fù)技巧2025-05-22libcef.dll是什么? 電腦丟失libcef.dll文件的5種修復(fù)技巧
咱在使用計算機(jī)的時候,經(jīng)常會碰到一些讓人頭疼的錯誤提示,“l(fā)ibcef.dll 丟失” 就是其中之一,這錯誤一出現(xiàn),有些應(yīng)用程序就沒法正常運(yùn)行了,下面我們就來看看詳細(xì)的解決2025-05-22- 很多人習(xí)慣把軟件裝到D盤、E盤,刻意繞開C盤,這種習(xí)慣從哪來?讓我們用數(shù)據(jù)和案例,拆解背后的3大原因2025-05-19
exfat和ntfs哪個好? U盤格式化選擇NTFS與exFAT的詳細(xì)區(qū)別對比
exFAT和NTFS是兩種常見的文件系統(tǒng),它們各自具有獨(dú)特的優(yōu)勢和適用場景,以下是關(guān)于exFAT和NTFS的詳細(xì)對比2025-05-08什么是ReFS 文件系統(tǒng)? ntfs和refs的優(yōu)缺點(diǎn)區(qū)別介紹
最近有用戶在 Win11 Insider的安裝界面中發(fā)現(xiàn),可以使用 ReFS 來格式化硬盤,這是不是意味著,ReFS 有望在未來成為Windows桌面的默認(rèn)文件系統(tǒng)呢?下面我們就來看看ReFS與NTF2025-05-08電腦找不到mfc90u.dll文件怎么辦? 系統(tǒng)報錯mfc90u.dll丟失修復(fù)的5種方
在我們?nèi)粘J褂秒娔X的過程中,可能會遇到一些軟件或系統(tǒng)錯誤,其中之一就是mfc90u.dll丟失,那么,mfc90u.dll究竟是什么文件呢?接下來,我將為大家做一個簡要的介紹2025-05-01