在公司的客户机上访问Yahoo的主页。下面图中的①~⑧步是将www.yahoo.com解析成IP地址204.71.202.160的全过程。请问A、B、C分别是哪一级

chenypluck 2004-10-28 12:00:52
在公司的客户机上访问Yahoo的主页。下面图中的①~⑧步是将www.yahoo.com解析成IP地址204.71.202.160的全过程。请问A、B、C分别是哪一级的名字服务器?解析的基本过程是怎么样的?

公司DNS服务器 去-——-----2-----到A DNS服务器
公司DNS服务器 到--------3-------去A DNS服务器

公司DNS服务器 去------4--------到B DNS服务器
公司DNS服务器 到------5--------去 B DNS服务器
公司DNS服务器 去------6---------到C DNS服务器
公司DNS服务器 到---------7--------去C DNS服务器
| |去
1| |8
去| |
客户机

说明
“公司DNS服务器 去-——-----2-----到A DNS服务器 ”
表示第2步由公司DNS服务器到 A DNS服务器 。
“公司DNS服务器 到--------3-------去A DNS服务器”
表示第3步由A DNS服务器到公司DNS服务器

由于不好画图,所有的公司DNS服务器实际上是表示一个公司DNS服务器。其他一样

请多指教,谢谢了
...全文
103 点赞 收藏 14
写回复
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
icuc88 2004-10-28
"local DNS(cache)----->"."--->".com"--->"yahoo.com""如果说是采用正向解析,
是不是说第一次解析COM,第2次解析YAHOO,第3次解析WWW
"local DNS(cache)----->"."什么意思呢?
^^^^^^^^^^^^^^^^
根域,是DNS服务的授权机构

A DNS服务器 COM
B DNS服务器 YAHOO
C DNS服务器 WWW
请问是这样吗?
………………………………………………
稍微有点点错误.
com.这个服务器专门维护和*.com相关的域的授权,它将维护yahoo这个DNS服务器的记录。相对来说
yahoo是com.这个服务器的一个记录。

yahoo.com.是另外的一台服务器,维护*.yahoo.com这样的记录。

www是一个主机名称。www.yahoo.com我们把它叫做: FQDN(Fully Qualified Domain Name)



公司的DNS服务器还有什么用呢?
………………………………………………
负责解析你所支持的名称。你可以把yahoo.com看作是你的公司的服务器
回复
chenypluck 2004-10-28
"local DNS(cache)----->"."--->".com"--->"yahoo.com""如果说是采用正向解析,
是不是说第一次解析COM,第2次解析YAHOO,第3次解析WWW
"local DNS(cache)----->"."什么意思呢?
A DNS服务器 COM
B DNS服务器 YAHOO
C DNS服务器 WWW
请问是这样吗?
公司的DNS服务器还有什么用呢?
回复
凤凰 2004-10-28
DNS工作原理


DNS分為Client和Server,Client扮演發問的角色,也就是問 Server 一個Domain Name,而Server必須要回答此Domain Name的真正IP地址,DNS是怎麼來作名稱解析的?


DNS的工作原理
DNS分為Client和Server,Client扮演發問的角色,也就是問Server一個Domain Name,而Server必須要回答此Domain Name的真正IP地址。而當地的DNS先會查自己的資料庫。如果自己的資料庫沒有,則會往該DNS上所設的的DNS詢問,依此得到答案之後,將收到的答案存起來,並回答客戶。

DNS伺服器會根據不同的授權區(Zone),記錄所屬該網域下的各名稱資料,這個資料包括網域下的次網域名稱及主機名稱。

在每一個名稱伺服器中都有一個快取暫存區(Cache),這個快取暫存區的主要目的是將該名稱伺服器所查詢出來的名稱及相對的IP位址記錄在快取暫存區中,這樣當下一次還有另外一個用戶端到次伺服器上去查詢相同的名稱 時,伺服器就不用在到別台主機上去尋找,而直接可以從暫存區中找到該筆名稱記錄資料,傳回給用戶端,加速用戶端對名稱查詢的速度。例如:

