一、DNS简介
DNS英文全称(Domain Name System)即域名系统,也称为域名服务器,将IP地址与域名进行映射,
如此以来,就不用记住IP地址来访问服务器,从而通过域名来访问服务器,通常域名比IP地址要好记。
Dns通常使用一个或多个集中式的服务器来实现,这些服务器具有一定的权威性,当客户端向DNS发起请求时,通常访问服务器的UDP协议53端口,如果该服务器没有权威解析,即无法解析用户请求域名,通常会向根域名服务器查询,查询到在向客户端返回解析结果
1.1 域名区域
在DNS服务器,如bind,所有信息都存储在基础数据元素称为资源记录(PR)。资源记录通常是完全限定域名(FQDN)主机,并解析成多个部分组成一个树状的层次结构。该层次结构由主干,主分支,次级分支,等组成。
如:
www.baidu.com
在上面的示例域名中,分为三个部分,分别以“ . ” 分隔,
com是它的顶级域名,注册后无法修改
baidu是二级域名,注册后无法修改
www为主机名,这个可以自定义,就是说www可以改为你需要的字符串,如:ftp、mail、file等等
1.2 域名服务器类型
1.2.1 权威服务器(authoritative)
权威域名服务器的回答是它们区域部分资源记录,包括顶级域名和二级域名
1.2.2 递归服务器(Recursive)
递归域名服务器提供解析服务,但不解析区域,所有解析答案都被缓存在内存
二、安装bind(Berkeley Internet Name Domain)
2.1 安装
2.1.1 rhel/centos:
yum install bind -y
2.1.2 debian/ubuntu:
apt-get install bind
2.2 配置bind
2.2.,1 配置文件路径
bind安装后的服务名为named
文件路径 | 描述 |
/etc/named.conf /etc/named/ /var/named/ | named主配置文件 包含配置文件的辅助目录 区域配置文件 |
2.2.2 编辑配置文件
2.2.2.1 配置文件有包含嵌套选项的语句集合组成有{}开闭,编辑时不能有语法错误否则无法启动 named服务
options { allow-query { localhost; }; #允许请求的主机/any代表所有 listen-on port 53 { 127.0.0.1; }; #监听地址和端口 listen-on-v6 port 53 { ::1; }; max-cache-size 256M; #/最大缓存 directory "/var/named"; #区域文件目录 statistics-file "/var/named/data/named_stats.txt"; recursion yes; dnssec-enable yes; dnssec-validation yes; };
2.2.2.2 加入自定义区域配置
[root@master ~]# cat /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 { any; }; //监听端口,也可写为 { 127.0.0.1; 192.168.56.104; } # listen-on-v6 port 53 { ::1; }; //对ip6支持 directory "/var/named"; //区域文件存储目录 dump-file "/var/named/data/cache_dump.db"; //dump cach的目录directory statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; //指定允许进行查询的主机,当然是要所有的电脑都可以查啦 recursion yes; //设置进行递归查询 allow-transfer { 192.168.56.105;}; //指定允许接受区域传送请求的主机,说明白一点就是辅dns的ip dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { //指定服务器日志记录的内容和日志信息来源 channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; //包含文件,这里也就是载入/etc/named.rfc1912.zones #include "/etc/named.root.key";
2.2.2.3 编辑区域文件
$ORIGIN example.com. $TTL 86400 @ IN SOA dns1.example.com. hostmaster.example.com. ( 2001062501 ; serial#序列号 21600 ; 刷新时间间隔 3600 ; 重试时间间隔 604800 ; expire after 1 week 86400 ) ; minimum TTL of 1 day ; ; IN NS dns1.example.com. IN NS dns2.example.com. dns1 IN A 10.0.1.1 #A记录 IN AAAA aaaa:bbbb::1 dns2 IN A 10.0.1.2 IN AAAA aaaa:bbbb::2 ; ; @ IN MX 10 mail.example.com. IN MX 20 mail2.example.com. mail IN A 10.0.1.5 IN AAAA aaaa:bbbb::5 mail2 IN A 10.0.1.6 IN AAAA aaaa:bbbb::6 ; ; ; This sample zone file illustrates sharing the same IP addresses ; for multiple services: ; services IN A 10.0.1.10 IN AAAA aaaa:bbbb::10 IN A 10.0.1.11 IN AAAA aaaa:bbbb::11 ftp IN CNAME services.example.com. www IN CNAME services.example.com. ; ;
/etc/named.conf需加入:
zone "example.com" IN { type master; file "example.com.zone"; allow-update { none; }; };
三、启动named服务
service named start
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。