c#网络编程之------------DNS编程基础

DNS基础问答

问:什么是“DNS”?其中文为何?

   答:DNS,简单地说,就是Domain Name System,翻成中文就是域名系统

 

问:DNS有什么用途?

答:在一个TCP/IP架构的网络(例如Internet)环境中,DNS是一个非常重要而且常用的系统。主要的功能就是将人易于记忆的Domain Name与人不容易记忆的IP Address作转换。而上面执行DNS服务的这台网络主机,就可以称之为DNS Server。基本上,通常我们都认为DNS只是将Domain Name转换成IP Address,然后再使用所查到的IP Address去连接(俗称正向解析)。事实上,将IP Address转换成Domain Name的功能也是相当常使用到的,当login到一台Unix工作站 时,工作站就会去做反查,找出你是从哪个地方连线进来的(俗称“逆向解析”)。

 

问:DNS是怎么运作的?

答:DNS是使用层的方式来运作的。例如:哈工大紫丁香站的Domain Namebbs.hit.edu.cn,这个Domain Name当然不是凭空而来的,是从.edu.cn所分配下来的。.edu.cn又是从.cn授予(delegation)的。.cn是从哪里来的呢?答案是从“.”,也就是所谓的根域root domain)来的。根领域已经是Domain Name的最上层。而“.”这层是由InterNICInternet Network Information Center,互联网信息中心)所管理。全世界的Domain Name就是这样,一层一层的授予下来。

问:当我查一个Domain Name时,DNS是怎么查出它的IP的呢?

答:举个例子,假设今天我们查的Domain Name(作一个DNS query)为bbs.hit.edu.cn时,DNS Server会这么处理:
   (1)
你所用的电脑(可能是PC,也可能是工作站)送出一个问题给这台电脑所设定的DNS Server,提问:bbs.hit.edu.cnIP是什么?
   (2)
这台DNS会先看看是不是在它的cache中,如果是,就丢出答案。如果不是,就从最上头查起。在DNS Server上面一定有设定“.”要跟谁问。所以,这个时候它就往“.”层的任何一台DNS(目前“.”13台)问:.cn要问谁?
   (3)
.”层的DNS会回答.cn要向谁查(同时你用的DNScache起来这个答案)。
   (4)
接下来你所用的DNS就会向.cn这层的DNS问:.edu.cn要问谁?
   (5) .cn
的这层就会回答.edu.cn要向谁查(同时你用的DNS也把这答案cache起来)。
   (6)
直到bbs.hit.edu.cn回答:bbs.hit.edu.cnIP202.118.224.2(又cache起来)。

   
经过了这么多的过程,终于得到了这个IP,接下来才能作进一步的连线。要注意的是,在每一层都会问一个问题,并且把答案记下来(cache起),而且还会忘掉(看该层的设定是要cache多久)。

问:DNS要怎么设置?

答:如果,只是要使用DNS,那只要在TCP/IP的网络属性中设置即可。设置的方法跟使用的操作系统有关。例如:Windows 9x控制面板”→“网络”→“TCP/IP”→“属性中,找到DNS的部分再来设置。Unix/etc/resolv.conf这个文件中设置(如果,要架设一台DNS Server,就不是在这里讨论的了)。

 

问:哪一台 DNS 资料最新?
   
答:如果你知道DNS是利用阶层架构运作的,那就应该知道,离你最近的DNS,就是最好的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值