當DNS用戶端向指定的DNS伺服器查詢網際網路上的某一台主機名稱
DNS伺服器會在該資料庫中找尋用戶所指定的名稱
如果沒有,該伺服器會先在自己的快取暫存區中查詢有無該筆紀錄,如果找到該筆名稱記錄後,會從DNS伺服器直接將所對應到的IP位址傳回給用戶端
如果名稱伺服器在資料記錄查不到且快取暫存區中也沒有時,伺服器首先會才會向別的名稱伺服器查詢所要的名稱。例如:
DNS用戶端向指定的DNS伺服器查詢網際網路上某台主機名稱
當DNS伺服器在該資料記錄找不到用戶所指定的名稱時,會轉向該伺服器的快取暫存區找尋是否有該資料
當快取暫存區也找不到時,會向最接近的名稱伺服器去要求幫忙找尋該名稱的IP位址
在另一台伺服器上也有相同的動作的查詢,當查詢到後會回覆原本要求查詢的伺服器
該DNS伺服器在接收到另一台DNS伺服器查詢的結果後,先將所查詢到的主機名稱及對應IP位址記錄到快取暫存區中
最後在將所查詢到的結果回覆給用戶端

範例
我們舉例說明,假設我們要查詢網際網路上的一個名稱為www.seed.net.tw,從此名稱我們知道此部主機在台灣TW,爾且要找的組織名稱seed.net.tw此網域下的www主機,以下為名稱解析過程的每一步驟。

《Step 1》在DNS的用戶端(Reslover)鍵入查詢主機的指令,如:

c:\ping www.seed.net.tw
pinging www.seed.net.tw 【192.72.80.36】with 32bytes of data
reply from 192.72.80.36 bytes time <10ms ttl 253

《Step 2》而被指定的DNS伺服器先行查詢是否屬於該網域下的主機名稱,如果查出改主機名稱並不屬於該網域範圍,之後會再查詢快取暫存區的紀錄資料,查是否有此機名稱。

《Step 3》查詢後發現暫存區中沒有此紀錄資料,會取得一台根網域的其中一台伺服器,發出說要找www.seed.net.tw的Request。

《Step 4》在根網域中,向Root Name Server詢問,Root Name Server記錄了各Top Domain分別是由哪些DNS Server負責,所以他會回應最接近的Name Server為控制TW網域的DNS伺服主機。

《Step 5》Root Name Server已告訴Local DNS Server哪部Name Server負責.tw這個Domain,然後Local DNS再向負責發出找尋www.seed.net.tw的名稱Request。

《Step 6》在.tw這個網域中,被指定的DNS伺服器在本機上沒有找到此名稱的的紀錄,所以會回應原本發出查詢要求的DNS伺服器說最近的伺服器在哪裡?他會回應最近的主機為控制net.tw網域的DNS伺服主機。

《Step 7》原本被查詢的DNS伺服器主機,收到繼續查詢的IP位置後,會再向net.tw的網域的DNS Server發出尋找www.seed.net.tw名稱搜尋的要求。

《Step 8》net.tw的網域中,被指定的DNS Server在本機上沒有找到此名稱的記錄,所以會回覆查詢要求的DNS Server告訴他最接近的伺服器在哪裡?他就回應最接近為控制seed.net.tw的網域的DNS主機。

《Step 9》原本被查詢的DNS Server,在接收到應繼續查詢的位置,在向seed.net.tw網域的DNS Server發出尋找www.seed.net.tw的要求,最後會在seed.net.tw的網域的DNS Server找到www.seed.net.tw此主機的IP。

《Step 10》所以原本發出查詢要求的DNS伺服器,再接收到查詢結果的IP位置後,回應回給原查詢名稱的DNS用戶端。


兩種真正DNS的查詢模式
有兩種詢問原理,分為Recursive和Interactive兩種。前者是由DNS代理去問,問的方法是用Interactive方式,後者是由本機直接做Interactive式的詢問。由上例可以看出,我們一般查詢名稱的過程中,實際上這兩種查詢模式都是交互存在著的。

遞迴式(Recursive):DNS用戶端向DNS Server的查詢模式,這種方式是將要查詢的封包送出去問,就等待正確名稱的正確回應,這種方式只處理回應回來的封包是否是正確回應或是說是找不到該名稱的錯誤訊息。
交談式(Interactive):DNS Server間的查詢模式,由Client端或是DNS Server上所發出去問,這種方式送封包出去問,所回應回來的資料不一定是最後正確的名稱位置,但也不是如上所說的回應回來是錯誤訊息,他回應回來告訴你最接近的IP位置,然後再到此最接近的IP上去尋找所要解析的名稱,反覆動作直到找到正確位置。

http://www.dastu.com/info/dn/server/1.htm
回复
icuc88 2004-10-28
zhangblade(最近工作比较忙,有事情短信留言……)正解。


