本地域名主机和授权域名主机有什么区别 (本地域名配置)
本文目录导航:
本地域名主机和授权域名主机有什么区别
本地域名主机和授权域名主机区别为:登录访问不同、操作不同、查问不同。
一、登录访问不同
1、本地域名主机:本地域名主机是任何人都可以登录访问的。
2、授权域名主机:授权域名主机只要授权的用户角色才可以登录访问的。
二、操作不同
1、本地域名主机:本地域名主机的操作不受限度,有最高操作权限。
2、授权域名主机:授权域名主机依据设置的特定权限角色不同,操作也不同。
三、查问不同
1、本地域名主机:本地域名主机可以以DNS客户的身份向某一个根域名主机查问。
2、授权域名主机:授权域名主机不能向根域名主机查问。
域名 和 主机是什么相关
1.这个域名和主机没有肯定的咨询,有的客户经常使用主机就不用域名,只要要ip外部访问就可以。
2.不过少数状况下,都是须要域名的,域名须要解析到主机的ip才可以。
只要域名解析到主机ip解析失效后,就可以反常访问网站了。
3.普通 是国内顶级域名,价钱比拟廉价,几十块钱一年。
其他的不同的域名不要钱是不一样的。
一文搞懂DNS协定是如何上班的!
DNS是计算机网络中的一个运行层协定,它用于域名解析:将域名地址解析成对应的IP地址。那么他是如何启动域名解析的呢?上方就来一同了解一下吧~
查阅本文可以学习到一下常识:
域名解析环节与方法
域名解析方法
DNS报文结构
成功一个繁难的域名解析服务
域名组成在开局之前,先引见一下域名是怎样组成的
认为例,域名的读顺序是从右往左,左边com为顶级域名,google和www则为标签(Label),com后的标签也称为二级域名。
顶级域名4?
顶级域名可以通知用户域名所提供的服务类型。
最通用的顶级域名(,,)不须要web主机满足严厉的规范,但一些顶级域名则口头更严厉的政策。
比如
地域的顶级域名,如,,或,可以要求肯定提供应定言语的主机或许托管在指定国度。
这些TLD理论标明对应的网页服务附属于何种言语或哪个地域。
蕴含的顶级域名只能被政府部门经常使用。
edu只能为教育或钻研机构经常使用。
顶级域名既可以蕴含拉丁字母,也可以蕴含不凡字符。
顶级域名最长可以到达63个字符,不过为了经常使用繁难,大少数顶级域名都是两到三个字符。
标签(Label)4?
标签都是紧随着TLD的。
标签由1到63个大小写不敏感的字符组成,这些字符蕴含字母A-z,数字0-9,甚至“-”这个符号(当然,“-”不应该出如今标签扫尾或许标签的开头)。
了解完域名的组成后,再来看DNS协定,DNS是一个基于UDP的运行层协定。
经过客户机-主机的模式启动通讯:也就是说,域名解析须要经过向主机端发送恳求,主机端查问映射表或数据库后前往对应的IP地址给客户机(如图)。
DNS服务是按档次结构来检索域名的。
为什么须要经常使用档次结构呢?假定咱们只要根域名主机,那么世界一切的DNS解析都会涌入该主机,这样做主机的压力会十分大。
DNS档次结构如图所示
域名主机分为4种:
根域名主机:根域名主机存储一切曾经记载的域名,然而根域名主机很少,只要几个。
顶级域名主机:记载顶级域名下的一切域名,比如:com的顶级域名主机会记载一切顶级域名为com的域名。
威望域名主机:担任一个区域的DNS解析的域名主机。
本地域名主机:运转在本地的一个域名服务,用于向其他域名主机恳求解析的服务。
递归解析与迭代解析域名解析流程:
在向DNS恳求之前,本地域名主机会先查问指定的域名能否有缓存,假设有且未过时,则立刻前往。
假设没有,则向用户定义好的域名主机查问。
如下图
上方,咱们也说到:DNS主机是一个层级结构,多个域名主机散布在不同的中央,但每次恳求只能恳求一个主机。假设恳求的域名主机没有记载该域名对应的IP,那么他应该怎样向下一个域名主机查问呢?
DNS查问提供了两种方法:迭代查问和递归查问
递归查问望文生义,递归查问会在域名主机查问记载的时刻,继续向该域名主机指定的下一级域名主机查问,直到根域名主机为止。
迭代查问迭代查问在没有查问到对应的记载时,会将下一个可查问的域名主机地址前往到本地域名主机,由本地域名服务重视新动员恳求查问,直到根域名主机为止。
报文结构
接上去检查一下DNS恳求发送上来的报文数据是怎样的,首先咱们创立一个UDP服务监听本地的53端口。
而后在网络中设置DNS主机指向本机的域名。
首先剖析一下DNS恳求报文,为了繁难检查,咱们写一个DNS服务,去捕捉DNS恳求
修正一下DNS解析的地址
建设一个UDP服务,监听53端口
constdgram=require(dgram);constserver=(udp4);(error,(err)=>{(servererror:,);();});
(message,(msg,rinfo)=>{try{constdnsJson=((msg));constdnsData=();(dnsData)}catch{}});
(listening,()=>{constaddress=();(serverlisteningat${});});
运转服务后在`命令行工具`中ping一下``;可以看到DNS解析的恳求报文曾经在node服务中打印进去了将他们转换为8位二进制数。再来对照一下DNS报文结构。*事务ID:占两字节,对应16个二进制位,作用是作为`恳求的标识`,即在数组中前两个数``*标记位:占两字节,16个二进制位,每一个二进制位都有其作用,每个标记位按顺序说明如下``|标记|作用||---|---||QR(1bit)|查问(Query)/照应(Response)标记,0为查问,1为照应||opcode(4bit)|示意操作码,0示意规范查问;1示意反向查问;2示意主机形态恳求||AA(Authoritative)(1bit)|授权应对,该字段在照应报文中有效。值为1时,示意称号主机是威望主机;值为0时,示意不是威望主机。||TC(Truncated)(1bit)|示意能否被截断。值为1时,示意照应已超越512字节并已被截断,只前往前512个字节||RD(RecursionDesired)(1bit)|能否希冀递归。0示意迭代查问,1示意递归查问||RA(RecursionAvailable)(1bit)|能否允许递归。该字段只出如今照应报文中。当值为1时,示意主机允许递归查问||ZERO(3bit)|示意保管字段||rcode(Replycode)(4bit)|示意前往码,0示意没有过错,3示意名字过错,2示意主机失误(ServerFailure)|*疑问计数,对应数组中第5-12个数|字段|说明||----------------------------|-----------------------||Questions(2字节)(查征询题数)|示意查征询题区域节的数量,在恳求的时刻普通为1||AnswerRRs(2字节)(回答RR数)|示意回答区域的数量,依据恳求普通为1||AuthorityRRs(2字节)(威望RR数)|示意授权区域的数量,普通为0||AdditionalRRs(2字节)(附加RR数)|示意附加区域的数量普通为0|*注释局部(查征询题区域)接上去就是查问的注释局部,从恳求报文第16个数开局到完结都属于注释局部。注释局部蕴含三个字段:`查问名(域名)`,`查问类型`和`查问类`*查问名蕴含域名的可变长度字段,每个域以计数扫尾,最后一个字符为0。(也会有IP的时刻,即反向查问)以上文的恳求来说,从第`13`位开局|5|98|97|105|100|117|3|99|111|109|0||--|--|--|--|--|--|--|--|--|--|--||长度|b|a|i|d|u|长度|c|o|m|完结|比如,第一位为长度,前面5位则为`ASCII码`组成的字母,以此类推,直到标记位为0为止*查问类型<sup>[3](,占2个数,16个二进制位|类型|助记符|说明||---|-----|-----------------||1|A|由域名取得IPv4地址,普通是这个||2|NS|查问域名主机||5|CNAME|查问规范称号||6|SOA|开局授权||11|WKS|熟知服务||12|PTR|把IP地址转换成域名||13|HINFO|主机消息||15|MX|邮件替换||28|AAAA|由域名取得IPv6地址||252|AXFR|传送整个区的恳求||255|ANY|对一切记载的恳求|*查问类<sup>[3](,占2个数,16个位###照应报文再来写一个转发dns恳求的服务,用来失掉DNS照应报文```javascriptconstdgram=require(dgram);constserver=223.5.5.5;//须要转发的DNS主机functionforward(msg,rinfo){constclient=(udp4);(error,(err)=>{(`clienterror:`+);();});(message,(fMsg,fbRinfo)=>{((()));//失掉照应报文//转发(fMsg,,,(err)=>{err&&(err);});();});(msg,53,fbSer,(err)=>{if(err){(err);();}});}咱们再ping一下这个域名
雷同,咱们把他转位二进制数据
可以看到,第三,四个数(标记位)变为129,128,对应的二进制位为上文也说到,第一个二进制位为:QR查问(Query)/照应(Response)标记,1为照应,因此可以知道他是照应报文。
其他的前半局部与恳求报文分歧。
前面多进去的局部则为照应的数据,即
偏移量(2字节)
其中[192,12]是一个(2字节)指针,普通照应报文中,资源局部的地址(域名)普通都是指针C00C(),偏移量是12,指向恳求局部的地址(域名)。
资源记载的照应类型
照应类型,也就是前面的[0,1],含意与查征询题局部的类型相反
资源记载的照应类
照应类,也就是前面的[0,1],含意与查征询题局部的类相反
生定期间(4字节)
接下去的是[0,0,1,103],以秒为单位,示意的是资源记载的生命周期,可以了解为失掉到的资源记载的缓存期间
资源长度
资源长度是[0,4],ipv4是0004
资源数据
资源数据是可变长度的字段,在这里咱们拿它来指向IP地址,例如上文例子为:[220,181,38,148]
前面又从[192,0]开局,示意改域名能解析出多个IP地址
至此,DNS的恳求报文与照应报文都已引见完。
4.成功一个繁难的域名解析服务最后,让咱们来做一个属于自己的DNS主机吧~
constdgram=require(dgram);constserver=(udp4);constdns=require(dns);([223.5.5.5]);/**自定义解析的域名*/lettranslateObj={:[220,181,38,148],};/**解析域名*/functionexplainDomain(dnsArr){letarr=[];letqueryType=[];//查问类型letqueryClass=[];//查问类letlen=0;while(){if(dnsArr[0]===0){(0,1);queryType=(0,2);queryClass=(0,2);}else{if(len===0){len=(0,1);}else{arr=((0,len),[46]);len=0;}}}();return{((val)=>(val))(),queryType,queryClass,};}/**结构照应报文*/functioncreateResponse(requestArr,ip){constresponse=newArrayBuffer(+16);constresArr=[192,12,0,1,0,1,0,0,0,218,0,4](ip);letbufView=newUint8Array(response);for(leti=0;i<;i++)bufView[i]=requestArr[i];for(leti=0;i<;i++){bufView[+i]=resArr[i];}//将恳求报文变为照应报文bufView[2]=129;bufView[3]=128;bufView[7]=1;returnbufView;}(error,(err)=>{(servererror:,);();});(message,(msg,rinfo)=>{try{constdnsJson=((msg));constdnsData=();lettarget=(0,2);//会话标识(2字节)letflag=(0,2);//标记(2字节)letdata=(0,8);//数量字段(共8字节)letdomainData=explainDomain(dnsData);//查找能否有自定义的域名if(translateObj[]){/**结构照应报文*/constresponseArr=createResponse(,translateObj[]);(responseArr,,,(err)=>{if(err){(senderror,err);();}});//没有自定义的域名,则经常使用其他DNS服务解析域名}else{(,(err,address)=>{if(err){(dnslookuperr,err);return;}if(!)return;(,address);constresponseArr=createResponse(,address[0](.)((val)=>Number(val)));(responseArr,,,(err)=>{if(err){(senderror,err);();}});});}}catch{}});(listening,()=>{constaddress=();(`serverlisteningat${}`);});(53);运转服务后,咱们ping一下自定义的看一下能否有解析到对应的IP
小结本文重要引见了:
域名的组成(顶级域名,二级域名)
DNS服务架构(根域名主机,顶级域名主机,威望域名主机,本地域名主机)
DNS查问方法(递归查问,迭代查问)
DNS恳求和照应报文
经常使用node成功一个DNS服务
参考计算机网络原理机械工业出版社2018
DNS报文格局解析
NodeJS编写繁难的DNS主机
什么是域名?
原文:
文章评论