简单介绍DNS的工作原理,写出搭建DNS服务器的简要步骤
DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制。其中通过域名解析出ip地址的叫做正向解析,通过ip地址解析出域名的叫做反向解析。
下面对DNS的工作流程及原理进行简要说明
DNS的查询流程:需要解析服务的Client先查看本机的/etc/hosts;若无结果,则client查看本地的DNS缓存服务器;若无结果,则查找所属域的首选DNS服务器;若此时本地首选DNS服务器仍无法解析,则会想根域名服务器进行查询或选择转发解析请求。
DNS的查询规则:递归式查询,即client向支持递归查询的DNS Server发出解析请求,则自DNS服务器不论是自身直接解析还是无法解析想根发出请求,总会由其向client返回一个结果;迭代式查询,即接收client解析请求的DNS Server,若其能够解析则直接返回结果,若其不能解析将把解析请求交给其他DNS服务器,而不是自己亲自将解析过程完成。
所谓的“根”服务器:根服务器主要用来管理互联网的主目录,全世界只有13台。1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。
DNS记录的类型:
A:Address 域名向ip地址转换的记录;
PTR:Printer ip地址向域名转换的记录;
NS:代表域内的dns服务器;
MX:代表域内的邮件服务器;
CNAME:域名的别名;
SOA:start of authority用于标示域内主DNS服务器。
提供DNS服务的软件:BIND即Berkeley Internet Name Domain有加州大学伯克利分校研发是当今提供dns服务应用最广的软件。
下面让我们进入正题,以下内容包括:DNS的缓存服务器、主/从服务器、子域授权、转发以及视图的配置步骤。
DNS缓存服务器
Ps:为了更好的体会和理解dns的配置文件和域解析文件,作者在此只安装bind包,以手动编辑的方式生成这几个必须的文件。
1安装bind包
yum install bind
2创建住配置文件/etc/namedconf
options {
directory "/var/named"; #告知工作目录
};
zone “” IN {
type hint; #声明根域
file "namedca"; #根信息存放文件
};
zone "localhost" IN { #本地正解定义
type master; #类型为master
file "localhostzone"; #正解文件名
};
zone "00127in-addrarpa" IN { #本地反解定义
type master;
file "namedlocal"; #反解文件名
};
chown :named /etc/namedconf
#修改属组给named
3创建3个解析文件
namedca
dig -t NS > /var/named/namedca
#向跟服务器发起查询并重定向到目标文件
localhostzone
vim localhost zone
$TTL 86400
#默认的ttl值
@ IN SOA localhost adminlocalhost (
#主DNS服务器localhost
2011081601
#时间+序列号01
1H
#刷新时间:每隔多久来master查询更新
10M
#重试时间间隔
7D
&n
何搭建Microsoft的DNS
2、DNS服务的安装
我们从guanlisjsgznet开始,准备在这台计算机上安装DNS服务器服务。安装DNS的步骤如下
(1)选“开始→设置→控制面板”,打开“添加/删除程序”。
(2)单击“添加/删除Windows组件”,等待Windows组件向导启动。
(3)单击[下一步]按钮弹出Windows组件清单。
(4)单击[网络服务],然后再单击[详细情况]按钮。
(5)单击“DNS(域名系统)”旁的复选框。
(6)单击[确定]按钮返回“Windows组件”对话框。
(7)单击[下一步]安装相应的服务,然后逐一单击[完成]和[关闭]按钮即可完成。
不需要重新启动计算机,单击“开始→程序→管理工具→DNS”。
3、创建“winiiscom”区域
(1)用右键单击DNS中“+”根目录选“新建区域”以进入新建区域向导中。
(2)当向导提示到要让选择“区域类型”时,此处应该选“主要区域”,
(3)屏幕出现询问“区域名”,则在“名称”后的文字框中输入“winiiscom”,接着向导进入到“区域文件”提示窗口中,默认的,系统会自动选中“创建新文件,文件名为”一项,并在其后的文字框中自动填有“winiiscomdns”的名字,单击[下一步]按钮,然后单击[完成]即可完成区域创建,此时在DNS管理器的左边的“CHINA-RLMCOCOSN→正向搜索区域”里可以看到“winiiscom”区域(如图所示)。
注意:创建正向搜索区域的目的是为了将主机名翻译为IP地址,你也可以创建反向搜索区域,便于将IP地址翻译成相应的主机名,创建方法和正向搜索区域的创建相似。
4、创建主机
下面我们将以创建图2中Web服务器(wwwsjsgznet)主机为例说明如何创建主机。
(1)在窗口中的“winiisnet”区域上单击右键,选“新建主机”,在其后的对话框中的“名称”栏中输入主机名“www”,在“IP地址”栏输入“1921681213”。
(2)单击[添加主机]按钮,即成功地创建了主机地址记录www Winiiscom,在“新建主机”窗口再选“完成”便可回到DNS管理器中。
配置DNS客户端
步骤如下:
(1) 单击开始→控制面板→网络连接→本地连接“,右击,在快捷菜单中选择---“属性。
(2) 打开“本地连接属性“的对话框中的”常规“选项卡。在”此连接使用下列项目“列表框中选中”Internet协议(TCP/IP)“,单击”属性“按钮
(3) 出现“Internet协议(TCP/IP)“属性”对话框“常规”选项卡。选中“使用下面的DNS服务器地址”单选按钮,在“首选DNS服务器”文本框输入主DNS服务器的IP地址,在“备用DNS服务器”文本框中输入辅助DNS服务器的IP地址。
(4) 如果要设置多个DNS服务器,单击“高级”按钮。如图863所示。单击“添加”按钮可以添加多个DNS服务器。
5、测试配置
Nslookup是用来进行受动DNS查询的最常见工具。它既可以模拟标准的客户解析器也可以模拟服务器。作为客户解析器,nslookup可以直接向服务器查询信息,而作为服务器,nslookup可以实现从主服务器到辅助服务器的区域传送。
Nslookup命令的用法为:
Nslookup[option][host-to-find|server]
可用于如下两种模式:
非交互模式:在命令行中输入完整的命令,如nslookup wwwwiniiscom。
交互模式:只要输入” nslookup”和回车即可。不输入参数。在交互模式下,可以在提示符“>”下输入“help或者”来获得帮助信息。
(注意:在安装“DNS服务器”之前,必须用静态的IP地址配置计算机。)
关于WinMyDNS双线智能DNS解析系统
WinMyDNS是一款新型DNS智能解析软件,完全支持中文解析。该软件除了具备一般的基本DNS解析功能外,还可以自动识别浏览者的来源,并把相同的域名智能DNS解析到双线路机器的网通或电信的IP, 以便客户就近访问你的网站。同时系统还可以对被解析的服务器自动进行宕机检测, 以保证浏览者总是能访问到正常的服务器。
该系统还把DNS配置信息保存在ACCESS或MSSQL数据库里,应用者开发具体的DNS应用,只要对数据库中的SOA及RR表增减记录即可方便完成。 该系统与squid等WEB缓存软件完美结合,搭建属于自已的CDN加速器。
如何搭建WinMyDNS双线智能解析系统
WinMyDNS软件主要组件和文件:
WinMyDNSAdminexe是管理配置程序;WinMyDNSexe是服务程序;WinMyDNSxml是配置文件。 安装服务bat、卸载服务bat、启动服务bat、停止服务bat批处理的管理脚本。
DB目录是数据库目录,WinMyDNSmdb是ACCESS数据库;winmydnsbak是MSSQL数据库备份,还原进MSSQL即可使用。 WEB目录是WEB管理系统。 IPtable目录是默认的IP分配表。请及时更新,该分配表的准确与否直接关系对客户来源智能判断的准确与否。LOG是日志目录。
如何用winmydns搭建DNS服务器
1、你必须有一个属于您自已的域名。比如:abccom。没有域名的必须先注册一个域名。
2、在国际域名中心注册一个DNS域名,以使你的DNS服务器在全球有效。
A、在域名注册商(如新网,新网互联)的域名控制面板里一个“注册本域名下的DNS”的功能。
B、点击进去添加两个DNS,如ns1abccom及ns2abccom,IP地址填写你的安装winmydns的服务器IP地址。如果没有两台机器或两个固定IP,ns2可以随便写一个IP。
C、在http://wwwinterniccom/whoishtml页面填入你的DNS域名,如ns1abccom,选择"Nameserver",点submit看看你注册的DNS有没有生效。
3、新注册域名时,在DNS服务器框里填写你自已的ns1abccom及ns2abccom,不要使用域名注册商默认的。如果是已注册的域名,请修改域名的DNS服务器为ns1abccom及ns2abccom。
4,把你下载的WinMyDNS复制到D:\目录下,双击安装服务bat,为WinMyDNS注册NT服务。
5,配置WEB管理程序。在WinMyDNS目录下WEB文件夹中,打开connasp,修改connasp中的数据库链接参数。主要修改WinMyDNSDbType,WinMyDNSDbUser,WinMyDNSbPass这三个数据库连接参数的值。如图所示:
3,在IIS管理器是创建一个网站或虚拟目录指向WEB目录。然后访问indexasp页面,默认是用户名:admin,密码123456
4,登录进去之后,可以进行DNS解析管理。
6, URL转发服务器设置(不需要URL转发功能不可以不用设置)。
找一台服务器做为URL转发服务器。并且把IIS的默认站点(主机头为空的那个站点)的主目录指向到URL目录,并把indexasp设置为默认首页。
修改URL/indexasp中的数据库链接参数。与上一步WEB/CONNasp相同。
注意正确填写 WinMyDNSURL参数,如:urlabccom。并把解析一条urlabccom的A记录指向到URL转发服务器。
如何测试WinMyDNS工作是否正常
1使用netstat命令查看DNS是否在UDP的53端口工作
使用netstat命令检查53端口是否打开:开始->运行->cmdexe然后输入netstat -an -p udp如下:
如果winmydns工作正常。会在相应的IP有一条53的进示。如上面的记录: UDP 1921681158:53 :。如果没有53端口被打开。请在WinMyDNSAdminexe里启动一下winmydns服务。
2使用nslookup命令测试DNS解析是否正常
先确认域名的DNS器是否为您公司的DNS服务器。国际域名请到http://wwwinterniccom/whoishtml查询。国内域名请到wwwcnniccn查询。
使用nslookup命令检查您的DNS服务器是否解析正常:开始->运行->cmdexe然后输入nslookup如下:
使用server 命令nslookup指向到您的DNS服务器进行查询
使用set type=MX 或set type=A等命令查询指示查询的DNS类型。
直接输入wwwabccom等域名查询DNS解析结果。如果是A记录会出来IP地址。如果MX记录,会出来邮箱交换域名。
原文出自比特网,转载请保留原文链接:http://serverchinabytecom/402/11205902_3shtml
以win7为例,介绍设置主dns服务器的方法:
1、点击开始,点击运行,输入ncpacpl,点击确定;
2、右击本地连接,点击属性;
3、双击internet协议版本4;
4、点击使用下面的dns服务器地址,在首先dns服务器后输入后,点击确定即可。
备注:用户所在地区宽带的dns服务器地址,可利用百度搜索: 地区名 宽带名 dns获知。
腾讯云官网论坛有很多高手的招,引用其中一条如下:
1、安装DNS服务器组件: 安装bind
yum install -y bind bind-chroot bind-utils
2、编辑DNS主配置文件:
vi /etc/namedconf修改主配置文件,如下图:
修改完毕,保存退出
3、接着修改namedrfc1912zones文件,vi /etc/namedrfc1912zones,如下图:
4、添加设置DNS正向解析:
修改zone配置文件,正向解析:
cd /var/named/
cp namedlocalhost szlptcnzone
vi szlptcnzone(要和主配置文件[/etc/namedrfc1912zones]里面定义的zone文件名一致)
5、修改zone配置文件,反向解析:
cd /var/named/
cp namedlocalhost 32168192zone
vi 0168192zone(要和主配置[/etc/namedrfc1912zones]文件里面定义的zone文件名一致)
6、更改防火墙设置和selinux设置:
Getenforce(查看selinux是否开启)
setenforce 0
vi /etc/sysconfig/iptables #配置防火墙端口
-AINPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 953 -j ACCEPT
service iptables restart #重启防火墙,使规则生效
7、启动DNS服(注意DNS服务名称在linux是叫做bind):
service named start
8、测试检测域信息是否正常(重要):
检查之前先看下 配置文件有没有读取权限 ll /var/named
(如果没有读取全线, chmod +r /var/named/ 即可)
9、检查bind文件配置过程中容易出错:
以下命令用以检查bind配置文件及zone文件语法
named-checkconf /etc/namedconf
named-checkzone szlptcn /var/named/ szlptcnzone
10、启动重启DNS服务,查看服务状态:
service named restart
service network restart
用户端测试解析,通过nslookup进行测试。
0条评论