local DNS(cache)----->"."--->".com"--->"yahoo.com"
回复
chenypluck 2004-10-28
将www.yahoo.com解析成IP地址204.71.202.160,请问A、B、C分别是哪一级的名字服务器呢,谢谢了
回复
chenypluck 2004-10-28
客户首先向“公司的DNS服务器”发出请求,
“公司的DNS服务器”向“A DNS服务器”发出请求,“A DNS服务器”向“公司的 DNS服务器”发出响应;
“公司的DNS服务器”向“B DNS服务器”发出请求,“B DNS服务器”向“公司的 DNS服务器”发出响应;
“公司的DNS服务器”向“C DNS服务器”发出请求,“C DNS服务器”向“公司的 DNS服务器”发出响应;
最后返回客户

回复
roland_c 2004-10-28
简单地说,首先你们公司的DNS服务器查询ISP的DNS服务器,但ISP的DNS服务器没有关于此域名的信息,于是向上一级DNS服务器查询,仍没有结果,再向上一级查询,然后逐级返回结果。但你所说的似乎是你们公司的DNS服务器直接向其他DNS服务器查询,会是这样吗?除非是被授权的DNS服务器,否则是不会有这样的情形的。
回复
xjp6688 2004-10-28
怎么都是繁体字,哈哈!
回复
zhangblade 2004-10-28
看不懂你画的,贴上dns服务器的运作过程,希望有所帮助:

1.當被詢問到有關本域名之內的主機名稱的時候﹐DNS伺服器會直接做出回答﹔
2.如果所查詢的主機名稱屬於其它域名的話﹐會檢查記憶體﹐看看有沒有相關資料﹔
3.如果沒有發現﹐則會轉向root伺服器查詢﹔
4.然後root伺服器該域名之授權(authoritative)伺服器(即 NS ,可能會超過一台)的地址告知﹔
5.本地伺服器然後會向其中的一台伺服器查詢﹐並將這些伺服器名單存到記憶體中﹐以備將來之需(省卻再向root查詢的步驟)﹔
6.遠方伺服器回應查詢﹔
7.將查詢結果回應給客戶﹐並同時將結果儲存一個備份在自己的快取記憶裡面﹔
8.如果在存放時間尚未過時之前再接到相同的查詢﹐則以存放於快取記憶裡面的資料來做回應。
回复
chenypluck 2004-10-28
谢谢了
回复
zhangblade 2004-10-28
编号: 66 发送者 chenypluck 发送时间 2004-10-28 13:20:57 删除 回复
内容 哦,就是说首先还是在公司的DNS服务器里找,如果公司的DNS服务器没有,就去问外面的DNS服务器,外面的DNS服务器依次把结果告诉给公司的DNS服务器,公司的DNS服务器就象学习路由表一样学会了;
如果在公司的DNS服务器找到了,就在公司内部。
我的理解对吗?谢谢了。
~~~~~~~~~~~~~~~~~~
基本正确了。
回复
icuc88 2004-10-28
编号: 836 发送者 chenypluck 发送时间 2004-10-28 13:22:27 删除 回复
内容 哦,就是说首先还是在公司的DNS服务器里找,如果公司的DNS服务器没有,就去问外面的DNS服务器,外面的DNS服务器依次把结果告诉给公司的DNS服务器,公司的DNS服务器就象学习路由表一样学会了;
如果在公司的DNS服务器找到了,就在公司内部。
我的理解对吗?谢谢了。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
不是学会了,而是学习到了,暂时保留在cache里面。

不过你的理解基本正确:)
回复
zhangblade 2004-10-28
晕……看来我要去练练打字了:(
回复
zhangblade 2004-10-28
是不是说第一次解析COM,第2次解析YAHOO,第3次解析WWW
可以理解为:先找负责.com的,再找负责yahoo的,再找负责www的

"local DNS(cache)----->"."什么意思呢?
local的dns服务不知道,查cache也灭有,就去找根了(就是root)

A DNS服务器 COM
B DNS服务器 YAHOO
C DNS服务器 WWW
请问是这样吗?
如果local dns不知道的话就是这样了。

公司的DNS服务器还有什么用呢?
1、内网的可以解析(内网的它就是根了)
2、如果在内网和cache都找不到,就要靠它帮你去问根了,问完了它会记录,这样,你旁边的机器再问它,它就变聪明知道了,马上就能告诉你旁边的机器了。
回复
发动态
发帖子
windows网络管理与配置
创建于2007-08-02

6015

社区成员

windows网络管理与配置
申请成为版主
社区公告
暂无公告