linux搭建dns缓存服务器(linux服务器dns配置安装)

Linux下常用的DNS服务软件是什么,常用的DNS记录有?

Linux下常用的DNS服务软件是 BIND

以下是一个配置DNS服务的实例:

………………………………………………DNS的配置步骤:……………………………………………………

一、配置静态IP地址:

#vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.198.0.5

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

#/etc/init.d/network restart

#ifconfig eth0

二、使用BIND构建DNS服务器

1、BIND服务器安装

RHEL4中包括了BIND服务相关的软件包

bind-libs-9.2.4-2

提供了实现域名解析功能必备的库文件 ,系统默认安装

bind-utils-9.2.4-2

提供了对DNS服务器的测试工具程序 ,系统默认安装

bind-9.2.4-2 安装文件位于第4张安装光盘中

# rpm -ivh bind-9.2.4-2.i386.rpm

BIND服务器的服务程序脚本名称是named,默认没有启动,需手动设置。

#rpm -ql bind | grep init.d

/etc/rc.c/init.d/named

#chkconfig --level 35 named on

#chkconfig --list named

三、主域名服务器的配置

1、在named.conf文件中设置域

全局配置

options {

directory \"/var/named\";

dump-file \"/var/named/data/cache_dump.db\";

statistics-file \"/var/named/data/named_stats.txt\";

};

controls {

inet 127.0.0.1 allow { localhost; } keys { rndckey; };

};

建立正向解析域

zone \".\" IN { (指定根域)

type hint;

file \"named.ca\";

};

zone \"benet.com\" { (指定本地域)

type master;

file \"benet.com.zone\";

};

建立反向解析域

zone \"0.168.192.in-addr.arpa\" { (指定反向域)

type master;

file \"192.168.0.rev\";

};

2、建立正向区域文件 (该文件需要用vi编辑器手动建立在/var/named中,并写其内容)

#cat /var/named/benet.com.zone

$TTL 86400 (秒)

@ IN SOA benet.com. hostmaster.benet.com. (

42 ; serial (d. adams) (序列号)

3H ; refresh (3小时更新)

15M ; retry (15分钟重试)

1W ; expiry (1周)

1D ) ; minimum (1天)

@ IN NS ns1.benet.com.

@ IN NS ns2.benet.com.

ns1 IN A 192.168.0.5

ns2 IN A 192.168.0.6

host1 IN A 192.168.0.7

host2 IN A 192.168.0.8

mail IN CNAME host1.benet.com.

www IN CNAME host2.benet.com.

@ IN MX 5 mail.benet.com.

3、建立反向区域文件 (该文件需要用vi编辑器手动建立在/var/named中,并写其内容)

# cat /var/named/192.168.0.rev

$TTL 86400

@ IN SOA ns1.ltest.com. hostmaster.ltest.com. (

42 ; serial (d. adams)

3H ; refresh

15M ; retry

1W ; expiry

1D ) ; minimum

@ IN NS ns1.ltest.com.

@ IN NS ns2.ltest.com.

2 IN PTR ns1.ltest.com. (PTR可用IP省略方法,1.168.192.in-addr.rapa表192.168.1.2可写为2)

3 IN PTR ns2.ltest.com.

11 IN PTR host1.ltest.com.

12 IN PTR host2.ltest.com.

4、配置文件和区域文件的测试

A、测试named.conf主配置文件

# named-checkconf (如果不显示任何信息表示语法正确 )

B、测试区域文件

# named-checkzone benet.com /var/named/benet.com.zone

# named-checkzone 0.168.192.in-addr.arpa /var/named/192.168.0.rev

(named-checkzone命令对正向区域文件和反向区域文件进行检查语法是否错误,第一个参数指定区域名称,第二个参数指定区域文件名称,如果语法正确将显示OK)

5、重启named服务

#service named restart

四、从域名服务器 的配置

(它做为主域名服务器的辅助和备份服务器,自身不建立区域文件,而是从主域名服务器中查询并保存,它可以与主域名服务器提供相同的域名解析服务,它需要在与主域名服务器不同的主机中构建)

1、在named.conf文件中设置域

建立正向解析域

zone \"benet.com\" {

type slave; (type设置为“slave”,表示当前DNS服务器是该域的从域名服务器类型 )

file \"slaves/benet.com.zone\" (从域名服务器中的区域文件应设置保存在 “slaves”子目录中,区域文件将从主 域名服务器中获取并保存在该目录中,为了便于管理,尽量使用与主服务器相 同的区域文件名称)

masters { 192.168.0.5; }; ( 使用masters设置主域名服务器的IP地址 )

};

建立反向解析域

zone \"0.168.192.in-addr.arpa\" {

type slave;

file \" slaves/192.168.0.rev\";

masters { 192.168.0.5; };

};

2、检测配置文件和启动named服务

