星期四, 6月 01, 2017

Windows 下如何清除 DNS 快取與 NetBios 快取

平常我們再使用網路時, 可以直接透過主機名稱, 向是 www.yahoo.com.tw 瀏覽網頁, 或是透過區網中的電腦名稱直接連線, 例如我的主機電腦名稱叫做 tom, 就可以在檔案總管直接瀏覽 \\tom 察看分享的資源, 前者靠的是 TCP/IP 中的 DNS 名稱對應, 幫你從名稱找到對應的 IP 位址;後者靠的是微軟的 WINS 服務從 NetBIOS 協定使用的電腦名稱對應到 IP 位址。這兩種位址對應的資訊都會由系統快取下來, 後續再遇到相同的名稱實際不需要重新透過較繁瑣的查詢程序, 而可以直接從快取中找出之前查到的 IP 位址來使用。

但是當電腦在不同的網路中切換時, 比如說辦公室中有兩個以上的無線網路, 當你從 A 無線網路切換到 B 無線網路時, 系統還是會從快取中取得之前查詢的 IP 位址, 就可能會導致同樣以檔案總管瀏覽 \\tom 時卻無法連線的問題。這時我們可以先清除快取, 強迫讓系統重新查詢。要做到這件事, 必須以管理員身份執行『命令提示字元』(也就是 cmd.exe), 並透過以下指令清除 DNS 服務的名稱對應快取內容:

C:\WINDOWS\system32>ipconfig /flushdns

Windows IP 設定

成功清除 DNS 解讀器快取。

如果要清除 WINS 服務的 NetBIOS 名稱快取, 則要使用以下指令:

C:\WINDOWS\system32>nbtstat -R
順利清除和預先載入 NBT 遠端快取名稱表格。


沒有留言: