Linux学习笔记14

来源:互联网 发布:openstack windows 编辑:程序博客网 时间:2024/06/18 00:16

Linux学习笔记14

  • Linux学习笔记14
    • DNS服务搭建
      • 基本介绍
      • 使用bind搭建dns服务
      • 增加一个域名zone
      • 配置DNS转发
      • 配置主从
      • 测试主从同步
    • 后续课程

DNS服务搭建

基本介绍

DNS 为Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种服务机制。

其中通过域名解析出ip地址的叫做正向解析,通过ip地址解析出域名的叫做反向解析。

DNS使用TCP和UDP, 端口号都是53, 但它主要使用UDP,服务器之间备份使用TCP。

全世界只有13台“根”服务器,1个主根服务器放在美国,其他12台为辅根服务器

DNS服务器根据角色可以分为:主DNS, 从DNS, 缓存DNS服务器,DNS转发服务器

使用bind搭建dns服务

yum install -y bind

cp /etc/named.conf /etc/named.conf.bak

> /etc/named.conf

vim /etc/named.conf

加入如下配置:

options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

chown named /etc/named.conf

cd /var/named/

dig -t NS . > named.ca

vim localhost.zone

加入如下配置:

@ IN SOA localhost. admin.localhost. (
2013081601
1H
10M
7D
1D
)
@ IN NS localhost.
localhost. IN A 127.0.0.1

vim named.local

加入如下配置:

$TTL 86400
@ IN SOA localhost. admin.localhost. (
2013081601
1H
10M
7D
1D
)
@ IN NS localhost.
1 IN PTR localhost

检测配置是否有问题: named-checkconf,如果无输出,则代表没问题。

检测正解析: named-checkzone "localhost" /var/named/localhost.zone,如果输出有ok字样,则无问题。

检测反解析: named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local,如果输出有ok字样,则无问题。

rndc-confgen -r /dev/urandom -a

chown named:named /etc/rndc.key

启动服务:service named start

netstat -lnp | grep named 查看一下named进程是否监听了53端口

首先测试正向解析:dig @127.0.0.1 localhost.

接着测试反解析:dig @127.0.0.1 -x 127.0.0.1

增加一个域名(zone)

vim /etc/named.conf

增加如下代码:

zone "abc.com" IN {
type master;
file "abc.com.zone";
};
zone "137.168.192.in-addr.arpa" IN {
type master;
file "192.168.zone";
};

编辑zone正向解析文件: vim /var/named/abc.com.zone

增加如下代码:

$TTL 600
@ IN SOA abc.com. root.abc.com. (
2013081601
1H
10M
7D
1D
)
IN NS ns.abc.com.
IN MX 10 mail.abc.com.
ns IN A 192.168.0.11
www IN A 192.168.137.73
mail IN A 192.168.137.10
bbs IN CNAME www.abc.com.

编辑反解析文件: vim /var/named/192.168.zone

增加如下代码:

$TTL 600
@ IN SOA ns.abc.com. root.abc.com. (
2013081601
1H
10M
7D
1D
)
@ IN NS ns.abc.com.
10 IN PTR ns.abc.com.
11 IN PTR mail.abc.com.
73 IN PTR www.abc.com.

分别检测两个配置文件是否有问题:

named-checkzone "abc.com" abc.com.zone

named-checkzone "137.168.192.in-addr.arpa" 192.168.zone

重启named服务,service named restart

测试:

dig @127.0.0.1 www.abc.com

dig @127.0.0.1 -x 192.168.137.11

配置DNS转发

配置的DNS是只能解析定义的zone的,没有定义的是不能解析的。

配置DNS转发就可以解析其他互联网上的域名了,前提是这个域名在互联网中的确在使用,也就是说这个域名已经被某个DNS服务器解析了。

vim /etc/named.conf

在options{} 里面增加:

forward first;
forwarders { 114.114.114.114; };

这两行就是用来配置转发的,该DNS服务器不能解析的域名会转发到114.114.114.114这个DNS服务器上去解析。

配置主从

在从服务器上yum install -y bind

拷贝主上的配置文件到从上,其中有/etc/named.conf, /var/named/localhost.zone, /var/named/named.local

拷贝过来后,修改一下从的/etc/named.conf 内容参考:

options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};
zone "abc.com" IN {
type slave;
file "slaves/abc.com.zone";
masters { 192.168.0.11; };
};
zone "137.168.192.in-addr.arpa" IN {
type slave;
file "slaves/192.168.zone";
masters { 192.168.0.11; };
};

从上生成rndc.key:rndc-confgen -r /dev/urandom -a

chown named:named /etc/rndc.key

从上启动named: service named start

启动成功后会在/var/named/下生成一个slaves目录,这个目录下会有192.168.zone, abc.com.zone这两个文件,内容是和主上的一样的

在从上测试: dig @127.0.0.1 www.abc.com

测试主从同步

在主dns上更改文件/var/named/abc.com.zone

在最后增加一行:

123 IN A 1.1.1.1

另外需要修改一下第三行的那个数字串,这个是用来做标记的,只有这个数字变化了,才可以让从自动跟着变,数字只能是变大,不能减小,2013081601 -> 2013081602

重启主namd服务: service named restart

在主上的/etc/named.conf中,abc.com的zone中增加两行:

notify yes;
also-notify { 192.168.0.12; };

后续课程

之后的课程没做笔记,可以在这些课件里查看:

Linux学习未做笔记部分

参考《跟阿铭学Linux》


0 0
原创粉丝点击