很多朋友可能碰到了這樣的問題,用來屏蔽某些惡意網址的時候,修改了hosts 文件,但是卻總是不生效。上網搜索了一下,Windows7系統和Vista系統、XP系統都碰到了此類情況,看來問題還很普遍。今天特別附上一則解決辦法,未必通殺,但確實是解決了很多這種情況下的問題。
解決這個問題之前,我們先來簡略談下hosts文件,很多新手朋友可能還不了解,軟媒曾經多次介紹過網絡反黑文件,就是通過修改hosts文件來實現對惡意網址的屏蔽甚至轉向的。
簡單的說,hosts文件是用於本地dns服務的,采用ip 域名 的格式寫在一個文本文件當中, Windows系統上一般存放在系統盤的system32目錄下, 比如 C:\windows\system32\drivers\etc\, 本地主機一般都被定義為 127.0.0.1 locahost 。
根據微軟的相關文檔, hosts文件必須是ascii編碼方式, 如果你存為unicode格式將不會被正確讀取。
回到今天的主話題,修改hosts將域名指向新的ip是總是無法生效, 試過很多辦法,問題卻依然存在, 於是上微軟的網站尋找答案, 最終發現時一個“DNS Client” 服務的問題, “DNS CLient”服務是緩存dns用的, 所以說修改了hosts的文件是不能馬上生效的, 需要一段時間的延時, 通常可以用ipconfig /flushdns來刷新dns緩存, 但這個方法對於我的問題似乎沒有什麼效果, 於是干脆打開控制面板- 管理工具 – 服務, 在其中找到“DNS Client” 將其停用並改為手動模式。
於是問題就解決了,hosts文件隨時修改隨時生效。
還是那句話,這個辦法未必對所有朋友碰到的情況都有效,僅作為一個例子來借鑒一下吧。歡迎高手朋友們不吝給出更好的解決辦法,一起解決我們曾碰到的疑難Windows問題。