iT邦幫忙

0

這個路徑內的資料夾hosts是何用處

557557 2008-12-03 16:19:3643892 瀏覽

C:\Windows\System32\drivers\etc\hosts
請問各位前輩,不知道各位有沒有開啟過這資料夾
這進入後~以記事本開啟最後這檔案內
1.最下方處有 IP 以及 網址 這是幹嘛用的呢?
2.我要另外新增填上後會不會有何影響?

fillano iT邦超人 1 級 ‧ 2008-12-03 17:10:33 檢舉
hosts比dns還要古老哪。
waseeyasn iT邦新手 2 級 ‧ 2008-12-04 10:02:55 檢舉
請問host的檔案只對IE有用嗎...
因為我試著輸入"203.84.202.168 www.google.com.tw"後
IE輸入google會轉到奇摩
而firefox跟google chrome都是顯示404...
還可以試試 windows 版的 wget
http://users.ugent.be/~bpuype/wget/
抓下來後,叫出 CMD , cd 到有wget 的目錄,
執行 wget http://www.google.com.tw/
若連成功會產生一個 index.html 檔,
再點該檔看結果是什麼。
或者
telnet www.google.com.tw 80
GET /
看看會不會出現網頁的原始碼…
42
逮丸逮丸
iT邦大師 1 級 ‧ 2008-12-03 17:08:59
最佳解答

簡而言之,就是要查詢一個主機名稱時,
如果這個檔案沒定義的話,
就會去查DNS。
例如,若該檔案的內容有:

<pre class="c" name="code">
1.2.3.4   ithelp.ithome.com.tw

那麼您要連ithelp.ithome.com.tw時,
不會去向 DNS 查真正的 IP 是什麼,
而馬上往 1.2.3.4 來送。

過去一些病毒,就是把一堆的防毒軟體的官方網站,
都列到這個hosts檔案中,
統統都指向到 127.0.0.1 ,也就是電腦本身,
導致都無法更新病毒碼,也無法連到防毒軟體的網站;
只要把 hosts 這些的內容刪掉,
就會往 DNS 去查真正 IP 的位置;
這是病毒利用 hosts 的負面作法。

如果有一些常要連的目標,
若 DNS 常會有問題,或者很清楚其 IP ,
也可以手動去加上 IP 及其對應名稱;
或者若 DNS 還沒有設好,
而主機上有好幾個虛擬主機的話,
且是用 virtual name 來對應的話,
也可以利用 hosts 的功能,
這樣在這台電腦上 query 該名稱,
雖 DNS 還沒有該記錄,但您電腦就可 query 到正確的 IP 所在,
而虛擬主機也可以由被 query 的hostname來做出回應;
這是 hosts 可以的正向作法。

36
海綿寶寶
iT邦大神 1 級 ‧ 2008-12-03 17:07:38

有點像DNS提供 domain name 與 IP 的對應表

詳情請看英文維基說明
中文維基說明

26
26
a9390390
iT邦新手 3 級 ‧ 2008-12-03 17:26:20

之前有網友提出類似的問題

IT邦幫忙: 要如何解釋『hosts』這名詞?
http://ithelp.ithome.com.tw/question/10001606

以下是小弟找到個資訊

Hosts文件
維基百科,自由的百科全書
http://zh.wikipedia.org/w/index.php?title=Hosts%E6%96%87%E4%BB%B6&variant=zh-tw

hosts文件是一個用於儲存計算機網路中各節點信息的計算機文件。這個文件負責將主機名映射到相應的IP地址。hosts文件通常用於補充或取代網路中DNS的功能。和DNS不同的是,計算機的使用者可以直接對hosts文件進行控制。

文件位置及默認內容
hosts文件在不同作業系統(甚至不同Windows版本)的位置都不大一樣:

* Windows NT/2000/XP/Vista:默認位置為%SystemRoot%\system32\drivers\etc\,但也可以改變。動態目錄由註冊表鍵\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters\DataBasePath決定。

在Windows中,默認的hosts文件通常是空白的或包含了註釋語句並使用了一條默認規則:

127.0.0.1 localhost
::1 localhost

hosts文件的其它用途
hosts文件也可以用於其它情況,例如可以將已知的廣告伺服器重定向到無廣告的機器(通常是本地的IP地址:127.0.0.1)上來過濾廣告。同時也可以通過不下載網路廣告,從而減少頻寬。使用hosts文件還可以減少對DNS伺服器的訪問來加快訪問速度並減少頻寬消耗。

