德克云技术联盟

会员中心
发新帖
打印 上一主题 下一主题

Linux域名服务:BIND
发布人: 李臻宇 发布时间:2014-07-16 浏览:4192



域名系统(DNS.Domain name system)在TCP/IP结构的网络中是一种很重要的服务,它用于将易于记忆的域名和不易记忆的IP地址进行转换。承担DNS解析任务的网络主机被称为DNS服务器(DNS SERVER)。建立一台DNS SERVER需要以下条件:
    1、一个IP地址
    2、域名
    3、网络连接(不包括用调制解调器进行的连接)
首先运行netconfig命令
给linux系统指定一个ip地址。
第一项:ip地址   (在这里我设定成为10.0.0.15)
第二项:子网掩码
第三项:默认网关
第四项:nameserver
修改后运行/etc/init.d/network restart 生效
察看ip运行 ifconfig
named 基于BIND(Berkeley Internet Name Domain)建立
服务器关键配置文件
/etc/named.conf
/var/named/chroot/var/named/*
相关配置文件:
/etc/nsswitch
这里面的hosts这项觉得域名搜索顺序:例如:hosts: files dns
这代表先搜索/etc/hosts后搜索named配置
/etc/sysconfig/network
修改/etc/sysconfig/network
给机器定义计算机名 格式:pcname.domainname.com/net/...
这里我给你大家定义成rain.fish.com我的域名就是fish.com
这个配置文件修改以后需要重新启动才能生效
所以为了同步我们用下面这个命令完成生效:hostname rain.fish.com
好了现在我们运行hostname就可以察看。
/etc/resolv.conf
这里修改我们的dns地址如果要用本机测试的话。就把nameserver修改成为自己机器的ip地址。例如

nameserver 10.0.0.15
下面开始正式配置dns服务器:
1:修改named.conf
vi /etc/named.conf
定义域: 加入正反向搜索
如下:
zone "fish.com" IN {                   #正向搜索
        type master;
        file "fish.com.zone"; #定义正向搜索的文件
};

zone "0.0.10.in-addr.arpa" IN {         #反向搜索
        type master;
        file "fish.com.local"; #定义反向搜索的文件
};
2:cd /var/named/chroot/var/named
注意:如果是红帽九路径是/var/named
然后我们可以拷贝模板文件
正向: cp localhost.zone fish.com.zone -p  #注意-p 如果没有这个参数就要多执行一步chown named.named fish.com.zone
反向: cp named.local fish.com.local -p   #同上chown named.named fish.com.local,目的是把文件的属主属组改成named
然后我们开始修改fish.com.zone
初始如下:
$TTL    86400
@               IN SOA  @       root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                IN NS           @
                IN A            127.0.0.1
                IN AAAA         ::1
下面我们来修改(保持原有格式不要变化):
$TTL 86400
@ IN SOA fish.com.  root.fish.com. (   #将原有的@改成fish.com.(主机名) 将原有的root修改为root.fish.com.

                            42  ; serial number   #将42随便更改一个数字如43,不改有可能不能生效
   3H   ; refresh
   15M   ; retry
   1W   ; expiration
   1d)   ; minimum
  IN NS rain.fish.com.  #dns主机名
  IN NS 10.0.0.15.              #dns ip
  IN MX  10  mail.fish.com. # 邮件服务器定义
                IN A            10.0.0.15    #域名纪录(A 纪录)
                                             #这条看起来是空的,但他解析的fish.com
www             IN A            10.0.0.15    #域名纪录(A 纪录)
ns              IN A            10.0.0.15    #下面多个域名都指向10.0.0.15因为我们做测试
ftp             IN A            10.0.0.15    #将来还有很多服务器都要使用这台机器
mail            IN A            10.0.0.15    #您可以根据您的要求自己定义
下面给您不+注释的纪录(跟上面内容一样,方便您修改)
$TTL    86400
@               IN SOA   rain.fish.com.       root.fish.com. (
                                        43              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                IN NS           rain.fish.com.
                IN NS           10.0.0.15.
                IN MX   10      mail.fish.com.
                IN A            10.0.0.15
www             IN A            10.0.0.15
ns              IN A            10.0.0.15
ftp             IN A            10.0.0.15
mail            IN A            10.0.0.15

下面修改反向:
vi fish.com.local
最后修改成如下:
$TTL    86400
@       IN      SOA     rain.fish.com. root.fish.com.  (
                                      1997022701 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS      rain.fish.com.

15       IN      PTR     fish.com.
15      IN      PTR     www.fish.com.
15      IN      PTR     ftp.fish.com.
15      IN      PTR     mail.fish.com.
这时就算dns配置完毕.
重新启动named服务 /etc/init.d/named restart

测试dns服务器:

[root@test named]# nslookup
> 10.0.0.15
Server:         10.0.0.15
Address:        10.0.0.15#53

15.0.0.10.in-addr.arpa  name = fish.com.
15.0.0.10.in-addr.arpa  name = mail.fish.com.
15.0.0.10.in-addr.arpa  name = ftp.fish.com.
15.0.0.10.in-addr.arpa  name = www.fish.com.
说明反向正常

> ftp.fish.com
Server:         10.0.0.15
Address:        10.0.0.15#53
> www.fish.com
Server:         10.0.0.15
Address:        10.0.0.15#53
> mail.fish.com
Server:         10.0.0.15
Address:        10.0.0.15#53
说明正向正常

补充:
1、Caching Only DNS Server    客户端向缓存DNS服务器申请DNS资源纪录时,如果本地缓存中存在DNS资源纪录,则解析;如果不存在,将请求转发到另外一台DNS服务器,得到结果后返回给客户端,并且将新的DNS资源纪录写入缓存全局设置Option中,加入:forwarders { dnsserverip; };forward only;
2、Slave DNS Server辅DNS服务器用来复制主DNS服务器的资源纪录,并提供给客户端做查询,辅DNS的资源纪录在规定的时间内随着主DNS服务器的资源纪录而变化修改/etc/named.conf加入如下定义域zone  "fish.com" IN {     #设置主区域名称 type slave;         #类型为slave  master { masterdnsip; };  #指定master dns IP地址 file  "fish.com.zone";    #设置域文件名称};
zone  “0.0.10.in-addr.arpa" IN {  type slave; master { masterdnsip; };  file  “0.0.10.in-addr.arpa.zone"; };注意事项:    辅DNS服务器从主DNS服务器下载资源纪录后,需要在/var/named/chroot/var/named目录中写文件,用来记录资源纪录,但是运行DNS服务器的用户是named对此目录没有写权限,所以需要更改目录权限。
扩展部分(DNS负载均衡)环境分析:由于公司web服务器访问量过多,服务器压力过大,所以我们准备在加入3台web服务器。www.fish.com IN 0 A 10.0.0.40www.fish.com IN 0 A 10.0.0.41www.fish.com IN 0 A 10.0.0.42www.fish.com IN 0 A 10.0.0.43



分类浏览
关于我们
联系我们
技术联盟
云服务
云技术
云合作
帮助中心
发帖规则
QQ客服
内部通道
企业邮箱
企业论坛
版本选择
手机版
电脑版
用手机扫描下方二维码查看手机版页面

版权所有 西安云联电子科技有限公司
Copyright @ 2011-2022 | decoclouds.com All Rig
陕ICP备13002202号-1

快速回复 返回顶部 返回列表