linux dns服务器配置

简介:
Linux上dns服务是一个域名解析的服务
实际安装为:
1.        查看服务器上是否安装了dns服务
# rpm -qa | grep bind
bind-utils-9.3.6-16.P1.el5
bind-9.3.6-16.P1.el5
 
# rpm -qa | grep name
caching-nameserver-9.3.6-16.P1.el5
         需要有这几个rpm。
2.        修改配置文件(其实细心的人会发现次文件为链接文件,具体看下文错误2)
# cat /etc/named.caching-nameserver.conf
//
// named.caching-nameserver.conf
//
// Provided by Red Hat caching-nameserver package to configure the
// ISC BIND named(8) DNS server as a caching only nameserver
// (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// DO NOT EDIT THIS FILE - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on
// caching-nameserver package upgrade.
//
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
 
        // Those options should be used carefully because they disable port
        // randomization
        // query-source    port 53;
        // query-source-v6 port 53;
 
        allow-query     { any; };
        allow-query-cache { any; };
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
view localhost_resolver {
        match-clients      { any; };
        match-destinations { any; };
        recursion yes;
        include "/etc/named.rfc1912.zones";
};
 
把以上的localhost和127.0.0.1都改成any,如果不改他只能让主机来访问。
3.        在/etc/named.rfc1912.zones文件中添加一些东西
# cat /etc/named.rfc1912.zones
// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
zone "." IN {
        type hint;
        file "named.ca";
};
 
zone "localdomain" IN {
        type master;
        file "localdomain.zone";
        allow-update { none; };
};
 
zone "localhost" IN {
        type master;
        file "localhost.zone";
        allow-update { none; };
};
 
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.local";
        allow-update { none; };
};
 
zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
        file "named.ip6.local";
        allow-update { none; };
};
 
zone "255.in-addr.arpa" IN {
        type master;
        file "named.broadcast";
        allow-update { none; };
};
 
zone "0.in-addr.arpa" IN {
        type master;
        file "named.zero";
        allow-update { none; };
};
zone "baidu.com" IN {

        type master;

        file "baidu.zheng";

};

         红色部分为添加的,意图为正向解析
4.        上面添加的baidu.zheng文件应该在/var/named下面配置,进入目录执行命令cp named.zero baidu.zheng,其实这个目录下面应该是链接文件,真正的文件是放在/var/named/chroot/var/named下面,copy后baidu.zheng为正确的链接文件就对了,否则需要到/var/named/chroot/var/named目录下面创建,然后修改baidu.zheng文件
# cat /var/named/baidu.zheng
$TTL    86400
@               IN SOA  localhost.      root.localhost. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
        IN      NS      dns.baidu.com.
dns     IN      A       10.10.247.119

www     IN      A       10.10.247.115

后面有注释,A即Address
 
localhost.localdomain为我的主机名,主机名可以在/etc/sysconfig/network下面修改,注销后生效
5.        重启dns使之生效,service named restart。
6.        测试:
# nslookup dns.baidu.com
;; Got recursion not available from 10.10.101.3, trying next server
Server:         10.10.101.8
Address:        10.10.101.8#53
 
Name:   dns.baidu.com
Address: 202.108.22.220
 
# nslookup www.baidu.com
Server:         10.10.101.3
Address:        10.10.101.3#53
 
Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
Name:   www.a.shifen.com
Address: 61.135.169.105
Name:   www.a.shifen.com
Address: 61.135.169.125
这里的错误原因是本机的dns没有更改还是用的局域网内的dns,更改dns再测试,下文的错误3,有具体解释。
                   修改后测试
                                     # nslookup dns.baidu.com
Server:         10.10.247.119
Address:        10.10.247.119#53
 
Name:   dns.baidu.com
Address: 10.10.247.119
 
# nslookup www.baidu.com
Server:         10.10.247.119
Address:        10.10.247.119#53
 
Name:   www.baidu.com
Address: 10.10.247.115
7.        配置反向解析在/etc/named.rfc1912.zones文件下面添加以下行
zone "247.10.10.in-addr.arpa" IN {
        type master;
        file "baidu.fan";
};
         我的ip是10.10.247网段的,所以黄色部分应该那样写,ip倒过来写