从域名服务器只需要检测配置文件的语法

# named-checkconf

启动从域名服务器

# service named start

查看区域文件

从服务器启动后将从主域名服务器中获得区域文件并保存在指定的目录中

# ls /var/named/slaves/

192.168.0.rev benet.com.zone

(如果/var/named/slaves/目录中没有发现区域文件,说明从域名服务器和主域名服务器之间传输区域文件不成功,需要排错。)

五、缓存域名服务器的配置

(它应保证能够与互联网中的其他DNS服务器进行连接,它的主要作用是提高域名解析速度和节约出口带宽)

1、安装caching-nameserver软件包

(RHEL4系统为配置缓存域名服务器专门提供了名为“caching-nameserver”的软件包,该软件包保存在第1张安装光盘中,默认没有安装。)

# rpm -ivh caching-nameserver-7.3-3.noarch.rpm

(caching-nameserver软件包安装时将对BIND服务器的配置文件named.conf的内容进行更改,原文件中的内容保存在/etc/named.conf.rpmorig中。)

2、named.conf中的全局设置 (其中以//开头的行是无效行)

options {

directory \"/var/named\"; (directory用于设置BIND服务器的工作目录,即域名区域文件保存的目录 )

dump-file \"/var/named/data/cache_dump.db\"; (dump-file用于设置域名缓存文件的保存位置和文件名 )

statistics-file \"/var/named/data/named_stats.txt\";

};

3、根区域设置

named.conf中的根区域设置

zone \".\" IN {

type hint; (type设置为hint表示该区域的类型是根区域)

file \"named.ca\"; (file用于设置区域文件,根区域文件的名称是“named.ca” )

};

(named.ca是根区域文件,位于“/var/named/ ”目录中,named.ca中包含全球DNS根服务器的地址信息请不要更改)

4、localhost正向解析

(localhost区域的作用是对主机名称“localhost”和环回地址“127.0.0.1” 进行解析,总是代表本机)

zone \"localhost\" IN {

type master; ( type设置为master表示区域的类型为主服务器 )

file \"localhost.zone\"; (file设置区域文件名的名字 ,localhost.zone在/var/named中,是安装caching- nameserver时自动安装的,用cat /var/named/localhost.zone查看内容)

};

5、localhost反向解析

zone \"0.0.127.in-addr.arpa\" IN {

type master; ( type设置为master表示区域的类型为主服务器 )

file \"named.local\"; (file设置区域文件名的名字,named.local在/var/named中,是安装caching-nameserver时 自动安装的,用cat /var/named/named.local查看内容)

};

6、缓存域名服务器在安装caching-nameserver软件包后不需要任何其他配置就可以启动运行,并实现域名查询和缓存功能,但它必须能够访问互联网。可以使用nslookup命令进行测试。

六、DNS服务器的测试

1、DNS测试原理

DNS服务器的主要测试方法

使用nslookup、dig和host等专用工具可以对DNS服务器进行较全面的测试

nslookup命令在Linux和Windows系统中都默认安装,是比较常用的测试工具

2、使用nslookup测试DNS服务器

进入nslookup命令交换环境

# nslookup

设置使用指定的DNS服务器

server 192.168.0.5

测试localhost主机域名的正向解析

localhost

测试localhost主机域名的反向解析

127.0.0.1

测试互联网中的域名解析

测试benet.com域中的A记录

host1.benet.com

测试benet.com域中的PTR记录

192.168.0.7

测试benet.com域中的CNAME记录

测试benet.com域中的NS记录

set type=ns (设置域名查询类型为NS即域名记录)

benet.com

测试benet.com域中的MX记录

set type=mx (设置域名查询类型为MX即邮件交换记录)

benet.com

设置进行A记录的测试

set type=a (设置域名查询类型为A即地址记录)

mail.benet.com

3、使用dig测试DNS服务器 (dig只运行在liunx平台,是domain information grep的缩写)

1)#dig --help

dig命令的格式

Usage: dig [@global-server] [domain] [q-type] [q-class] {q-opt}

{global-d-opt} host [@local-server] {local-d-opt}

[ host [@local-server] {local-d-opt} [...]]

Use \"dig -h\" (or \"dig -h | more\") for complete list of options

2)dig命令可以比nslookup命令显示更多的DNS服务器信息

# dig @192.168.0.5 benet.com (@后是被查询的DNS服务器的IP地址,benet.com域名做为命令参数)

; DiG 9.2.4 @192.168.0.5 benet.com

;; global options: printcmd

;; Got answer:

;; -HEADER- opcode: QUERY, status: NOERROR, id: 51201

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:

;benet.com. IN A

;; AUTHORITY SECTION:

benet.com. 86400 IN SOA ns1.benet.com. hostmaster.benet.com. 42 10800 900 604800 86400

