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

Hosts是一個(gè)沒有擴(kuò)展名的系統(tǒng)文件,可以用記事本等工具打開,其作用就是將一些常用的網(wǎng)址域名與其對(duì)應(yīng)的IP地址建立一個(gè)關(guān)聯(lián)“數(shù)據(jù)庫(kù)”,當(dāng)用戶在瀏覽器中輸入一個(gè)需要登錄的網(wǎng)址時(shí),系統(tǒng)會(huì)首先自動(dòng)從Hosts文件中尋找對(duì)應(yīng)的IP地址,一旦找到,系統(tǒng)會(huì)立即打開對(duì)應(yīng)網(wǎng)頁(yè),如果沒有找到,則系統(tǒng)會(huì)再將網(wǎng)址提交DNS域名解析服務(wù)器進(jìn)行IP地址的解析。Hosts 的請(qǐng)求級(jí)別比 DNS 高。
修改hosts文件
接下來關(guān)鍵問題就是如何修改hosts文件,hosts文件存放目錄:
- Window目錄 C:\Windows\System32\drivers\etc\hosts
- Linux及其他類Unix操作系統(tǒng):/etc
- Android目錄/system/etc/
常用的各平臺(tái) hosts 文件位置
hosts文件在不同操作系統(tǒng)中的位置如下表所示:
Windows:%SystemRoot%\System32\drivers\etc\hosts
Android:/etc/hosts(指向/system/etc/hosts的符號(hào)鏈接)
iOS:/etc/hosts(指向/private/etc/hosts的符號(hào)鏈接)
Mac OS X 10.0–10.1.5:通過NetInfo或niload設(shè)置
Mac OS X 10.2和更新版本:/etc/hosts(指向/private/etc/hosts的符號(hào)鏈接)
Unix、類Unix系統(tǒng)(例如Linux等):/etc/hosts
Windows Mobile、Windows Phone:注冊(cè)表項(xiàng)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、虛擬域名
很多時(shí)候,網(wǎng)站建設(shè)者需要把”軟環(huán)境“搭建好,再進(jìn)行上傳調(diào)試。但類似于郵件服務(wù),則需要使用域名來輔助調(diào)試,這時(shí)就可以將本地 IP 地址與一個(gè)”虛擬域名“做地址指向,就可以達(dá)到要求的效果,且無需花費(fèi)。
如:
127.0.0.1 www.jb51.com 之后在瀏覽器地址欄中輸入對(duì)應(yīng)的網(wǎng)站域名即可。
2、加快域名解析
對(duì)于要經(jīng)常訪問的網(wǎng)站,我們可以通過在Hosts中配置域名和IP的映射關(guān)系,提高域名解析速度,當(dāng)我們輸入域名計(jì)算機(jī)就能很快解析出IP,而不用請(qǐng)求網(wǎng)絡(luò)上的DNS服務(wù)器。
3、屏蔽網(wǎng)站(域名重定向)
有很多網(wǎng)站不經(jīng)過用戶同意就將各種各樣的插件安裝到你的計(jì)算機(jī)中,其中有些說不定就是木馬或病毒。對(duì)于這些網(wǎng)站我們可以利用Hosts把該網(wǎng)站的域名映射到錯(cuò)誤的IP或本地計(jì)算機(jī)的IP,這樣就不用訪問了。在WINDOWS系統(tǒng)中,約定 127.0.0.1 為本地計(jì)算機(jī)的IP地址, 0.0.0.0是錯(cuò)誤的IP地址。
如果,我們?cè)贖osts中,寫入以下內(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ì)算機(jī)解析域名A和 B時(shí),就解析到本機(jī)IP或錯(cuò)誤的IP,達(dá)到了屏蔽網(wǎng)站A 和B的目的。
4、方便局域網(wǎng)用戶
在很多單位的局域網(wǎng)中,會(huì)有服務(wù)器提供給用戶使用。但由于局域網(wǎng)中一般很少架設(shè)DNS服務(wù)器,訪問這些服務(wù)器時(shí),要輸入難記的IP地址。這對(duì)不少人來說相當(dāng)麻煩??梢苑謩e給這些服務(wù)器取個(gè)容易記住的名字,然后在Hosts中建立IP映射,這樣以后訪問的時(shí)候,只要輸入這個(gè)服務(wù)器的名字就行了。
5、順利連接系統(tǒng)
對(duì)于Lotus的服務(wù)器和一些數(shù)據(jù)庫(kù)服務(wù)器,在訪問時(shí)如果直接輸入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 還是使用軟件來修改,很多人都會(huì)遇到修改 hosts 后不生效的情況。其實(shí),這一般是由于 DNS 緩存的原因?qū)е碌摹?/p>
因?yàn)橄到y(tǒng)為了加快用戶打開網(wǎng)站的速度,在首次訪問網(wǎng)站成功之后,會(huì)把 DNS 解析的結(jié)果暫時(shí)性地保存在本地緩存 (稱為 DNS 緩存) 里一小段時(shí)間,如果瀏覽器在“這段時(shí)間里”再次打開同一個(gè)網(wǎng)址,則會(huì)自動(dòng)從 DNS 緩存里取出結(jié)果,而不會(huì)請(qǐng)求遠(yuǎn)程的 DNS 服務(wù)器,也不會(huì)查詢 hosts 文件,從而節(jié)省時(shí)間提高打開速度。因此用戶會(huì)遇到有時(shí)修改了 hosts 文件但并不生效的情況,一般這時(shí)候我們想辦法清空 (刷新) 一下系統(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 寫錯(cuò)了。
相關(guān)文章
電腦系統(tǒng)Hosts文件原理和應(yīng)用分享
Hosts是一個(gè)沒有擴(kuò)展名的系統(tǒng)文件,當(dāng)用戶在瀏覽器中輸入一個(gè)需要登錄的網(wǎng)址時(shí),系統(tǒng)會(huì)首先自動(dòng)從Hosts文件中尋找對(duì)應(yīng)的IP地址,一旦找到,系統(tǒng)會(huì)立即打開對(duì)應(yīng)網(wǎng)頁(yè),如果沒2025-05-22無法啟動(dòng)此程序因?yàn)橛?jì)算機(jī)丟失api-ms-win-core-path-l1-1-0.dll修復(fù)方
本文主要介紹了無法啟動(dòng)此程序,因?yàn)橛?jì)算機(jī)丟失api-ms-win-core-path-l1-1-0.dll的解決方案,希望能對(duì)使用Python的同學(xué)們有所幫助2025-05-22電腦提示W(wǎng)inmm.dll缺失怎么辦? Winmm.dll文件丟失的多種修復(fù)技巧
有時(shí)電腦會(huì)出現(xiàn)無法啟動(dòng)程序,因?yàn)橛?jì)算機(jī)中丟失winmm.dll的情況,其實(shí),winmm.dll丟失是一個(gè)比較常見的問題,通常與系統(tǒng)文件損壞、誤刪或病毒感染有關(guān),下面就來分享幾個(gè)實(shí)2025-05-22電腦msvcp140_1.dll丟失怎么辦? msvcp140_1.dll文件丟失多種修復(fù)技巧
在日常使用計(jì)算機(jī)的過程中,經(jīng)常會(huì)遇到一些程序無法正常運(yùn)行的問題,其中最常見的就是“msvcp140_1.dll丟失”,這是一個(gè)典型的DLL文件丟失問題,下面我們就來看看詳細(xì)解決2025-05-22電腦msvcr110.dll缺失怎么修復(fù)? 7種方法徹底搞定msvcr110.dll丟失問題
在啟動(dòng)某些應(yīng)用程序或游戲時(shí),你可能會(huì)遇到“msvcr110.dll丟失”的錯(cuò)誤提示,導(dǎo)致程序無法正常運(yùn)行,下面我們就來看看多種dll修復(fù)技巧2025-05-22libcef.dll是什么? 電腦丟失libcef.dll文件的5種修復(fù)技巧
咱在使用計(jì)算機(jī)的時(shí)候,經(jīng)常會(huì)碰到一些讓人頭疼的錯(cuò)誤提示,“l(fā)ibcef.dll 丟失” 就是其中之一,這錯(cuò)誤一出現(xiàn),有些應(yīng)用程序就沒法正常運(yùn)行了,下面我們就來看看詳細(xì)的解決2025-05-22- 很多人習(xí)慣把軟件裝到D盤、E盤,刻意繞開C盤,這種習(xí)慣從哪來?讓我們用數(shù)據(jù)和案例,拆解背后的3大原因2025-05-19
exfat和ntfs哪個(gè)好? U盤格式化選擇NTFS與exFAT的詳細(xì)區(qū)別對(duì)比
exFAT和NTFS是兩種常見的文件系統(tǒng),它們各自具有獨(dú)特的優(yōu)勢(shì)和適用場(chǎng)景,以下是關(guān)于exFAT和NTFS的詳細(xì)對(duì)比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)報(bào)錯(cuò)mfc90u.dll丟失修復(fù)的5種方
在我們?nèi)粘J褂秒娔X的過程中,可能會(huì)遇到一些軟件或系統(tǒng)錯(cuò)誤,其中之一就是mfc90u.dll丟失,那么,mfc90u.dll究竟是什么文件呢?接下來,我將為大家做一個(gè)簡(jiǎn)要的介紹2025-05-01