1. 程式人生 > >修改hosts檔案無效?附解決辦法

修改hosts檔案無效?附解決辦法

 

很多朋友可能碰到了這樣的問題,用來遮蔽某些惡意網址的時候,修改了hosts 檔案,但是卻總是不生效。上網搜尋了一下,Windows7系統、Vista系統、XP系統都碰到了此類情況,看來問題還很普遍。今天特別附上一則解決辦法,未必通殺,但確實是解決了很多這種情況下的問題。

解決這個問題之前,我們先來簡略談下hosts檔案,很多新手朋友可能還不瞭解,網路反黑檔案,就是通過修改hosts檔案來實現對惡意網址的遮蔽甚至轉向的。

簡單的說,hosts檔案是用於本地dns服務的,採用如下格式寫在一個文字檔案當中

ip 域名

Windows系統上一般存放在系統盤的\windows\system32\drivers\etc\目錄下,本地主機一般都被定義為:

127.0.0.1 locahost

根據微軟的相關文件,hosts檔案必須是ascii編碼方式也就是ANSI方式,如果你存為unicode格式將不會被正確讀取,不過在win 7中似乎轉而使用UTF-8了(不過我現在用的win 7 sp1仍然不認unicode的)。

回到今天的主話題,修改hosts將域名指向新的ip是總是無法生效,試過很多辦法,問題卻依然存在,於是上微軟的網站尋找答案,最終發現一個“DNS Client ” 服務的問題,“DNS CLient ”服務是快取dns用的,所以說修改了hosts的檔案是不能馬上生效的,需要一段時間的延時,通常可以用ipconfig /flushdns來重新整理dns快取,但這個方法似乎沒有什麼效果,於是乾脆開啟控制面板–管理工具–服務

,在其中找到“DNS Client ”將其停用並改為手動模式。

於是問題就解決了,hosts檔案隨時修改隨時生效。注意,本文說的無效,是指的設定後無效,不是指的沒有許可權修改hosts。