以上dns是以benet.com域为实例讲解………………

dns服务器怎样做啊,请多多帮忙啊...谢谢 ~~~

目前国际域名的DNS必须在国际域名注册商处注册,国内域名的DNS必须在CNNIC注册,注册支持解析英文域名和中文域名的dns要分别注册:

(1)步骤:选择做为DNS后缀的域名-创建dns服务器---选择是在国际注册还是国内注册-申请--交付费用

(2)费用:约75元/个(一次性)

(3)条件:如果注册国际DNS服务器的,dns服务器的名称必须是在具有条件的公司注册的国际英文域名才能注册,有独立IP地址,DNS服务器域名前的前缀最好是dns.ns.等.

提供DNS的是计算机,是安装了DNS服务器端软件的计算机。服务器端软件即可以是基于类Unix操作系统,也可以是基于Windows操作系统的。装好DNS服务器软件后,您就可以在您指定的位置创建区域文件了,所谓区域文件就是包含了此域中名字到IP地址解析记录的一个文件(如文件名可能是seebod.com.这个文件的内容是这样的:

primary name server = dns2.100ok.com (主服务器的主机名是 dns2.100ok.com)

serial = 2007042913 (当前序列号是2007042913。这个序列号的作用是当辅域名服务器来copy时候这个文件时,如果号码增加了就copy)

refresh = 10800 (3 hours) (辅域名服务器每隔3小时查询一个主服务器)

retry = 3600 (1 hour) (当辅域名服务试图在主服务器上查询更时,而连接失败了,辅域名服务器每隔1小时访问主域名服务器)

expire = 604800 (7 days) (辅域名服务器在向主服务更新失败后,7天后删除seebod.com.中的记录。)

default TTL = 3600 (1 hour) (缓存服务器保存记录的时间是1小时。也就是告诉202.96.209.5保存seebod.com.域的解析记录为1小时)

Addresses: 211.100.26.124, 211.100.26.121, 211.100.26.122, 211.100.26.123 (对应的ip地址有4个。起到冗于的作用)

seebod.com MX preference = 10, mail exchanger = mail.seebod.com (seebod.com域中两台mail服务器实现冗于.不同的IP/web界面,相同的web数据库)

seebod.com MX preference = 20, mail exchanger = mail2.seebod.com

seebod.com nameserver = dns2.100ok.com (两台DNS服务器实现冗于)

seebod.com nameserver = dns5.100ok.com

)。

四、怎样实现DNS?

无论您是通过linux还是windows搭建dns服务器,原理都是一致的。

您可以把DNS服务器配置成以下3类之一:

1、主DNS服务器。

2、辅DNS服务器。

3、缓存DNS服务器。

1、在例子中,我们提到的211.152.17.58就是主DNS服务器,这台服务器负责seebod.com.域的名字到IP解析。

2、在例子中,seebod.com.域还有台辅dns服务器,名字是dns2.100ok.com,ip地址是 211.157.101.174。辅DNS的存在的意思是:当主DNS瘫痪由辅dns提供服务。

3、在例子中,202.96.209.5就是缓存DNS服务器。这样的DNS服务器不负责任何域的最终解析,只缓存解析记录,这样用户下次请求相同的解析记录时直接从缓存中的名字到IP的对应关系返回给用户,而不需要再递归或者跌代查询了。

五、DNS服务器

现在一般国内的域名注册商,提供DNS解析服务是免费的,但国外的注册商很多是DNS解析服务是收费的。

在虚拟机里装linux后配好dns服务在真机为什么不能访问家庭版系统

1.首先查看linux系统与xp系统的防护墙是否开启;

2.如果开启,看是否禁止了dns服务,主要是linux;

3.测试网络的连通性;

4.查看tcp/ip属性是否设置正确;

5.查看dns服务是否开启;

6.查看配置文件是否正确;

7.用dns服务器自身测试是否能够解析域名;

8.清空真是机的dns缓存;

linux下清理dns 缓存

首先我们要了解,dns查询的基本逻辑和缓存的存在位置

如图所示,基本逻辑为:

客户端 - 本机器dns解析器(如host,dnsmasq)- 本地dns服务器(比如家庭路由器)- 网络dns服务器

为了加速查询,在解析器和服务器上都有缓存在,一般而言我们要清理的是本机器上的dns缓存

显然,我们必须首先了解本地机器用的是什么解析器,可以通过看哪个进程占据了53端口来查询,因为53端口是dns服务器端口。

可以通过以下指令:

分别会下列结果

针对不同的解析器

可以用不同的命令清理

针对system-resolved:

同时为了验证dns缓存真的被清理了,可以用命令来查看缓存

针对dnsmasq:

参考:

未经允许不得转载:便宜VPS网 » linux搭建dns缓存服务器(linux服务器dns配置安装)