一种基于Linux系统的域名解析方法及装置的制造方法

文档序号:10597308阅读:142来源:国知局
一种基于Linux系统的域名解析方法及装置的制造方法
【专利摘要】本发明涉及一种基于Linux系统的域名解析方法及装置。本发明在接收到域名解析请求后,先在/etc/hosts中查找是否存在对应的域名与IP地址的映射关系,如果没有,再去/etc/resolv.conf查找 nameserver配置项,然后向nameserver对应的IP地址发送域名解析查询。通过利用Linux系统自带的配置文件进行IP地址的解析,无需另外的配置文件和数据库,操作简单,效率高,成本低。
【专利说明】
一种基于L i nux系统的域名解析方法及装置
技术领域
[0001]本发明涉及一种域名解析方法及装置,属于域名解析领域,具体是涉及一种基于Linux系统的域名解析方法及装置。
【背景技术】
[0002]为了方便记忆,通常采用域名来代替网络协议(Internet Protocol;简称:IP)地址来标识站点地址,当客户端需要访问网络时,在浏览器中输入域名,该域名经过解析之后,客户端便实现了对该IP地址所对应的服务器的访问。
[0003]但是,现有技术中的域名解析方法及装置需要单独定义一套配置文件或使用数据库进行配置,需要安装相应软件,配置和使用比较复杂。

【发明内容】

