Hostss是什么?
Hosts是一個沒有擴展名的系統文件,可以用記事本等工具打開,其作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯“數據庫”,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統再會將網址提交DNS域名解析服務器進行IP地址的解析。
最初想到利用Hosts文件是基于學校跨網段訪問網頁時用ip地址訪問帶來的不便:學校教學網系統分成四個網段,包括三個學生機房網段和一個辦公室教師用機網段,服務器沒有使用DNS。辦公室教師機有的開了PWS(個人Web服務器),教師在同一網段中輸入Host Name(主機名)即可順利訪問網頁,但在學生機房要訪問教師Web頁,必須使用IP地址。
Hosts是Windows早期用來建立IP地址和Host name(主機名)映射關系的文件。這樣在客戶機上訪問主機時,只要輸入主機名即可。隨著后來DNS概念的引入,Internet網上DNS服務器的建立,這個文件已經逐漸被人們談忘。由于Hosts文件的執行優先級高于DNS域名解析,為了防止出現Hosts和DNS域名訪問的混亂,在Windows 98中把Hosts改成了Hosts.sam,就是要取消該文件的域名解析功能。而本文所述恰恰是利用了Hosts文件的這一功能。
Hosts.sam文件位于C:/Windows文件夾中,要使用它的功能,首先要改成Hosts文件,即把擴展名去掉。用記事本打開Hosts文件,首先看見的是微軟對這個文件的說明。這個文件是根據TCP/IP for Windows的標準來工作的,規定要求每段只能包括一個映射關系,IP地址要放在每段的最前面,空格后再寫上映射的Host name(主機名),如:
127.0.0.1 www.sina.com.cn
#屏蔽新浪網站
192.168.0.250 www.stw.net
#學校內部Web服務器主機名映射
按照上面的方法輸入后,打開瀏覽器輸入上述兩個域名,卻出現了問題:新浪網仍能正常訪問,不過網頁打開的速度變慢(沒有被屏蔽),而學校內部網站卻仍然不能正確訪問。偶然在MS-DOS下Ping了一下這兩個域名,卻發現映射已經成立。奇怪,為什么在DOS命令行下能Ping通,在瀏覽器中卻不能正確映射?
解釋只有一個:就是Hosts設置是有效的,是IE瀏覽器讓Hosts設置無效的。
打開瀏覽器后,筆者對IE的“Internet選項”設置進行了研究,終于發現了問題的癥結所在,并且找到了解決的方法。
我校客戶機通過HTTP代理進行上網,因此在瀏覽器里如圖1所示的設置。去掉“為LAN使用代理服務器”前面的“√”后,上面的映射在IE中就全部生效了,并且校園網跨網段的網頁可以訪問了;但是新的問題又出現了,在瀏覽器中訪問其他Internet網頁時卻顯示無法接通,即此時可以訪問內網,而無法訪問外網。看來用這個方法還是行不通的。那么能不能不關掉代理服務器,又能使用上面的映射關系呢?帶著這個問題筆者打開了“局域網(LAN)設置”的[高級]選項,打開“代理服務器設置”對話框(圖2),把在Hosts文件中要屏蔽的網址加到“例外”所對應的文本框中,[確定]后退出,此時外網可以訪問,屏蔽也產生了作用。
上述問題對于通過單機聯入公網的用戶來說是碰不到的,因為它不需要設置代理服務器;對于要求用代理連接公網又想屏蔽不健康網頁的局域網用戶來說,就需要這樣做了。
以上就是Hosts文件屏蔽網站和 建立網站映射的方法,謝謝大家的閱讀,希望能幫到大家。
新聞熱點
疑難解答