一、什么是Hosts文件?
Hosts是一個沒有擴展名的系統(tǒng)文件,Hosts文件是一個用于存儲計算機網(wǎng)絡(luò)中節(jié)點信息的文件,它可以將主機名映射到相應(yīng)的IP地址,實現(xiàn)DNS的功能,它可以由計算機的用戶進(jìn)行控制。可以用記事本等工具打開,其作用就是將一些常用的網(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文件的存儲位置在不同的操作系統(tǒng)中并不相同,甚至不同Windows版本的位置也不大一樣:
Windows NT/2000/XP/2003/Vista/win7:默認(rèn)位置為%SystemRoot%\system32\drivers\etc\,但也可以改變hosts文件位置:
windows XP系統(tǒng)的位置:C:\WINDOWS\system32\drivers\etc
hosts 文件內(nèi)容:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
127.0.0.1 localhost
二、Hosts文件的工作方式
我們知道在網(wǎng)絡(luò)上訪問網(wǎng)站,要首先通過DNS服務(wù)器把要訪問的網(wǎng)絡(luò)域名(XXXX.com)解析成XXX.XXX.XXX.XXX的IP地址后,計算機才能對這個網(wǎng)絡(luò)域名作訪問。
要是對于每個域名請求我們都要等待域名服務(wù)器解析后返回IP信息,這樣訪問網(wǎng)絡(luò)的效率就會降低,因為DNS做域名解析和返回IP都需要時間。
為了提高對經(jīng)常訪問的網(wǎng)絡(luò)域名的解析效率,可以通過利用Hosts文件中建立域名和IP的映射關(guān)系來達(dá)到目的。根據(jù)Windows系統(tǒng)規(guī)定,在進(jìn)行DNS請求以前,Windows系統(tǒng)會先檢查自己的Hosts文件中是否有這個網(wǎng)絡(luò)域名映射關(guān)系。如果有則,調(diào)用這個IP地址映射,如果沒有,再向已知的DNS服務(wù)器提出域名解析。也就是說Hosts的請求級別比DNS高。
三、Hosts文件的具體作用
1、加快域名解析
對于要經(jīng)常訪問的網(wǎng)站,我們可以通過在Hosts中配置域名和IP的映射關(guān)系,提高域名解析速度。由于有了映射關(guān)系,當(dāng)我們輸入域名計算機就能很快解析出IP,而不用請求網(wǎng)絡(luò)上的DNS服務(wù)器。要指出的是,Hosts文件配置的映射是靜態(tài)的,如果網(wǎng)絡(luò)上的計算機更改了請及時更新IP地址,否則將不能訪問。
2、方便局域網(wǎng)用戶
在很多單位的局域網(wǎng)中,會有服務(wù)器提供給用戶使用。但由于局域網(wǎng)中一般很少架設(shè)DNS服務(wù)器,訪問這些服務(wù)器時,要輸入難記的IP地址。這對不少人來說相當(dāng)麻煩?,F(xiàn)在可以分別給這些服務(wù)器取個容易記住的名字,然后在Hosts中建立IP映射,這樣以后訪問的時候,只要輸入這個服務(wù)器的名字就行了。
3、屏蔽網(wǎng)站
現(xiàn)在有很多網(wǎng)站不經(jīng)過用戶同意就將各種各樣的插件安裝到你的計算機中,其中有些說不定就是木馬或病毒。對于這些網(wǎng)站我們可以利用Hosts把該網(wǎng)站的域名映射到錯誤的IP或本地計算機的IP,這樣就不用訪問了。在WINDOWSX系統(tǒng)中,約定127.0.0.1為本地計算機的IP地址, 0.0.0.0是錯誤的IP地址。
如果,我們在Hosts中,寫入以下內(nèi)容:
127.0.0.1 www.XXXX.com #屏蔽的網(wǎng)站 A
0.0.0.0 www.XXXX.com #屏蔽的網(wǎng)站 B
這樣,計算機解析域名 A和 B時,就解析到本機IP或錯誤的IP,達(dá)到了屏蔽網(wǎng)站A 和B的目的。
4、順利連接系統(tǒng)
對于Lotus的服務(wù)器和一些數(shù)據(jù)庫服務(wù)器,在訪問時如果直接輸入IP地址那是不能訪問的,只能輸入服務(wù)器名才能訪問。那么我們配置好Hosts文件,這樣輸入服務(wù)器名就能順利連接了。
四、如何用手動查殺劫持HOSTS表的病毒
如果你懷疑你的hosts文件 被病毒 木馬修改,可復(fù)制以上內(nèi)容修復(fù)hosts 文件。不過根本性的措施還是要找到并刪除系統(tǒng)中的病毒文件。下面是修復(fù)步驟:
首先必須要進(jìn)入安全模式
。
其次運行regedit刪除如下項目,查找HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
后面有多種可能性,目前發(fā)現(xiàn)有2種! 名稱為R 或者 A
1.R=C:\Windows\System32\rundll32.exe ctfmon.dll s
2.A=C:\WINDOWS\system32\rundll32.exe msad.dll s
你如果發(fā)現(xiàn)了這2個其中一個,直接刪除此項目。
然后找到 C:\Windows\System32\ctfmon.dll或者 C:\Windows\System32\msad.dll
刪除該文件
修復(fù)HOSTS文件(其實安全模式下安裝運行360安全衛(wèi)士就已經(jīng)可以修復(fù)了,這里說手動修復(fù)的方法)請按以下方式操作:
1.搜索系統(tǒng)中的hosts文件,也可以根據(jù)如下路徑查找:
Windows 98系統(tǒng),文件路徑\Windows目錄下;
Windows XP系統(tǒng),文件路徑\Windows\System32\Drivers\Etc目錄下;
Windows 2000系統(tǒng),文件路徑:WINNT\System32\Drivers\Etc目錄下;
WIN7系統(tǒng),文件路徑:WINNT\System32\Drivers\Etc目錄下
2.首先將此文件備份;
3.右鍵點擊hosts文件,選擇{打開方式},選擇記事本;
4.刪除記事本的內(nèi)容,或干脆將hosts文件刪除?。ú挥绊懴到y(tǒng)的正常使用)
注意:請不要直接用記事本等文本工具進(jìn)行修改 UltraEdit等專業(yè)編輯器不會造成亂碼等問題。