hosts文件的另一個重要用途就是用於攔截一些惡意網站的請求,從而防止訪問欺詐網站或感染一些病毒或惡意軟體。但同時,這個文件也可能被病毒或惡意軟體所利用來阻止用戶更新殺毒軟體或訪問特定網站。

hosts檔是Windows系統中一個負責IP位址與功能變數名稱快遞解析的檔,以ASCLL格式保存。電腦在鍵入功能變數名稱(比如www.eoooo.com)的時候,首先會去看看hosts檔匯總有沒有關於此功能變數名稱IP位址的記錄。如果有,就直接登陸該網站;如果沒有再查詢DNS伺服器。hosts在Windows98中是hosts.sam檔,在Windows2000/XP中則就是hosts檔,沒有拓展名

在文件夾C:\WINDOWS\system32\drivers\etc下,建立host的無副檔名文件。
在裏面輸入如下內容即可。

IP(你要轉向的IP位址)+ 空格+ 功能變數名稱(你要設置的功能變數名稱)

20
coolvista
iT邦研究生 2 級 ‧ 2008-12-03 17:27:09

這個目錄是存放LMHOSTS檔,用來解決名稱與IP位址對照的方法之一,但一般user很少會去維護它(也不必要)
如果想了解LMHOSTS檔內容,運作,管理,請自行找相關書籍研究,實在是太冷門囉!

20
kevinhuang
iT邦新手 3 級 ‧ 2008-12-04 08:56:34

hosts 檔案

  1. 主要是用來將主機名稱解析為IP位置(與DNS server 相同)。
  2. hosts檔屬於DNS Client 用來解析網域主機名稱與IP位置的一張對應表。
  3. 大部分設定時機用於在固定或是經常使用已知主機名稱與IP位置或是你可以在當對方沒有的主機沒有註冊domain name或是沒有使用DDNS的時候,你也可以自訂一個名稱於此,則一樣可以使用主機名稱來連線,此方式也可以加速名稱解析的效能。
  4. 用於沒有DNS SERVER的環境。
  5. 在 Windows環境中,名稱解析流程為:(ex: ping hostname)
    hosts => DNS Client cache => DNS SERVER => NetBIOS name cache ==>
    WINS SERVER ==> NETBIOS Broadcasts ==> LMHOSTS.
  6. 關於你如果自己新增記錄於此的話,如果主機對應IP位置沒錯的話,則是OK,但是如果設定錯誤則就算你有設定DNS SERVER,但是該主機名稱還是會無法解析。
花輪 iT邦大師 1 級 ‧ 2008-12-04 23:38:08 檢舉

關於第五點, 還有另一種方式,只是順序有點差別...

18
laiout
iT邦新手 1 級 ‧ 2008-12-04 09:37:05

在每部主機上皆有兩個與名稱解析有關的檔案hosts、lmhosts,比喻來說hosts就如同單機專用的DNS(做FQDN解析),lmhosts就如同單機專用的WINS(做NetBIOS Name解析),而這兩個檔案的記錄優先權比網路設定參照的DNS和WINS Server提供的記錄要來得高,例如dns.hinet.net網路上記錄IP應為168.95.1.1,但如在hosts內加入10.1.1.1 dns.hinet.net,那在這部主機上查詢dns.hinet.net所解析出的IP就是10.1.1.1而不是168.95.1.1。

18
小湯
iT邦研究生 3 級 ‧ 2008-12-04 16:48:01

簡單來說它可以用來手動記錄ip 和 主機名稱或Domain Name名稱的對應
; ip <-> domain name mapping 讓你的的電腦不需透過DNS或WINS就能mapping到你要的主機;設定如下,因一般公司內部有時會有一些電腦加入網域,但是又有少部份未加入網域,但彼此又需要溝通時,用這個方式會讓client與client間溝通,比較不會有問題! 這邊的client 當然也包括server 與server間!所以這個檔案其實還是非常好用!
kevinhuang的回答其實已非常詳細!

127.0.0.1 localhost
172.1.1.23 mail
172.1.1.100 test.pht.com.tw

14
charlislee
iT邦新手 5 級 ‧ 2008-12-06 00:22:15

舉例
就是你的身分證字號 跟 你的名字 互相對應

我要發表回答

立即登入回答