[0004]针对现有技术的以上缺陷或改进需求,本发明提供了一种基于Linux系统的域名解析方法及装置,其目的在于简化域名解析规则,无需另外的配置文件和数据库。
[0005]为了解决上述问题,根据本发明的一个方面,提供了一种基于Linux系统的域名解析方法,包括:
[0006]步骤I,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;所述域名解析规则用于定义域名和对应IP地址的映射关系;所述第三方域名服务器用于提供域名查询功能;
[0007]步骤2,域名解析服务器接收客户端的域名解析服务请求;所述域名解析服务请求中包含有待解析的域名;
[0008]步骤3,域名解析服务器在/et c/ho s t s文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4;
[0009]步骤4,域名解析服务器在/etc/resolv.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求;
[0010]步骤5,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断所述第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。
[0011]优选的,上述的一种基于Linux系统的域名解析方法,所述步骤I中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。
[0012]优选的,上述的一种基于Linux系统的域名解析方法,所述/etc/resol V.conf中包括多个第三方域名服务器,所述域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
[0013]为了解决上述问题,根据本发明的另一个方面,提供了一种基于Linux系统的域名解析装置,包括:
[0014]解析配置模块,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;所述域名解析规则用于定义域名和对应IP地址的映射关系;所述第三方域名服务器用于提供域名查询功能;
[0015]请求接收模块,域名解析服务器接收客户端的域名解析服务请求;所述域名解析服务请求中包含有待解析的域名;
[0016]地址查询模块,域名解析服务器在/etc/hosts文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4;
[0017]域名请求模块,域名解析服务器在/etc/resolV.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求;
[0018]结果判断模块,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断所述第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。
[0019]优选的,上述的一种基于Linux系统的域名解析装置,所述解析配置模块中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。
[°02°] 优选的,上述的一种基于Linux系统的域名解析装置,所述/etc/resol V.conf中包括多个第三方域名服务器,所述域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
[0021]总体而言,本发明所构思的以上技术方案与现有技术相比,通过利用Linux系统自带的配置文件进行IP地址的解析,无需另外的配置文件和数据库,操作简单,效率高,成本低。
【附图说明】
[0022]附图1是本发明的一种流程图;
[0023]附图2是本发明的结构图;
【具体实施方式】
[0024]下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
[0025]—种基于Linux系统的域名解析方法,包括:
[0026]步骤I,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;域名解析规则用于定义域名和对应IP地址的映射关系;第三方域名服务器用于提供域名查询功能;在Linux系统中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。
[0027]步骤2,域名解析服务器接收客户端的域名解析服务请求;域名解析服务请求中包含有待解析的域名;
[0028]步骤3,域名解析服务器在/etc/hosts文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4;
[0029]步骤4,域名解析服务器在/etc/resolv.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求;
[0030]步骤5,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。
[0031]如果/etc/resolv.conf中包括多个第三方域名服务器,域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
[0032]—种基于Linux系统的域名解析装置,包括:
[0033]解析配置模块,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;域名解析规则用于定义域名和对应IP地址的映射关系;第三方域名服务器用于提供域名查询功能;在Linux系统中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。
[0034]请求接收模块,域名解析服务器接收客户端的域名解析服务请求;域名解析服务请求中包含有待解析的域名;
[0035]地址查询模块,域名解析服务器在/etc/hosts文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4;
[0036]域名请求模块,域名解析服务器在/etc/resolV.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求;
[0037]结果判断模块,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。如果/etc/resolv.conf中包括多个第三方域名服务器,域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
[0038]实施例1:
[0039]首先,对本实施例的术语进行说明如下:
[0040]Linux: 一种自由和开放源代码的操作系统;
[0041]域名:一串用点分隔的名字,用于标识因特网上计算机的电子方位,在日常应用中,最后一个点会省略;
[0042]内网域名:用于局域网内部的域名,外部网络不可访问;
[0043]IP地址:互联网协议地址,分配给网络上使用网际协议的设备的数字标签;
[0044]内网:又称局域网,指覆盖局部区域(如公司内部)的计算机网络;
[0045]域名系统:因特网的一项服务,将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网;
[0046]域名解析:将域名映射为IP地址的过程;
[0047]Nameserver:域名服务器。
[0048]本发明描述了一种Linux下的域名系统实现方案。在一台已经可以正常解析内网域名和外网域名的Linux计算机上,实现此方案,其他计算机可将此Linux机器作为域名系统服务器(将域名服务器地址改为此Linux机器的IP地址),从而正常解析内网域名和外网域名。客户端机器操作系统不限。
[0049]现有技术中的域名查询系统的实现,都需要单独定义一套配置文件或使用数据库进行配置。而在标准的Linux系统中,已经内置了一套方案。当Linux查询域名时,会先在/etc/hosts中查找是否存在对应的域名与IP地址的映射关系,如果没有,再去/etc/resolv.conf查找nameserver配置项,然后向nameserver对应的IP地址发送域名解析查询。本实施例的方案中,可以直接利用这2个文件,从而无需另外的配置文件和数据库。
[0050]一个典型的/etc/hosts文件内容如下
[0051]127.0.0.1 1calhost
[0052]192.168.1.10 www.mydomain.com
[0053]其中,第一行是系统原有的规则,表明将1calhost这个域名解析到127.0.0.1这个IP地址。
[0054]第二行为用户自己添加的规则,表明将WWW.mydomain.com这个域名解析到192.168.1.10这个 IP 地址。
[0055]一个典型的/etc/resolv.conf文件内容如下
[0056]nameserver 119.29.29.29
[0057]表明将119.29.29.29作为域名服务器,当本地找不到域名对应的IP地址时,向119.29.29.29发送查询请求。
[0058]下面结合图1所示,对本实施例描述如下:
[0059]步骤1:用户的计算机(下称客户端)向实现了域名系统的Linux机器(下称服务器)发送域名解析查询。
[0000]步骤2:服务器查看自己的/etc/hosts文件。
[0061 ]步骤3:服务器判断/e t c/ho s t s文件中是否有客户端发来的域名的IP地址映射。如果有,将此IP地址返回给客户端,查询结束。否则进行步骤4。
[0062]步骤4:服务器查看自己的/etc/resolv.conf文件。
[0063]步骤5:服务器从/etc/resolv.conf中找出nameserver配置项对应的IP地址,向此IP地址发送域名查询。
[0064]步骤6:服务器获取上一步骤的查询结果。
[0065]步骤7:服务器判断是否返回了正确的IP地址,如果是,将IP地址返回给客户端,查询结束。否则进行步骤8。
[0066]步骤8:服务器告诉客户端,查询的域名对应的IP地址不存在,查询结束。
[0067]步骤9:查询结束。
[0068]实施例2:
[0069]本发明还提供一种基于Linux系统的域名解析装置,包括:
[0070]解析配置模块,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;域名解析规则用于定义域名和对应IP地址的映射关系;第三方域名服务器用于提供域名查询功能;在Linux系统中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。
[0071]请求接收模块,域名解析服务器接收客户端的域名解析服务请求;域名解析服务请求中包含有待解析的域名;
[0072]地址查询模块,域名解析服务器在/etc/hosts文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4;
[0073]域名请求模块,域名解析服务器在/etc/resolV.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求;
[0074]结果判断模块,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。如果/etc/resolv.conf中包括多个第三方域名服务器,域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
[0075]本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
【主权项】
1.一种基于Linux系统的域名解析方法,其特征在于,包括: 步骤I,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;所述域名解析规则用于定义域名和对应IP地址的映射关系;所述第三方域名服务器用于提供域名查询功能; 步骤2,域名解析服务器接收客户端的域名解析服务请求;所述域名解析服务请求中包含有待解析的域名; 步骤3,域名解析服务器在/e t c/ho s t s文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4; 步骤4,域名解析服务器在/etc/resolv.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求; 步骤5,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断所述第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。2.根据权利要求1所述的一种基于Linux系统的域名解析方法,其特征在于,所述步骤I中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。3.根据权利要求2所述的一种基于Linux系统的域名解析方法,其特征在于,所述/etc/resolv.conf中包括多个第三方域名服务器,所述域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。4.一种基于Linux系统的域名解析装置,其特征在于,包括: 解析配置模块,选择安装有Linux系统的服务器作为域名解析服务器,在域名解析服务器中添加域名解析规则和第三方域名服务器;所述域名解析规则用于定义域名和对应IP地址的映射关系;所述第三方域名服务器用于提供域名查询功能; 请求接收模块,域名解析服务器接收客户端的域名解析服务请求;所述域名解析服务请求中包含有待解析的域名; 地址查询模块,域名解析服务器在/etc/hosts文件中查询待解析的域名对应的IP地址;若查询到待解析的域名对应的IP地址,则将查询到的IP地址返回给客户端,否则执行步骤4; 域名请求模块,域名解析服务器在/etc/resolv.conf查找第三方域名服务器,并向第三方域名服务器发送域名查询请求; 结果判断模块,由域名解析服务器接收第三方域名服务器返回的第三方查询结果;判断所述第三方查询结果中是否包括正确的IP地址,若包括正确的IP地址,则将该IP地址返回给客户端,否则,向客户端返回查询失败信息。5.根据权利要求4所述的一种基于Linux系统的域名解析装置,其特征在于,所述解析配置模块中,在域名解析服务器的/etc/hosts文件中添加域名解析规则,在域名解析服务器的/etc/resolv.conf文件中添加第三方域名服务器地址。6.根据权利要求5所述的一种基于Linux系统的域名解析装置,其特征在于,所述/etc/resolv.conf中包括多个第三方域名服务器,所述域名解析服务器依次向每一个第三方域名服务器发送域名查询请求,直至第三方域名服务器返回正确的IP地址或已经向最后一个第三方域名服务器发送了域名查询请求为止。
【文档编号】H04L29/12GK105959428SQ201610271911
【公开日】2016年9月21日
【申请日】2016年4月28日
【发明人】张利平
【申请人】武汉斗鱼网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1