`
leitelyaya
  • 浏览: 69021 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Named服务配置

    博客分类:
  • DNS
阅读更多
搜索Linux DNS,映入眼帘的是鸟哥的文章:http://linux.vbird.org/linux_server/0350dns.php
这篇长达11节的文章,看到Zone文件时就开始晕菜了。
继续寻找下一篇文章,来自于安全中国的:http://www.anqn.com/os/linux/2010-03-30/a09125458.shtml
在战胜了瞌睡虫的同时,DNS服务器终于跑上来了。

以前教授给我的理念就是将域名作为一棵倒挂的树,从根节点开始解析,直至叶子节点。通过下图更明确一下:

从图的描述可以得知, 根域是以“点(.)”表示。明了这一点非常重要,因为它的意义会在Zone文件中得到体现。

再加上客户端的请求解析流程图,会让整个流程更加清晰明了:

详细的请求的顺序为:
  1. 客户端Host文件标识
  2. 客户缓存
  3. 服务器区域设定
  4. 服务器缓存
  5. 其它服务器


理念明白后,就开始服务器的配置历程了。
首先,看看已经安装好的bind程序。
$ rpm -q bind
bind-9.7.1-2.P2.fc13.i686
$ rpm -q bind-chroot
bind-chroot-9.7.1-2.P2.fc13.i686


熟悉默认配置/etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind 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.
//

options {  // 定义全局变量
        listen-on port 53 { 127.0.0.1; }; // ipv4 监听端口
        listen-on-v6 port 53 { ::1; };    // ipv6 监听端口
        directory       "/var/named";     // 制定装载zone区域文件的目录
        dump-file       "/var/named/data/cache_dump.db";    // cache
        statistics-file "/var/named/data/named_stats.txt";  // statistics
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost; };   // 允许访问列表
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
}; // "}"后也得分号结束

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {            // "."代表根区域
        type hint;       // 根区域的类型就为hint
        file "named.ca"; // 指定zone文件,默认已经生成
};

include "/etc/named.rfc1912.zones";

注意,在最后一行还include一个conf文件,将本地地址都进行了映射。

我们需要修改option的内容,并且添加新的zone:
option {
        listen-on port 53 { 
               127.0.0.1;
               192.168.60.14; // 为局域网其它机器提供Named服务,必须监听向本机IP发出的请求
        };
        ...
        forwarders {          // 添加forwarders,指向其它DNS服务器
               202.106.196.115;
        };
        allow-query{ any; };  // 开放访问权限
        ...
};

zone "groupon.cn" IN {               // 解析groupon.cn
        type master;
        file "named.groupon.cn";     // 自定义的域名到IP的正向解析配置
};

zone "60.168.192.in-addr.arpa" IN {  // 本地内网为192.168.60.x
        type master;
        file "named.192.168.60";     // 自定义的IP到域名的反向解析配置
};


至此看来,named.conf的配置并不复杂,不过接下来的zone文件的配置就会改变你的看法。
熟悉默认配置/var/named/named.localhost
; 注意,zone文件的注释是以分号";"开始的。

$TTL 1D     ; 生存期, 默认单位为秒,另可设定为[W|D|H|M]

; [zone] IN SOA [主机名] [管理员email] ([五组更新时间参数])
; @=>zone IN SOA @=>主机名 rname.invalid.=>email
; @代表根域
; rname.invalid.解析为rname@invalid,第一个"."为"@"的替代,尾部的"."为根域,表明其为绝对URL。
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @          ; 直接输入域名,访问@
        A       127.0.0.1  ; 直接输入域名,解析到的IPV4的IP
        AAAA    ::1        ; 直接输入域名,解析到的IPV6的IP


现在开始建立正向解析文件: /var/named/named.groupon.cn
$TTL 1D
@ IN SOA @ root.groupon.cn. (
        2010110901
        28800
        14400
        3600000
        86400
)

        IN NS @               ; 直接输入域名,访问@
        IN A 221.123.177.226  ; 直接输入域名(www),解析到的外网IP
store   IN A 192.168.60.42    ; 输入子域名,解析到的内网IP
img     IN A 192.168.60.43


建立反向解析文件:/var/named/named.192.168.60
$TTL 1D
@ IN SOA 60.168.192.in-addr.arpa. root.groupon.cn. (
        2010110901
        28800
        14400
        3600000
        86400
)

@ IN NS www.groupon.cn.
42 IN PTR store.groupon.cn.  ; 192.168.60.42 -> store
43 IN PTR img.groupon.cn.    ; 192.168.60.43 -> img


配置完毕,检查配置文件的正确性:
# /usr/sbin/named-checkconf -z
zone localhost/IN: loaded serial 0
zone 60.168.192.in-addr.arpa/IN: loaded serial 2010110901
zone groupon.cn/IN: loaded serial 2010110901

看来一切正常, 这时就可以启动named服务器了。
# /sbin/service named start
Starting named:                                            [  OK  ]


还要做的就是开通端口,并在客户端设定DNS地址为该服务器地址,强制刷新dns和测试:
> ipconfig /flushdns

Windows IP Configuration

Successfully flushed the DNS Resolver Cache.

> nslookup
*** Can't find server name for address 192.168.60.36: Non-existent domain
*** Default servers are not available
Default Server:  UnKnown
Address:  192.168.60.36

> groupon.cn
Server:  UnKnown
Address:  192.168.60.36

Name:    groupon.cn
Address:  221.123.177.226

> store.groupon.cn
Server:  UnKnown
Address:  192.168.60.36

Name:    store.groupon.cn
Address:  192.168.60.42

> 192.168.60.42
Server:  UnKnown
Address:  192.168.60.36

Name:    store.groupon.cn
Address:  192.168.60.42


大功告成!

参考:
文件:/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
// and http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt
// (c)2007 R W Franks
// 
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

zone "localhost.localdomain" IN {
	type master;
	file "named.localhost";
	allow-update { none; };
};

zone "localhost" IN {
	type master;
	file "named.localhost";
	allow-update { none; };
};

zone "1.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.loopback";
	allow-update { none; };
};

zone "1.0.0.127.in-addr.arpa" IN {
	type master;
	file "named.loopback";
	allow-update { none; };
};

zone "0.in-addr.arpa" IN {
	type master;
	file "named.empty";
	allow-update { none; };
};

文件:/var/named/named.loopback
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	127.0.0.1
	AAAA	::1
	PTR	localhost.

文件:/var/named/named.empty
$TTL 3H
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	127.0.0.1
	AAAA	::1
  • 大小: 14.2 KB
  • 大小: 19.9 KB
分享到:
评论

相关推荐

    DNS配置文件named.conf详解

    1. **`/etc/named.conf` 文件**:这是DNS服务器的核心配置文件,用来设定基本的命名服务参数,并指明服务器使用的域名数据库信息来源。 2. **`/var/named/named.ca` 文件**:作为根域名服务器指向文件,该文件帮助...

    CenTOS服务器配置综合练习题

    * 启动named服务:使用systemctl start named.service命令启动named服务。 * 检查DNS解析:使用host命令检查DNS解析是否成功。 三、Web服务器搭建 * 搭建Web服务器:需要安装Web服务器软件,并配置httpd.conf文件...

    DNS服务器的配置实验报告.doc

    三、实验环境 1、开启一台安装有linux操作系统的虚拟机 2、dns的配置按照下面的拓扑图进行配置 四、实验步骤 1、查看dns是否安装 2、查看dns服务服务状态 3、为dns服务器设置固定IP地址,并验证网络是否连通,操作...

    linux各种服务配置

    安装bind后,需要编辑`named.conf`配置文件,定义区域文件、指定权威DNS服务器、设置转发规则等。启动DNS服务后,可以使用nslookup或dig命令进行查询测试。 5. **Email服务的安装与配置** Email服务通常基于...

    实验四 配置DNS服务器(一).docx

    接着,我们启用并启动DNS服务,使用`systemctl enable named-chroot.service`设置开机启动,`systemctl start named-chroot.service`启动服务。 在配置正向解析部分,我们需要为ayitula.com这个域名创建解析规则。...

    linux下DNS服务器的配置,DNS的辅助服务器配置.doc

    5. **权限设置**:修改文件权限,确保只有`named`用户和服务组可以读取这些配置文件,例如`chown named:named /etc/named.*`。 6. **启动与测试**:重启`named`服务以应用更改,例如`systemctl restart named`。...

    第9 Dns配置(named进程).docx

    接着,需要配置 /etc/named.conf 文件,该文件是 BIND 服务的主要配置文件。需要备份该文件,并修改第 11 和 17 行,以便启用 DNS 配置。 3. 配置区域配置文件 然后,需要配置区域配置文件 /etc/named.rfc1912....

    dns服务器配置与应用

    2. 配置 BIND:使用 named.conf 文件配置 BIND 服务器。 3. 创建域名zone 文件:创建域名zone 文件,用于存储域名解析结果。 4. 启动 BIND 服务器:启动 BIND 服务器,使得其可以开始提供 DNS 解析服务。 六、DNS ...

    LINUX服务器配置文档

    这通常在`named.conf`配置文件中完成,并且需要创建相应的区域文件来存储DNS记录,如A记录(IP到域名的映射)、PTR记录(反向解析)以及MX记录(邮件服务器)等。 FTP(File Transfer Protocol)服务器配置涉及提供...

    linuxdns服务器配置实验报告猛.pdf

    服务器所需软件包包括 bind 包、caching-nameserver 包等,基本配置文件路径包括 /etc/named.conf、/etc/named.rfc1912.zones、/etc/named.caching-nameserver.conf、/var/named/chroot/var/named/localdomain.zone...

    linux各种服务配置大全

    - DNS服务:域名解析,使用Bind服务,主要配置文件位于`/etc/named.conf`。 - DHCP服务:动态主机配置协议,使用dhclient或isc-dhcp-server,配置文件可能在`/etc/dhcp/dhcpd.conf`。 - Firewall服务:如iptables...

    windows-linux服务器配置

    4. **启动和测试DNS服务**:使用`systemctl start named`启动服务,`named-checkconf`检查配置文件,`named-checkzone`检查区域数据文件的正确性。 以上内容详细介绍了Windows和Linux服务器在文件和打印机共享以及...

    Linux服务器配置大全.pdf

    这里我们将深入探讨如何配置这些服务。 首先,让我们关注DNS服务器的配置。DNS的主要任务是将人类可读的域名转换为IP地址,使得网络通信能够顺利进行。在Linux环境下,通常使用BIND(Berkeley Internet Name Domain...

    Ubuntu-Server-DNS服务器的配置方法.doc

    1 配置环境  一台服务器和若干PC组成的简单局域网。 服务器安装Ubuntu Server,开启DNS服务。 服务器的IP:192.168.1.2  ...  其中named.conf是主配置文件,里面包含了named.conf.options和named.conf.local。

    Linux各种应用服务器配置.pdf

    本文主要关注的是Linux上的DNS服务器配置,这是网络服务的基础,它负责将域名转换为IP地址。DNS服务器的实现通常依赖于BIND(Berkeley Internet Name Domain),这是一个广泛使用的开源DNS软件。 BIND服务器的核心...

    bind9 安装配置

    BIND9 是一个功能强大且广泛使用的 DNS 服务器软件,本文将介绍如何在 FreeBSD 上安装和配置 BIND9,以便提供 DNS 服务。 安装 BIND9 在 FreeBSD 上安装 BIND9非常简单,只需要使用 pkg_add 命令从 FreeBSD 的...

    centos系统配置DNS服务器配置详解.docx

    然后,安装了 BIND 软件包,并配置了主配置文件 named.conf。最后,实现了 DNS 服务器的配置,能够解析域名并转向到其他网址。 知识点一:网络设置 在 CentOS 系统中,网络设置是通过编辑 /etc/sysconfig/network-...

Global site tag (gtag.js) - Google Analytics