8.        拷贝文件cp /var/named/baidu.zheng /var/named/baidu.fan,如果拷贝后为链接文件就是对的,否则应该拷贝到/var/named/chroot/var/named,然后修改baidu.fan文件:
# cat baidu.fan
$TTL    86400
@       IN      SOA     localhost. root.localhost.  (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN      NS      baidu.com.
119     IN      PTR     dns.baidu.com.

115     IN      PTR     www.baidu.com.

                   红色部分为修改文件,前面的119   115为ip最后一位

9.        重启dns使之生效service named restart,然后执行命令nslookup 10.10.247.119,
                            # nslookup 10.10.247.119
Server:         10.10.247.119
Address:        10.10.247.119#53
 
119.247.10.10.in-addr.arpa      name = dns.baidu.com.
 
# nslookup 10.10.247.115
Server:         10.10.247.119
Address:        10.10.247.119#53
 
115.247.10.10.in-addr.arpa      name = www.baidu.com.                 
 
 
报错 1.

# service named restart
停止 named:[确定]
启动 named:
named配置错误::
zone localdomain/IN: loaded serial 42
zone localhost/IN: loaded serial 42
zone 0.0.127.in-addr.arpa/IN: loaded serial 1997022700
zone 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 1997022700
zone 255.in-addr.arpa/IN: loaded serial 42
zone 0.in-addr.arpa/IN: loaded serial 42
dns_rdata_fromtext: baidu.zheng:9: near '10.10.247.119.': bad dotted quad
dns_rdata_fromtext: baidu.zheng:10: near '10.10.247.115.': bad dotted quad
zone baidu.com/IN: loading master file baidu.zheng: bad dotted quad
localhost_resolver/baidu.com/IN: bad dotted quad
[失败]
配置正向解析的时候有这个报错,后来反复测试发现在baidu.zheng文件中应该注意:
 
# cat baidu.zheng
$TTL    86400
@               IN SOA  localhost.      root.localhost. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
        IN      NS      baidu.com.
dns     IN      A       10.10.247.119.
www     IN      A       10.10.247.115.
在ip后面的.应该去掉,做事情应该认真。
报错 2. 启动失败提示找不到文件**,一定要认准真正的目录在哪里,我这就犯了个这个问题,其实默认应该是在/var/named/下面创建向上文说的baidu.zheng、baidu.fan,但是细心的人会发现ll看一下
# ll
总计 52
drwxr-x--- 6 root  named 4096 02-14 22:28 chroot
drwxrwx--- 2 named named 4096 2011-02-23 data
lrwxrwxrwx 1 root  named   45 2011-11-20 localdomain.zone -> /var/named/chroot//var/named/localdomain.zone
lrwxrwxrwx 1 root  named   43 2011-11-20 localhost.zone -> /var/named/chroot//var/named/localhost.zone
lrwxrwxrwx 1 root  named   44 2011-11-20 named.broadcast -> /var/named/chroot//var/named/named.broadcast
lrwxrwxrwx 1 root  named   37 2011-11-20 named.ca -> /var/named/chroot//var/named/named.ca
lrwxrwxrwx 1 root  named   44 2011-11-20 named.ip6.local -> /var/named/chroot//var/named/named.ip6.local
lrwxrwxrwx 1 root  named   40 2011-11-20 named.local -> /var/named/chroot//var/named/named.local
lrwxrwxrwx 1 root  named   39 2011-11-20 named.zero -> /var/named/chroot//var/named/named.zero
drwxrwx--- 2 named named 4096 2011-02-23 slaves
                  
文件都是链接文件,真正的文件在/var/named/chroot/var/named下面,在这个目录先买年创建文件,可以正常启动,不知道为什么都是链接文件,也许是我安装了rpm包然后卸载又重新安装的原因,或者他就是这样这样配置的,没有详细研究,根据个人配置而定。
报错 3. 解析不了,提示:
                   正向解析,反向解析都不行,随便举个例子:
                   # nslookup 10.10.247.119
;; Got recursion not available from 10.10.101.8, trying next server
Server:         10.10.101.3
Address:        10.10.101.3#53
 
** server can't find 119.247.10.10.in-addr.arpa.: NXDOMAIN               
                  
 
看一下本机的dns:
cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search domain
nameserver 10.10.101.3
nameserver 10.10.101.8
 
         我本地的dns服务器分别为10.10.101.3、10.10.101.8,所以他是跑去解析局域网内的dns服务器了,这是因为本机的dns默认是局域网内的,把dns修改成本地的即10.10.247.119即可。
                           
报错 4.

         有时候解析不了,错误提示:
                            # nslookup www.baidu.com
;; connection timed out; no servers could be reached
这个的原因是文件所属问题,
                            # ll baidu.zheng
-rw-r----- 1 root root 477 02-14 23:48 baidu.zheng
把这里的百度所属改成named的chown :named baidu.zheng重启,问题解决
                           

本文转自gaofeng36599 51CTO博客,原文链接:http://blog.51cto.com/786678398/722830
相关文章
|
存储 人工智能 容灾
阿里云服务器2核8G、4核16G、8核32G配置热门实例性能对比与场景化选型指南
2核8G/4核16G/8核32G配置的阿里云服务器在阿里云活动中目前有经济型e、通用算力型u1、通用型g7、通用型g8y和通用型g9i五种实例可选,目前2核8G配置选择u1实例活动价格652.32元1年起,4核16G月付选择经济型e实例最低89元1个月,8核32G配置160元1个月起,本文将为大家解析经济型e、通用算力型u1、通用型g7及通用型g8y实例,帮助用户根据自身需求合理选择最适合的实例规格和配置。
|
弹性计算 ice
阿里云4核8G云服务器配置价格:热门ECS实例及CPU处理器型号说明
阿里云2025年4核8G服务器配置价格汇总,涵盖经济型e实例、计算型c9i等热门ECS实例,CPU含Intel Xeon及AMD EPYC系列,月费159元起,年付低至1578元,按小时计费0.45元起,实际购买享折扣优惠。
4328 1
|
存储 运维 安全
阿里云服务器2核4G与4核8G配置解析:实例规格、价格及选择指南
阿里云服务器2核4G和4核8G配置凭借其均衡的性能与性价比,成为中小企业及开发者群体的热门选择。通用算力型u1实例2核4G5M带宽80G ESSD Entry云盘特惠价199元1年,个人用户最低531.79元1年,4核8G配置价格最低的是通用算力型u1实例,活动价格为955.58元1年起,除此之外,还有计算型c7、c9i、c8y等计算型实例有2核4G与4核8G配置可选。具体配置还需要看想要购买的云服务器实例规格和配置及带宽大小。本文将结合2025年最新活动价格,深度解析阿里云服务器2核4G与4核8G配置的实例规格、适用场景及选择策略,以供参考。
|
机器学习/深度学习 存储 前端开发
阿里云服务器8核16G配置详解:热门实例规格、价格与选购指南
阿里云服务器8核16G配置,这样的配置能够满足大多数中小型网站、Web前端服务器以及计算密集型任务的需求。根据最新的收费标准及活动价格来看,云服务器8核16G配置收费标准最低的是经济型e实例,按量收费标准0.9元/小时,如果是需要年付的话,目前选择计算型c8y实例的活动价格为为2861.27元/1年起。本文为大家介绍8核16G配置的几款主要热门实例规格各自的性能与收费标准价格情况,以供选购参考。
|
存储 弹性计算 固态存储
阿里云服务器收费价格参考,2核16G、4核32G、8核64G配置收费标准
阿里云服务器2核16G、4核32G、8核64G配置最新租用价格更新,2核16G配置按量收费最低收费标准为0.596元/小时,按月租用标准收费标准为286.2元/1月。4核32G配置的阿里云服务器按量收费标准最低为1.192元/小时。8核64G配置的阿里云服务器按量收费标准最低为2.385元/小时。云服务器实例规格的地域和实例规格不同,收费标准不一样,下面是2025年阿里云服务器2核16G、4核32G、8核64G配置的最新租用收费标准。
2763 55
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
1350 11
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
1364 11
|
存储 弹性计算 网络协议
超详细的阿里云服务器购买流程,ECS自定义购买配置教程
本文详细图解阿里云ECS服务器自定义购买全流程,涵盖付费模式、地域选择、网络配置、实例规格、镜像、存储、安全组及登录设置等核心步骤,助您轻松掌握专业级云服务器搭建方法。

相关产品

  • 云解析DNS